Gradience/src/preset_row.py

38 lines
1.2 KiB
Python
Raw Normal View History

2022-08-22 13:56:45 +00:00
from gi.repository import Gtk, Gdk, Adw
from .constants import rootdir
@Gtk.Template(resource_path=f"{rootdir}/ui/preset_row.ui")
class GradiencePresetRow(Adw.ActionRow):
__gtype_name__ = "GradiencePresetRow"
2022-08-23 07:22:42 +00:00
name_entry = Gtk.Template.Child("name_entry")
value_stack = Gtk.Template.Child("value_stack")
name_entry_toggle = Gtk.Template.Child("name_entry_toggle")
apply_button = Gtk.Template.Child("apply_button")
2022-08-22 13:56:45 +00:00
def __init__(self, name, author="", **kwargs):
super().__init__(**kwargs)
self.set_name(name)
self.set_title(name)
self.set_subtitle(author)
apply_button = Gtk.Template.Child("apply_button")
rename_button = Gtk.Template.Child("rename_button")
@Gtk.Template.Callback()
def on_apply_button_clicked(self, *_args):
print("apply")
2022-08-23 07:22:42 +00:00
@Gtk.Template.Callback()
def on_name_entry_changed(self, *_args):
self.update_value(self.name_entry.get_text(), update_from="name_entry")
@Gtk.Template.Callback()
def on_name_entry_toggled(self, *_args):
if self.name_entry_toggle.get_active():
self.value_stack.set_visible_child(self.name_entry)
else:
self.value_stack.set_visible_child(self.apply_button)