aboutsummaryrefslogtreecommitdiff
path: root/modules/scripts.py
diff options
context:
space:
mode:
authorAUTOMATIC1111 <16777216c@gmail.com>2023-08-13 17:31:10 +0300
committerAUTOMATIC1111 <16777216c@gmail.com>2023-08-13 17:31:10 +0300
commitf093c9d39d0fe9951a8f5c570027cecc68778ef2 (patch)
treee8a76ec273f0212f6da83073593b186eb6ea4689 /modules/scripts.py
parent3163d1269af7f9fd95382e58bb1581fd741b5119 (diff)
fix broken XYZ plot seeds
add new callback for scripts to be used before processing
Diffstat (limited to 'modules/scripts.py')
-rw-r--r--modules/scripts.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/modules/scripts.py b/modules/scripts.py
index c6459b45..d4a9da94 100644
--- a/modules/scripts.py
+++ b/modules/scripts.py
@@ -106,9 +106,16 @@ class Script:
pass
+ def setup(self, p, *args):
+ """For AlwaysVisible scripts, this function is called when the processing object is set up, before any processing starts.
+ args contains all values returned by components from ui().
+ """
+ pass
+
+
def before_process(self, p, *args):
"""
- This function is called very early before processing begins for AlwaysVisible scripts.
+ This function is called very early during processing begins for AlwaysVisible scripts.
You can modify the processing object (p) here, inject hooks, etc.
args contains all values returned by components from ui()
"""
@@ -706,6 +713,14 @@ class ScriptRunner:
except Exception:
errors.report(f"Error running before_hr: {script.filename}", exc_info=True)
+ def setup_scrips(self, p):
+ for script in self.alwayson_scripts:
+ try:
+ script_args = p.script_args[script.args_from:script.args_to]
+ script.setup(p, *script_args)
+ except Exception:
+ errors.report(f"Error running setup: {script.filename}", exc_info=True)
+
scripts_txt2img: ScriptRunner = None
scripts_img2img: ScriptRunner = None