Save layout button prototype.
This commit is contained in:
parent
ece4e77d58
commit
eadb5cb419
|
@ -320,6 +320,10 @@ class Config(object):
|
|||
def add_layout(self, name, layout):
|
||||
"""Add a new layout"""
|
||||
return(self.base.add_layout(name, layout))
|
||||
|
||||
def replace_layout(self, name, layout):
|
||||
"""Replace an existing layout"""
|
||||
return(self.base.replace_layout(name, layout))
|
||||
|
||||
def del_layout(self, layout):
|
||||
"""Delete a layout"""
|
||||
|
@ -734,6 +738,13 @@ class ConfigBase(Borg):
|
|||
self.layouts[name] = layout
|
||||
return(True)
|
||||
|
||||
def replace_layout(self, name, layout):
|
||||
"""Replaces a layout with the given name"""
|
||||
if not name in self.layouts:
|
||||
return(False)
|
||||
self.layouts[name] = layout
|
||||
return(True)
|
||||
|
||||
def get_layout(self, layout):
|
||||
"""Return a layout"""
|
||||
if self.layouts.has_key(layout):
|
||||
|
|
|
@ -3412,6 +3412,21 @@
|
|||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="layoutrefreshbutton">
|
||||
<property name="label">gtk-save</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_stock">True</property>
|
||||
<signal name="clicked" handler="on_layoutrefreshbutton_clicked"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
|
|
@ -1090,6 +1090,20 @@ class PrefsEditor:
|
|||
|
||||
self.config.save()
|
||||
|
||||
def on_layoutrefreshbutton_clicked(self, _button):
|
||||
"""Refresh the terminals status and update"""
|
||||
terminator = Terminator()
|
||||
current_layout = terminator.describe_layout()
|
||||
|
||||
guiget = self.builder.get_object
|
||||
treeview = guiget('layoutlist')
|
||||
selected = treeview.get_selection()
|
||||
(model, rowiter) = selected.get_selected()
|
||||
name = model.get_value(rowiter, 0)
|
||||
|
||||
if self.config.replace_layout(name, current_layout):
|
||||
treeview.set_cursor(model.get_path(rowiter), focus_column=treeview.get_column(0), start_editing=False)
|
||||
|
||||
def on_layoutremovebutton_clicked(self, _button):
|
||||
"""Remove a layout from the list"""
|
||||
guiget = self.builder.get_object
|
||||
|
|
Loading…
Reference in New Issue