# {py:mod}`simvx.editor.project_classes` ```{py:module} simvx.editor.project_classes ``` ```{autodoc2-docstring} simvx.editor.project_classes :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ProjectClass ` - ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass :summary: ``` * - {py:obj}`ProjectClassIndex ` - ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex :summary: ``` * - {py:obj}`RenameResult ` - ```{autodoc2-docstring} simvx.editor.project_classes.RenameResult :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`rename_class ` - ```{autodoc2-docstring} simvx.editor.project_classes.rename_class :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`log ` - ```{autodoc2-docstring} simvx.editor.project_classes.log :summary: ``` ```` ### API ````{py:data} log :canonical: simvx.editor.project_classes.log :value: > 'getLogger(...)' ```{autodoc2-docstring} simvx.editor.project_classes.log ``` ```` `````{py:class} ProjectClass :canonical: simvx.editor.project_classes.ProjectClass ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass ``` ````{py:attribute} name :canonical: simvx.editor.project_classes.ProjectClass.name :type: str :value: > None ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass.name ``` ```` ````{py:attribute} module_path :canonical: simvx.editor.project_classes.ProjectClass.module_path :type: str :value: > None ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass.module_path ``` ```` ````{py:attribute} file_path :canonical: simvx.editor.project_classes.ProjectClass.file_path :type: pathlib.Path :value: > None ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass.file_path ``` ```` ````{py:attribute} bases :canonical: simvx.editor.project_classes.ProjectClass.bases :type: tuple[str, ...] :value: > None ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass.bases ``` ```` ````{py:property} display_subtitle :canonical: simvx.editor.project_classes.ProjectClass.display_subtitle :type: str ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClass.display_subtitle ``` ```` ````` `````{py:class} ProjectClassIndex(project_path: pathlib.Path | None = None, *, src_subdir: str = 'src') :canonical: simvx.editor.project_classes.ProjectClassIndex ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.__init__ ``` ````{py:property} project_path :canonical: simvx.editor.project_classes.ProjectClassIndex.project_path :type: pathlib.Path | None ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.project_path ``` ```` ````{py:method} set_project_path(project_path: pathlib.Path | None) -> None :canonical: simvx.editor.project_classes.ProjectClassIndex.set_project_path ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.set_project_path ``` ```` ````{py:method} set_src_subdir(subdir: str) -> None :canonical: simvx.editor.project_classes.ProjectClassIndex.set_src_subdir ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.set_src_subdir ``` ```` ````{py:property} root :canonical: simvx.editor.project_classes.ProjectClassIndex.root :type: pathlib.Path | None ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.root ``` ```` ````{py:method} refresh() -> list[simvx.editor.project_classes.ProjectClass] :canonical: simvx.editor.project_classes.ProjectClassIndex.refresh ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.refresh ``` ```` ````{py:method} all() -> list[simvx.editor.project_classes.ProjectClass] :canonical: simvx.editor.project_classes.ProjectClassIndex.all ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.all ``` ```` ````{py:method} iter_use_sites(class_name: str) -> collections.abc.Iterator[tuple[pathlib.Path, simvx.core.scene_io.UseSiteRef]] :canonical: simvx.editor.project_classes.ProjectClassIndex.iter_use_sites ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.iter_use_sites ``` ```` ````{py:method} resolve(project_class: simvx.editor.project_classes.ProjectClass) -> type[simvx.core.Node] | None :canonical: simvx.editor.project_classes.ProjectClassIndex.resolve ```{autodoc2-docstring} simvx.editor.project_classes.ProjectClassIndex.resolve ``` ```` ````` `````{py:class} RenameResult :canonical: simvx.editor.project_classes.RenameResult ```{autodoc2-docstring} simvx.editor.project_classes.RenameResult ``` ````{py:attribute} files_modified :canonical: simvx.editor.project_classes.RenameResult.files_modified :type: tuple[pathlib.Path, ...] :value: > None ```{autodoc2-docstring} simvx.editor.project_classes.RenameResult.files_modified ``` ```` ````{py:attribute} file_renamed :canonical: simvx.editor.project_classes.RenameResult.file_renamed :type: tuple[pathlib.Path, pathlib.Path] | None :value: > None ```{autodoc2-docstring} simvx.editor.project_classes.RenameResult.file_renamed ``` ```` ````` ````{py:function} rename_class(project_index: simvx.editor.project_classes.ProjectClassIndex, old_name: str, new_name: str, *, rename_file: bool = False) -> simvx.editor.project_classes.RenameResult :canonical: simvx.editor.project_classes.rename_class ```{autodoc2-docstring} simvx.editor.project_classes.rename_class ``` ````