[gnome-system-monitor] Move Refresh and View buttons in the headerbar
- From: Robert Roth <robertroth src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-system-monitor] Move Refresh and View buttons in the headerbar
- Date: Thu, 25 Jul 2013 22:29:49 +0000 (UTC)
commit b09e6aafe4261b066d96e9895c44ff07538a7e26
Author: Stefano Facchini <stefano facchini gmail com>
Date: Thu Jul 25 15:31:27 2013 +0200
Move Refresh and View buttons in the headerbar
https://bugzilla.gnome.org/show_bug.cgi?id=674405
data/interface.ui | 114 +++++++++++++++++++++++++++--------------------------
src/interface.cpp | 15 ++++++-
src/procman-app.h | 2 +
3 files changed, 72 insertions(+), 59 deletions(-)
---
diff --git a/data/interface.ui b/data/interface.ui
index f8c2ae3..5bbb105 100644
--- a/data/interface.ui
+++ b/data/interface.ui
@@ -21,6 +21,64 @@
<property name="stack">stack</property>
</object>
</child>
+ <child>
+ <object class="GtkButton" id="refresh_button">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="action_name">win.refresh</property>
+ <style>
+ <class name="image-button"/>
+ </style>
+ <child>
+ <object class="GtkImage" id="refresh_button_image">
+ <property name="visible">True</property>
+ <property name="icon_size">1</property>
+ <property name="icon_name">view-refresh-symbolic</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkMenuButton" id="viewmenubutton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="halign">end</property>
+ <child>
+ <object class="GtkBox" id="box1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">View</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkArrow" id="arrow1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="arrow_type">down</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
+ </child>
</object>
</child>
<child>
@@ -54,62 +112,6 @@
<property name="position">0</property>
</packing>
</child>
- <child>
- <object class="GtkButton" id="refreshbutton">
- <property name="label">Refresh</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="action_name">win.refresh</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkMenuButton" id="viewmenubutton">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="halign">end</property>
- <child>
- <object class="GtkBox" id="box1">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <child>
- <object class="GtkLabel" id="label1">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">View</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkArrow" id="arrow1">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="arrow_type">down</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
- </child>
</object>
<packing>
<property name="expand">False</property>
diff --git a/src/interface.cpp b/src/interface.cpp
index 0ba54bd..b30e475 100644
--- a/src/interface.cpp
+++ b/src/interface.cpp
@@ -483,12 +483,18 @@ update_page_activities (ProcmanApp *app)
if (strcmp (current_page, "processes") == 0) {
proctable_thaw (app);
+ gtk_widget_show (app->refresh_button);
+ gtk_widget_show (app->view_menu_button);
+
update_sensitivity (app);
gtk_widget_grab_focus (app->tree);
} else {
proctable_freeze (app);
+ gtk_widget_hide (app->refresh_button);
+ gtk_widget_hide (app->view_menu_button);
+
update_sensitivity (app);
}
@@ -544,10 +550,12 @@ create_main_window (ProcmanApp *app)
gtk_widget_set_name (main_window, "gnome-system-monitor");
app->main_window = main_window;
- view_menu_button = GTK_WIDGET (gtk_builder_get_object (builder, "viewmenubutton"));
+ app->view_menu_button = view_menu_button = GTK_WIDGET (gtk_builder_get_object (builder,
"viewmenubutton"));
view_menu_model = G_MENU_MODEL (gtk_builder_get_object (builder, "view-menu"));
gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (view_menu_button), view_menu_model);
+ app->refresh_button = GTK_WIDGET (gtk_builder_get_object (builder, "refresh_button"));
+
GActionEntry win_action_entries[] = {
{ "about", on_activate_about, NULL, NULL, NULL },
{ "send-signal-stop", on_activate_send_signal, "i", NULL, NULL },
@@ -599,7 +607,6 @@ create_main_window (ProcmanApp *app)
g_signal_connect (G_OBJECT (stack), "notify::visible-child",
G_CALLBACK (cb_change_current_page), app);
- update_page_activities (app);
g_signal_connect (G_OBJECT (main_window), "delete_event",
G_CALLBACK (cb_main_window_delete),
@@ -619,6 +626,8 @@ create_main_window (ProcmanApp *app)
gtk_widget_show_all(main_window);
+ update_page_activities (app);
+
g_object_unref (G_OBJECT (builder));
}
@@ -661,7 +670,7 @@ update_sensitivity(ProcmanApp *app)
gboolean processes_sensitivity, selected_sensitivity;
GAction *action;
- processes_sensitivity = (strcmp (g_settings_get_string (app->settings, "current-tab"), "processes") ==
0);
+ processes_sensitivity = (strcmp (gtk_stack_get_visible_child_name (GTK_STACK (app->stack)), "processes")
== 0);
selected_sensitivity = (processes_sensitivity && app->selected_process != NULL);
for (i = 0; i != G_N_ELEMENTS(processes_actions); ++i) {
diff --git a/src/procman-app.h b/src/procman-app.h
index 956722e..ee48067 100644
--- a/src/procman-app.h
+++ b/src/procman-app.h
@@ -169,6 +169,8 @@ public:
GtkWidget *popup_menu;
GtkWidget *disk_list;
GtkWidget *stack;
+ GtkWidget *refresh_button;
+ GtkWidget *view_menu_button;
ProcConfig config;
LoadGraph *cpu_graph;
LoadGraph *mem_graph;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]