Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -197,16 +197,28 @@ def process_bbox(prompts: dict[str, Any]) -> tuple[tuple[Image.Image, Image.Imag
|
|
197 |
def on_change_bbox(prompts: dict[str, Any] | None):
|
198 |
return gr.update(interactive=prompts is not None)
|
199 |
|
200 |
-
def process_prompt(img: Image.Image, prompt: str, bg_prompt: str | None = None) -> tuple[tuple[Image.Image, Image.Image], gr.DownloadButton]:
|
201 |
-
return _process(img, prompt, bg_prompt)
|
202 |
|
203 |
def on_change_prompt(img: Image.Image | None, prompt: str | None, bg_prompt: str | None = None):
|
204 |
return gr.update(interactive=bool(img and prompt))
|
205 |
|
206 |
-
def update_button_state(img, prompt):
|
207 |
-
return gr.Button.update(interactive=bool(img and prompt))
|
208 |
|
209 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
210 |
# 맨 앞부분에 CSS 정의 추가
|
211 |
css = """
|
212 |
footer {display: none}
|
@@ -362,7 +374,14 @@ with gr.Blocks(theme=gr.themes.Soft(), css=css) as demo:
|
|
362 |
)
|
363 |
|
364 |
box_image.change(
|
365 |
-
fn=
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
inputs=[box_image, box_input],
|
367 |
outputs=box_btn,
|
368 |
queue=False
|
@@ -374,6 +393,6 @@ with gr.Blocks(theme=gr.themes.Soft(), css=css) as demo:
|
|
374 |
outputs=[box_output, box_download],
|
375 |
queue=True
|
376 |
)
|
377 |
-
|
378 |
demo.queue(max_size=30, api_open=False)
|
379 |
-
demo.launch()
|
|
|
197 |
def on_change_bbox(prompts: dict[str, Any] | None):
|
198 |
return gr.update(interactive=prompts is not None)
|
199 |
|
|
|
|
|
200 |
|
201 |
def on_change_prompt(img: Image.Image | None, prompt: str | None, bg_prompt: str | None = None):
|
202 |
return gr.update(interactive=bool(img and prompt))
|
203 |
|
|
|
|
|
204 |
|
205 |
|
206 |
+
# Event handler functions
|
207 |
+
def update_process_button(img, prompt):
|
208 |
+
return gr.Button.update(
|
209 |
+
interactive=bool(img and prompt),
|
210 |
+
variant="primary" if bool(img and prompt) else "secondary"
|
211 |
+
)
|
212 |
+
|
213 |
+
def update_box_button(img, box_input):
|
214 |
+
try:
|
215 |
+
if img and box_input:
|
216 |
+
coords = eval(box_input)
|
217 |
+
if isinstance(coords, list) and len(coords) == 4:
|
218 |
+
return gr.Button.update(interactive=True, variant="primary")
|
219 |
+
return gr.Button.update(interactive=False, variant="secondary")
|
220 |
+
except:
|
221 |
+
return gr.Button.update(interactive=False, variant="secondary")
|
222 |
# 맨 앞부분에 CSS 정의 추가
|
223 |
css = """
|
224 |
footer {display: none}
|
|
|
374 |
)
|
375 |
|
376 |
box_image.change(
|
377 |
+
fn=update_box_button,
|
378 |
+
inputs=[box_image, box_input],
|
379 |
+
outputs=box_btn,
|
380 |
+
queue=False
|
381 |
+
)
|
382 |
+
|
383 |
+
box_input.change(
|
384 |
+
fn=update_box_button,
|
385 |
inputs=[box_image, box_input],
|
386 |
outputs=box_btn,
|
387 |
queue=False
|
|
|
393 |
outputs=[box_output, box_download],
|
394 |
queue=True
|
395 |
)
|
396 |
+
|
397 |
demo.queue(max_size=30, api_open=False)
|
398 |
+
demo.launch()
|