Added Deleting templates

This commit is contained in:
TheShadowOfHassen 2023-03-16 15:04:08 -04:00
parent 9543ab9d1d
commit 52c63a4763
2 changed files with 84 additions and 3 deletions

View file

@ -84,6 +84,7 @@ class CharactersView:
self.newTemplateEntryBuffer = builder.get_object("new_template_entry_buffer")
self.charecterDetailsMenuAppendBox = builder.get_object("template_select_box")
self.charecterDetailsMenuTemplateBox = builder.get_object("template_select_box2")
self.characterDetaisMenuDeleteBox = builder.get_object("delete_select_box")
self.detailsNameRenderer = builder.get_object("details_name")
self.detailsValueRenderer = builder.get_object("details_value")
@ -339,6 +340,7 @@ class CharactersView:
container.remove(d)
clear_container( self.charecterDetailsMenuAppendBox)
clear_container(self.charecterDetailsMenuTemplateBox)
clear_container(self.characterDetaisMenuDeleteBox)
for x in self.characterTemplates.templates:
button = Gtk.Button(label=x,) # TODO: turn into ModelButton
button.connect("clicked", self._appendTemplateClicked, x)
@ -347,10 +349,19 @@ class CharactersView:
button2 = Gtk.Button(label=x,) # TODO: turn into ModelButton
button2.connect("clicked", self._updateTemplateClicked, x)
self.charecterDetailsMenuTemplateBox.add(button2)
# now we do delete templates
box = Gtk.Box()
label = Gtk.Label(label=x)
box.pack_start(label, False, False, 0)
button3 = Gtk.Button(label='delete') # TODO: Make this red
button3.connect("clicked", self._deleteTemplateClicked, x)
box.pack_start(button3, False, False, 0)
self.characterDetaisMenuDeleteBox.add(box)
self.charecterDetailsMenuAppendBox.show_all()
self.charecterDetailsMenuTemplateBox.show_all()
self.characterDetaisMenuDeleteBox.show_all()
def _onCharecterDetailsMenuClicked(self, button: Gtk.MenuButton):
self._updateCharecterDetailsMenu()
@ -359,6 +370,10 @@ class CharactersView:
return
self.characterTemplates.templates[template] = self.character.details # TODO: Add A warning? Or should there be undo/ redo when revisions are written.
def _deleteTemplateClicked(self, button: Gtk.ModelButton, template):
del self.characterTemplates.templates[template]
self._updateCharecterDetailsMenu()
def _appendTemplateClicked(self, button: Gtk.ModelButton, template):
if self.character is None:
return

View file

@ -139,7 +139,6 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</object>
<packing>
<property name="submenu">append_template</property>
<property name="position">1</property>
</packing>
</child>
<child>
@ -231,7 +230,7 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</object>
<packing>
<property name="submenu">edit_template</property>
<property name="position">2</property>
<property name="position">1</property>
</packing>
</child>
<child>
@ -267,9 +266,76 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkModelButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="text" translatable="yes">Delete Template</property>
<property name="menu-name">delete_template</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="submenu">main</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkBox" id="delete_template_box">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkModelButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="text" translatable="yes">Delete Template</property>
<property name="menu-name">main</property>
<property name="inverted">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="vexpand">True</property>
<property name="shadow-type">in</property>
<child>
<object class="GtkViewport">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkListBox" id="delete_select_box">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="selection-mode">none</property>
<property name="activate-on-single-click">False</property>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="submenu">delete_template</property>
<property name="position">3</property>
</packing>
</child>