Esempio n. 1
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'license.png'
        controlState.windowTitle = "License"
        controlState.windowText = "Enter license serial number"

        self.controlState = controlState
        
        self.serialRadio = xml.get_widget('serial_radio')
        self.serialParent = xml.get_widget('serial_hbox')

        ## TODO: revisit focus setting, backed out for beta1 (PR #290671)
        ## causes keystroke in serial number to lose focus to radio
        # controlState.initialFocus = self.serialRadio

        # Using a monospace font might make it easier to read.
        monoFont = pango.FontDescription("monospace")
        
        self.entries = []
        for entryNumber in range(esxlicense.SERIAL_NUM_COMPONENT_COUNT):
            entry = xml.get_widget('serialnum%d' % entryNumber)
            entry.modify_font(monoFont)
            self.entries.append(entry)

        connectSignalHandlerByDict(self, LicenseWindow, xml, {
                ('serial_radio', 'toggled') : 'onSerialToggled',
                ('serialnum0', 'changed') : 'onSerialnumChangedTabForward',
                ('serialnum1', 'changed') : 'onSerialnumChangedTabForward',
                ('serialnum2', 'changed') : 'onSerialnumChangedTabForward',
                ('serialnum3', 'changed') : 'onSerialnumChangedTabForward',
#                ('serialnum4', 'changed') : 'onSerialnumChanged',
                })

        self.onSerialToggled(self.serialRadio)
Esempio n. 2
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'adminpassword.png'
        controlState.windowTitle = "Set Administrator Password"
        controlState.windowText = \
            "Enter the administrator (root) password for ESX"

        self.controlState = controlState
        self.xml = xml
        self.accounts = []

        self.passwdEntry1 = self.xml.get_widget("RootpasswordPassword1Entry")
        self.passwdEntry2 = self.xml.get_widget("RootpasswordPassword2Entry")

        self.view = self.xml.get_widget("AdduserTreeView")
        self.scrolled = self.xml.get_widget("AdduserScrolledWindow")
        self.removeButton = self.xml.get_widget("RemoveuserButton")

        self.addUserWindow = AddUserWindow(self.xml, self)

        setupUserAccountsView(self.view, self.scrolled)

        connectSignalHandlerByDict(
            self, PasswordWindow, self.xml, {
                ('AdduserButton', 'clicked'): 'addUser',
                ('RemoveuserButton', 'clicked'): 'removeUser',
            })

        self.restoreUsers()

        controlState.initialFocus = self.passwdEntry1
Esempio n. 3
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True 
        controlState.windowTitle = "ESX Storage Device"
        controlState.windowText = "Select a location to install ESX"
        controlState.windowIcon = "drive.png"

        self.xml = xml

        self.controlState = controlState

        self.view = xml.get_widget("EsxlocationView")
        self.scrolled = xml.get_widget("EsxlocationScrolled")

        storage_widgets.setupStorageView(self.view)

        # only repopulate the esxlocation if we need to
        if userchoices.getResetEsxLocation():
            model = \
                storage_widgets.populateStorageModel(self.view, self.scrolled,
                                                     devices.DiskSet(),
                                                     vmfsSupport=False)
            storage_widgets.findFirstSelectableRow(model,
                                                   self.view,
                                                   SUPPORTED_DISK_ENTRY)

        connectSignalHandlerByDict(self, EsxLocationWindow, self.xml,
          { ('EsxlocationDetailsButton', 'clicked'): 'showDetails',
          })
Esempio n. 4
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'customdrivers.png'
        controlState.windowTitle = 'Custom Drivers'
        controlState.windowText = \
            'Select custom drivers to install for ESX'

        self.xml = xml
        self.foundDriverList = []
        self.driverList = []            # list of drivers to save
        self.driverDict = {}            # cache of driver data

        connectSignalHandlerByDict(self, CustomDriversWindow, self.xml,
          { ('CustomdriversNoRadioButton', 'toggled') : 'toggleDrivers',
            ('CustomdriversAddButton', 'clicked') : 'addDriver',
            ('CustomdriversRemoveButton', 'clicked') : 'removeDriver',
          })

        if userchoices.getDriversLoaded():
            self.xml.get_widget('CustomdriversVBox').set_sensitive(False)

        self.view = self.xml.get_widget('CustomdriversTreeView')
        self.scrolled = self.xml.get_widget('CustomdriversScrolledWindow')

        self.addDrivers = AddDrivers(self)

        _setupAddDriversView(self.view)

        # build up self.driverList in case the user has gone back
        # from the screen and re-entered it
        self.buildDriverList()

        # unmount the cdrom so the user can eject it manually
        util.umount(MEDIA_DEVICE_MOUNT_POINT)
Esempio n. 5
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'usb_cd_media.png'
        controlState.windowTitle = "CD-ROM or USB Installation"
        controlState.windowText = "Select the ESX installation source"

        connectSignalHandlerByDict(self, USBInstallMediaWindow, xml,
          { ('UsbRescan', 'clicked') : 'rescanMedia',
            ('UsbEject', 'clicked') : 'ejectMedia',
            })

        # Unmount any old media.
        media.runtimeActionUnmountMedia()
        
        self.mediaFound = []
        self.view = xml.get_widget("UsbMediaView")
        self.model = gtk.TreeStore(gobject.TYPE_STRING,
                                   gobject.TYPE_STRING,
                                   gobject.TYPE_STRING,
                                   gobject.TYPE_PYOBJECT,
                                   gobject.TYPE_STRING)
        self.view.set_model(self.model)

        mediaViewColumns = (
            ("Device", 200),
            ("Contents", 150),
            ("ESX Version", 120),
            )

        if not self.view.get_columns():
            populateViewColumns(self.view, mediaViewColumns, foreground=4)

        self.rescanMedia()
Esempio n. 6
0
    def _singleton_init(self, controlState, xml):
        self.timezones = TimezoneList()
        chosenTZ = userchoices.getTimezone()
        if chosenTZ:
            self.selectedTZ = self.timezones.findByCityName(chosenTZ['city'])
        else:
            self.selectedTZ = self.timezones.defaultTimezone

        connectSignalHandlerByDict(
            self, TimezoneWindow, xml, {
                ('advanced_ok', 'clicked'): 'onCityListSelect',
                ('advanced_cancel', 'clicked'): 'onCityListCancel',
                ('tz_button', 'clicked'): 'onAdvancedClicked',
                ('TimezoneDrawingArea', 'motion_notify_event'):
                'onTZDrawMotion',
                ('TimezoneDrawingArea', 'button_press_event'): 'onTZDrawPress',
                ('TimezoneDrawingArea', 'button_release_event'):
                'onTZDrawRelease',
                ('TimezoneDrawingArea', 'expose_event'): 'onTZDrawExpose',
            })

        self.tzEntry = xml.get_widget("tz_entry")
        self.advancedDialog = AdvancedDialog(xml)
        self.allTZsView = xml.get_widget("tz_treeview")

        self.setupMap(xml)
        self.setupTimezone(xml)
Esempio n. 7
0
    def __init__(self, settings):
        CommonWindow.__init__(self)
        gladePath = os.path.join(
            os.path.dirname(__file__), 'glade/storage-widgets.glade')
        self.xml = gtk.glade.XML(gladePath)

        self.dialog = self.xml.get_widget(settings['dialog'])

        self.text = self.xml.get_widget(settings['text'])

        self.okButton = self.xml.get_widget(settings['okButton'])
        self.cancelButton = self.xml.get_widget(settings['okButton'])
        self.checkButton = self.xml.get_widget(settings['checkButton'])

        self.rc = 1

        connectSignalHandlerByDict(self, self.__class__.__name__, self.xml,
          { (settings['cancelButton'], 'clicked') : 'cancelClicked',
            (settings['okButton'], 'clicked') : 'okClicked',
            (settings['checkButton'], 'toggled') : 'checkbuttonToggled',
          })

        self.addFrameToWindow()

        self.dialog.set_position(gtk.WIN_POS_CENTER)

        self.dialog.connect("key-press-event", self.keypress)
Esempio n. 8
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'network_configure.png'
        controlState.windowTitle = "Network Configuration"
        controlState.windowText = "Enter the network configuration information"

        self.controlState = controlState

        self.progressDialog = None

        self.networkAddressWidgets =\
            network_address_widgets.NetworkAddressWidgets(
                xml,
                self.controlState.gui.getWindow(),
                'Cosnetwork',
                ('ip', 'netmask', 'gateway', 'ns1', 'ns2', 'hostname'),
                'CosnetworkDHCPRadioButton', 'CosnetworkIPTable')

        #
        # Fill out "Network Adapter:" label.
        adapter = xml.get_widget("CosnetworkNetworkAdapterLabel")
        assert len(userchoices.getCosNICs()) > 0
        device = userchoices.getCosNICs()[0]['device']
        adapter.set_text(device.name)

        connectSignalHandlerByDict(self, CosNetworkWindow, xml,
          {('activate_button', 'clicked'): 'onActivateButtonClicked',
          })
Esempio n. 9
0
    def __init__(self, settings):
        CommonWindow.__init__(self)
        gladePath = os.path.join(os.path.dirname(__file__),
                                 'glade/storage-widgets.glade')
        self.xml = gtk.glade.XML(gladePath)

        self.dialog = self.xml.get_widget(settings['dialog'])

        self.text = self.xml.get_widget(settings['text'])

        self.okButton = self.xml.get_widget(settings['okButton'])
        self.cancelButton = self.xml.get_widget(settings['okButton'])
        self.checkButton = self.xml.get_widget(settings['checkButton'])

        self.rc = 1

        connectSignalHandlerByDict(
            self, self.__class__.__name__, self.xml, {
                (settings['cancelButton'], 'clicked'): 'cancelClicked',
                (settings['okButton'], 'clicked'): 'okClicked',
                (settings['checkButton'], 'toggled'): 'checkbuttonToggled',
            })

        self.addFrameToWindow()

        self.dialog.set_position(gtk.WIN_POS_CENTER)

        self.dialog.connect("key-press-event", self.keypress)
Esempio n. 10
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowTitle = "ESX Storage Device"
        controlState.windowText = "Select a location to install ESX"
        controlState.windowIcon = "drive.png"

        self.xml = xml

        self.controlState = controlState

        self.view = xml.get_widget("EsxlocationView")
        self.scrolled = xml.get_widget("EsxlocationScrolled")

        storage_widgets.setupStorageView(self.view)

        # only repopulate the esxlocation if we need to
        if userchoices.getResetEsxLocation():
            model = \
                storage_widgets.populateStorageModel(self.view, self.scrolled,
                                                     devices.DiskSet(),
                                                     vmfsSupport=False)
            storage_widgets.findFirstSelectableRow(model, self.view,
                                                   SUPPORTED_DISK_ENTRY)

        connectSignalHandlerByDict(
            self, EsxLocationWindow, self.xml, {
                ('EsxlocationDetailsButton', 'clicked'): 'showDetails',
            })
Esempio n. 11
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'adminpassword.png'
        controlState.windowTitle = "Set Administrator Password"
        controlState.windowText = \
            "Enter the administrator (root) password for ESX"

        self.controlState = controlState
        self.xml = xml
        self.accounts = []

        self.passwdEntry1 = self.xml.get_widget("RootpasswordPassword1Entry")
        self.passwdEntry2 = self.xml.get_widget("RootpasswordPassword2Entry")

        self.view = self.xml.get_widget("AdduserTreeView")
        self.scrolled = self.xml.get_widget("AdduserScrolledWindow")
        self.removeButton = self.xml.get_widget("RemoveuserButton")

        self.addUserWindow = AddUserWindow(self.xml, self)

        setupUserAccountsView(self.view, self.scrolled)

        connectSignalHandlerByDict(self, PasswordWindow, self.xml,
          { ('AdduserButton', 'clicked'): 'addUser',
            ('RemoveuserButton', 'clicked'): 'removeUser',
          })

        self.restoreUsers()

        controlState.initialFocus = self.passwdEntry1
Esempio n. 12
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'network_media.png'
        controlState.windowTitle = "World Wide Web (HTTP) Installation"
        controlState.windowText = "Enter the URL for the ESX installation media"

        self.xml = xml

        connectSignalHandlerByDict(self, HTTPInstallMediaWindow, self.xml,
          { ('HttpProxyCheckButton', 'toggled'): 'toggleProxy',
            ('HttpProxyUserCheckButton', 'toggled'): 'toggleUserProxy',
          })
Esempio n. 13
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'partitioning.png'
        controlState.windowTitle = "Service Console Virtual Disk Image"
        controlState.windowText = \
            "Configure the service console virtual disk image"

        global _resetPartitions, _datastoreDevice

        # reset the vmdk partitions if the datastore device has been changed
        if userchoices.getEsxDatastoreDevice() != _datastoreDevice:
            _resetPartitions = True

        _datastoreDevice = userchoices.getEsxDatastoreDevice()

        self.xml = xml
        self.diskSet = devices.DiskSet()

        self.maxVmdkSize = devices.runtimeActionFindMaxVmdkSize()

        self.consoleVMSizeLabel = xml.get_widget("SetupvmdksizeLabel")
        self.view = xml.get_widget("SetupvmdkTreeView")
        self.scrolled = xml.get_widget("SetupvmdkScrolledWindow")

        # Download the package data so we can figure out the minimum partition
        # sizes
        weaselConfig = systemsettings.WeaselConfig()
        packagesXML = packages.getPackagesXML(weaselConfig.packageGroups)
        packageData = packages.PackageData(packagesXML.fullInstallDepot)

        self.fileSizes = packageData.fileDict

        self.requests = None
        self.newButton = xml.get_widget("SetupvmdkNewButton")
        self.deleteButton = xml.get_widget("SetupvmdkDeleteButton")

        if _resetPartitions:
            self._resetPartitions()
            _resetPartitions = False
            
        self.setupVirtualDevice()

        connectSignalHandlerByDict(self, SetupVmdkWindow, self.xml,
          { ('SetupvmdkNewButton', 'clicked') : 'newPartition',
            ('SetupvmdkEditButton', 'clicked') : 'editPartition',
            ('SetupvmdkDeleteButton', 'clicked') : 'deletePartition',
            ('SetupvmdkResetButton', 'clicked') : 'resetPartitions',
          })

        self.partitionWindow = PartitionWindow(xml, self)

        self.setButtons()
Esempio n. 14
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'setuptype.png'
        controlState.windowTitle = "Setup Type"
        controlState.windowText = \
            "Specify the type of setup for this installation"

        self.controlState = controlState
        self.xml = xml

        self.setupChoice = self.xml.get_widget("SetupchoiceBootloaderHBox")

        connectSignalHandlerByDict(self, SetupChoiceWindow, self.xml,
          { ('SetupchoicebasicRadioButton', 'toggled'): 'toggleSetupChoice',
        })
Esempio n. 15
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'setuptype.png'
        controlState.windowTitle = "Setup Type"
        controlState.windowText = \
            "Specify the type of setup for this installation"

        self.controlState = controlState
        self.xml = xml

        self.setupChoice = self.xml.get_widget("SetupchoiceBootloaderHBox")

        connectSignalHandlerByDict(self, SetupChoiceWindow, self.xml, {
            ('SetupchoicebasicRadioButton', 'toggled'):
            'toggleSetupChoice',
        })
Esempio n. 16
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'network_media.png'
        controlState.windowTitle = "File System (FTP) Installation"
        controlState.windowText = "Enter the FTP settings for the ESX " + \
                                  "installation media"

        self.xml = xml

        connectSignalHandlerByDict(
            self, FTPInstallMediaWindow, self.xml, {
                ('FtpProxyCheckButton', 'toggled'): 'toggleProxy',
                ('FtpProxyUserCheckButton', 'toggled'): 'toggleUserProxy',
                ('FtpNonAnonLoginCheckButton', 'toggled'):
                'toggleNonAnonLogin',
            })

        self._setupUrl()
Esempio n. 17
0
    def __init__(self, xml, parent):
        CommonWindow.__init__(self)

        self.xml = xml
        self.parent = parent

        self.userName = self.xml.get_widget("AdduserNameEntry")
        self.passwdEntry1 = self.xml.get_widget("AdduserPassword1Entry")
        self.passwdEntry2 = self.xml.get_widget("AdduserPassword2Entry")

        self.dialog = self.xml.get_widget("adduser")

        connectSignalHandlerByDict(
            self, AddUserWindow, self.xml, {
                ('AdduserOkButton', 'clicked'): 'okClicked',
                ('AdduserCancelButton', 'clicked'): 'cancelClicked',
            })

        self.addFrameToWindow()
Esempio n. 18
0
    def __init__(self, xml, parent):
        CommonWindow.__init__(self)

        self.xml = xml
        self.parent = parent

        self.userName = self.xml.get_widget("AdduserNameEntry")
        self.passwdEntry1 = self.xml.get_widget("AdduserPassword1Entry")
        self.passwdEntry2 = self.xml.get_widget("AdduserPassword2Entry")

        self.dialog = self.xml.get_widget("adduser")

        connectSignalHandlerByDict(self, AddUserWindow, self.xml,
          { ('AdduserOkButton', 'clicked'): 'okClicked',
            ('AdduserCancelButton', 'clicked'): 'cancelClicked',
          })


        self.addFrameToWindow()
Esempio n. 19
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'datastore.png'
        controlState.windowTitle = "Datastore"
        controlState.windowText = "Specify a datastore for ESX"

        self.xml = xml

        self.diskSet = devices.DiskSet()
        self.datastoreSet = datastore.DatastoreSet()

        self.datastoreExistTable = xml.get_widget("DatastoreexistingTable")
        self.datastoreCreateTable = xml.get_widget("DatastorecreateTable")

        connectSignalHandlerByDict(
            self, DataStoreWindow, self.xml, {
                ('DatastoredeviceButton', 'clicked'): 'createNewDatastore',
                ('DatastorepartitionButton', 'clicked'): 'selectDatastore',
                ('DatastorecreateRadioButton', 'toggled'):
                'toggleDatastoreChoice',
                ('DatastoreCheckButton', 'toggled'): 'toggleSameDevice',
            })

        self.defaultDeviceName = userchoices.getEsxPhysicalDevice()

        # set up the aux. helper windows
        self.createDataStoreWindow = \
            CreateDataStoreWindow(self.xml, self.diskSet, self)
        self.selectDataStoreWindow = \
            SelectDataStoreWindow(self.xml, self.datastoreSet, self)

        # find the existing vmdk size that we're going to remove
        vmdkPath = userchoices.getExistingVmdkLocation().get('vmdkLocation')
        self.vmdkSize = devices.runtimeActionFindExistingVmdkSize(vmdkPath)

        self.preserveVmfs = bool(userchoices.getPartitionMountRequests())

        if userchoices.getResetEsxLocation():
            self.setup()
            userchoices.setResetEsxLocation(False)
Esempio n. 20
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'eula.png'
        controlState.windowTitle = "End User License Agreement"
        controlState.windowText = "To continue with the installation, " + \
            "please read and accept the end user license agreement."
        controlState.nextButtonEnabled = False

        self.checked = xml.get_widget("EulaCheckButton")
        controlState.initialFocus = self.checked

        self.controlState = controlState

        self.xml = xml

        self.setupEula()

        connectSignalHandlerByDict(self, EulaWindow, self.xml,
          { ('EulaCheckButton', 'clicked') : 'acceptedEula',
          })

        self.setupEulaAccepted()
Esempio n. 21
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowIcon = 'datastore.png'
        controlState.windowTitle = "Datastore"
        controlState.windowText = "Specify a datastore for ESX"

        self.xml = xml

        self.diskSet = devices.DiskSet()
        self.datastoreSet = datastore.DatastoreSet()

        self.datastoreExistTable = xml.get_widget("DatastoreexistingTable")
        self.datastoreCreateTable = xml.get_widget("DatastorecreateTable")

        connectSignalHandlerByDict(self, DataStoreWindow, self.xml,
          { ('DatastoredeviceButton', 'clicked'): 'createNewDatastore',
            ('DatastorepartitionButton', 'clicked'): 'selectDatastore',
            ('DatastorecreateRadioButton', 'toggled'): 'toggleDatastoreChoice',
            ('DatastoreCheckButton', 'toggled'): 'toggleSameDevice',
          })

        self.defaultDeviceName = userchoices.getEsxPhysicalDevice()

        # set up the aux. helper windows
        self.createDataStoreWindow = \
            CreateDataStoreWindow(self.xml, self.diskSet, self)
        self.selectDataStoreWindow = \
            SelectDataStoreWindow(self.xml, self.datastoreSet, self)

        # find the existing vmdk size that we're going to remove
        vmdkPath = userchoices.getExistingVmdkLocation().get('vmdkLocation')
        self.vmdkSize = devices.runtimeActionFindExistingVmdkSize(vmdkPath)

        self.preserveVmfs = bool(userchoices.getPartitionMountRequests())

        if userchoices.getResetEsxLocation():
            self.setup()
            userchoices.setResetEsxLocation(False)
Esempio n. 22
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowTitle = "ESX Storage Device"
        controlState.windowText = "Select a location to install ESX"
        controlState.windowIcon = "drive.png"

        self.controlState = controlState
        self.xml = xml

        self.view = xml.get_widget("InstalllocationView")
        self.scrolled = xml.get_widget("InstalllocationScrolled")

        storage_widgets.setupStorageView(self.view)

        model = storage_widgets.populateStorageModel(
            self.view, self.scrolled, devices.DiskSet())

        storage_widgets.findFirstSelectableRow(model,
            self.view, SUPPORTED_DISK_ENTRY)

        connectSignalHandlerByDict(self, InstallLocationWindow, self.xml,
          { ('InstalllocationDetailsButton', 'clicked'): 'showDetails',
          })
Esempio n. 23
0
    def __init__(self, xml, parent):
        CommonWindow.__init__(self)

        self.dialog = xml.get_widget("partition")
        self.xml = xml
        self.parent = parent

        # used to keep track if we're editing a partition or creating a new
        # one
        self.currentRequest = None

        connectSignalHandlerByDict(self, PartitionWindow, self.xml,
          { ('PartitionOkButton', 'clicked') : 'okClicked',
            ('PartitionCancelButton', 'clicked') : 'cancelClicked',
            ('PartitionfsComboBox', 'changed') : 'checkFs',
          })


        populateSizeEntries(xml.get_widget("PartitionsizeComboBox"))
        populateMountPoints(xml.get_widget("PartitionMountpointComboBoxEntry"))
        populateFsEntries(xml.get_widget("PartitionfsComboBox"))

        self.addFrameToWindow()
Esempio n. 24
0
    def __init__(self, parent):
        CommonWindow.__init__(self)

        self.parent = parent
        self.xml = parent.xml

        self.dialog = self.xml.get_widget('adddrivers')
        assert self.dialog

        if not os.path.exists(customdrivers.DRIVER_DEPOT_DIR):
            os.makedirs(customdrivers.DRIVER_DEPOT_DIR)

        connectSignalHandlerByDict(self, AddDrivers, self.xml,
          { ('AdddriversOkButton', 'clicked') : 'importClicked',
            ('AdddriversCancelButton', 'clicked') : 'cancelClicked',
          })

        self.view = self.xml.get_widget('AdddriversTreeView')
        self.scrolled = self.xml.get_widget('AdddriversScrolledWindow')

        _setupAddDriversView(self.view)

        self.addFrameToWindow()
Esempio n. 25
0
    def __init__(self, controlState, xml):
        controlState.displayHeaderBar = True
        controlState.windowTitle = "ESX Storage Device"
        controlState.windowText = "Select a location to install ESX"
        controlState.windowIcon = "drive.png"

        self.controlState = controlState
        self.xml = xml

        self.view = xml.get_widget("InstalllocationView")
        self.scrolled = xml.get_widget("InstalllocationScrolled")

        storage_widgets.setupStorageView(self.view)

        model = storage_widgets.populateStorageModel(self.view, self.scrolled,
                                                     devices.DiskSet())

        storage_widgets.findFirstSelectableRow(model, self.view,
                                               SUPPORTED_DISK_ENTRY)

        connectSignalHandlerByDict(
            self, InstallLocationWindow, self.xml, {
                ('InstalllocationDetailsButton', 'clicked'): 'showDetails',
            })
Esempio n. 26
0
 def _singleton_init(self, controlState, xml):
     self.timezones = TimezoneList()
     chosenTZ = userchoices.getTimezone()
     if chosenTZ:
         self.selectedTZ = self.timezones.findByCityName( chosenTZ['city'] )
     else:
         self.selectedTZ = self.timezones.defaultTimezone
     
     connectSignalHandlerByDict(self, TimezoneWindow, xml,
       { ('advanced_ok', 'clicked'): 'onCityListSelect',
         ('advanced_cancel', 'clicked'): 'onCityListCancel',
         ('tz_button', 'clicked'): 'onAdvancedClicked',
         ('TimezoneDrawingArea', 'motion_notify_event'): 'onTZDrawMotion',
         ('TimezoneDrawingArea', 'button_press_event'): 'onTZDrawPress',
         ('TimezoneDrawingArea', 'button_release_event'): 'onTZDrawRelease',
         ('TimezoneDrawingArea', 'expose_event'): 'onTZDrawExpose',
       })
     
     self.tzEntry = xml.get_widget("tz_entry")
     self.advancedDialog = AdvancedDialog(xml)
     self.allTZsView = xml.get_widget("tz_treeview")
     
     self.setupMap(xml)
     self.setupTimezone(xml)
Esempio n. 27
0
    def __init__(self, parent):
        CommonWindow.__init__(self)
        self.xml = parent.xml

        self.acceptedEula = False

        self.dialog = self.xml.get_widget('drivereula')
        assert self.dialog

        self.okButton = self.xml.get_widget('DrivereulaOkButton')
        self.checkButton = self.xml.get_widget('DrivereulaCheckButton')
        self.okButton.set_sensitive(self.checkButton.get_active())

        connectSignalHandlerByDict(self, AddDrivers, self.xml,
          { ('DrivereulaOkButton', 'clicked') : 'okClicked',
            ('DrivereulaCancelButton', 'clicked') : 'cancelClicked',
            ('DrivereulaCheckButton', 'toggled') : 'checkbuttonToggled',
          })

        self.setupEula()
        self.addFrameToWindow()

        self.dialog.set_position(gtk.WIN_POS_CENTER)
        self.dialog.show_all()