hallisky commited on
Commit
44cf7cf
·
1 Parent(s): 593928c

Toggle buttons for Writing Type

Browse files
Files changed (1) hide show
  1. app.py +25 -2
app.py CHANGED
@@ -36,6 +36,12 @@ def toggle_slider(checked, value):
36
  else:
37
  return gr.update(value=0, interactive=False)
38
 
 
 
 
 
 
 
39
  demo = gr.Blocks()
40
 
41
  with demo:
@@ -64,17 +70,34 @@ with demo:
64
  ("Writing Type: Expository (None \u2192 More)", 0, 1, 0)
65
  ]
66
 
67
- for label, min_val, max_val, default in slider_values:
 
 
 
 
68
  with gr.Row():
69
- checkbox = gr.Checkbox(label=label)
 
 
 
 
 
70
  slider = gr.Slider(label=label, minimum=min_val, maximum=max_val, step=0.01, value=default, interactive=False)
71
  checkbox.change(fn=toggle_slider, inputs=[checkbox, gr.State(default)], outputs=slider)
72
  sliders.append(slider)
 
 
 
 
 
73
 
74
  obfuscate_button = gr.Button("Obfuscate Text")
75
 
76
  reset_button.click(fn=reset_sliders, inputs=[], outputs=sliders)
77
 
 
 
 
78
  with gr.Column(variant="panel"):
79
  output = gr.Textbox(label="Output")
80
  obfuscate_button.click(fn=greet, inputs=[input_text] + sliders, outputs=output)
 
36
  else:
37
  return gr.update(value=0, interactive=False)
38
 
39
+ def reset_writing_type_sliders(selected_type):
40
+ reset_values = [gr.update(value=0, interactive=False)] * 4
41
+ if selected_type is not None:
42
+ reset_values[selected_type] = gr.update(value=0, interactive=True)
43
+ return reset_values
44
+
45
  demo = gr.Blocks()
46
 
47
  with demo:
 
70
  ("Writing Type: Expository (None \u2192 More)", 0, 1, 0)
71
  ]
72
 
73
+ non_writing_type_sliders = []
74
+ writing_type_sliders = []
75
+ writing_type_checkboxes = []
76
+
77
+ for idx, (label, min_val, max_val, default) in enumerate(slider_values):
78
  with gr.Row():
79
+ if "Writing Type" in label:
80
+ checkbox = gr.Radio(label=label, choices=["None", "Selected"], type="index", value="None")
81
+ writing_type_checkboxes.append(checkbox)
82
+ else:
83
+ checkbox = gr.Checkbox(label=label)
84
+
85
  slider = gr.Slider(label=label, minimum=min_val, maximum=max_val, step=0.01, value=default, interactive=False)
86
  checkbox.change(fn=toggle_slider, inputs=[checkbox, gr.State(default)], outputs=slider)
87
  sliders.append(slider)
88
+
89
+ if "Writing Type" in label:
90
+ writing_type_sliders.append(slider)
91
+ else:
92
+ non_writing_type_sliders.append(slider)
93
 
94
  obfuscate_button = gr.Button("Obfuscate Text")
95
 
96
  reset_button.click(fn=reset_sliders, inputs=[], outputs=sliders)
97
 
98
+ for i, checkbox in enumerate(writing_type_checkboxes):
99
+ checkbox.change(fn=reset_writing_type_sliders, inputs=[gr.State(i)], outputs=writing_type_sliders)
100
+
101
  with gr.Column(variant="panel"):
102
  output = gr.Textbox(label="Output")
103
  obfuscate_button.click(fn=greet, inputs=[input_text] + sliders, outputs=output)