toolbar changes

This commit is contained in:
DYefremov
2020-02-13 01:09:40 +03:00
parent c6b0f70c8e
commit 6372ac474c
2 changed files with 108 additions and 73 deletions

View File

@@ -90,7 +90,6 @@ class Application(Gtk.Application):
"on_bouquets_copy": self.on_bouquets_copy,
"on_fav_paste": self.on_fav_paste,
"on_bouquets_paste": self.on_bouquets_paste,
"on_edit": self.on_edit,
"on_rename_for_bouquet": self.on_rename_for_bouquet,
"on_set_default_name_for_bouquet": self.on_set_default_name_for_bouquet,
"on_services_add_new": self.on_services_add_new,
@@ -203,12 +202,13 @@ class Application(Gtk.Application):
self._app_info_box = builder.get_object("app_info_box")
self._app_info_box.bind_property("visible", self._status_bar_box, "visible", 4)
self._app_info_box.bind_property("visible", builder.get_object("main_paned"), "visible", 4)
self._app_info_box.bind_property("visible", builder.get_object("right_header_box"), "sensitive", 4)
self._app_info_box.bind_property("visible", builder.get_object("left_header_box"), "sensitive", 4)
self._app_info_box.bind_property("visible", builder.get_object("right_header_box"), "visible", 4)
self._app_info_box.bind_property("visible", builder.get_object("left_header_box"), "visible", 4)
# Status bar
self._profile_combo_box = builder.get_object("profile_combo_box")
self._receiver_info_box = builder.get_object("receiver_info_box")
self._receiver_info_label = builder.get_object("receiver_info_label")
self._current_ip_label = builder.get_object("current_ip_label")
self._signal_box = builder.get_object("signal_box")
self._service_name_label = builder.get_object("service_name_label")
self._service_epg_label = builder.get_object("service_epg_label")
@@ -221,7 +221,8 @@ class Application(Gtk.Application):
self._radio_count_label = builder.get_object("radio_count_label")
self._data_count_label = builder.get_object("data_count_label")
self._save_header_button = builder.get_object("save_header_button")
self._save_header_button.bind_property("sensitive", builder.get_object("save_menu_button"), "sensitive")
self._app_info_box.bind_property("visible", self._save_header_button, "visible", 4)
self._save_header_button.bind_property("visible", builder.get_object("save_menu_button"), "visible")
self._signal_level_bar.bind_property("visible", builder.get_object("play_current_service_button"), "visible")
self._receiver_info_box.bind_property("visible", self._http_status_image, "visible", 4)
self._receiver_info_box.bind_property("visible", builder.get_object("signal_box"), "visible")
@@ -258,9 +259,9 @@ class Application(Gtk.Application):
self._player_box.bind_property("visible", builder.get_object("left_header_box"), "visible", 4)
self._player_box.bind_property("visible", builder.get_object("right_header_box"), "visible", 4)
self._player_box.bind_property("visible", builder.get_object("main_popover_menu_box"), "visible", 4)
self._player_box.bind_property("visible", builder.get_object("download_header_button"), "visible", 4)
self._player_box.bind_property("visible", builder.get_object("main_header_box"), "visible", 4)
self._player_box.bind_property("visible", builder.get_object("left_header_separator"), "visible", 4)
self._player_box.bind_property("visible", self._profile_combo_box, "sensitive", 4)
self._player_box.bind_property("visible", self._profile_combo_box, "visible", 4)
self._fav_view.bind_property("sensitive", self._player_prev_button, "sensitive")
self._fav_view.bind_property("sensitive", self._player_next_button, "sensitive")
# Enabling events for the drawing area
@@ -1092,6 +1093,9 @@ class Application(Gtk.Application):
yield True
def on_data_save(self, *args):
if self._app_info_box.get_visible():
return
if len(self._bouquets_model) == 0:
self.show_error_dialog("No data to save!")
return
@@ -1285,21 +1289,26 @@ class Application(Gtk.Application):
yield from gen
def on_profile_changed(self, entry):
if self._app_info_box.get_visible():
self.update_profile_label()
active = self._profile_combo_box.get_active_text()
if not active:
return
active = self._profile_combo_box.get_active_text()
changed = self._settings.current_profile != active
if active in self._settings.profiles:
self.set_profile(active)
if self._app_info_box.get_visible():
return
gen = self.init_http_api()
GLib.idle_add(lambda: next(gen, False), priority=GLib.PRIORITY_LOW)
self.open_data()
if changed:
self.open_data()
def set_profile(self, active):
self._settings.current_profile = active
self._s_type = self._settings.setting_type
self._profile_combo_box.set_tooltip_text(self._profile_combo_box.get_tooltip_text() + self._settings.host)
self.update_profile_label()
def update_profiles(self):
@@ -1944,7 +1953,7 @@ class Application(Gtk.Application):
def on_filter_toggled(self, action, value):
if self._app_info_box.get_visible():
return True
action.set_state(value)
if value:
self.update_filter_sat_positions()
@@ -2257,9 +2266,10 @@ class Application(Gtk.Application):
@run_idle
def update_profile_label(self):
label, sep, ip = self._profile_combo_box.get_tooltip_text().partition(":")
label, sep, ip = self._current_ip_label.get_text().partition(":")
self._current_ip_label.set_text("{}: {}".format(label, self._settings.host))
profile_name = self._profile_combo_box.get_active_text()
self._profile_combo_box.set_tooltip_text("{}: {}".format(label, self._settings.host))
msg = get_message("Profile:")
if self._s_type is SettingsType.ENIGMA_2:

View File

@@ -455,7 +455,6 @@ Author: Dmitriy Yefremov
</child>
<child>
<object class="GtkModelButton" id="save_menu_button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="action_name">app.on_data_save</property>
@@ -976,7 +975,7 @@ Author: Dmitriy Yefremov
<property name="can_focus">False</property>
<property name="title" translatable="yes">DemonEditor</property>
<property name="subtitle" translatable="yes">Profile:</property>
<property name="spacing">1</property>
<property name="spacing">0</property>
<property name="show_close_button">True</property>
<child>
<object class="GtkMenuButton" id="file_header_button">
@@ -1005,34 +1004,60 @@ Author: Dmitriy Yefremov
</packing>
</child>
<child>
<object class="GtkButton" id="download_header_button">
<object class="GtkComboBoxText" id="profile_combo_box">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">FTP-transfer</property>
<property name="action_name">app.on_download</property>
<child>
<object class="GtkImage" id="download_header_button_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="icon_name">network-wired</property>
</object>
</child>
<property name="focus_on_click">False</property>
<property name="margin_left">1</property>
<property name="margin_right">1</property>
<property name="active">0</property>
<signal name="changed" handler="on_profile_changed" swapped="no"/>
</object>
<packing>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkBox" id="left_header_box">
<object class="GtkBox" id="main_header_box">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">False</property>
<property name="spacing">1</property>
<child>
<object class="GtkButton" id="save_header_button">
<object class="GtkSeparator" id="main_header_box_separator">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">False</property>
<property name="margin_left">1</property>
<property name="margin_right">1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="download_header_button">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">FTP-transfer</property>
<property name="action_name">app.on_download</property>
<child>
<object class="GtkImage" id="download_header_button_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="icon_name">network-wired</property>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton" id="save_header_button">
<property name="can_focus">False</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Save</property>
@@ -1052,10 +1077,41 @@ Author: Dmitriy Yefremov
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkButton" id="backup_tool_header_button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Backup</property>
<signal name="clicked" handler="on_backup_tool_show" swapped="no"/>
<child>
<object class="GtkImage" id="backup_tool_header_button_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-revert-to-saved</property>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
</object>
<packing>
<property name="position">4</property>
</packing>
</child>
<child>
<object class="GtkBox" id="left_header_box">
<property name="can_focus">False</property>
<property name="spacing">1</property>
<child>
<object class="GtkSeparator" id="left_header_box_separator">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_left">1</property>
</object>
<packing>
<property name="expand">False</property>
@@ -1112,6 +1168,8 @@ Author: Dmitriy Yefremov
<object class="GtkSeparator" id="left_header_box_separator_2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_left">1</property>
<property name="margin_right">1</property>
</object>
<packing>
<property name="expand">False</property>
@@ -1166,13 +1224,11 @@ Author: Dmitriy Yefremov
</child>
</object>
<packing>
<property name="position">4</property>
<property name="position">6</property>
</packing>
</child>
<child>
<object class="GtkBox" id="right_header_box">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">False</property>
<property name="spacing">1</property>
<child>
@@ -1217,31 +1273,12 @@ Author: Dmitriy Yefremov
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton" id="backup_tool_header_button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Backup</property>
<signal name="clicked" handler="on_backup_tool_show" swapped="no"/>
<child>
<object class="GtkImage" id="backup_tool_header_button_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-revert-to-saved</property>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkSeparator" id="right_header_box_separator">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_left">2</property>
<property name="margin_right">2</property>
</object>
<packing>
<property name="expand">False</property>
@@ -2803,6 +2840,7 @@ Author: Dmitriy Yefremov
</child>
<child>
<object class="GtkBox" id="status_bar_box">
<property name="height_request">28</property>
<property name="can_focus">False</property>
<property name="margin_top">1</property>
<property name="margin_bottom">1</property>
@@ -2848,26 +2886,13 @@ Author: Dmitriy Yefremov
</packing>
</child>
<child type="center">
<object class="GtkComboBoxText" id="profile_combo_box">
<object class="GtkLabel" id="current_ip_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="focus_on_click">False</property>
<property name="tooltip_text" translatable="yes">Current IP:</property>
<property name="active">0</property>
<property name="has_entry">True</property>
<child internal-child="entry">
<object class="GtkEntry" id="profile_entry">
<property name="can_focus">False</property>
<property name="has_tooltip">True</property>
<property name="editable">False</property>
<property name="has_frame">False</property>
<property name="max_width_chars">9</property>
<property name="overwrite_mode">True</property>
<property name="caps_lock_warning">False</property>
<property name="primary_icon_stock">gtk-connect</property>
<signal name="changed" handler="on_profile_changed" swapped="no"/>
</object>
</child>
<property name="label" translatable="yes">Current IP:</property>
<attributes>
<attribute name="size" value="8000"/>
</attributes>
</object>
<packing>
<property name="expand">False</property>