| 88 } else { |
88 } else { |
| 89 ui_unset_state(ctx, 4); |
89 ui_unset_state(ctx, 4); |
| 90 } |
90 } |
| 91 } |
91 } |
| 92 |
92 |
| |
93 static void doc_suppress_state1(UiEvent *event, void *doc) { |
| |
94 UiContext *ctx = ui_document_context(doc); |
| |
95 if(event->intval) { |
| |
96 ui_suppress_state(ctx, 1); |
| |
97 } else { |
| |
98 ui_unsuppress_state(ctx, 1); |
| |
99 } |
| |
100 } |
| |
101 |
| |
102 static void doc_suppress_state2(UiEvent *event, void *doc) { |
| |
103 UiContext *ctx = ui_document_context(doc); |
| |
104 if(event->intval) { |
| |
105 ui_suppress_state(ctx, 2); |
| |
106 } else { |
| |
107 ui_unsuppress_state(ctx, 2); |
| |
108 } |
| |
109 } |
| |
110 |
| |
111 static void doc_suppress_state3(UiEvent *event, void *doc) { |
| |
112 UiContext *ctx = ui_document_context(doc); |
| |
113 if(event->intval) { |
| |
114 ui_suppress_state(ctx, 3); |
| |
115 } else { |
| |
116 ui_unsuppress_state(ctx, 3); |
| |
117 } |
| |
118 } |
| |
119 |
| |
120 static void doc_suppress_state4(UiEvent *event, void *doc) { |
| |
121 UiContext *ctx = ui_document_context(doc); |
| |
122 if(event->intval) { |
| |
123 ui_suppress_state(ctx, 4); |
| |
124 } else { |
| |
125 ui_unsuppress_state(ctx, 4); |
| |
126 } |
| |
127 } |
| |
128 |
| 93 static void application_startup(UiEvent *event, void *userdata) { |
129 static void application_startup(UiEvent *event, void *userdata) { |
| 94 UiObject *obj = ui_window("States Demo"); |
130 UiObject *obj = ui_window("States Demo"); |
| 95 |
131 |
| 96 doc1 = ui_document_new(8); |
132 doc1 = ui_document_new(8); |
| 97 doc2 = ui_document_new(8); |
133 doc2 = ui_document_new(8); |
| 115 } |
151 } |
| 116 |
152 |
| 117 ui_frame(obj, .label = "Doc 1", .fill = TRUE, .margin = 10, .padding = 10, .spacing = 10, .subcontainer = UI_CONTAINER_VBOX) { |
153 ui_frame(obj, .label = "Doc 1", .fill = TRUE, .margin = 10, .padding = 10, .spacing = 10, .subcontainer = UI_CONTAINER_VBOX) { |
| 118 ui_togglebutton(obj, .label = "Attach", .onchange = doc1_attachment); |
154 ui_togglebutton(obj, .label = "Attach", .onchange = doc1_attachment); |
| 119 |
155 |
| 120 ui_hbox(obj, .margin = 10, .spacing = 8) { |
156 ui_grid(obj, .margin = 10, .columnspacing = 8, .rowspacing = 8, .def_hfill = TRUE) { |
| 121 ui_togglebutton(obj, .label = "Enable 1", .onchange = doc_enable_state1, .onchangedata = doc1); |
157 ui_togglebutton(obj, .label = "Enable 1", .onchange = doc_enable_state1, .onchangedata = doc1); |
| 122 ui_togglebutton(obj, .label = "Enable 2", .onchange = doc_enable_state2, .onchangedata = doc1); |
158 ui_togglebutton(obj, .label = "Enable 2", .onchange = doc_enable_state2, .onchangedata = doc1); |
| 123 ui_togglebutton(obj, .label = "Enable 3", .onchange = doc_enable_state3, .onchangedata = doc1); |
159 ui_togglebutton(obj, .label = "Enable 3", .onchange = doc_enable_state3, .onchangedata = doc1); |
| 124 ui_togglebutton(obj, .label = "Enable 4", .onchange = doc_enable_state4, .onchangedata = doc1); |
160 ui_togglebutton(obj, .label = "Enable 4", .onchange = doc_enable_state4, .onchangedata = doc1); |
| |
161 |
| |
162 ui_newline(obj); |
| |
163 |
| |
164 ui_togglebutton(obj, .label = "Suppress 1", .onchange = doc_suppress_state1, .onchangedata = doc1); |
| |
165 ui_togglebutton(obj, .label = "Suppress 2", .onchange = doc_suppress_state2, .onchangedata = doc1); |
| |
166 ui_togglebutton(obj, .label = "Suppress 3", .onchange = doc_suppress_state3, .onchangedata = doc1); |
| |
167 ui_togglebutton(obj, .label = "Suppress 4", .onchange = doc_suppress_state4, .onchangedata = doc1); |
| 125 } |
168 } |
| 126 |
169 |
| 127 ui_frame(obj, .label = "Doc 2", .fill = TRUE, .margin = 10, .padding = 10, .spacing = 10, .subcontainer = UI_CONTAINER_VBOX) { |
170 ui_frame(obj, .label = "Doc 2", .fill = TRUE, .margin = 10, .padding = 10, .spacing = 10, .subcontainer = UI_CONTAINER_VBOX) { |
| 128 ui_togglebutton(obj, .label = "Attach", .onchange = doc2_attachment); |
171 ui_togglebutton(obj, .label = "Attach", .onchange = doc2_attachment); |
| 129 |
172 |
| 130 ui_hbox(obj, .margin = 10, .spacing = 8) { |
173 ui_grid(obj, .margin = 10, .columnspacing = 8, .rowspacing = 8, .def_hfill = TRUE) { |
| 131 ui_togglebutton(obj, .label = "Enable 1", .onchange = doc_enable_state1, .onchangedata = doc2); |
174 ui_togglebutton(obj, .label = "Enable 1", .onchange = doc_enable_state1, .onchangedata = doc2); |
| 132 ui_togglebutton(obj, .label = "Enable 2", .onchange = doc_enable_state2, .onchangedata = doc2); |
175 ui_togglebutton(obj, .label = "Enable 2", .onchange = doc_enable_state2, .onchangedata = doc2); |
| 133 ui_togglebutton(obj, .label = "Enable 3", .onchange = doc_enable_state3, .onchangedata = doc2); |
176 ui_togglebutton(obj, .label = "Enable 3", .onchange = doc_enable_state3, .onchangedata = doc2); |
| 134 ui_togglebutton(obj, .label = "Enable 4", .onchange = doc_enable_state4, .onchangedata = doc2); |
177 ui_togglebutton(obj, .label = "Enable 4", .onchange = doc_enable_state4, .onchangedata = doc2); |
| |
178 |
| |
179 ui_newline(obj); |
| |
180 |
| |
181 ui_togglebutton(obj, .label = "Suppress 1", .onchange = doc_suppress_state1, .onchangedata = doc2); |
| |
182 ui_togglebutton(obj, .label = "Suppress 2", .onchange = doc_suppress_state2, .onchangedata = doc2); |
| |
183 ui_togglebutton(obj, .label = "Suppress 3", .onchange = doc_suppress_state3, .onchangedata = doc2); |
| |
184 ui_togglebutton(obj, .label = "Suppress 4", .onchange = doc_suppress_state4, .onchangedata = doc2); |
| 135 } |
185 } |
| 136 } |
186 } |
| 137 } |
187 } |
| 138 } |
188 } |
| 139 |
189 |