Esempio n. 1
0
    def _refresh_project(self, item=None):
        if item is None:
            item = self.currentItem()
        parentItem = self._get_project_root(item)
        if parentItem is None:
            return
        if item.parent() is None:
            path = item.path
        else:
            path = file_manager.create_path(item.path, item.text(0))

        thread = ui_tools.ThreadProjectExplore()
        self._thread_execution[path] = thread
        self.connect(thread, SIGNAL("folderDataRefreshed(PyQt_PyObject)"),
                     self._callback_refresh_project)
        self.connect(thread, SIGNAL("finished()"), self._clean_threads)
        thread.refresh_project(path, item, parentItem.extensions)
Esempio n. 2
0
 def open_project_folder(self, folderName='', notIDEStart=True):
     """Open a Project and load the symbols in the Code Locator."""
     #if not self.tree_projects and notIDEStart:
         #QMessageBox.information(self, self.tr("Projects Disabled"),
             #self.tr("Project support has been disabled from Preferences"))
         #return
     if not folderName:
         if settings.WORKSPACE:
             directory = settings.WORKSPACE
         else:
             directory = os.path.expanduser("~")
             #current_project = self.get_actual_project()
             #main_container = IDE.get_service('main_container')
             #if main_container:
                 #editorWidget = main_container.get_actual_editor()
                 #if current_project is not None:
                     #directory = current_project
                 #elif editorWidget is not None and editorWidget.ID:
                     #directory = file_manager.get_folder(editorWidget.ID)
         folderName = QFileDialog.getExistingDirectory(self,
             self.tr("Open Project Directory"), directory)
     try:
         if not folderName:
             return
         #FIXME: Here we open project with fs
         if not self.tree_projects.is_open(folderName):
             self.tree_projects.mute_signals = True
             self.tree_projects.loading_project(folderName)
             thread = ui_tools.ThreadProjectExplore()
             self._thread_execution[folderName] = thread
             self.connect(thread,
                 SIGNAL("folderDataAcquired(PyQt_PyObject)"),
                 self._callback_open_project)
             self.connect(thread,
                 SIGNAL("finished()"),
                 self._unmute_tree_signals_clean_threads)
             thread.open_folder(folderName)
         else:
             self.tree_projects._set_current_project(folderName)
     except Exception as reason:
         logger.error('open_project_folder: %s', reason)
         if not notIDEStart:
             QMessageBox.information(self, self.tr("Incorrect Project"),
                 self.tr("The project could not be loaded!"))
Esempio n. 3
0
 def open_project_folder(self, folderName='', notIDEStart=True):
     if not self._treeProjects and notIDEStart:
         QMessageBox.information(
             self, self.tr("Projects Disabled"),
             self.tr("Project support has been disabled from Preferences"))
         return
     if not folderName:
         if settings.WORKSPACE:
             directory = settings.WORKSPACE
         else:
             directory = os.path.expanduser("~")
             current_project = self.get_actual_project()
             mainContainer = main_container.MainContainer()
             editorWidget = mainContainer.get_actual_editor()
             if current_project is not None:
                 directory = current_project
             elif editorWidget is not None and editorWidget.ID:
                 directory = file_manager.get_folder(editorWidget.ID)
         folderName = unicode(
             QFileDialog.getExistingDirectory(
                 self, self.tr("Open Project Directory"), directory))
     try:
         if not folderName:
             return
         if not self._treeProjects.is_open(folderName):
             self._treeProjects.mute_signals = True
             self._treeProjects.loading_project(folderName)
             thread = ui_tools.ThreadProjectExplore()
             self._thread_execution[folderName] = thread
             self.connect(thread,
                          SIGNAL("folderDataAcquired(PyQt_PyObject)"),
                          self._callback_open_project)
             self.connect(thread, SIGNAL("finished()"),
                          self._unmute_tree_signals_clean_threads)
             thread.open_folder(folderName)
         else:
             self._treeProjects._set_current_project(folderName)
     except Exception, reason:
         logger.error('open_project_folder: %s', reason)
         if not notIDEStart:
             QMessageBox.information(
                 self, self.tr("Incorrect Project"),
                 self.tr("The project could not be loaded!"))