mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-15 22:45:53 +08:00
Merge pull request #15022 from fieldOfView/fix_postprocessing_script_folders
Stop postprocessing plugin creating unnecessary script folders
This commit is contained in:
commit
07fc38448b
@ -139,22 +139,28 @@ class PostProcessingPlugin(QObject, Extension):
|
|||||||
if self._loaded_scripts: # Already loaded.
|
if self._loaded_scripts: # Already loaded.
|
||||||
return
|
return
|
||||||
|
|
||||||
# The PostProcessingPlugin path is for built-in scripts.
|
# Make sure a "scripts" folder exists in the main configuration folder and the preferences folder.
|
||||||
# The Resources path is where the user should store custom scripts.
|
# On some platforms the resources and preferences folders resolve to the same folder,
|
||||||
# The Preferences path is legacy, where the user may previously have stored scripts.
|
# but on Linux they can be different.
|
||||||
resource_folders = [PluginRegistry.getInstance().getPluginPath("PostProcessingPlugin"), Resources.getStoragePath(Resources.Preferences)]
|
for path in set([os.path.join(Resources.getStoragePath(r), "scripts") for r in [Resources.Resources, Resources.Preferences]]):
|
||||||
resource_folders.extend(Resources.getAllPathsForType(Resources.Resources))
|
|
||||||
for root in resource_folders:
|
|
||||||
if root is None:
|
|
||||||
continue
|
|
||||||
path = os.path.join(root, "scripts")
|
|
||||||
if not os.path.isdir(path):
|
if not os.path.isdir(path):
|
||||||
try:
|
try:
|
||||||
os.makedirs(path)
|
os.makedirs(path)
|
||||||
except OSError:
|
except OSError:
|
||||||
Logger.log("w", "Unable to create a folder for scripts: " + path)
|
Logger.log("w", "Unable to create a folder for scripts: " + path)
|
||||||
continue
|
|
||||||
|
|
||||||
|
# The PostProcessingPlugin path is for built-in scripts.
|
||||||
|
# The Resources path is where the user should store custom scripts.
|
||||||
|
# The Preferences path is legacy, where the user may previously have stored scripts.
|
||||||
|
resource_folders = [PluginRegistry.getInstance().getPluginPath("PostProcessingPlugin"), Resources.getStoragePath(Resources.Preferences)]
|
||||||
|
resource_folders.extend(Resources.getAllPathsForType(Resources.Resources))
|
||||||
|
|
||||||
|
for root in resource_folders:
|
||||||
|
if root is None:
|
||||||
|
continue
|
||||||
|
path = os.path.join(root, "scripts")
|
||||||
|
if not os.path.isdir(path):
|
||||||
|
continue
|
||||||
self.loadScripts(path)
|
self.loadScripts(path)
|
||||||
|
|
||||||
def loadScripts(self, path: str) -> None:
|
def loadScripts(self, path: str) -> None:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user