[gnome-system-monitor] Update tree_store_update versions with all templates to check for column visibility.
- From: Robert Roth <robertroth src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-system-monitor] Update tree_store_update versions with all templates to check for column visibility.
- Date: Tue, 11 Dec 2012 01:11:09 +0000 (UTC)
commit 03a241c3f76091d3ba7fc8251b86b36c44f03af9
Author: Robert Roth <robert roth off gmail com>
Date: Tue Dec 11 02:46:10 2012 +0200
Update tree_store_update versions with all templates
to check for column visibility.
src/util.cpp | 16 +++++++++-------
src/util.h | 10 +++++-----
2 files changed, 14 insertions(+), 12 deletions(-)
---
diff --git a/src/util.cpp b/src/util.cpp
index 874ede4..bdecc53 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -579,16 +579,18 @@ namespace procman
}
template<>
- void tree_store_update<const char>(GtkTreeModel* model, GtkTreeIter* iter, int column, const char* new_value)
+ void tree_store_update<const char>(GtkTreeView* tree, GtkTreeModel* model, GtkTreeIter* iter, int column, const char* new_value)
{
- char* current_value;
+ GtkTreeViewColumn* tree_column = gtk_tree_view_get_column(tree, column+1);
+ if (gtk_tree_view_column_get_visible(tree_column)) {
+ char* current_value;
- gtk_tree_model_get(model, iter, column, ¤t_value, -1);
+ gtk_tree_model_get(model, iter, column, ¤t_value, -1);
- if (g_strcmp0(current_value, new_value) != 0)
- gtk_tree_store_set(GTK_TREE_STORE(model), iter, column, new_value, -1);
-
- g_free(current_value);
+ if (g_strcmp0(current_value, new_value) != 0)
+ gtk_tree_store_set(GTK_TREE_STORE(model), iter, column, new_value, -1);
+ g_free(current_value);
+ }
}
diff --git a/src/util.h b/src/util.h
index 07074f4..ab74c06 100644
--- a/src/util.h
+++ b/src/util.h
@@ -123,7 +123,7 @@ namespace procman
template<typename T>
void tree_store_update(GtkTreeView* tree, GtkTreeModel* model, GtkTreeIter* iter, int column, const T& new_value)
{
- GtkTreeViewColumn* tree_column = gtk_tree_view_get_column(tree, column);
+ GtkTreeViewColumn* tree_column = gtk_tree_view_get_column(tree, column+1);
if (gtk_tree_view_column_get_visible(tree_column)) {
T current_value;
@@ -138,16 +138,16 @@ namespace procman
// catch every thing about pointers
// just to make sure i'm not doing anything wrong
template<typename T>
- void tree_store_update(GtkTreeModel* model, GtkTreeIter* iter, int column, T* new_value);
+ void tree_store_update(GtkTreeView* tree, GtkTreeModel* model, GtkTreeIter* iter, int column, T* new_value);
// specialized versions for strings
template<>
- void tree_store_update<const char>(GtkTreeModel* model, GtkTreeIter* iter, int column, const char* new_value);
+ void tree_store_update<const char>(GtkTreeView* tree, GtkTreeModel* model, GtkTreeIter* iter, int column, const char* new_value);
template<>
- inline void tree_store_update<char>(GtkTreeModel* model, GtkTreeIter* iter, int column, char* new_value)
+ inline void tree_store_update<char>(GtkTreeView* tree, GtkTreeModel* model, GtkTreeIter* iter, int column, char* new_value)
{
- tree_store_update<const char>(model, iter, column, new_value);
+ tree_store_update<const char>(tree, model, iter, column, new_value);
}
gchar* format_size(guint64 size, guint64 max = 0, bool want_bits = false);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]