summaryrefslogtreecommitdiff
path: root/rcm-client-hardware-list.c
diff options
context:
space:
mode:
Diffstat (limited to 'rcm-client-hardware-list.c')
-rw-r--r--rcm-client-hardware-list.c28
1 files changed, 9 insertions, 19 deletions
diff --git a/rcm-client-hardware-list.c b/rcm-client-hardware-list.c
index a7dceb6..0f9fecb 100644
--- a/rcm-client-hardware-list.c
+++ b/rcm-client-hardware-list.c
@@ -10,8 +10,6 @@
#include "rcm-client-hardware-list.h"
#include "rcm-client-receive.h"
-static GtkWidget *status_msg;
-static GtkWidget *hw_list_box;
static GList *hw_list = NULL;
struct hwentry {
@@ -44,7 +42,7 @@ void rcng_client_hardware_list_remove(GDBusObject *hw)
g_free(hwe);
if (!hw_list)
- gtk_stack_set_visible_child(global->stack, status_msg);
+ gtk_stack_set_visible_child_name(global->stack, "status_page");
}
static void
@@ -68,6 +66,7 @@ void rcng_client_hardware_list_add(GDBusObject *hw)
GtkWidget *button;
struct hwentry *hwe;
gchar *labeltxt;
+ GtkListBox *hw_list_box;
g_print(" - Object at %s\n", g_dbus_object_get_object_path(hw));
@@ -78,9 +77,6 @@ void rcng_client_hardware_list_add(GDBusObject *hw)
}
g_list_free_full (interfaces, g_object_unref);
- if (!hw_list)
- gtk_stack_set_visible_child(global->stack, hw_list_box);
-
row = gtk_list_box_row_new();
box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
icon = gtk_image_new_from_icon_name("gtk-harddisk", GTK_ICON_SIZE_DIALOG);
@@ -102,7 +98,10 @@ void rcng_client_hardware_list_add(GDBusObject *hw)
gtk_container_add(GTK_CONTAINER(row), box);
gtk_widget_show_all(row);
- gtk_list_box_insert(GTK_LIST_BOX(hw_list_box), row, -1);
+ hw_list_box = GTK_LIST_BOX(gtk_stack_get_child_by_name(global->stack, "hardware_page"));
+ gtk_list_box_insert(hw_list_box, row, -1);
+ if (!hw_list)
+ gtk_stack_set_visible_child(global->stack, GTK_WIDGET(hw_list_box));
hwe = g_malloc(sizeof(*hwe));
hwe->hw = hw;
@@ -112,18 +111,9 @@ void rcng_client_hardware_list_add(GDBusObject *hw)
void rcng_client_hardware_list_update_status(gchar *status)
{
- gtk_label_set_text(GTK_LABEL(status_msg), status);
-}
+ GtkLabel *status_msg;
-void rcng_client_hardware_list_init_ui()
-{
- status_msg = gtk_label_new("Connecting to server...");
- gtk_stack_add_named(global->stack, status_msg, "nohw");
- gtk_stack_set_visible_child(global->stack, status_msg);
-
- hw_list_box = gtk_list_box_new();
- gtk_stack_add_named(global->stack, hw_list_box, "yeshw");
- gtk_list_box_set_selection_mode(GTK_LIST_BOX(hw_list_box), GTK_SELECTION_NONE);
+ status_msg = GTK_LABEL(gtk_stack_get_child_by_name(global->stack, "status_page"));
+ gtk_label_set_text(status_msg, status);
}
-