3
# undefinenetwork.py - Copyright (C) 2009 Red Hat, Inc.
4
# Written by Darryl L. Pierce <dpierce@redhat.com>
6
# This program is free software; you can redistribute it and/or modify
7
# it under the terms of the GNU General Public License as published by
8
# the Free Software Foundation; version 2 of the License.
10
# This program is distributed in the hope that it will be useful,
11
# but WITHOUT ANY WARRANTY; without even the implied warranty of
12
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
# GNU General Public License for more details.
15
# You should have received a copy of the GNU General Public License
16
# along with this program; if not, write to the Free Software
17
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
# MA 02110-1301, USA. A copy of the GNU General Public License is
19
# also available at http://www.gnu.org/copyleft/gpl.html.
22
from configscreen import *
28
class UndefineNetworkConfigScreen(NetworkListConfigScreen):
30
NetworkListConfigScreen.__init__(self, "Undefine A Network")
32
def get_elements_for_page(self, screen, page):
33
if page is LIST_PAGE: return self.get_network_list_page(screen, created = False)
34
elif page is CONFIRM_PAGE: return self.get_confirm_page(screen)
35
elif page is UNDEFINE_PAGE: return self.get_undefine_network_page(screen)
37
def process_input(self, page, errors):
39
network = self.get_selected_network()
40
self.get_libvirt().undefine_network(network)
43
def page_has_next(self, page):
44
if page is LIST_PAGE: return self.has_selectable_networks()
45
if page is CONFIRM_PAGE: return True
48
def page_has_back(self, page):
49
if page is CONFIRM_PAGE: return True
50
if page is UNDEFINE_PAGE: return True
53
def get_back_page(self, page):
54
if page is CONFIRM_PAGE: return LIST_PAGE
55
elif page is UNDEFINE_PAGE: return LIST_PAGE
57
def validate_input(self, page, errors):
58
if page is LIST_PAGE: return True
59
elif page is CONFIRM_PAGE:
60
if self.__confirm_undefine.value():
63
errors.append("You must confirm undefining %s." % self.get_selected_network())
64
elif page is UNDEFINE_PAGE: return True
67
def process_input(self, page):
68
if page is LIST_PAGE: return True
69
elif page is CONFIRM_PAGE:
70
network = self.get_selected_network()
71
self.get_libvirt().undefine_network(network)
73
elif page is UNDEFINE_PAGE: return True
76
def get_confirm_page(self, screen):
77
self.__confirm_undefine = Checkbox("Check here to confirm undefining %s." % self.get_selected_network(), 0)
79
grid.setField(self.__confirm_undefine, 0, 0)
82
def get_undefine_network_page(self, screen):
83
return [Label("Network Is Undefined"),
84
Label("Network has been undefined: %s" % self.get_selected_network())]
86
def UndefineNetwork():
87
screen = UndefineNetworkConfigScreen()