gnome-system-monitor r2556 - trunk/src
- From: bdejean svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-system-monitor r2556 - trunk/src
- Date: Sat, 24 Jan 2009 10:32:37 +0000 (UTC)
Author: bdejean
Date: Sat Jan 24 10:32:37 2009
New Revision: 2556
URL: http://svn.gnome.org/viewvc/gnome-system-monitor?rev=2556&view=rev
Log:
Build the sysinfo tab UI when it first displayed which avoids spawning
lsb_release uncessary on startup if not needed.
Modified:
trunk/src/callbacks.cpp
trunk/src/interface.cpp
trunk/src/sysinfo.cpp
trunk/src/sysinfo.h
trunk/src/util.h
Modified: trunk/src/callbacks.cpp
==============================================================================
--- trunk/src/callbacks.cpp (original)
+++ trunk/src/callbacks.cpp Sat Jan 24 10:32:37 2009
@@ -36,7 +36,7 @@
#include "load-graph.h"
#include "disks.h"
#include "lsof.h"
-
+#include "sysinfo.h"
void
cb_kill_sigstop(GtkAction *action, gpointer data)
@@ -387,6 +387,10 @@
procdata->disk_timeout = 0;
}
}
+
+ if (num == PROCMAN_TAB_SYSINFO) {
+ procman::build_sysinfo_ui();
+ }
}
Modified: trunk/src/interface.cpp
==============================================================================
--- trunk/src/interface.cpp (original)
+++ trunk/src/interface.cpp Sat Jan 24 10:32:37 2009
@@ -686,7 +686,7 @@
TRUE,
0);
- sysinfo_box = procman_create_sysinfo_view();
+ sysinfo_box = gtk_hbox_new(TRUE, 0); // procman_create_sysinfo_view();
sysinfo_label = gtk_label_new(_("System"));
gtk_notebook_append_page(GTK_NOTEBOOK(notebook), sysinfo_box, sysinfo_label);
Modified: trunk/src/sysinfo.cpp
==============================================================================
--- trunk/src/sysinfo.cpp (original)
+++ trunk/src/sysinfo.cpp Sat Jan 24 10:32:37 2009
@@ -1,6 +1,7 @@
#include <config.h>
#include <glib.h>
+#include <gtk/gtk.h>
#include <glibmm.h>
#include <glib/gi18n.h>
@@ -27,6 +28,7 @@
#include <sys/utsname.h>
#include "sysinfo.h"
+#include "procman.h"
#include "util.h"
@@ -467,7 +469,7 @@
}
-GtkWidget *
+static GtkWidget *
procman_create_sysinfo_view(void)
{
GtkWidget *hbox;
@@ -614,3 +616,21 @@
return hbox;
}
+
+
+namespace procman
+{
+ void build_sysinfo_ui()
+ {
+ static GtkWidget* ui;
+
+ if (!ui) {
+ ProcData* procdata = ProcData::get_instance();
+ ui = procman_create_sysinfo_view();
+ GtkBox* box = GTK_BOX(gtk_notebook_get_nth_page(GTK_NOTEBOOK(procdata->notebook),
+ PROCMAN_TAB_SYSINFO));
+ gtk_box_pack_start(box, ui, TRUE, TRUE, 0);
+ gtk_widget_show_all(ui);
+ }
+ }
+}
Modified: trunk/src/sysinfo.h
==============================================================================
--- trunk/src/sysinfo.h (original)
+++ trunk/src/sysinfo.h Sat Jan 24 10:32:37 2009
@@ -1,9 +1,9 @@
#ifndef H_GNOME_SYSTEM_MONITOR_SYSINFO_H_1155594649
#define H_GNOME_SYSTEM_MONITOR_SYSINFO_H_1155594649
-#include <gtk/gtk.h>
-
-GtkWidget *
-procman_create_sysinfo_view(void);
+namespace procman
+{
+ void build_sysinfo_ui();
+}
#endif /* H_GNOME_SYSTEM_MONITOR_SYSINFO_H_1155594649 */
Modified: trunk/src/util.h
==============================================================================
--- trunk/src/util.h (original)
+++ trunk/src/util.h Sat Jan 24 10:32:37 2009
@@ -4,6 +4,7 @@
#define H_GNOME_SYSTEM_MONITOR_UTIL_1123178725
#include <glib.h>
+#include <gtk/gtk.h>
#include <stddef.h>
#include <cstring>
#include <string>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]