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)
|