Refactor elem_prefix as function elem_id

This commit is contained in:
me
2023-01-05 09:29:07 +01:00
parent c3109fa18a
commit f185baeb28
9 changed files with 96 additions and 61 deletions

View File

@@ -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])