28 lines
1.2 KiB
Python
28 lines
1.2 KiB
Python
from gi.repository import Gtk, Gio
|
|
from .displaydistancedialogcontent import DisplayDistanceDialogContent
|
|
|
|
@Gtk.Template(resource_path='/com/xronlinux/BreezyDesktop/gtk/display-distance-dialog.ui')
|
|
class DisplayDistanceDialog(Gtk.Dialog):
|
|
__gtype_name__ = 'DisplayDistanceDialog'
|
|
|
|
show_full_scale_button = Gtk.Template.Child()
|
|
save_button = Gtk.Template.Child()
|
|
|
|
def __init__(self, settings_key, on_save_callback, title, subtitle, lower_limit, upper_limit):
|
|
super(Gtk.Dialog, self).__init__()
|
|
self.init_template()
|
|
|
|
self.on_save_callback = on_save_callback
|
|
self.set_title(title)
|
|
|
|
self.content = DisplayDistanceDialogContent(settings_key, self.show_full_scale_button, self.save_button, self._on_save_callback, subtitle, lower_limit, upper_limit)
|
|
self.get_content_area().append(self.content)
|
|
|
|
self.show_full_scale_button.connect('clicked', self._on_show_full_scale_button_clicked)
|
|
|
|
def _on_show_full_scale_button_clicked(self, button):
|
|
self.show_full_scale_button.set_visible(False)
|
|
|
|
def _on_save_callback(self, prev_distance, distance):
|
|
self.on_save_callback(prev_distance, distance)
|
|
self.close() |