Ejemplo n.º 1
0
    def __init__(self, root, is_type_editor):
        """
        Args:
            root: path of project root folder
            is_type_editor: bool. see class docstring                
        """
        self.path = util.normpath(os.path.abspath(root))
        self.is_type_editor = is_type_editor
        self._auto_create_clazz_folder = True

        # Must be the first
        self.event_manager = EventManager()
        self.type_manager = TypeManager()
        self.fs_manager = FileSystemManager(
            self, os.path.join(self.path, const.PROJECT_FOLDER_DATA))
        # should after fs_manager
        self.object_manager = ObjectManager(self)
        # should after object_manager
        self.ref_manager = RefManager()

        # self._langauges = ('en', )
        self._default_language = 'en'
        self._translations = {}
        self._verifier = None
        self._loading_errors = AttrVerifyLogger()

        self.tags = set()

        self._next_ids = {}  # {clazz_name: next_id}
        self._loaded = False
        self._editor_project = None