Codebase list lightdm-gtk-greeter-settings / 2c40b3a
Default implementation for BaseEntry._set_enabled() Andrew P. 9 years ago
1 changed file(s) with 11 addition(s) and 21 deletion(s). Raw diff Collapse all Expand all
5353 self._use = widgets['use']
5454 if self._use:
5555 self._use.connect('notify::active', self._on_use_toggled)
56 self._widgets_to_disable = None
5657
5758 @property
5859 def value(self):
111112 raise NotImplementedError(self.__class__)
112113
113114 def _set_enabled(self, value):
114 raise NotImplementedError(self.__class__)
115 if self._widgets_to_disable:
116 for widget in self._widgets_to_disable:
117 widget.props.sensitive = value
115118
116119 def _on_use_toggled(self, toggle, *args):
117120 self._set_enabled(self._use.props.active)
127130 super().__init__(widgets)
128131 self._value = widgets['value']
129132 self._value.connect('notify::active', self._emit_changed)
133 self._widgets_to_disable = [self._value]
130134
131135 def _get_value(self):
132136 return bool2string(self._value.props.active)
134138 def _set_value(self, value):
135139 self._value.props.active = string2bool(value)
136140
137 def _set_enabled(self, value):
138 self._value.props.sensitive = value
139
140141
141142 class InvertedBooleanEntry(BooleanEntry):
142143
155156 def __init__(self, widgets):
156157 super().__init__(widgets)
157158 self._value = widgets['value']
159 self._widgets_to_disable = [self._value]
158160 self._value.connect('changed', self._emit_changed)
159
161
160162 def _get_value(self):
161163 return self._value.props.text
162164
163165 def _set_value(self, value):
164166 self._value.props.text = value or ''
165
166 def _set_enabled(self, value):
167 self._value.props.sensitive = value
168167
169168
170169 class StringPathEntry(BaseEntry):
176175
177176 self._combo = widgets['combo']
178177 self._entry = widgets['entry']
178 self._widgets_to_disable = [self._combo]
179179
180180 self._entry.connect('changed', self._emit_changed)
181181 self._combo.connect('format-entry-text', self._on_combobox_format)
187187
188188 def _set_value(self, value):
189189 self._entry.props.text = value or ''
190
191 def _set_enabled(self, value):
192 self._combo.props.sensitive = value
193190
194191 def _row_separator_callback(self, model, rowiter, data):
195192 return model[rowiter][0] == '-'
221218 super().__init__(widgets)
222219 self._value = widgets['adjustment']
223220 self._view = widgets['view']
221 self._widgets_to_disable = [self._view]
224222 self._value.connect('value-changed', self._emit_changed)
225223
226224 def _get_value(self):
232230 except ValueError:
233231 self._value.props.value = 0
234232
235 def _set_enabled(self, value):
236 self._view.props.sensitive = value
237
238233
239234 class ChoiceEntry(BaseEntry):
240235
241236 def __init__(self, widgets):
242237 super().__init__(widgets)
243238 self._value = widgets['value']
239 self._widgets_to_disable = [self._value]
244240 self._value.connect('changed', self._emit_changed)
245241
246242 def _get_value(self):
248244
249245 def _set_value(self, value):
250246 self._value.props.active_id = value or ''
251
252 def _set_enabled(self, value):
253 self._value.props.sensitive = value
254247
255248
256249 class ClockFormatEntry(StringEntry):
435428 self._up = widgets['up']
436429 self._down = widgets['down']
437430 self._model = widgets['model']
431 self._widgets_to_disable = [self._treeview, self._toolbar]
438432 self._indicators_dialog = None
439433 self._initial_items = OrderedDict((item.NAME, item)
440434 for item in map(self.ROW, self._model))
476470 self._model.append(item)
477471
478472 self._selection.select_path(0)
479
480 def _set_enabled(self, value):
481 self._toolbar.props.sensitive = value
482 self._treeview.props.sensitive = value
483473
484474 def _remove_selection(self):
485475 model, rowiter = self._selection.get_selected()