aboutsummaryrefslogtreecommitdiffstats
path: root/modules/ui.py
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2022-11-19 12:15:24 +0000
committerAUTOMATIC <16777216c@gmail.com>2022-11-19 12:15:24 +0000
commit5a6387e189dc365c47a7979b9040d5b6fdd7ba43 (patch)
tree35b26bb962212573fa408d0ac85e4b19f26e55ed /modules/ui.py
parent84a6f211d407cd748c603edc3a81862488505c24 (diff)
downloadstable-diffusion-webui-gfx803-5a6387e189dc365c47a7979b9040d5b6fdd7ba43.tar.gz
stable-diffusion-webui-gfx803-5a6387e189dc365c47a7979b9040d5b6fdd7ba43.tar.bz2
stable-diffusion-webui-gfx803-5a6387e189dc365c47a7979b9040d5b6fdd7ba43.zip
make it possible to change models etc by editing options using API
Diffstat (limited to 'modules/ui.py')
-rw-r--r--modules/ui.py22
1 files changed, 4 insertions, 18 deletions
diff --git a/modules/ui.py b/modules/ui.py
index 5dd97754..bb090c62 100644
--- a/modules/ui.py
+++ b/modules/ui.py
@@ -1484,16 +1484,9 @@ def create_ui(wrap_gradio_gpu_call):
if comp == dummy_component:
continue
- oldval = opts.data.get(key, None)
- try:
- setattr(opts, key, value)
- except RuntimeError:
- continue
- if oldval != value:
- if opts.data_labels[key].onchange is not None:
- opts.data_labels[key].onchange()
-
+ if opts.set(key, value):
changed.append(key)
+
try:
opts.save(shared.config_filename)
except RuntimeError:
@@ -1504,15 +1497,8 @@ def create_ui(wrap_gradio_gpu_call):
if not opts.same_type(value, opts.data_labels[key].default):
return gr.update(visible=True), opts.dumpjson()
- oldval = opts.data.get(key, None)
- try:
- setattr(opts, key, value)
- except Exception:
- return gr.update(value=oldval), opts.dumpjson()
-
- if oldval != value:
- if opts.data_labels[key].onchange is not None:
- opts.data_labels[key].onchange()
+ if not opts.set(key, value):
+ return gr.update(value=getattr(opts, key)), opts.dumpjson()
opts.save(shared.config_filename)