Esempio n. 1
0
    def initWidgets(self):
        self.setStyleSheet(self.styles.default)
        unsortedPages = []
        for pageName in self.config.pages:
            page = self.config.pages[pageName]
            logging.debug("Building Page: " + pageName)
            order = 0
            if 'order' in page:
                order = page.order
            pageFrame = QFrame(self)
            pageFrame.setVisible(False)
            pageFrame.setObjectName(pageName)
            pageFrame.setGeometry(
                0, 0, self.screen.width(), self.screen.height())
            styleString = self._buildFullStyleString(pageName, page)
            logging.debug("Page Style " + styleString)
            pageFrame.setStyleSheet(styleString)
            pageFrame.order = order
            pageFrame.blockName = pageName
            self.pages[pageName] = pageFrame
            unsortedPages.append(pageFrame)

            if 'blocks' in page:
                logging.debug("call loadblocks, passing %s %s"
                              % (self.blockName, self))
                self.loadBlocks(pageFrame, page.blocks)

        sortedPages = sorted(unsortedPages, key=lambda x: x.order)

        for i in range(len(sortedPages)):
            pageFrame = sortedPages[i]
            if i == 0:
                pageFrame.setVisible(True)
            pageFrame.pageNumber = i
            self.pages[pageFrame.blockName] = pageFrame

        for module in self.config.plugins:
            self.loadModule(module, self.config.plugins[module])