Exemple #1
0
    def __init_project_types(self):
        self.project_types = _ProjectStore()
        self.project_types.add("Simple", SimpleProject)

        dirs = list(moo.get_data_subdirs("projects", moo.DATA_LIB))
        dirs = filter(lambda d: os.path.isdir(d), dirs)
        dirs.reverse()

        if not dirs:
            return

        saved_path = sys.path
        sys.path = list(dirs) + list(saved_path)

        for d in dirs:
            try:
                if not os.path.isdir(d):
                    continue
                files = os.listdir(d)
                for f in files:
                    path = os.path.join(d, f)
                    if os.path.isfile(path):
                        self.__read_project_file(path)
            except:
                print_error()

        sys.path = saved_path
Exemple #2
0
 def __cmd_simple(self, cmd, filename, window):
     try:
         working_dir, command = self.config.get_command(
             cmd, filename, self.topdir)
     except Exception, e:
         print_error(e)
         return False
Exemple #3
0
    def __init_project_types(self):
        self.project_types = _ProjectStore()
        self.project_types.add("Simple", SimpleProject)

        dirs = list(moo.get_data_subdirs("projects", moo.DATA_LIB))
        dirs = filter(lambda d: os.path.isdir(d), dirs)
        dirs.reverse()

        if not dirs:
            return

        saved_path = sys.path
        sys.path = list(dirs) + list(saved_path)

        for d in dirs:
            try:
                if not os.path.isdir(d):
                    continue
                files = os.listdir(d)
                for f in files:
                    path = os.path.join(d, f)
                    if os.path.isfile(path):
                        self.__read_project_file(path)
            except:
                print_error()

        sys.path = saved_path
Exemple #4
0
 def load_session(self):
     try:
         file = self.get_session_file()
         if os.path.exists(file):
             session = Session(file)
             session.attach(self.window)
             self.__file_selector_dir = session.get_file_selector_dir()
         else:
             self.__file_selector_dir = self.topdir
         self.__setup_file_selector()
     except:
         print_error()
Exemple #5
0
 def load_session(self):
     try:
         file = self.get_session_file()
         if os.path.exists(file):
             session = Session(file)
             session.attach(self.window)
             self.__file_selector_dir = session.get_file_selector_dir()
         else:
             self.__file_selector_dir = self.topdir
         self.__setup_file_selector()
     except:
         print_error()
Exemple #6
0
 def __setup_file_selector(self):
     plugin = moo.plugin_lookup('FileSelector')
     if plugin:
         try:
             self.filesel = plugin.call_method('get-widget', self.window)
             if self.filesel:
                 last_dir = self.__file_selector_dir
                 if last_dir and not os.path.isdir(last_dir):
                     last_dir = None
                 if not last_dir:
                     last_dir = self.topdir
                 self.filesel.chdir(last_dir)
                 self.__filesel_cb_id = self.filesel.connect('notify::current-directory', self.__filesel_cb)
                 self.__filesel_destroy_cb_id = self.filesel.connect('destroy', self.__filesel_destroy_cb)
         except:
             print_error()
Exemple #7
0
 def __read_project_file(self, path):
     try:
         dic = {'__name__' : '__project__', '__builtins__' : __builtins__}
         execfile(path, dic)
         if not dic.has_key('__project__'):
             print "File %s doesn't define __project__ attribute" % (path,)
         elif not dic.has_key('__project_type__'):
             print "File %s doesn't define __project_type__ attribute" % (path,)
         elif not dic.has_key('__project_version__'):
             print "File %s doesn't define __project_version__ attribute" % (path,)
         elif dic['__project_version__'] != mprj.project_version:
             print "In file %s: version %s does not match current version %s" % (
                     path, dic['__project_version__'], mprj.project_version)
         else:
             self.project_types.add(dic['__project_type__'], dic['__project__'])
     except Exception, e:
         print_error(e)
Exemple #8
0
 def __setup_file_selector(self):
     plugin = moo.plugin_lookup('FileSelector')
     if plugin:
         try:
             self.filesel = plugin.call_method('get-widget', self.window)
             if self.filesel:
                 last_dir = self.__file_selector_dir
                 if last_dir and not os.path.isdir(last_dir):
                     last_dir = None
                 if not last_dir:
                     last_dir = self.topdir
                 self.filesel.chdir(last_dir)
                 self.__filesel_cb_id = self.filesel.connect(
                     'notify::current-directory', self.__filesel_cb)
                 self.__filesel_destroy_cb_id = self.filesel.connect(
                     'destroy', self.__filesel_destroy_cb)
         except:
             print_error()
Exemple #9
0
 def __read_project_file(self, path):
     try:
         dic = {'__name__': '__project__', '__builtins__': __builtins__}
         execfile(path, dic)
         if not dic.has_key('__project__'):
             print "File %s doesn't define __project__ attribute" % (path, )
         elif not dic.has_key('__project_type__'):
             print "File %s doesn't define __project_type__ attribute" % (
                 path, )
         elif not dic.has_key('__project_version__'):
             print "File %s doesn't define __project_version__ attribute" % (
                 path, )
         elif dic['__project_version__'] != mprj.project_version:
             print "In file %s: version %s does not match current version %s" % (
                 path, dic['__project_version__'], mprj.project_version)
         else:
             self.project_types.add(dic['__project_type__'],
                                    dic['__project__'])
     except Exception, e:
         print_error(e)
Exemple #10
0
Fichier : c.py Projet : cmotc/medit
 def __cmd_simple(self, cmd, filename, window):
     try:
         working_dir, command = self.config.get_command(cmd, filename, self.topdir)
     except Exception, e:
         print_error(e)
         return False