aboutsummaryrefslogtreecommitdiff
path: root/scripts/prompts_from_file.py
diff options
context:
space:
mode:
authorme <25877290+Kryptortio@users.noreply.github.com>2023-01-05 09:29:07 +0100
committerme <25877290+Kryptortio@users.noreply.github.com>2023-01-05 09:29:07 +0100
commitf185baeb28f348e4ec97cd7070ed219b5f74a48e (patch)
treee4ebaf6af927b662562815d38579d4e629fa836e /scripts/prompts_from_file.py
parentc3109fa18a5a105eea5e343875b540939884f304 (diff)
Refactor elem_prefix as function elem_id
Diffstat (limited to 'scripts/prompts_from_file.py')
-rw-r--r--scripts/prompts_from_file.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/scripts/prompts_from_file.py b/scripts/prompts_from_file.py
index c6a0b709..5c84c3e9 100644
--- a/scripts/prompts_from_file.py
+++ b/scripts/prompts_from_file.py
@@ -13,6 +13,7 @@ from modules import sd_samplers
from modules.processing import Processed, process_images
from PIL import Image
from modules.shared import opts, cmd_opts, state
+import re
def process_string_tag(tag):
@@ -111,14 +112,17 @@ class Script(scripts.Script):
def title(self):
return "Prompts from file or textbox"
- def ui(self, is_img2img):
- elem_prefix = ('img2img' if is_img2img else 'txt2txt') + '_script_prompt_from_file_'
-
- checkbox_iterate = gr.Checkbox(label="Iterate seed every line", value=False, elem_id=elem_prefix + "checkbox_iterate")
- checkbox_iterate_batch = gr.Checkbox(label="Use same random seed for all lines", value=False, elem_id=elem_prefix + "checkbox_iterate_batch")
+ def elem_id(self, item_id):
+ gen_elem_id = ('img2img' if self.is_img2img else 'txt2txt') + '_script_' + re.sub(r'\s', '_', self.title().lower()) + '_' + item_id
+ gen_elem_id = re.sub(r'[^a-z_0-9]', '', gen_elem_id)
+ return gen_elem_id
- prompt_txt = gr.Textbox(label="List of prompt inputs", lines=1, elem_id=elem_prefix + "prompt_txt")
- file = gr.File(label="Upload prompt inputs", type='bytes', elem_id=elem_prefix + "file")
+ def ui(self, is_img2img):
+ checkbox_iterate = gr.Checkbox(label="Iterate seed every line", value=False, elem_id=self.elem_id("checkbox_iterate"))
+ checkbox_iterate_batch = gr.Checkbox(label="Use same random seed for all lines", value=False, elem_id=self.elem_id("checkbox_iterate_batch"))
+
+ prompt_txt = gr.Textbox(label="List of prompt inputs", lines=1, elem_id=self.elem_id("prompt_txt"))
+ file = gr.File(label="Upload prompt inputs", type='bytes', elem_id=self.elem_id("file"))
file.change(fn=load_prompt_file, inputs=[file], outputs=[file, prompt_txt, prompt_txt])