From: Martin S. <mar...@us...> - 2007-07-22 18:04:33
|
Update of /cvsroot/navit/navit/src/gui/gtk In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv18654/src/gui/gtk Modified Files: datawindow.c gui_gtk_action.c Log Message: Improved items window Index: datawindow.c =================================================================== RCS file: /cvsroot/navit/navit/src/gui/gtk/datawindow.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** datawindow.c 22 Jul 2007 15:37:54 -0000 1.3 --- datawindow.c 22 Jul 2007 18:04:31 -0000 1.4 *************** *** 3,6 **** --- 3,7 ---- #include <string.h> #include <gtk/gtk.h> + #include "debug.h" #include "callback.h" #include "param.h" *************** *** 23,26 **** --- 24,50 ---- } + static GValue value; + static void + select_row(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, struct datawindow_priv *win) + { + char *cols[20]; + GtkTreeIter iter; + GtkTreeModel *model; + int i; + + dbg(0,"win=%p\n", win); + + model=gtk_tree_view_get_model(tree); + gtk_tree_model_get_iter(model, &iter, path); + + for (i=0;i<gtk_tree_model_get_n_columns(model);i++) { + gtk_tree_model_get_value(model, &iter, i, &value); + cols[i]=g_strdup_value_contents(&value)+1; + cols[i][strlen(cols[i])-1]='\0'; + g_value_unset(&value); + } + callback_call_1(win->click, cols); + } + static void gui_gtk_datawindow_add(struct datawindow_priv *win, struct param_list *param, int count) *************** *** 39,50 **** /* add column names to treeview */ for(i=0;i<count;i++) { ! cell=gtk_cell_renderer_text_new(); ! gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (win->treeview),-1,param[i].name, cell,"text",i, NULL); } #if 0 g_signal_connect(G_OBJECT(win->treeview), "click-column", G_CALLBACK(click_column), NULL); - g_signal_connect(G_OBJECT(win->treeview), "row-activated", G_CALLBACK(select_row), win); #endif } --- 63,76 ---- /* add column names to treeview */ for(i=0;i<count;i++) { ! if (param[i].name) { ! cell=gtk_cell_renderer_text_new(); ! gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (win->treeview),-1,param[i].name, cell,"text",i, NULL); + } } #if 0 g_signal_connect(G_OBJECT(win->treeview), "click-column", G_CALLBACK(click_column), NULL); #endif + g_signal_connect(G_OBJECT(win->treeview), "row-activated", G_CALLBACK(select_row), win); } *************** *** 52,56 **** if (gtk_tree_view_get_model(GTK_TREE_VIEW (win->treeview)) == NULL) { for(i=0;i<count;i++) { ! if (! strcmp(param[i].name, "Distance")) types[i]=G_TYPE_INT; else --- 78,82 ---- if (gtk_tree_view_get_model(GTK_TREE_VIEW (win->treeview)) == NULL) { for(i=0;i<count;i++) { ! if (param[i].name && !strcmp(param[i].name, "Distance")) types[i]=G_TYPE_INT; else *************** *** 70,74 **** /* add data to data storage */ for(i=0;i<count;i++) { ! if (! strcmp(param[i].name, "Distance")) { gtk_list_store_set(win->liststore,&iter,i,atoi(param[i].value),-1); } else { --- 96,100 ---- /* add data to data storage */ for(i=0;i<count;i++) { ! if (param[i].name && !strcmp(param[i].name, "Distance")) { gtk_list_store_set(win->liststore,&iter,i,atoi(param[i].value),-1); } else { *************** *** 89,96 **** } ! static void gui_gtk_datawindow_delete(GtkWidget *widget, GdkEvent *event, struct datawindow_priv *win) { callback_call_0(win->close); } --- 115,124 ---- } ! static gboolean gui_gtk_datawindow_delete(GtkWidget *widget, GdkEvent *event, struct datawindow_priv *win) { callback_call_0(win->close); + + return FALSE; } Index: gui_gtk_action.c =================================================================== RCS file: /cvsroot/navit/navit/src/gui/gtk/gui_gtk_action.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** gui_gtk_action.c 22 Jul 2007 15:37:55 -0000 1.16 --- gui_gtk_action.c 22 Jul 2007 18:04:31 -0000 1.17 *************** *** 373,377 **** <toolitem name=\"Orientation\" action=\"OrientationAction\"/>\ <toolitem name=\"Destination\" action=\"DestinationAction\"/>\ ! <toolitem name=\"Info\" action=\"InfoAction\"/>\ <toolitem name=\"Roadbook\" action=\"RoadbookAction\"/>\ <toolitem name=\"Quit\" action=\"QuitAction\"/>\ --- 373,377 ---- <toolitem name=\"Orientation\" action=\"OrientationAction\"/>\ <toolitem name=\"Destination\" action=\"DestinationAction\"/>\ ! <!-- <toolitem name=\"Info\" action=\"InfoAction\"/> -->\ <toolitem name=\"Roadbook\" action=\"RoadbookAction\"/>\ <toolitem name=\"Quit\" action=\"QuitAction\"/>\ *************** *** 403,406 **** --- 403,408 ---- if (! strcmp(menu->path, "/ui/MenuBar") && !strcmp(name,"Route")) { dynname=g_strdup("Route"); + } else if (! strcmp(menu->path, "/ui/MenuBar") && !strcmp(name,"Data")) { + dynname=g_strdup("Data"); } else { dynname=g_strdup_printf("%d", menu->gui->dyn_counter++); |