Viewing file: QethHardware.py (4.7 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
## Copyright (C) 2001-2005 Red Hat, Inc. ## Copyright (C) 2001, 2002 Than Ngo <than@redhat.com> ## Copyright (C) 2001-2005 Harald Hoyer <harald@redhat.com> ## Copyright (C) 2001, 2002 Philipp Knirsch <pknirsch@redhat.com>
## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2 of the License, or ## (at your option) any later version.
## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details.
## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
import sys import gtk import gtk.glade import signal import os import string import re from rhpl.executil import * from netconfpkg.gui import GUI_functions from netconfpkg.gui.GUI_functions import load_icon from netconfpkg.gui.GUI_functions import xml_signal_autoconnect from netconfpkg import * from netconfpkg import NCHWQeth from netconfpkg import NCHardwareList from netconfpkg.Control import NetworkDevice
class qethHardwareDialog: def __init__(self, hw): self.hw = hw
glade_file = "QethHardware.glade"
if not os.path.exists(glade_file): glade_file = GUI_functions.GLADEPATH + glade_file if not os.path.exists(glade_file): glade_file = GUI_functions.NETCONFDIR + glade_file
self.xml = gtk.glade.XML(glade_file, None, domain=GUI_functions.PROGNAME)
xml_signal_autoconnect(self.xml, { "on_okButton_clicked" : self.on_okButton_clicked, "on_cancelButton_clicked" : self.on_cancelButton_clicked, "on_adapterEntry_changed" : self.on_adapterEntry_changed })
self.dialog = self.xml.get_widget("Dialog") self.dialog.connect("delete-event", self.on_Dialog_delete_event) load_icon("network.xpm", self.dialog) self.setup() self.hydrate()
def on_Dialog_delete_event(self, *args): pass
def on_okButton_clicked(self, button): self.dehydrate()
def on_cancelButton_clicked(self, button): pass def on_adapterEntry_changed(self, entry): pass
def hydrate(self): if self.hw.Name: self.xml.get_widget('ethernetDeviceEntry').set_text(self.hw.Name) if self.hw.Card.IoPort: self.xml.get_widget('ioEntry').set_text(self.hw.Card.IoPort) if self.hw.Card.IoPort1: self.xml.get_widget('io1Entry').set_text(self.hw.Card.IoPort1) if self.hw.Card.IoPort2: self.xml.get_widget('io2Entry').set_text(self.hw.Card.IoPort2) if self.hw.Card.Options: self.xml.get_widget('optionsEntry').set_text(self.hw.Card.Options) if self.hw.MacAddress: self.xml.get_widget('macEntry').set_text(self.hw.MacAddress) else: hwlist = NCHardwareList.getHardwareList() nextDevice = NCHardwareList.getNextDev('eth') self.xml.get_widget('ethernetDeviceEntry').set_text(nextDevice) def setup(self): activedevicelist = NetworkDevice().get() if self.hw.Name in activedevicelist: ret = generic_yesno_dialog (_("Do you want to deactive interface %s first?\n" "Otherwise saving changes may have unwanted side effects." % self.hw.Name), self.dialog) if ret == RESPONSE_YES: devicelist = getDeviceList() for dev in devicelist: if self.hw.Name == dev.Device: dev.deactivate()
def dehydrate(self): self.hw.Name = self.xml.get_widget('ethernetDeviceEntry').get_text() if not self.hw.Type: self.hw.Type = QETH self.hw.createCard() self.hw.Card.IoPort = self.xml.get_widget('ioEntry').get_text() self.hw.Card.IoPort1 = self.xml.get_widget('io1Entry').get_text() self.hw.Card.IoPort2 = self.xml.get_widget('io2Entry').get_text() self.hw.Card.Options = self.xml.get_widget('optionsEntry').get_text() self.hw.Card.ModuleName = "qeth" self.hw.Description = "qeth %s,%s,%s" % (self.hw.Card.IoPort, self.hw.Card.IoPort1, self.hw.Card.IoPort2) self.hw.MacAddress = self.xml.get_widget('macEntry').get_text()
NCHWQeth.setHwQethDialog(qethHardwareDialog) __author__ = "Harald Hoyer <harald@redhat.com>"
|