set_location. delete preset button added
This commit is contained in:
@@ -74,6 +74,43 @@
|
|||||||
<property name="position">2</property>
|
<property name="position">2</property>
|
||||||
</packing>
|
</packing>
|
||||||
</child>
|
</child>
|
||||||
|
<child>
|
||||||
|
<object class="GtkButton" id="del_preset">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="sensitive">False</property>
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="receives_default">True</property>
|
||||||
|
<signal name="clicked" handler="on_del_preset_clicked"/>
|
||||||
|
<child>
|
||||||
|
<object class="GtkHBox" id="hbox4">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<child>
|
||||||
|
<object class="GtkImage" id="image2">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="stock">gtk-delete</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="position">0</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
<child>
|
||||||
|
<object class="GtkLabel" id="label18">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="label" translatable="yes">Delete preset</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="position">1</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
</object>
|
||||||
|
</child>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="expand">False</property>
|
||||||
|
<property name="fill">False</property>
|
||||||
|
<property name="position">3</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
</object>
|
</object>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="expand">False</property>
|
<property name="expand">False</property>
|
||||||
|
|||||||
@@ -207,12 +207,12 @@ class SetLocationPluginConfigDialog(GajimPluginConfigDialog):
|
|||||||
continue
|
continue
|
||||||
widget = self.xml.get_object(name)
|
widget = self.xml.get_object(name)
|
||||||
preset[name] = widget.get_text()
|
preset[name] = widget.get_text()
|
||||||
if preset_name not in self.plugin.config['presets'].keys():
|
|
||||||
iter_ = self.preset_liststore.append((preset_name,))
|
|
||||||
self.preset_combo.set_active_iter(iter_)
|
|
||||||
preset = {preset_name: preset}
|
preset = {preset_name: preset}
|
||||||
presets = dict(self.plugin.config['presets'].items() + \
|
presets = dict(self.plugin.config['presets'].items() + \
|
||||||
preset.items())
|
preset.items())
|
||||||
|
if preset_name not in self.plugin.config['presets'].keys():
|
||||||
|
iter_ = self.preset_liststore.append((preset_name,))
|
||||||
|
#self.preset_combo.set_active_iter(iter_)
|
||||||
self.plugin.config['presets'] = presets
|
self.plugin.config['presets'] = presets
|
||||||
self.set_modal(False)
|
self.set_modal(False)
|
||||||
InputDialog(_('Save as Preset'), _('Please type a name for this preset'),
|
InputDialog(_('Save as Preset'), _('Please type a name for this preset'),
|
||||||
@@ -222,8 +222,20 @@ class SetLocationPluginConfigDialog(GajimPluginConfigDialog):
|
|||||||
model = widget.get_model()
|
model = widget.get_model()
|
||||||
active = widget.get_active()
|
active = widget.get_active()
|
||||||
if active < 0:
|
if active < 0:
|
||||||
|
self.xml.get_object('del_preset').set_sensitive(False)
|
||||||
return
|
return
|
||||||
pres_name = model[active][0].decode('utf-8')
|
pres_name = model[active][0].decode('utf-8')
|
||||||
for name in self.plugin.config['presets'][pres_name].keys():
|
for name in self.plugin.config['presets'][pres_name].keys():
|
||||||
widget = self.xml.get_object(name)
|
widget = self.xml.get_object(name)
|
||||||
widget.set_text(str(self.plugin.config['presets'][pres_name][name]))
|
widget.set_text(str(self.plugin.config['presets'][pres_name][name]))
|
||||||
|
|
||||||
|
self.xml.get_object('del_preset').set_sensitive(True)
|
||||||
|
|
||||||
|
def on_del_preset_clicked(self, widget):
|
||||||
|
active = self.preset_combo.get_active()
|
||||||
|
active_iter = self.preset_combo.get_active_iter()
|
||||||
|
name = self.preset_liststore[active][0].decode('utf-8')
|
||||||
|
presets = self.plugin.config['presets']
|
||||||
|
del presets[name]
|
||||||
|
self.plugin.config['presets'] = presets
|
||||||
|
self.preset_liststore.remove(active_iter)
|
||||||
|
|||||||
Reference in New Issue
Block a user