def __init__(self, ios_routers, parent): super().__init__(ios_routers, Dynamips.instance().settings()["use_local_server"], parent) self.setPixmap(QtWidgets.QWizard.LogoPixmap, QtGui.QPixmap(":/symbols/router.svg")) self.uiTestIOSImagePushButton.clicked.connect(self._testIOSImageSlot) self.uiIdlePCFinderPushButton.clicked.connect(self._idlePCFinderSlot) self.uiEtherSwitchCheckBox.stateChanged.connect(self._etherSwitchSlot) self.uiPlatformComboBox.currentIndexChanged[str].connect( self._platformChangedSlot) self.uiPlatformComboBox.addItems(list(PLATFORMS_DEFAULT_RAM.keys())) self._router = None # Validate the Idle PC value self._idle_valid = False idle_pc_rgx = QtCore.QRegExp("^(0x[0-9a-fA-F]{8})?$") validator = QtGui.QRegExpValidator(idle_pc_rgx, self) self.uiIdlepcLineEdit.setValidator(validator) self.uiIdlepcLineEdit.textChanged.connect(self._idlePCValidateSlot) self.uiIdlepcLineEdit.textChanged.emit(self.uiIdlepcLineEdit.text()) # location of the base config templates self._base_startup_config_template = get_resource( os.path.join("configs", "ios_base_startup-config.txt")) self._base_etherswitch_startup_config_template = get_resource( os.path.join("configs", "ios_etherswitch_startup-config.txt")) # FIXME: hide because of issue on Windows. self.uiTestIOSImagePushButton.hide() # Mandatory fields self.uiNameWizardPage.registerField("name*", self.uiNameLineEdit) self.uiIOSImageWizardPage.registerField("image*", self.uiIOSImageLineEdit) self._widget_slots = { 0: self.uiSlot0comboBox, 1: self.uiSlot1comboBox, 2: self.uiSlot2comboBox, 3: self.uiSlot3comboBox, 4: self.uiSlot4comboBox, 5: self.uiSlot5comboBox, 6: self.uiSlot6comboBox } self._widget_wics = { 0: self.uiWic0comboBox, 1: self.uiWic1comboBox, 2: self.uiWic2comboBox } from ..pages.ios_router_preferences_page import IOSRouterPreferencesPage self.addImageSelector(self.uiIOSExistingImageRadioButton, self.uiIOSImageListComboBox, self.uiIOSImageLineEdit, self.uiIOSImageToolButton, IOSRouterPreferencesPage.getIOSImage)
def __init__(self): QtGui.QWidget.__init__(self) self.setupUi(self) self._widget_slots = {0: self.uiSlot0comboBox, 1: self.uiSlot1comboBox, 2: self.uiSlot2comboBox, 3: self.uiSlot3comboBox, 4: self.uiSlot4comboBox, 5: self.uiSlot5comboBox, 6: self.uiSlot6comboBox} self._widget_wics = {0: self.uiWic0comboBox, 1: self.uiWic1comboBox, 2: self.uiWic2comboBox} self.uiStartupConfigToolButton.clicked.connect(self._startupConfigBrowserSlot) self.uiPrivateConfigToolButton.clicked.connect(self._privateConfigBrowserSlot) self.uiIOSImageToolButton.clicked.connect(self._iosImageBrowserSlot) self._idle_valid = False idle_pc_rgx = QtCore.QRegExp("^(0x[0-9a-fA-F]{8})?$") validator = QtGui.QRegExpValidator(idle_pc_rgx, self) self.uiIdlepcLineEdit.setValidator(validator) self.uiIdlepcLineEdit.textChanged.connect(self._idlePCValidateSlot) self.uiIdlepcLineEdit.textChanged.emit(self.uiIdlepcLineEdit.text())
def __init__(self): super().__init__() self.setupUi(self) self._widget_slots = {0: self.uiSlot0comboBox, 1: self.uiSlot1comboBox, 2: self.uiSlot2comboBox, 3: self.uiSlot3comboBox, 4: self.uiSlot4comboBox, 5: self.uiSlot5comboBox, 6: self.uiSlot6comboBox} self._widget_wics = {0: self.uiWic0comboBox, 1: self.uiWic1comboBox, 2: self.uiWic2comboBox} self.uiStartupConfigToolButton.clicked.connect(self._startupConfigBrowserSlot) self.uiPrivateConfigToolButton.clicked.connect(self._privateConfigBrowserSlot) self.uiSymbolToolButton.clicked.connect(self._symbolBrowserSlot) self.uiIOSImageToolButton.clicked.connect(self._iosImageBrowserSlot) self._server = None self._idle_valid = False idle_pc_rgx = QtCore.QRegExp("^(0x[0-9a-fA-F]{8})?$") validator = QtGui.QRegExpValidator(idle_pc_rgx, self) self.uiIdlepcLineEdit.setValidator(validator) self.uiIdlepcLineEdit.textChanged.connect(self._idlePCValidateSlot) self.uiIdlepcLineEdit.textChanged.emit(self.uiIdlepcLineEdit.text()) self._default_configs_dir = Servers.instance().localServerSettings()["configs_path"] # add the categories for name, category in Node.defaultCategories().items(): self.uiCategoryComboBox.addItem(name, category)
def __init__(self, ios_routers, parent): QtGui.QWizard.__init__(self, parent) self.setupUi(self) self.setPixmap(QtGui.QWizard.LogoPixmap, QtGui.QPixmap(":/symbols/router.normal.svg")) self.setWizardStyle(QtGui.QWizard.ModernStyle) if sys.platform.startswith("darwin"): # we want to see the cancel button on OSX self.setOptions(QtGui.QWizard.NoDefaultButton) self.uiRemoteRadioButton.toggled.connect(self._remoteServerToggledSlot) self.uiLoadBalanceCheckBox.toggled.connect(self._loadBalanceToggledSlot) self.uiIOSImageToolButton.clicked.connect(self._iosImageBrowserSlot) self.uiTestIOSImagePushButton.clicked.connect(self._testIOSImageSlot) self.uiIdlePCFinderPushButton.clicked.connect(self._idlePCFinderSlot) self.uiEtherSwitchCheckBox.stateChanged.connect(self._etherSwitchSlot) self.uiPlatformComboBox.currentIndexChanged[str].connect(self._platformChangedSlot) self.uiPlatformComboBox.addItems(list(PLATFORMS_DEFAULT_RAM.keys())) self._router = None # Validate the Idle PC value self._idle_valid = False idle_pc_rgx = QtCore.QRegExp("^(0x[0-9a-fA-F]{8})?$") validator = QtGui.QRegExpValidator(idle_pc_rgx, self) self.uiIdlepcLineEdit.setValidator(validator) self.uiIdlepcLineEdit.textChanged.connect(self._idlePCValidateSlot) self.uiIdlepcLineEdit.textChanged.emit(self.uiIdlepcLineEdit.text()) # location of the base config templates self._base_startup_config_template = get_resource(os.path.join("configs", "ios_base_startup-config.txt")) self._base_private_config_template = get_resource(os.path.join("configs", "ios_base_private-config.txt")) self._base_etherswitch_startup_config_template = get_resource(os.path.join("configs", "ios_etherswitch_startup-config.txt")) # FIXME: hide because of issue on Windows. self.uiTestIOSImagePushButton.hide() # Mandatory fields self.uiNamePlatformWizardPage.registerField("name*", self.uiNameLineEdit) self.uiIOSImageWizardPage.registerField("image*", self.uiIOSImageLineEdit) self._widget_slots = {0: self.uiSlot0comboBox, 1: self.uiSlot1comboBox, 2: self.uiSlot2comboBox, 3: self.uiSlot3comboBox, 4: self.uiSlot4comboBox, 5: self.uiSlot5comboBox, 6: self.uiSlot6comboBox} self._widget_wics = {0: self.uiWic0comboBox, 1: self.uiWic1comboBox, 2: self.uiWic2comboBox} self._ios_routers = ios_routers if Dynamips.instance().settings()["use_local_server"]: # skip the server page if we use the local server self.setStartId(1) if not ENABLE_CLOUD: self.uiCloudRadioButton.hide()