Example #1
0
    def __init__(self, parent=None):
        QtGui.QMainWindow.__init__(self, parent)
        self.setMinimumSize(500, 400)
        self.showMaximized()
        self.setWindowTitle("Second Nature")
        self.setWindowFlags(QtCore.Qt.Window)
        self.setAttribute(QtCore.Qt.WA_DeleteOnClose)

        self.logger = sn_logger
        self.__applets = []

        self.__extInitialised = False

        # -- main menu bar --
        self._mainMenuBar = QtGui.QMenuBar(self)
        self._projectMenu = self._mainMenuBar.addMenu("&Project")
        self.setMenuBar(self._mainMenuBar)

        # -- project menu --
        qpm = QActiveProjectManager()
        self._projectMenu.addAction(qpm.get_action_new())
        self._projectMenu.addAction(qpm.get_action_open())
        self._projectMenu.addAction(qpm.get_action_save())
        self._projectMenu.addAction(qpm.get_action_close())

        # -- a default central widget--
        self.__centralStack = QtGui.QStackedWidget(self)

        # -- status bar --
        self._statusBar  = QtGui.QStatusBar(self)
        self._layoutMode = QtGui.QComboBox(self)
        self._statusBar.addPermanentWidget(self._layoutMode)
        self._layoutMode.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
        self.__currentLayout = None
        self._statusBar.setStyleSheet("QStatusBar{background-color: " +\
                                      "qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, "+\
                                      "stop:0 rgba(135,135,135,255), " +\
                                      "stop:0.1 rgba(175,175,175,255), " +\
                                      "stop:1 rgba(200, 200, 200, 255));}")


        # -- add all those guys to the main window (self) --
        self.setMenuBar(self._mainMenuBar)
        self.setStatusBar(self._statusBar)
        self.setCentralWidget(self.__centralStack)

        self.__projMan = ProjectManager()
        if not self.__projMan.has_active_project():
            self.__projMan.new_active_project("New Project")

        # -- connections --
        self.__projMan.active_project_changed.connect(self.__on_active_project_set)
        AppletFactoryManager().applet_created.connect(self.add_applet)
        LayoutManager().item_list_changed.connect(self.__onLayoutListChanged)
        self._layoutMode.activated[int].connect(self.__onLayoutChosen)
        self._layoutMode.currentIndexChanged[int].connect(self.__onLayoutChosen)
Example #2
0
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self)
        self._layout = QtGui.QVBoxLayout(self)

        p = QtGui.QSizePolicy

        self._cb_layout = QtGui.QComboBox()
        self._cb_layout.setSizePolicy(p(p.MinimumExpanding, p.Maximum))
        self._stack = QtGui.QStackedWidget()

        self._cb_layout.activated.connect(self._stack.setCurrentIndex)

        self._layout.addWidget(self._cb_layout)
        self._layout.addWidget(self._stack)

        self._cb_layout.hide()