예제 #1
0
    def __init__(self,
                 editorTabWidget,
                 root,
                 app,
                 projectSettings,
                 parent=None):
        QtGui.QWidget.__init__(self, parent)

        self.refactor = editorTabWidget.refactor
        self.root = root

        mainLayout = QtGui.QVBoxLayout()
        mainLayout.setContentsMargins(0, 0, 2, 2)
        self.setLayout(mainLayout)

        self.progressWidget = ProgressWidget()
        mainLayout.addWidget(self.progressWidget)
        self.progressWidget.hide()

        self.viewStack = QtGui.QStackedWidget()
        mainLayout.addWidget(self.viewStack)

        self.projectTree = ProjectTree(editorTabWidget, root, app,
                                       projectSettings, self.progressWidget,
                                       self)
        self.viewStack.addWidget(self.projectTree)

        self.searchResultsTree = QtGui.QTreeWidget(self)
        self.searchResultsTree.setObjectName("sidebarItem")
        self.searchResultsTree.setHeaderItem(
            QtGui.QTreeWidgetItem(["Search Results:"]))
        self.searchResultsTree.activated.connect(self.loadFile)
        self.viewStack.addWidget(self.searchResultsTree)

        self.searchThread = SearchThread()
        self.searchThread.foundList.connect(self.updateSearchTree)

        self.searchTimer = QtCore.QTimer()
        self.searchTimer.setSingleShot(True)
        self.searchTimer.timeout.connect(self.search)

        vbox = QtGui.QVBoxLayout()
        vbox.setSpacing(0)
        mainLayout.addLayout(vbox)

        self.searchLine = LineEdit(self.viewStack, self.searchResultsTree)
        self.searchLine.textChanged.connect(self.startSearchTimer)
        self.searchLine.returnPressed.connect(self.loadFile)
        vbox.addWidget(self.searchLine)

        self.progressBar = QtGui.QProgressBar()
        self.progressBar.setMaximumHeight(2)
        self.progressBar.setStyleSheet("""

                                  QProgressBar {
                                     border: None;
                                     text-align: center;
                                     padding: 0px;
                                     border-radius: 0px;
                                     background-color: Transparent;
                                 }

                                 QProgressBar::chunk {
                                      color: black;
                                      border-radius: 0px;
                                      background-color: #65B0EA;
                                 }

                                """)
        self.progressBar.setRange(0, 0)
        vbox.addWidget(self.progressBar)
        self.progressBar.hide()