Make only Cells selectable
This commit is contained in:
parent
4987459337
commit
9a6aee1410
@ -2,6 +2,27 @@
|
|||||||
#include "lib-cell-renderer.h"
|
#include "lib-cell-renderer.h"
|
||||||
#include "../gds-types.h"
|
#include "../gds-types.h"
|
||||||
|
|
||||||
|
static gboolean tree_sel_func(GtkTreeSelection *selection,
|
||||||
|
GtkTreeModel *model,
|
||||||
|
GtkTreePath *path,
|
||||||
|
gboolean path_currently_selected,
|
||||||
|
gpointer data)
|
||||||
|
{
|
||||||
|
static int cnt = 0;
|
||||||
|
GtkTreeIter iter;
|
||||||
|
struct gds_cell *cell;
|
||||||
|
gchar *p;
|
||||||
|
|
||||||
|
gtk_tree_model_get_iter(model, &iter, path);
|
||||||
|
gtk_tree_model_get(model, &iter, CELL_SEL_CELL, &cell, -1);
|
||||||
|
|
||||||
|
/* Allow only rows with valid cell to be selected */
|
||||||
|
if (cell)
|
||||||
|
return TRUE;
|
||||||
|
else
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
GtkTreeStore *setup_cell_selector(GtkTreeView* view)
|
GtkTreeStore *setup_cell_selector(GtkTreeView* view)
|
||||||
{
|
{
|
||||||
GtkTreeStore *cell_store;
|
GtkTreeStore *cell_store;
|
||||||
@ -52,5 +73,9 @@ GtkTreeStore *setup_cell_selector(GtkTreeView* view)
|
|||||||
column = gtk_tree_view_column_new_with_attributes("Acc. Date", render_dates, "text", CELL_SEL_ACCESSDATE, NULL);
|
column = gtk_tree_view_column_new_with_attributes("Acc. Date", render_dates, "text", CELL_SEL_ACCESSDATE, NULL);
|
||||||
gtk_tree_view_append_column(view, column);
|
gtk_tree_view_append_column(view, column);
|
||||||
|
|
||||||
|
/* Callback for selection
|
||||||
|
* This prevents selecting a library */
|
||||||
|
gtk_tree_selection_set_select_function(gtk_tree_view_get_selection(view), tree_sel_func, NULL, NULL);
|
||||||
|
|
||||||
return cell_store;
|
return cell_store;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user