def test_instantiate_widgets(controllers): layout = interp.locals['layout'] tabwidget = interp.locals.get('tabwidget', QtGui.QTabWidget()) interp.user_ns['tabwidget'] = tabwidget layout.addWidget(tabwidget) for controller in controllers: widget = controller.instantiate_widget() tabwidget.addTab(widget, controller._obj.name) return True
def __init__(self, parent=None): """ Widget to change settings. """ super(PreferenceWidget, self).__init__(parent) self.setWindowTitle("OpenAleaLab Preferences") self.resize(600, 300) mainlayout = QtGui.QVBoxLayout(self) self.tabwidget = QtGui.QTabWidget(self) mainlayout.addWidget(self.tabwidget) config = settings.Settings() self._config = None self._option_values = {} self._set_config(config)
def main(): from openalea.core.project.manager import ProjectManager import sys app = QtGui.QApplication(sys.argv) tabwidget = QtGui.QTabWidget() project_manager = ProjectManager() project_manager.discover() projects = project_manager.projects for project in projects: # Create widget preview_widget = Preview(project) tabwidget.addTab(preview_widget, project.name) # Display tabwidget.show() app.exec_()
def __init__(self, session, parent=None, args=None): super(QtGui.QMainWindow, self).__init__() self.session = session interp = interpreter() interp.locals['mainwindow'] = self self.areas = {} for area_name in ('inputs', 'outputs', 'shell'): self.areas[area_name] = QtGui.QTabWidget() self.dockWidget("Inputs", self.areas['inputs'], name="Inputs", position=QtCore.Qt.LeftDockWidgetArea) self.dockWidget("Outputs", self.areas['outputs'], name="Outputs", position=QtCore.Qt.RightDockWidgetArea) self.dockWidget("Shell", self.areas['shell'], name="Shell, log and history", position=QtCore.Qt.BottomDockWidgetArea) self.split = QtGui.QSplitter() self.setCentralWidget(self.split) menu_names = ('Project', 'Edit', 'Viewer', 'Help') # Classic menu self.menu_classic = {} menubar = QtGui.QMenuBar() for menu_name in menu_names: self.menu_classic[menu_name] = menubar.addMenu(menu_name) self.setMenuBar(menubar) # PanedMenu self.menu_paned = {} self.menu = PanedMenu() # Organize order of tabs for menu_name in menu_names: self.menu_paned[menu_name] = self.menu.addSpecialTab(menu_name) dock_menu = self.dockWidget("Menu", self.menu, position=QtCore.Qt.TopDockWidgetArea) dock_menu.setFeatures(QtGui.QDockWidget.NoDockWidgetFeatures) dock_menu.setContentsMargins(0, 0, 0, 0) widget = QtGui.QLabel() dock_menu.setTitleBarWidget(widget) size_policy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum) dock_menu.setSizePolicy(size_policy) # Shell self.shell = get_shell_class()(interp) interp.locals['shell'] = self.shell self.add_applet(self.shell, 'Shell', area='shell') self.applets = self._plugins = {}
def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(703, 681) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/icons/openalea_icon.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) MainWindow.setWindowIcon(icon) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setGeometry(QtCore.QRect(0, 21, 703, 660)) self.centralwidget.setObjectName("centralwidget") self.gridLayout_4 = QtGui.QGridLayout(self.centralwidget) self.gridLayout_4.setObjectName("gridLayout_4") self.splitter = QtGui.QSplitter(self.centralwidget) self.splitter.setOrientation(QtCore.Qt.Vertical) self.splitter.setObjectName("splitter") self.tabWidget = QtGui.QTabWidget(self.splitter) self.tabWidget.setObjectName("tabWidget") self.tab = QtGui.QWidget() self.tab.setGeometry(QtCore.QRect(0, 0, 679, 373)) self.tab.setObjectName("tab") self.vboxlayout = QtGui.QVBoxLayout(self.tab) self.vboxlayout.setObjectName("vboxlayout") self.label_4 = QtGui.QLabel(self.tab) self.label_4.setOpenExternalLinks(True) self.label_4.setObjectName("label_4") self.vboxlayout.addWidget(self.label_4) self.hboxlayout = QtGui.QHBoxLayout() self.hboxlayout.setObjectName("hboxlayout") self.radioRecommended = QtGui.QRadioButton(self.tab) self.radioRecommended.setChecked(True) self.radioRecommended.setObjectName("radioRecommended") self.hboxlayout.addWidget(self.radioRecommended) self.radioAll = QtGui.QRadioButton(self.tab) self.radioAll.setObjectName("radioAll") self.hboxlayout.addWidget(self.radioAll) self.radioUpdate = QtGui.QRadioButton(self.tab) self.radioUpdate.setObjectName("radioUpdate") self.hboxlayout.addWidget(self.radioUpdate) self.radioInstalled = QtGui.QRadioButton(self.tab) self.radioInstalled.setObjectName("radioInstalled") self.hboxlayout.addWidget(self.radioInstalled) self.vboxlayout.addLayout(self.hboxlayout) self.packageList = QtGui.QListWidget(self.tab) self.packageList.setAlternatingRowColors(True) self.packageList.setSelectionMode( QtGui.QAbstractItemView.MultiSelection) self.packageList.setSortingEnabled(True) self.packageList.setObjectName("packageList") self.vboxlayout.addWidget(self.packageList) self.hboxlayout1 = QtGui.QHBoxLayout() self.hboxlayout1.setObjectName("hboxlayout1") self.checkAll = QtGui.QPushButton(self.tab) self.checkAll.setFlat(True) self.checkAll.setObjectName("checkAll") self.hboxlayout1.addWidget(self.checkAll) self.ClearAll = QtGui.QPushButton(self.tab) self.ClearAll.setFlat(True) self.ClearAll.setObjectName("ClearAll") self.hboxlayout1.addWidget(self.ClearAll) spacerItem = QtGui.QSpacerItem(521, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.hboxlayout1.addItem(spacerItem) self.vboxlayout.addLayout(self.hboxlayout1) self.hboxlayout2 = QtGui.QHBoxLayout() self.hboxlayout2.setSpacing(6) self.hboxlayout2.setContentsMargins(0, 0, 0, 0) self.hboxlayout2.setObjectName("hboxlayout2") self.proceedButton = QtGui.QPushButton(self.tab) self.proceedButton.setObjectName("proceedButton") self.hboxlayout2.addWidget(self.proceedButton) self.refreshButton = QtGui.QPushButton(self.tab) self.refreshButton.setObjectName("refreshButton") self.hboxlayout2.addWidget(self.refreshButton) self.vboxlayout.addLayout(self.hboxlayout2) self.tabWidget.addTab(self.tab, "") self.OtherEggs = QtGui.QWidget() self.OtherEggs.setGeometry(QtCore.QRect(0, 0, 679, 373)) self.OtherEggs.setObjectName("OtherEggs") self.vboxlayout1 = QtGui.QVBoxLayout(self.OtherEggs) self.vboxlayout1.setObjectName("vboxlayout1") self.label = QtGui.QLabel(self.OtherEggs) self.label.setOpenExternalLinks(True) self.label.setObjectName("label") self.vboxlayout1.addWidget(self.label) self.hboxlayout3 = QtGui.QHBoxLayout() self.hboxlayout3.setObjectName("hboxlayout3") self.requestEdit = QtGui.QLineEdit(self.OtherEggs) self.requestEdit.setObjectName("requestEdit") self.hboxlayout3.addWidget(self.requestEdit) self.fileButton = QtGui.QPushButton(self.OtherEggs) self.fileButton.setObjectName("fileButton") self.hboxlayout3.addWidget(self.fileButton) self.vboxlayout1.addLayout(self.hboxlayout3) spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) self.vboxlayout1.addItem(spacerItem1) self.hboxlayout4 = QtGui.QHBoxLayout() self.hboxlayout4.setObjectName("hboxlayout4") self.customInstallButton = QtGui.QPushButton(self.OtherEggs) self.customInstallButton.setObjectName("customInstallButton") self.hboxlayout4.addWidget(self.customInstallButton) self.vboxlayout1.addLayout(self.hboxlayout4) self.tabWidget.addTab(self.OtherEggs, "") self.tab_2 = QtGui.QWidget() self.tab_2.setGeometry(QtCore.QRect(0, 0, 679, 373)) self.tab_2.setObjectName("tab_2") self.vboxlayout2 = QtGui.QVBoxLayout(self.tab_2) self.vboxlayout2.setObjectName("vboxlayout2") self.label_2 = QtGui.QLabel(self.tab_2) self.label_2.setObjectName("label_2") self.vboxlayout2.addWidget(self.label_2) self.locationList = QtGui.QListWidget(self.tab_2) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(1) sizePolicy.setHeightForWidth( self.locationList.sizePolicy().hasHeightForWidth()) self.locationList.setSizePolicy(sizePolicy) self.locationList.setObjectName("locationList") self.vboxlayout2.addWidget(self.locationList) self.hboxlayout5 = QtGui.QHBoxLayout() self.hboxlayout5.setSpacing(6) self.hboxlayout5.setContentsMargins(0, 0, 0, 0) self.hboxlayout5.setObjectName("hboxlayout5") self.addLocButton = QtGui.QPushButton(self.tab_2) self.addLocButton.setObjectName("addLocButton") self.hboxlayout5.addWidget(self.addLocButton) self.removeLocButton = QtGui.QPushButton(self.tab_2) self.removeLocButton.setObjectName("removeLocButton") self.hboxlayout5.addWidget(self.removeLocButton) self.vboxlayout2.addLayout(self.hboxlayout5) self.tabWidget.addTab(self.tab_2, "") self.customPackagePage = QtGui.QWidget() self.customPackagePage.setGeometry(QtCore.QRect(0, 0, 679, 373)) self.customPackagePage.setObjectName("customPackagePage") self.gridLayout_2 = QtGui.QGridLayout(self.customPackagePage) self.gridLayout_2.setObjectName("gridLayout_2") self.label_5 = QtGui.QLabel(self.customPackagePage) sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.label_5.sizePolicy().hasHeightForWidth()) self.label_5.setSizePolicy(sizePolicy) self.label_5.setObjectName("label_5") self.gridLayout_2.addWidget(self.label_5, 0, 0, 1, 5) self.label_6 = QtGui.QLabel(self.customPackagePage) self.label_6.setObjectName("label_6") self.gridLayout_2.addWidget(self.label_6, 1, 0, 1, 1) self.customPackageNameEdit = QtGui.QLineEdit(self.customPackagePage) self.customPackageNameEdit.setObjectName("customPackageNameEdit") self.gridLayout_2.addWidget(self.customPackageNameEdit, 1, 1, 1, 4) self.label_7 = QtGui.QLabel(self.customPackagePage) self.label_7.setObjectName("label_7") self.gridLayout_2.addWidget(self.label_7, 2, 0, 1, 1) self.customPackageVersionEdit = QtGui.QLineEdit(self.customPackagePage) self.customPackageVersionEdit.setObjectName("customPackageVersionEdit") self.gridLayout_2.addWidget(self.customPackageVersionEdit, 2, 1, 1, 1) spacerItem2 = QtGui.QSpacerItem(291, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.gridLayout_2.addItem(spacerItem2, 2, 2, 1, 2) self.label_8 = QtGui.QLabel(self.customPackagePage) self.label_8.setObjectName("label_8") self.gridLayout_2.addWidget(self.label_8, 3, 0, 1, 1) self.customPackageDirEdit = QtGui.QLineEdit(self.customPackagePage) self.customPackageDirEdit.setObjectName("customPackageDirEdit") self.gridLayout_2.addWidget(self.customPackageDirEdit, 3, 1, 1, 3) self.customPackageDirButton = QtGui.QPushButton(self.customPackagePage) self.customPackageDirButton.setObjectName("customPackageDirButton") self.gridLayout_2.addWidget(self.customPackageDirButton, 3, 4, 1, 1) self.customCppPackageFrame = QtGui.QGroupBox(self.customPackagePage) self.customCppPackageFrame.setEnabled(True) self.customCppPackageFrame.setCheckable(True) self.customCppPackageFrame.setChecked(False) self.customCppPackageFrame.setObjectName("customCppPackageFrame") self.gridLayout_3 = QtGui.QGridLayout(self.customCppPackageFrame) self.gridLayout_3.setSpacing(1) self.gridLayout_3.setContentsMargins(4, 1, 4, 1) self.gridLayout_3.setObjectName("gridLayout_3") self.label_9 = QtGui.QLabel(self.customCppPackageFrame) self.label_9.setObjectName("label_9") self.gridLayout_3.addWidget(self.label_9, 0, 0, 1, 1) self.customPackageIncludeEdit = QtGui.QLineEdit( self.customCppPackageFrame) self.customPackageIncludeEdit.setObjectName("customPackageIncludeEdit") self.gridLayout_3.addWidget(self.customPackageIncludeEdit, 0, 1, 1, 1) self.customPackageIncludeButton = QtGui.QPushButton( self.customCppPackageFrame) self.customPackageIncludeButton.setObjectName( "customPackageIncludeButton") self.gridLayout_3.addWidget(self.customPackageIncludeButton, 0, 2, 1, 1) self.label_11 = QtGui.QLabel(self.customCppPackageFrame) self.label_11.setObjectName("label_11") self.gridLayout_3.addWidget(self.label_11, 1, 0, 1, 1) self.customPackageLibEdit = QtGui.QLineEdit(self.customCppPackageFrame) self.customPackageLibEdit.setObjectName("customPackageLibEdit") self.gridLayout_3.addWidget(self.customPackageLibEdit, 1, 1, 1, 1) self.customPackageLibButton = QtGui.QPushButton( self.customCppPackageFrame) self.customPackageLibButton.setObjectName("customPackageLibButton") self.gridLayout_3.addWidget(self.customPackageLibButton, 1, 2, 1, 1) self.label_13 = QtGui.QLabel(self.customCppPackageFrame) self.label_13.setObjectName("label_13") self.gridLayout_3.addWidget(self.label_13, 2, 0, 1, 1) self.customPackageBinEdit = QtGui.QLineEdit(self.customCppPackageFrame) self.customPackageBinEdit.setObjectName("customPackageBinEdit") self.gridLayout_3.addWidget(self.customPackageBinEdit, 2, 1, 1, 1) self.customPackageBinButton = QtGui.QPushButton( self.customCppPackageFrame) self.customPackageBinButton.setObjectName("customPackageBinButton") self.gridLayout_3.addWidget(self.customPackageBinButton, 2, 2, 1, 1) self.gridLayout_2.addWidget(self.customCppPackageFrame, 4, 0, 1, 5) self.customPythonPackageFrame = QtGui.QGroupBox(self.customPackagePage) self.customPythonPackageFrame.setEnabled(True) self.customPythonPackageFrame.setCheckable(True) self.customPythonPackageFrame.setChecked(False) self.customPythonPackageFrame.setObjectName("customPythonPackageFrame") self.gridLayout = QtGui.QGridLayout(self.customPythonPackageFrame) self.gridLayout.setSpacing(2) self.gridLayout.setContentsMargins(4, 0, 2, 4) self.gridLayout.setObjectName("gridLayout") self.label_12 = QtGui.QLabel(self.customPythonPackageFrame) self.label_12.setObjectName("label_12") self.gridLayout.addWidget(self.label_12, 0, 0, 1, 1) self.customPythonPackageEdit = QtGui.QLineEdit( self.customPythonPackageFrame) self.customPythonPackageEdit.setObjectName("customPythonPackageEdit") self.gridLayout.addWidget(self.customPythonPackageEdit, 0, 1, 1, 1) self.customPythonPackageButton = QtGui.QPushButton( self.customPythonPackageFrame) self.customPythonPackageButton.setObjectName( "customPythonPackageButton") self.gridLayout.addWidget(self.customPythonPackageButton, 0, 2, 1, 1) self.pythonNamespaceFrame = QtGui.QGroupBox( self.customPythonPackageFrame) self.pythonNamespaceFrame.setCheckable(True) self.pythonNamespaceFrame.setChecked(False) self.pythonNamespaceFrame.setObjectName("pythonNamespaceFrame") self.horizontalLayout = QtGui.QHBoxLayout(self.pythonNamespaceFrame) self.horizontalLayout.setSpacing(2) self.horizontalLayout.setContentsMargins(4, 1, 4, 4) self.horizontalLayout.setObjectName("horizontalLayout") self.label_10 = QtGui.QLabel(self.pythonNamespaceFrame) self.label_10.setObjectName("label_10") self.horizontalLayout.addWidget(self.label_10) self.namespaceEdit = QtGui.QLineEdit(self.pythonNamespaceFrame) self.namespaceEdit.setObjectName("namespaceEdit") self.horizontalLayout.addWidget(self.namespaceEdit) self.gridLayout.addWidget(self.pythonNamespaceFrame, 1, 1, 1, 1) self.gridLayout_2.addWidget(self.customPythonPackageFrame, 5, 0, 1, 5) spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) self.gridLayout_2.addItem(spacerItem3, 6, 1, 1, 2) self.customResetButton = QtGui.QPushButton(self.customPackagePage) self.customResetButton.setObjectName("customResetButton") self.gridLayout_2.addWidget(self.customResetButton, 6, 3, 1, 1) self.customApplyButton = QtGui.QPushButton(self.customPackagePage) self.customApplyButton.setObjectName("customApplyButton") self.gridLayout_2.addWidget(self.customApplyButton, 6, 4, 1, 1) self.tabWidget.addTab(self.customPackagePage, "") self.layoutWidget = QtGui.QWidget(self.splitter) self.layoutWidget.setObjectName("layoutWidget") self.vboxlayout3 = QtGui.QVBoxLayout(self.layoutWidget) self.vboxlayout3.setObjectName("vboxlayout3") self.label_3 = QtGui.QLabel(self.layoutWidget) self.label_3.setObjectName("label_3") self.vboxlayout3.addWidget(self.label_3) self.logText = QtGui.QTextEdit(self.layoutWidget) self.logText.setReadOnly(True) self.logText.setObjectName("logText") self.vboxlayout3.addWidget(self.logText) self.gridLayout_4.addWidget(self.splitter, 0, 0, 1, 1) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtGui.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 703, 21)) self.menubar.setObjectName("menubar") self.menuAuthentification = QtGui.QMenu(self.menubar) self.menuAuthentification.setObjectName("menuAuthentification") self.menu_File = QtGui.QMenu(self.menubar) self.menu_File.setObjectName("menu_File") self.menuHelp = QtGui.QMenu(self.menubar) self.menuHelp.setObjectName("menuHelp") MainWindow.setMenuBar(self.menubar) self.actionCookie_Session = QtGui.QAction(MainWindow) self.actionCookie_Session.setObjectName("actionCookie_Session") self.action_Quit = QtGui.QAction(MainWindow) self.action_Quit.setObjectName("action_Quit") self.action_About = QtGui.QAction(MainWindow) self.action_About.setObjectName("action_About") self.action_Web = QtGui.QAction(MainWindow) self.action_Web.setObjectName("action_Web") self.menuAuthentification.addAction(self.actionCookie_Session) self.menu_File.addAction(self.action_Quit) self.menuHelp.addAction(self.action_About) self.menuHelp.addAction(self.action_Web) self.menubar.addAction(self.menu_File.menuAction()) self.menubar.addAction(self.menuAuthentification.menuAction()) self.menubar.addAction(self.menuHelp.menuAction()) self.retranslateUi(MainWindow) self.tabWidget.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(MainWindow) MainWindow.setTabOrder(self.tabWidget, self.radioRecommended) MainWindow.setTabOrder(self.radioRecommended, self.radioAll) MainWindow.setTabOrder(self.radioAll, self.radioUpdate) MainWindow.setTabOrder(self.radioUpdate, self.radioInstalled) MainWindow.setTabOrder(self.radioInstalled, self.packageList) MainWindow.setTabOrder(self.packageList, self.checkAll) MainWindow.setTabOrder(self.checkAll, self.ClearAll) MainWindow.setTabOrder(self.ClearAll, self.proceedButton) MainWindow.setTabOrder(self.proceedButton, self.refreshButton) MainWindow.setTabOrder(self.refreshButton, self.logText) MainWindow.setTabOrder(self.logText, self.requestEdit) MainWindow.setTabOrder(self.requestEdit, self.fileButton) MainWindow.setTabOrder(self.fileButton, self.customInstallButton) MainWindow.setTabOrder(self.customInstallButton, self.locationList) MainWindow.setTabOrder(self.locationList, self.addLocButton) MainWindow.setTabOrder(self.addLocButton, self.removeLocButton)