diff --git a/gns3/console_view.py b/gns3/console_view.py
index 23aaa1af..417e5580 100644
--- a/gns3/console_view.py
+++ b/gns3/console_view.py
@@ -75,6 +75,14 @@ class ConsoleView(PyCutExt, ConsoleCmd):
instance = module.instance()
instance.notification_signal.connect(self.writeNotification)
+ def isatty(self):
+ """
+ For exception handling purposes
+ (see exception hook in the program entry point).
+ """
+
+ return False
+
def onKeyPress_Tab(self):
"""
Imitate cmd.Cmd.complete(self, text, state) function.
diff --git a/gns3/main.py b/gns3/main.py
index b112d141..77406d33 100644
--- a/gns3/main.py
+++ b/gns3/main.py
@@ -92,15 +92,20 @@ def main():
lines = traceback.format_exception(exception, value, tb)
print("****** Exception detected, traceback information saved in {} ******".format(exception_file_path))
print("\n----> PLEASE REPORT ON http://forum.gns3.net/development-f14.html OR http://github.com/GNS3/gns3-gui/issues\n")
- print("\n" . join(lines))
+ print("".join(lines))
try:
curdate = time.strftime("%d %b %Y %H:%M:%S")
logfile = open(exception_file_path, "a")
logfile.write("=== GNS3 {} traceback on {} ===\n".format(__version__, curdate))
- logfile.write("\n" . join(lines))
+ logfile.write("".join(lines))
logfile.close()
except OSError as e:
print("Could not save traceback to {}: {}".format(exception_file_path, e))
+
+ if not sys.stdout.isatty():
+ # if stdout is not a tty (redirected to the console view),
+ # then print the exception on stderr too.
+ print("".join(lines), file=sys.stderr)
# catch exceptions to write them in a file
sys.excepthook = exceptionHook
diff --git a/gns3/modules/dynamips/ui/dynamips_preferences_page_ui.py b/gns3/modules/dynamips/ui/dynamips_preferences_page_ui.py
index 63faa091..df0f977b 100644
--- a/gns3/modules/dynamips/ui/dynamips_preferences_page_ui.py
+++ b/gns3/modules/dynamips/ui/dynamips_preferences_page_ui.py
@@ -1,9 +1,9 @@
# -*- coding: utf-8 -*-
-# Form implementation generated from reading ui file '/home/grossmj/workspace/git/gns3-gui/gns3/modules/dynamips/ui/dynamips_preferences_page.ui'
+# Form implementation generated from reading ui file '/home/grossmj/git/gns3-gui/gns3/modules/dynamips/ui/dynamips_preferences_page.ui'
#
-# Created: Wed Apr 30 18:10:08 2014
-# by: PyQt4 UI code generator 4.10
+# Created: Wed May 7 13:39:06 2014
+# by: PyQt4 UI code generator 4.10.4
#
# WARNING! All changes made in this file will be lost!
@@ -54,28 +54,13 @@ class Ui_DynamipsPreferencesPageWidget(object):
self.uiDynamipsPathToolButton.setObjectName(_fromUtf8("uiDynamipsPathToolButton"))
self.horizontalLayout.addWidget(self.uiDynamipsPathToolButton)
self.gridLayout.addLayout(self.horizontalLayout, 1, 0, 1, 2)
- self.uiAuxPortRangeGroupBox = QtGui.QGroupBox(self.uiGeneralSettingsTabWidget)
- self.uiAuxPortRangeGroupBox.setObjectName(_fromUtf8("uiAuxPortRangeGroupBox"))
- self.horizontalLayout_6 = QtGui.QHBoxLayout(self.uiAuxPortRangeGroupBox)
- self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
- self.uiAuxStartPortSpinBox = QtGui.QSpinBox(self.uiAuxPortRangeGroupBox)
- self.uiAuxStartPortSpinBox.setSuffix(_fromUtf8(" TCP"))
- self.uiAuxStartPortSpinBox.setMaximum(65535)
- self.uiAuxStartPortSpinBox.setProperty("value", 2501)
- self.uiAuxStartPortSpinBox.setObjectName(_fromUtf8("uiAuxStartPortSpinBox"))
- self.horizontalLayout_6.addWidget(self.uiAuxStartPortSpinBox)
- self.uiAuxPortRangeLabel = QtGui.QLabel(self.uiAuxPortRangeGroupBox)
- self.uiAuxPortRangeLabel.setObjectName(_fromUtf8("uiAuxPortRangeLabel"))
- self.horizontalLayout_6.addWidget(self.uiAuxPortRangeLabel)
- self.uiAuxEndPortSpinBox = QtGui.QSpinBox(self.uiAuxPortRangeGroupBox)
- self.uiAuxEndPortSpinBox.setSuffix(_fromUtf8(" TCP"))
- self.uiAuxEndPortSpinBox.setMaximum(65535)
- self.uiAuxEndPortSpinBox.setProperty("value", 3000)
- self.uiAuxEndPortSpinBox.setObjectName(_fromUtf8("uiAuxEndPortSpinBox"))
- self.horizontalLayout_6.addWidget(self.uiAuxEndPortSpinBox)
- spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
- self.horizontalLayout_6.addItem(spacerItem)
- self.gridLayout.addWidget(self.uiAuxPortRangeGroupBox, 3, 0, 1, 1)
+ self.uiDynamipsPathLabel = QtGui.QLabel(self.uiGeneralSettingsTabWidget)
+ self.uiDynamipsPathLabel.setObjectName(_fromUtf8("uiDynamipsPathLabel"))
+ self.gridLayout.addWidget(self.uiDynamipsPathLabel, 0, 0, 1, 2)
+ spacerItem = QtGui.QSpacerItem(164, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+ self.gridLayout.addItem(spacerItem, 4, 1, 1, 1)
+ spacerItem1 = QtGui.QSpacerItem(390, 193, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
+ self.gridLayout.addItem(spacerItem1, 5, 0, 1, 2)
self.uiConsolePortRangeGroupBox = QtGui.QGroupBox(self.uiGeneralSettingsTabWidget)
self.uiConsolePortRangeGroupBox.setObjectName(_fromUtf8("uiConsolePortRangeGroupBox"))
self.horizontalLayout_5 = QtGui.QHBoxLayout(self.uiConsolePortRangeGroupBox)
@@ -95,16 +80,31 @@ class Ui_DynamipsPreferencesPageWidget(object):
self.uiConsoleEndPortSpinBox.setProperty("value", 2500)
self.uiConsoleEndPortSpinBox.setObjectName(_fromUtf8("uiConsoleEndPortSpinBox"))
self.horizontalLayout_5.addWidget(self.uiConsoleEndPortSpinBox)
- spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
- self.horizontalLayout_5.addItem(spacerItem1)
- self.gridLayout.addWidget(self.uiConsolePortRangeGroupBox, 2, 0, 1, 1)
- self.uiDynamipsPathLabel = QtGui.QLabel(self.uiGeneralSettingsTabWidget)
- self.uiDynamipsPathLabel.setObjectName(_fromUtf8("uiDynamipsPathLabel"))
- self.gridLayout.addWidget(self.uiDynamipsPathLabel, 0, 0, 1, 2)
- spacerItem2 = QtGui.QSpacerItem(164, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
- self.gridLayout.addItem(spacerItem2, 4, 1, 1, 1)
- spacerItem3 = QtGui.QSpacerItem(390, 193, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
- self.gridLayout.addItem(spacerItem3, 5, 0, 1, 2)
+ spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+ self.horizontalLayout_5.addItem(spacerItem2)
+ self.gridLayout.addWidget(self.uiConsolePortRangeGroupBox, 2, 0, 1, 2)
+ self.uiAuxPortRangeGroupBox = QtGui.QGroupBox(self.uiGeneralSettingsTabWidget)
+ self.uiAuxPortRangeGroupBox.setObjectName(_fromUtf8("uiAuxPortRangeGroupBox"))
+ self.horizontalLayout_6 = QtGui.QHBoxLayout(self.uiAuxPortRangeGroupBox)
+ self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
+ self.uiAuxStartPortSpinBox = QtGui.QSpinBox(self.uiAuxPortRangeGroupBox)
+ self.uiAuxStartPortSpinBox.setSuffix(_fromUtf8(" TCP"))
+ self.uiAuxStartPortSpinBox.setMaximum(65535)
+ self.uiAuxStartPortSpinBox.setProperty("value", 2501)
+ self.uiAuxStartPortSpinBox.setObjectName(_fromUtf8("uiAuxStartPortSpinBox"))
+ self.horizontalLayout_6.addWidget(self.uiAuxStartPortSpinBox)
+ self.uiAuxPortRangeLabel = QtGui.QLabel(self.uiAuxPortRangeGroupBox)
+ self.uiAuxPortRangeLabel.setObjectName(_fromUtf8("uiAuxPortRangeLabel"))
+ self.horizontalLayout_6.addWidget(self.uiAuxPortRangeLabel)
+ self.uiAuxEndPortSpinBox = QtGui.QSpinBox(self.uiAuxPortRangeGroupBox)
+ self.uiAuxEndPortSpinBox.setSuffix(_fromUtf8(" TCP"))
+ self.uiAuxEndPortSpinBox.setMaximum(65535)
+ self.uiAuxEndPortSpinBox.setProperty("value", 3000)
+ self.uiAuxEndPortSpinBox.setObjectName(_fromUtf8("uiAuxEndPortSpinBox"))
+ self.horizontalLayout_6.addWidget(self.uiAuxEndPortSpinBox)
+ spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+ self.horizontalLayout_6.addItem(spacerItem3)
+ self.gridLayout.addWidget(self.uiAuxPortRangeGroupBox, 3, 0, 1, 2)
self.uiTabWidget.addTab(self.uiGeneralSettingsTabWidget, _fromUtf8(""))
self.uiServerSettingsTabWidget = QtGui.QWidget()
self.uiServerSettingsTabWidget.setObjectName(_fromUtf8("uiServerSettingsTabWidget"))
@@ -239,11 +239,11 @@ class Ui_DynamipsPreferencesPageWidget(object):
self.uiTestSettingsPushButton.setText(_translate("DynamipsPreferencesPageWidget", "Test settings", None))
self.uiRestoreDefaultsPushButton.setText(_translate("DynamipsPreferencesPageWidget", "Restore defaults", None))
self.uiDynamipsPathToolButton.setText(_translate("DynamipsPreferencesPageWidget", "...", None))
- self.uiAuxPortRangeGroupBox.setTitle(_translate("DynamipsPreferencesPageWidget", "Auxiliary console port range for routers", None))
- self.uiAuxPortRangeLabel.setText(_translate("DynamipsPreferencesPageWidget", "to", None))
+ self.uiDynamipsPathLabel.setText(_translate("DynamipsPreferencesPageWidget", "Path to Dynamips:", None))
self.uiConsolePortRangeGroupBox.setTitle(_translate("DynamipsPreferencesPageWidget", "Console port range for routers", None))
self.uiConsolePortRangeLabel.setText(_translate("DynamipsPreferencesPageWidget", "to", None))
- self.uiDynamipsPathLabel.setText(_translate("DynamipsPreferencesPageWidget", "Path to Dynamips:", None))
+ self.uiAuxPortRangeGroupBox.setTitle(_translate("DynamipsPreferencesPageWidget", "Auxiliary console port range for routers", None))
+ self.uiAuxPortRangeLabel.setText(_translate("DynamipsPreferencesPageWidget", "to", None))
self.uiTabWidget.setTabText(self.uiTabWidget.indexOf(self.uiGeneralSettingsTabWidget), _translate("DynamipsPreferencesPageWidget", "General settings", None))
self.uiUseLocalServercheckBox.setText(_translate("DynamipsPreferencesPageWidget", "Use the local server", None))
self.uiRemoteServersGroupBox.setTitle(_translate("DynamipsPreferencesPageWidget", "Remote servers", None))
diff --git a/gns3/modules/iou/__init__.py b/gns3/modules/iou/__init__.py
index 0e1181a3..c1887936 100644
--- a/gns3/modules/iou/__init__.py
+++ b/gns3/modules/iou/__init__.py
@@ -90,6 +90,7 @@ class IOU(Module):
path = settings.value("path", "")
image = settings.value("image", "")
startup_config = settings.value("startup_config", "")
+ use_default_iou_values = settings.value("use_default_iou_values", True, type=bool)
ram = settings.value("ram", 256, type=int)
nvram = settings.value("nvram", 128, type=int)
server = settings.value("server", "local")
@@ -97,6 +98,7 @@ class IOU(Module):
self._iou_images[key] = {"path": path,
"image": image,
"startup_config": startup_config,
+ "use_default_iou_values": use_default_iou_values,
"ram": ram,
"nvram": nvram,
"server": server}
@@ -374,11 +376,14 @@ class IOU(Module):
startup_config = self._iou_images[iouimage]["startup_config"]
iou_path = self._iou_images[iouimage]["path"]
+ use_default_iou_values = self._iou_images[iouimage]["use_default_iou_values"]
settings = {}
if startup_config:
settings["startup_config"] = startup_config
- settings["ram"] = self._iou_images[iouimage]["ram"]
- settings["nvram"] = self._iou_images[iouimage]["nvram"]
+ settings["use_default_iou_values"] = use_default_iou_values
+ if not use_default_iou_values:
+ settings["ram"] = self._iou_images[iouimage]["ram"]
+ settings["nvram"] = self._iou_images[iouimage]["nvram"]
node.setup(iou_path, initial_settings=settings)
def reset(self):
diff --git a/gns3/modules/iou/iou_device.py b/gns3/modules/iou/iou_device.py
index 2780b5dc..4cac08d1 100644
--- a/gns3/modules/iou/iou_device.py
+++ b/gns3/modules/iou/iou_device.py
@@ -51,6 +51,7 @@ class IOUDevice(Node):
self._settings = {"name": "",
"path": "",
"startup_config": "",
+ "use_default_iou_values": True,
"ram": 256,
"nvram": 128,
"ethernet_adapters": 2,
diff --git a/gns3/modules/iou/pages/iou_device_configuration_page.py b/gns3/modules/iou/pages/iou_device_configuration_page.py
index bc5a09b7..1aba4d24 100644
--- a/gns3/modules/iou/pages/iou_device_configuration_page.py
+++ b/gns3/modules/iou/pages/iou_device_configuration_page.py
@@ -37,6 +37,19 @@ class iouDeviceConfigurationPage(QtGui.QWidget, Ui_iouDeviceConfigPageWidget):
QtGui.QWidget.__init__(self)
self.setupUi(self)
self.uiStartupConfigToolButton.clicked.connect(self._startupConfigBrowserSlot)
+ self.uiDefaultValuesCheckBox.stateChanged.connect(self._useDefaultValuesSlot)
+
+ def _useDefaultValuesSlot(self, state):
+ """
+ Slot to enable or not the RAM and NVRAM spin boxes.
+ """
+
+ if state:
+ self.uiRamSpinBox.setEnabled(False)
+ self.uiNvramSpinBox.setEnabled(False)
+ else:
+ self.uiRamSpinBox.setEnabled(True)
+ self.uiNvramSpinBox.setEnabled(True)
def _startupConfigBrowserSlot(self):
"""
@@ -92,7 +105,8 @@ class iouDeviceConfigurationPage(QtGui.QWidget, Ui_iouDeviceConfigPageWidget):
self.uiStartupConfigLineEdit.hide()
self.uiStartupConfigToolButton.hide()
- # load the memories and disks settings
+ # load the memories settings
+ self.uiDefaultValuesCheckBox.setChecked(settings["use_default_iou_values"])
self.uiRamSpinBox.setValue(settings["ram"])
self.uiNvramSpinBox.setValue(settings["nvram"])
@@ -130,7 +144,8 @@ class iouDeviceConfigurationPage(QtGui.QWidget, Ui_iouDeviceConfigPageWidget):
del settings["name"]
del settings["console"]
- # save the memories and disks settings
+ # save the memories settings
+ settings["use_default_iou_values"] = self.uiDefaultValuesCheckBox.isChecked()
settings["ram"] = self.uiRamSpinBox.value()
settings["nvram"] = self.uiNvramSpinBox.value()
diff --git a/gns3/modules/iou/pages/iou_device_preferences_page.py b/gns3/modules/iou/pages/iou_device_preferences_page.py
index ba9049c7..b7825e37 100644
--- a/gns3/modules/iou/pages/iou_device_preferences_page.py
+++ b/gns3/modules/iou/pages/iou_device_preferences_page.py
@@ -45,6 +45,19 @@ class IOUDevicePreferencesPage(QtGui.QWidget, Ui_IOUDevicePreferencesPageWidget)
self.uiIOUPathToolButton.clicked.connect(self._iouImageBrowserSlot)
self.uiStartupConfigToolButton.clicked.connect(self._startupConfigBrowserSlot)
self.uiIOUImageTestSettingsPushButton.clicked.connect(self._testSettingsSlot)
+ self.uiDefaultValuesCheckBox.stateChanged.connect(self._useDefaultValuesSlot)
+
+ def _useDefaultValuesSlot(self, state):
+ """
+ Slot to enable or not the RAM and NVRAM spin boxes.
+ """
+
+ if state:
+ self.uiRAMSpinBox.setEnabled(False)
+ self.uiNVRAMSpinBox.setEnabled(False)
+ else:
+ self.uiRAMSpinBox.setEnabled(True)
+ self.uiNVRAMSpinBox.setEnabled(True)
def _iouImageClickedSlot(self, item, column):
"""
@@ -61,6 +74,7 @@ class IOUDevicePreferencesPage(QtGui.QWidget, Ui_IOUDevicePreferencesPageWidget)
self.uiIOUPathLineEdit.setText(iou_image["path"])
self.uiStartupConfigLineEdit.setText(iou_image["startup_config"])
+ self.uiDefaultValuesCheckBox.setChecked(iou_image["use_default_iou_values"])
self.uiRAMSpinBox.setValue(iou_image["ram"])
self.uiNVRAMSpinBox.setValue(iou_image["nvram"])
@@ -82,6 +96,7 @@ class IOUDevicePreferencesPage(QtGui.QWidget, Ui_IOUDevicePreferencesPageWidget)
path = self.uiIOUPathLineEdit.text()
startup_config = self.uiStartupConfigLineEdit.text()
+ use_default_iou_values = self.uiDefaultValuesCheckBox.isChecked()
nvram = self.uiNVRAMSpinBox.value()
ram = self.uiRAMSpinBox.value()
@@ -120,6 +135,7 @@ class IOUDevicePreferencesPage(QtGui.QWidget, Ui_IOUDevicePreferencesPageWidget)
self._iou_images[key] = {"path": path,
"image": image,
"startup_config": startup_config,
+ "use_default_iou_values": use_default_iou_values,
"ram": ram,
"nvram": nvram,
"server": server}
diff --git a/gns3/modules/iou/ui/iou_device_configuration_page.ui b/gns3/modules/iou/ui/iou_device_configuration_page.ui
index 5e10f537..4b2b7513 100755
--- a/gns3/modules/iou/ui/iou_device_configuration_page.ui
+++ b/gns3/modules/iou/ui/iou_device_configuration_page.ui
@@ -6,177 +6,223 @@
0
0
- 403
- 461
+ 405
+ 468
IOU device configuration
-
- -
-
-
- Name:
+
+
-
+
+
+
+
+ General
+
+
+
-
+
+
+ Name:
+
+
+
+ -
+
+
+ -
+
+
+ IOU image:
+
+
+
+ -
+
+
+ -
+
+
+ Startup-config:
+
+
+
+ -
+
+
-
+
+
+ -
+
+
+ ...
+
+
+ Qt::ToolButtonTextOnly
+
+
+
+
+
+ -
+
+
+ Console port:
+
+
+
+ -
+
+
+ 65535
+
+
+
+
- -
-
-
- -
-
-
- IOU image:
+
-
+
+
+ Memories
+
+
-
+
+
+ Use default IOU values
+
+
+ true
+
+
+
+ -
+
+
+ RAM size:
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+ 0
+
+
+
+ MB
+
+
+ 4096
+
+
+ 4
+
+
+ 128
+
+
+
+ -
+
+
+ NVRAM size:
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+ 0
+
+
+
+ KB
+
+
+ 4096
+
+
+ 4
+
+
+ 128
+
+
+
+
- -
-
-
- -
-
-
- Startup-config:
+
-
+
+
+ Adapters
+
+
-
+
+
+ Ethernet adapters:
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 16
+
+
+ 2
+
+
+
+ -
+
+
+ Serial adapters:
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 16
+
+
+ 2
+
+
+
+
- -
-
-
-
-
-
- -
-
-
- ...
-
-
- Qt::ToolButtonTextOnly
-
-
-
-
-
- -
-
-
- Console port:
-
-
-
- -
-
-
- 65535
-
-
-
- -
-
-
- RAM size:
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- MiB
-
-
- 4096
-
-
- 4
-
-
- 128
-
-
-
- -
-
-
- NVRAM size:
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- KiB
-
-
- 4096
-
-
- 4
-
-
- 128
-
-
-
- -
-
-
- Ethernet adapters:
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- 16
-
-
- 2
-
-
-
- -
-
-
- Serial adapters:
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- 16
-
-
- 2
-
-
-
- -
+
-
Qt::Vertical
diff --git a/gns3/modules/iou/ui/iou_device_configuration_page_ui.py b/gns3/modules/iou/ui/iou_device_configuration_page_ui.py
index 62ced25e..e36afc1e 100644
--- a/gns3/modules/iou/ui/iou_device_configuration_page_ui.py
+++ b/gns3/modules/iou/ui/iou_device_configuration_page_ui.py
@@ -1,9 +1,9 @@
# -*- coding: utf-8 -*-
-# Form implementation generated from reading ui file '/home/grossmj/workspace/git/gns3-gui/gns3/modules/iou/ui/iou_device_configuration_page.ui'
+# Form implementation generated from reading ui file '/home/grossmj/git/gns3-gui/gns3/modules/iou/ui/iou_device_configuration_page.ui'
#
-# Created: Fri Mar 21 10:37:58 2014
-# by: PyQt4 UI code generator 4.10
+# Created: Wed May 7 15:37:55 2014
+# by: PyQt4 UI code generator 4.10.4
#
# WARNING! All changes made in this file will be lost!
@@ -26,45 +26,60 @@ except AttributeError:
class Ui_iouDeviceConfigPageWidget(object):
def setupUi(self, iouDeviceConfigPageWidget):
iouDeviceConfigPageWidget.setObjectName(_fromUtf8("iouDeviceConfigPageWidget"))
- iouDeviceConfigPageWidget.resize(403, 461)
- self.gridLayout = QtGui.QGridLayout(iouDeviceConfigPageWidget)
+ iouDeviceConfigPageWidget.resize(405, 468)
+ self.verticalLayout = QtGui.QVBoxLayout(iouDeviceConfigPageWidget)
+ self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
+ self.uiGeneralgroupBox = QtGui.QGroupBox(iouDeviceConfigPageWidget)
+ self.uiGeneralgroupBox.setStyleSheet(_fromUtf8(""))
+ self.uiGeneralgroupBox.setObjectName(_fromUtf8("uiGeneralgroupBox"))
+ self.gridLayout = QtGui.QGridLayout(self.uiGeneralgroupBox)
self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
- self.uiNameLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.uiNameLabel = QtGui.QLabel(self.uiGeneralgroupBox)
self.uiNameLabel.setObjectName(_fromUtf8("uiNameLabel"))
self.gridLayout.addWidget(self.uiNameLabel, 0, 0, 1, 1)
- self.uiNameLineEdit = QtGui.QLineEdit(iouDeviceConfigPageWidget)
+ self.uiNameLineEdit = QtGui.QLineEdit(self.uiGeneralgroupBox)
self.uiNameLineEdit.setObjectName(_fromUtf8("uiNameLineEdit"))
self.gridLayout.addWidget(self.uiNameLineEdit, 0, 1, 1, 1)
- self.uiIOUImageLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.uiIOUImageLabel = QtGui.QLabel(self.uiGeneralgroupBox)
self.uiIOUImageLabel.setObjectName(_fromUtf8("uiIOUImageLabel"))
self.gridLayout.addWidget(self.uiIOUImageLabel, 1, 0, 1, 1)
- self.uiIOUImageComboBox = QtGui.QComboBox(iouDeviceConfigPageWidget)
+ self.uiIOUImageComboBox = QtGui.QComboBox(self.uiGeneralgroupBox)
self.uiIOUImageComboBox.setObjectName(_fromUtf8("uiIOUImageComboBox"))
self.gridLayout.addWidget(self.uiIOUImageComboBox, 1, 1, 1, 1)
- self.uiStartupConfigLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.uiStartupConfigLabel = QtGui.QLabel(self.uiGeneralgroupBox)
self.uiStartupConfigLabel.setObjectName(_fromUtf8("uiStartupConfigLabel"))
self.gridLayout.addWidget(self.uiStartupConfigLabel, 2, 0, 1, 1)
self.horizontalLayout_4 = QtGui.QHBoxLayout()
self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
- self.uiStartupConfigLineEdit = QtGui.QLineEdit(iouDeviceConfigPageWidget)
+ self.uiStartupConfigLineEdit = QtGui.QLineEdit(self.uiGeneralgroupBox)
self.uiStartupConfigLineEdit.setObjectName(_fromUtf8("uiStartupConfigLineEdit"))
self.horizontalLayout_4.addWidget(self.uiStartupConfigLineEdit)
- self.uiStartupConfigToolButton = QtGui.QToolButton(iouDeviceConfigPageWidget)
+ self.uiStartupConfigToolButton = QtGui.QToolButton(self.uiGeneralgroupBox)
self.uiStartupConfigToolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
self.uiStartupConfigToolButton.setObjectName(_fromUtf8("uiStartupConfigToolButton"))
self.horizontalLayout_4.addWidget(self.uiStartupConfigToolButton)
self.gridLayout.addLayout(self.horizontalLayout_4, 2, 1, 1, 1)
- self.uiConsolePortLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.uiConsolePortLabel = QtGui.QLabel(self.uiGeneralgroupBox)
self.uiConsolePortLabel.setObjectName(_fromUtf8("uiConsolePortLabel"))
self.gridLayout.addWidget(self.uiConsolePortLabel, 3, 0, 1, 1)
- self.uiConsolePortSpinBox = QtGui.QSpinBox(iouDeviceConfigPageWidget)
+ self.uiConsolePortSpinBox = QtGui.QSpinBox(self.uiGeneralgroupBox)
self.uiConsolePortSpinBox.setMaximum(65535)
self.uiConsolePortSpinBox.setObjectName(_fromUtf8("uiConsolePortSpinBox"))
self.gridLayout.addWidget(self.uiConsolePortSpinBox, 3, 1, 1, 1)
- self.uiRamLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.verticalLayout.addWidget(self.uiGeneralgroupBox)
+ self.uiMemoriesGroupBox = QtGui.QGroupBox(iouDeviceConfigPageWidget)
+ self.uiMemoriesGroupBox.setObjectName(_fromUtf8("uiMemoriesGroupBox"))
+ self.gridLayout_2 = QtGui.QGridLayout(self.uiMemoriesGroupBox)
+ self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
+ self.uiDefaultValuesCheckBox = QtGui.QCheckBox(self.uiMemoriesGroupBox)
+ self.uiDefaultValuesCheckBox.setChecked(True)
+ self.uiDefaultValuesCheckBox.setObjectName(_fromUtf8("uiDefaultValuesCheckBox"))
+ self.gridLayout_2.addWidget(self.uiDefaultValuesCheckBox, 0, 0, 1, 2)
+ self.uiRamLabel = QtGui.QLabel(self.uiMemoriesGroupBox)
self.uiRamLabel.setObjectName(_fromUtf8("uiRamLabel"))
- self.gridLayout.addWidget(self.uiRamLabel, 4, 0, 1, 1)
- self.uiRamSpinBox = QtGui.QSpinBox(iouDeviceConfigPageWidget)
+ self.gridLayout_2.addWidget(self.uiRamLabel, 1, 0, 1, 1)
+ self.uiRamSpinBox = QtGui.QSpinBox(self.uiMemoriesGroupBox)
+ self.uiRamSpinBox.setEnabled(False)
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
@@ -74,11 +89,12 @@ class Ui_iouDeviceConfigPageWidget(object):
self.uiRamSpinBox.setSingleStep(4)
self.uiRamSpinBox.setProperty("value", 128)
self.uiRamSpinBox.setObjectName(_fromUtf8("uiRamSpinBox"))
- self.gridLayout.addWidget(self.uiRamSpinBox, 4, 1, 1, 1)
- self.uiNvramLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.gridLayout_2.addWidget(self.uiRamSpinBox, 1, 1, 1, 1)
+ self.uiNvramLabel = QtGui.QLabel(self.uiMemoriesGroupBox)
self.uiNvramLabel.setObjectName(_fromUtf8("uiNvramLabel"))
- self.gridLayout.addWidget(self.uiNvramLabel, 5, 0, 1, 1)
- self.uiNvramSpinBox = QtGui.QSpinBox(iouDeviceConfigPageWidget)
+ self.gridLayout_2.addWidget(self.uiNvramLabel, 2, 0, 1, 1)
+ self.uiNvramSpinBox = QtGui.QSpinBox(self.uiMemoriesGroupBox)
+ self.uiNvramSpinBox.setEnabled(False)
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
@@ -88,11 +104,16 @@ class Ui_iouDeviceConfigPageWidget(object):
self.uiNvramSpinBox.setSingleStep(4)
self.uiNvramSpinBox.setProperty("value", 128)
self.uiNvramSpinBox.setObjectName(_fromUtf8("uiNvramSpinBox"))
- self.gridLayout.addWidget(self.uiNvramSpinBox, 5, 1, 1, 1)
- self.uiEthernetAdaptersLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.gridLayout_2.addWidget(self.uiNvramSpinBox, 2, 1, 1, 1)
+ self.verticalLayout.addWidget(self.uiMemoriesGroupBox)
+ self.groupBox = QtGui.QGroupBox(iouDeviceConfigPageWidget)
+ self.groupBox.setObjectName(_fromUtf8("groupBox"))
+ self.gridLayout_3 = QtGui.QGridLayout(self.groupBox)
+ self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
+ self.uiEthernetAdaptersLabel = QtGui.QLabel(self.groupBox)
self.uiEthernetAdaptersLabel.setObjectName(_fromUtf8("uiEthernetAdaptersLabel"))
- self.gridLayout.addWidget(self.uiEthernetAdaptersLabel, 6, 0, 1, 1)
- self.uiEthernetAdaptersSpinBox = QtGui.QSpinBox(iouDeviceConfigPageWidget)
+ self.gridLayout_3.addWidget(self.uiEthernetAdaptersLabel, 0, 0, 1, 1)
+ self.uiEthernetAdaptersSpinBox = QtGui.QSpinBox(self.groupBox)
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
@@ -101,11 +122,11 @@ class Ui_iouDeviceConfigPageWidget(object):
self.uiEthernetAdaptersSpinBox.setMaximum(16)
self.uiEthernetAdaptersSpinBox.setSingleStep(2)
self.uiEthernetAdaptersSpinBox.setObjectName(_fromUtf8("uiEthernetAdaptersSpinBox"))
- self.gridLayout.addWidget(self.uiEthernetAdaptersSpinBox, 6, 1, 1, 1)
- self.uiSerialAdaptersLabel = QtGui.QLabel(iouDeviceConfigPageWidget)
+ self.gridLayout_3.addWidget(self.uiEthernetAdaptersSpinBox, 0, 1, 1, 1)
+ self.uiSerialAdaptersLabel = QtGui.QLabel(self.groupBox)
self.uiSerialAdaptersLabel.setObjectName(_fromUtf8("uiSerialAdaptersLabel"))
- self.gridLayout.addWidget(self.uiSerialAdaptersLabel, 7, 0, 1, 1)
- self.uiSerialAdaptersSpinBox = QtGui.QSpinBox(iouDeviceConfigPageWidget)
+ self.gridLayout_3.addWidget(self.uiSerialAdaptersLabel, 1, 0, 1, 1)
+ self.uiSerialAdaptersSpinBox = QtGui.QSpinBox(self.groupBox)
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
@@ -114,24 +135,29 @@ class Ui_iouDeviceConfigPageWidget(object):
self.uiSerialAdaptersSpinBox.setMaximum(16)
self.uiSerialAdaptersSpinBox.setSingleStep(2)
self.uiSerialAdaptersSpinBox.setObjectName(_fromUtf8("uiSerialAdaptersSpinBox"))
- self.gridLayout.addWidget(self.uiSerialAdaptersSpinBox, 7, 1, 1, 1)
+ self.gridLayout_3.addWidget(self.uiSerialAdaptersSpinBox, 1, 1, 1, 1)
+ self.verticalLayout.addWidget(self.groupBox)
spacerItem = QtGui.QSpacerItem(263, 212, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
- self.gridLayout.addItem(spacerItem, 8, 1, 1, 1)
+ self.verticalLayout.addItem(spacerItem)
self.retranslateUi(iouDeviceConfigPageWidget)
QtCore.QMetaObject.connectSlotsByName(iouDeviceConfigPageWidget)
def retranslateUi(self, iouDeviceConfigPageWidget):
iouDeviceConfigPageWidget.setWindowTitle(_translate("iouDeviceConfigPageWidget", "IOU device configuration", None))
+ self.uiGeneralgroupBox.setTitle(_translate("iouDeviceConfigPageWidget", "General", None))
self.uiNameLabel.setText(_translate("iouDeviceConfigPageWidget", "Name:", None))
self.uiIOUImageLabel.setText(_translate("iouDeviceConfigPageWidget", "IOU image:", None))
self.uiStartupConfigLabel.setText(_translate("iouDeviceConfigPageWidget", "Startup-config:", None))
self.uiStartupConfigToolButton.setText(_translate("iouDeviceConfigPageWidget", "...", None))
self.uiConsolePortLabel.setText(_translate("iouDeviceConfigPageWidget", "Console port:", None))
+ self.uiMemoriesGroupBox.setTitle(_translate("iouDeviceConfigPageWidget", "Memories", None))
+ self.uiDefaultValuesCheckBox.setText(_translate("iouDeviceConfigPageWidget", "Use default IOU values", None))
self.uiRamLabel.setText(_translate("iouDeviceConfigPageWidget", "RAM size:", None))
- self.uiRamSpinBox.setSuffix(_translate("iouDeviceConfigPageWidget", " MiB", None))
+ self.uiRamSpinBox.setSuffix(_translate("iouDeviceConfigPageWidget", " MB", None))
self.uiNvramLabel.setText(_translate("iouDeviceConfigPageWidget", "NVRAM size:", None))
- self.uiNvramSpinBox.setSuffix(_translate("iouDeviceConfigPageWidget", " KiB", None))
+ self.uiNvramSpinBox.setSuffix(_translate("iouDeviceConfigPageWidget", " KB", None))
+ self.groupBox.setTitle(_translate("iouDeviceConfigPageWidget", "Adapters", None))
self.uiEthernetAdaptersLabel.setText(_translate("iouDeviceConfigPageWidget", "Ethernet adapters:", None))
self.uiSerialAdaptersLabel.setText(_translate("iouDeviceConfigPageWidget", "Serial adapters:", None))
diff --git a/gns3/modules/iou/ui/iou_device_preferences_page.ui b/gns3/modules/iou/ui/iou_device_preferences_page.ui
index 3752487d..b34ee01d 100755
--- a/gns3/modules/iou/ui/iou_device_preferences_page.ui
+++ b/gns3/modules/iou/ui/iou_device_preferences_page.ui
@@ -6,8 +6,8 @@
0
0
- 404
- 487
+ 411
+ 544
@@ -26,52 +26,25 @@
IOU images
-
-
-
-
-
-
-
-
- Test settings
-
-
-
- -
-
-
- Save
-
-
-
- -
-
-
- false
-
-
- Delete
-
-
-
-
+
+ -
+
+
+
+ File
+
+
+
+
+ Server
+
+
+
- -
-
-
- Qt::Horizontal
-
-
-
- 76
- 20
-
-
-
-
- -
-
+
-
+
- Settings
+ General
-
@@ -122,38 +95,43 @@
- -
-
+
+
+
+ -
+
+
+ Memories
+
+
+
-
+
- NVRAM:
+ Use default IOU values
+
+
+ true
- -
-
-
- KB
-
-
- 16
-
-
- 65535
-
-
- 128
-
-
-
- -
+
-
RAM:
- -
+
-
+
+ false
+
+
+
+ 0
+ 0
+
+
MB
@@ -168,22 +146,81 @@
+ -
+
+
+ NVRAM:
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+ 0
+
+
+
+ KB
+
+
+ 16
+
+
+ 65535
+
+
+ 128
+
+
+
- -
-
-
-
- File
-
-
-
-
- Server
-
-
-
+
-
+
+
+ Qt::Horizontal
+
+
+
+ 76
+ 20
+
+
+
+
+ -
+
+
-
+
+
+ Test settings
+
+
+
+ -
+
+
+ Save
+
+
+
+ -
+
+
+ false
+
+
+ Delete
+
+
+
+
diff --git a/gns3/modules/iou/ui/iou_device_preferences_page_ui.py b/gns3/modules/iou/ui/iou_device_preferences_page_ui.py
index 3a36ee2a..4ba66e6e 100644
--- a/gns3/modules/iou/ui/iou_device_preferences_page_ui.py
+++ b/gns3/modules/iou/ui/iou_device_preferences_page_ui.py
@@ -1,9 +1,9 @@
# -*- coding: utf-8 -*-
-# Form implementation generated from reading ui file '/home/grossmj/workspace/git/gns3-gui/gns3/modules/iou/ui/iou_device_preferences_page.ui'
+# Form implementation generated from reading ui file '/home/grossmj/git/gns3-gui/gns3/modules/iou/ui/iou_device_preferences_page.ui'
#
-# Created: Sat Apr 12 14:54:36 2014
-# by: PyQt4 UI code generator 4.10
+# Created: Wed May 7 13:53:20 2014
+# by: PyQt4 UI code generator 4.10.4
#
# WARNING! All changes made in this file will be lost!
@@ -26,7 +26,7 @@ except AttributeError:
class Ui_IOUDevicePreferencesPageWidget(object):
def setupUi(self, IOUDevicePreferencesPageWidget):
IOUDevicePreferencesPageWidget.setObjectName(_fromUtf8("IOUDevicePreferencesPageWidget"))
- IOUDevicePreferencesPageWidget.resize(404, 487)
+ IOUDevicePreferencesPageWidget.resize(411, 544)
self.vboxlayout = QtGui.QVBoxLayout(IOUDevicePreferencesPageWidget)
self.vboxlayout.setObjectName(_fromUtf8("vboxlayout"))
self.uiTabWidget = QtGui.QTabWidget(IOUDevicePreferencesPageWidget)
@@ -34,8 +34,83 @@ class Ui_IOUDevicePreferencesPageWidget(object):
self.uiTabWidget.setObjectName(_fromUtf8("uiTabWidget"))
self.uiIOUDeviceTabWidget = QtGui.QWidget()
self.uiIOUDeviceTabWidget.setObjectName(_fromUtf8("uiIOUDeviceTabWidget"))
- self.gridLayout_3 = QtGui.QGridLayout(self.uiIOUDeviceTabWidget)
+ self.verticalLayout_2 = QtGui.QVBoxLayout(self.uiIOUDeviceTabWidget)
+ self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
+ self.uiIOUImagesTreeWidget = QtGui.QTreeWidget(self.uiIOUDeviceTabWidget)
+ self.uiIOUImagesTreeWidget.setObjectName(_fromUtf8("uiIOUImagesTreeWidget"))
+ self.verticalLayout_2.addWidget(self.uiIOUImagesTreeWidget)
+ self.uiGeneralGroupBox = QtGui.QGroupBox(self.uiIOUDeviceTabWidget)
+ self.uiGeneralGroupBox.setObjectName(_fromUtf8("uiGeneralGroupBox"))
+ self.gridLayout_2 = QtGui.QGridLayout(self.uiGeneralGroupBox)
+ self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
+ self.uiIOUPathLabel = QtGui.QLabel(self.uiGeneralGroupBox)
+ self.uiIOUPathLabel.setObjectName(_fromUtf8("uiIOUPathLabel"))
+ self.gridLayout_2.addWidget(self.uiIOUPathLabel, 0, 0, 1, 1)
+ self.horizontalLayout_3 = QtGui.QHBoxLayout()
+ self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
+ self.uiIOUPathLineEdit = QtGui.QLineEdit(self.uiGeneralGroupBox)
+ self.uiIOUPathLineEdit.setObjectName(_fromUtf8("uiIOUPathLineEdit"))
+ self.horizontalLayout_3.addWidget(self.uiIOUPathLineEdit)
+ self.uiIOUPathToolButton = QtGui.QToolButton(self.uiGeneralGroupBox)
+ self.uiIOUPathToolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
+ self.uiIOUPathToolButton.setObjectName(_fromUtf8("uiIOUPathToolButton"))
+ self.horizontalLayout_3.addWidget(self.uiIOUPathToolButton)
+ self.gridLayout_2.addLayout(self.horizontalLayout_3, 0, 1, 1, 1)
+ self.uiStartupConfigLabel = QtGui.QLabel(self.uiGeneralGroupBox)
+ self.uiStartupConfigLabel.setObjectName(_fromUtf8("uiStartupConfigLabel"))
+ self.gridLayout_2.addWidget(self.uiStartupConfigLabel, 1, 0, 1, 1)
+ self.horizontalLayout_4 = QtGui.QHBoxLayout()
+ self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
+ self.uiStartupConfigLineEdit = QtGui.QLineEdit(self.uiGeneralGroupBox)
+ self.uiStartupConfigLineEdit.setObjectName(_fromUtf8("uiStartupConfigLineEdit"))
+ self.horizontalLayout_4.addWidget(self.uiStartupConfigLineEdit)
+ self.uiStartupConfigToolButton = QtGui.QToolButton(self.uiGeneralGroupBox)
+ self.uiStartupConfigToolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
+ self.uiStartupConfigToolButton.setObjectName(_fromUtf8("uiStartupConfigToolButton"))
+ self.horizontalLayout_4.addWidget(self.uiStartupConfigToolButton)
+ self.gridLayout_2.addLayout(self.horizontalLayout_4, 1, 1, 1, 1)
+ self.verticalLayout_2.addWidget(self.uiGeneralGroupBox)
+ self.uiMemoriesGroupBox = QtGui.QGroupBox(self.uiIOUDeviceTabWidget)
+ self.uiMemoriesGroupBox.setObjectName(_fromUtf8("uiMemoriesGroupBox"))
+ self.gridLayout_3 = QtGui.QGridLayout(self.uiMemoriesGroupBox)
self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
+ self.uiDefaultValuesCheckBox = QtGui.QCheckBox(self.uiMemoriesGroupBox)
+ self.uiDefaultValuesCheckBox.setChecked(True)
+ self.uiDefaultValuesCheckBox.setObjectName(_fromUtf8("uiDefaultValuesCheckBox"))
+ self.gridLayout_3.addWidget(self.uiDefaultValuesCheckBox, 0, 0, 1, 2)
+ self.uiRAMLabel = QtGui.QLabel(self.uiMemoriesGroupBox)
+ self.uiRAMLabel.setObjectName(_fromUtf8("uiRAMLabel"))
+ self.gridLayout_3.addWidget(self.uiRAMLabel, 1, 0, 1, 1)
+ self.uiRAMSpinBox = QtGui.QSpinBox(self.uiMemoriesGroupBox)
+ self.uiRAMSpinBox.setEnabled(False)
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.uiRAMSpinBox.sizePolicy().hasHeightForWidth())
+ self.uiRAMSpinBox.setSizePolicy(sizePolicy)
+ self.uiRAMSpinBox.setMinimum(16)
+ self.uiRAMSpinBox.setMaximum(65535)
+ self.uiRAMSpinBox.setProperty("value", 256)
+ self.uiRAMSpinBox.setObjectName(_fromUtf8("uiRAMSpinBox"))
+ self.gridLayout_3.addWidget(self.uiRAMSpinBox, 1, 1, 1, 1)
+ self.uiNVRAMLabel = QtGui.QLabel(self.uiMemoriesGroupBox)
+ self.uiNVRAMLabel.setObjectName(_fromUtf8("uiNVRAMLabel"))
+ self.gridLayout_3.addWidget(self.uiNVRAMLabel, 2, 0, 1, 1)
+ self.uiNVRAMSpinBox = QtGui.QSpinBox(self.uiMemoriesGroupBox)
+ self.uiNVRAMSpinBox.setEnabled(False)
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.uiNVRAMSpinBox.sizePolicy().hasHeightForWidth())
+ self.uiNVRAMSpinBox.setSizePolicy(sizePolicy)
+ self.uiNVRAMSpinBox.setMinimum(16)
+ self.uiNVRAMSpinBox.setMaximum(65535)
+ self.uiNVRAMSpinBox.setProperty("value", 128)
+ self.uiNVRAMSpinBox.setObjectName(_fromUtf8("uiNVRAMSpinBox"))
+ self.gridLayout_3.addWidget(self.uiNVRAMSpinBox, 2, 1, 1, 1)
+ self.verticalLayout_2.addWidget(self.uiMemoriesGroupBox)
+ spacerItem = QtGui.QSpacerItem(76, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+ self.verticalLayout_2.addItem(spacerItem)
self.horizontalLayout_5 = QtGui.QHBoxLayout()
self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
self.uiIOUImageTestSettingsPushButton = QtGui.QPushButton(self.uiIOUDeviceTabWidget)
@@ -48,61 +123,7 @@ class Ui_IOUDevicePreferencesPageWidget(object):
self.uiDeleteIOUImagePushButton.setEnabled(False)
self.uiDeleteIOUImagePushButton.setObjectName(_fromUtf8("uiDeleteIOUImagePushButton"))
self.horizontalLayout_5.addWidget(self.uiDeleteIOUImagePushButton)
- self.gridLayout_3.addLayout(self.horizontalLayout_5, 2, 0, 1, 1)
- spacerItem = QtGui.QSpacerItem(76, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
- self.gridLayout_3.addItem(spacerItem, 2, 1, 1, 1)
- self.groupBox = QtGui.QGroupBox(self.uiIOUDeviceTabWidget)
- self.groupBox.setObjectName(_fromUtf8("groupBox"))
- self.gridLayout_2 = QtGui.QGridLayout(self.groupBox)
- self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
- self.uiIOUPathLabel = QtGui.QLabel(self.groupBox)
- self.uiIOUPathLabel.setObjectName(_fromUtf8("uiIOUPathLabel"))
- self.gridLayout_2.addWidget(self.uiIOUPathLabel, 0, 0, 1, 1)
- self.horizontalLayout_3 = QtGui.QHBoxLayout()
- self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
- self.uiIOUPathLineEdit = QtGui.QLineEdit(self.groupBox)
- self.uiIOUPathLineEdit.setObjectName(_fromUtf8("uiIOUPathLineEdit"))
- self.horizontalLayout_3.addWidget(self.uiIOUPathLineEdit)
- self.uiIOUPathToolButton = QtGui.QToolButton(self.groupBox)
- self.uiIOUPathToolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
- self.uiIOUPathToolButton.setObjectName(_fromUtf8("uiIOUPathToolButton"))
- self.horizontalLayout_3.addWidget(self.uiIOUPathToolButton)
- self.gridLayout_2.addLayout(self.horizontalLayout_3, 0, 1, 1, 1)
- self.uiStartupConfigLabel = QtGui.QLabel(self.groupBox)
- self.uiStartupConfigLabel.setObjectName(_fromUtf8("uiStartupConfigLabel"))
- self.gridLayout_2.addWidget(self.uiStartupConfigLabel, 1, 0, 1, 1)
- self.horizontalLayout_4 = QtGui.QHBoxLayout()
- self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
- self.uiStartupConfigLineEdit = QtGui.QLineEdit(self.groupBox)
- self.uiStartupConfigLineEdit.setObjectName(_fromUtf8("uiStartupConfigLineEdit"))
- self.horizontalLayout_4.addWidget(self.uiStartupConfigLineEdit)
- self.uiStartupConfigToolButton = QtGui.QToolButton(self.groupBox)
- self.uiStartupConfigToolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
- self.uiStartupConfigToolButton.setObjectName(_fromUtf8("uiStartupConfigToolButton"))
- self.horizontalLayout_4.addWidget(self.uiStartupConfigToolButton)
- self.gridLayout_2.addLayout(self.horizontalLayout_4, 1, 1, 1, 1)
- self.uiNVRAMLabel = QtGui.QLabel(self.groupBox)
- self.uiNVRAMLabel.setObjectName(_fromUtf8("uiNVRAMLabel"))
- self.gridLayout_2.addWidget(self.uiNVRAMLabel, 2, 0, 1, 1)
- self.uiNVRAMSpinBox = QtGui.QSpinBox(self.groupBox)
- self.uiNVRAMSpinBox.setMinimum(16)
- self.uiNVRAMSpinBox.setMaximum(65535)
- self.uiNVRAMSpinBox.setProperty("value", 128)
- self.uiNVRAMSpinBox.setObjectName(_fromUtf8("uiNVRAMSpinBox"))
- self.gridLayout_2.addWidget(self.uiNVRAMSpinBox, 2, 1, 1, 1)
- self.uiRAMLabel = QtGui.QLabel(self.groupBox)
- self.uiRAMLabel.setObjectName(_fromUtf8("uiRAMLabel"))
- self.gridLayout_2.addWidget(self.uiRAMLabel, 3, 0, 1, 1)
- self.uiRAMSpinBox = QtGui.QSpinBox(self.groupBox)
- self.uiRAMSpinBox.setMinimum(16)
- self.uiRAMSpinBox.setMaximum(65535)
- self.uiRAMSpinBox.setProperty("value", 256)
- self.uiRAMSpinBox.setObjectName(_fromUtf8("uiRAMSpinBox"))
- self.gridLayout_2.addWidget(self.uiRAMSpinBox, 3, 1, 1, 1)
- self.gridLayout_3.addWidget(self.groupBox, 1, 0, 1, 2)
- self.uiIOUImagesTreeWidget = QtGui.QTreeWidget(self.uiIOUDeviceTabWidget)
- self.uiIOUImagesTreeWidget.setObjectName(_fromUtf8("uiIOUImagesTreeWidget"))
- self.gridLayout_3.addWidget(self.uiIOUImagesTreeWidget, 0, 0, 1, 2)
+ self.verticalLayout_2.addLayout(self.horizontalLayout_5)
self.uiTabWidget.addTab(self.uiIOUDeviceTabWidget, _fromUtf8(""))
self.uiIOSRoutersTabWidget = QtGui.QWidget()
self.uiIOSRoutersTabWidget.setEnabled(False)
@@ -135,20 +156,22 @@ class Ui_IOUDevicePreferencesPageWidget(object):
def retranslateUi(self, IOUDevicePreferencesPageWidget):
IOUDevicePreferencesPageWidget.setWindowTitle(_translate("IOUDevicePreferencesPageWidget", "IOU devices", None))
- self.uiIOUImageTestSettingsPushButton.setText(_translate("IOUDevicePreferencesPageWidget", "Test settings", None))
- self.uiSaveIOUImagePushButton.setText(_translate("IOUDevicePreferencesPageWidget", "Save", None))
- self.uiDeleteIOUImagePushButton.setText(_translate("IOUDevicePreferencesPageWidget", "Delete", None))
- self.groupBox.setTitle(_translate("IOUDevicePreferencesPageWidget", "Settings", None))
+ self.uiIOUImagesTreeWidget.headerItem().setText(0, _translate("IOUDevicePreferencesPageWidget", "File", None))
+ self.uiIOUImagesTreeWidget.headerItem().setText(1, _translate("IOUDevicePreferencesPageWidget", "Server", None))
+ self.uiGeneralGroupBox.setTitle(_translate("IOUDevicePreferencesPageWidget", "General", None))
self.uiIOUPathLabel.setText(_translate("IOUDevicePreferencesPageWidget", "IOU path:", None))
self.uiIOUPathToolButton.setText(_translate("IOUDevicePreferencesPageWidget", "...", None))
self.uiStartupConfigLabel.setText(_translate("IOUDevicePreferencesPageWidget", "Startup-config:", None))
self.uiStartupConfigToolButton.setText(_translate("IOUDevicePreferencesPageWidget", "...", None))
- self.uiNVRAMLabel.setText(_translate("IOUDevicePreferencesPageWidget", "NVRAM:", None))
- self.uiNVRAMSpinBox.setSuffix(_translate("IOUDevicePreferencesPageWidget", " KB", None))
+ self.uiMemoriesGroupBox.setTitle(_translate("IOUDevicePreferencesPageWidget", "Memories", None))
+ self.uiDefaultValuesCheckBox.setText(_translate("IOUDevicePreferencesPageWidget", "Use default IOU values", None))
self.uiRAMLabel.setText(_translate("IOUDevicePreferencesPageWidget", "RAM:", None))
self.uiRAMSpinBox.setSuffix(_translate("IOUDevicePreferencesPageWidget", " MB", None))
- self.uiIOUImagesTreeWidget.headerItem().setText(0, _translate("IOUDevicePreferencesPageWidget", "File", None))
- self.uiIOUImagesTreeWidget.headerItem().setText(1, _translate("IOUDevicePreferencesPageWidget", "Server", None))
+ self.uiNVRAMLabel.setText(_translate("IOUDevicePreferencesPageWidget", "NVRAM:", None))
+ self.uiNVRAMSpinBox.setSuffix(_translate("IOUDevicePreferencesPageWidget", " KB", None))
+ self.uiIOUImageTestSettingsPushButton.setText(_translate("IOUDevicePreferencesPageWidget", "Test settings", None))
+ self.uiSaveIOUImagePushButton.setText(_translate("IOUDevicePreferencesPageWidget", "Save", None))
+ self.uiDeleteIOUImagePushButton.setText(_translate("IOUDevicePreferencesPageWidget", "Delete", None))
self.uiTabWidget.setTabText(self.uiTabWidget.indexOf(self.uiIOUDeviceTabWidget), _translate("IOUDevicePreferencesPageWidget", "IOU images", None))
self.treeWidget_2.headerItem().setText(0, _translate("IOUDevicePreferencesPageWidget", "IOU device", None))
self.treeWidget_2.headerItem().setText(1, _translate("IOUDevicePreferencesPageWidget", "IOU file", None))
diff --git a/scripts/build_pyqt.py b/scripts/build_pyqt.py
index 988eb6e2..7cd210ed 100755
--- a/scripts/build_pyqt.py
+++ b/scripts/build_pyqt.py
@@ -51,6 +51,10 @@ def recursive(function, path):
if __name__ == '__main__':
+
+ if not PYUIC4 or not PYRCC4:
+ raise RuntimeError("pyuic4 or pyrcc4 could't be found, please install PyQt4 development tools")
+
cwd = os.path.dirname(os.path.abspath(__file__))
gns3_path = os.path.abspath(os.path.join(cwd, "../gns3/"))
ui_path = os.path.abspath(os.path.join(cwd, "../gns3/ui"))