projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add host-side gps protocol testing program
[fw/altos]
/
aoview
/
aoview_dev_dialog.c
diff --git
a/aoview/aoview_dev_dialog.c
b/aoview/aoview_dev_dialog.c
index 530187c11369329912f12e4923520a199b4811eb..3f92085cfd5f0bdc4ccab3d62007c81b31456abe 100644
(file)
--- a/
aoview/aoview_dev_dialog.c
+++ b/
aoview/aoview_dev_dialog.c
@@
-62,6
+62,8
@@
aoview_dev_open_failed(char *name)
gtk_widget_hide(GTK_WIDGET(dev_open_fail_dialog));
}
gtk_widget_hide(GTK_WIDGET(dev_open_fail_dialog));
}
+gboolean dialog_save_log;
+
static void
aoview_dev_selected(GtkTreeModel *model,
GtkTreePath *path,
static void
aoview_dev_selected(GtkTreeModel *model,
GtkTreePath *path,
@@
-72,8
+74,14
@@
aoview_dev_selected(GtkTreeModel *model,
gtk_tree_model_get(model, iter,
2, &string,
-1);
gtk_tree_model_get(model, iter,
2, &string,
-1);
- if (!aoview_monitor_connect(string))
- aoview_dev_open_failed(string);
+ if (dialog_save_log) {
+ dialog_save_log = FALSE;
+ if (!aoview_eeprom_save(string))
+ aoview_dev_open_failed(string);
+ } else {
+ if (!aoview_monitor_connect(string))
+ aoview_dev_open_failed(string);
+ }
}
static GtkWidget *dialog;
}
static GtkWidget *dialog;
@@
-90,7
+98,6
@@
aoview_dev_dialog_connect(GtkWidget *widget, gpointer data)
gtk_tree_selection_selected_foreach(tree_selection,
aoview_dev_selected,
data);
gtk_tree_selection_selected_foreach(tree_selection,
aoview_dev_selected,
data);
-
gtk_widget_hide(dialog);
}
gtk_widget_hide(dialog);
}
@@
-100,6
+107,13
@@
aoview_dev_disconnect(GtkWidget *widget)
aoview_monitor_disconnect();
}
aoview_monitor_disconnect();
}
+static void
+aoview_dev_savelog(GtkWidget *widget, gpointer data)
+{
+ dialog_save_log = TRUE;
+ gtk_widget_show(dialog);
+}
+
#define _(a) a
void
#define _(a) a
void
@@
-109,6
+123,7
@@
aoview_dev_dialog_init(GladeXML *xml)
GtkWidget *connect_button;
GtkTreeSelection *dev_selection;
GtkWidget *ao_disconnect;
GtkWidget *connect_button;
GtkTreeSelection *dev_selection;
GtkWidget *ao_disconnect;
+ GtkWidget *ao_savelog;
dialog = glade_xml_get_widget(xml, "device_connect_dialog");
assert(dialog);
dialog = glade_xml_get_widget(xml, "device_connect_dialog");
assert(dialog);
@@
-142,6
+157,12
@@
aoview_dev_dialog_init(GladeXML *xml)
G_CALLBACK(aoview_dev_disconnect),
ao_disconnect);
G_CALLBACK(aoview_dev_disconnect),
ao_disconnect);
+ ao_savelog = glade_xml_get_widget(xml, "ao_savelog");
+ assert(ao_savelog);
+
+ g_signal_connect(G_OBJECT(ao_savelog), "activate",
+ G_CALLBACK(aoview_dev_savelog),
+ dialog);
dev_open_fail_dialog = GTK_MESSAGE_DIALOG(glade_xml_get_widget(xml, "dev_open_fail_dialog"));
assert(dev_open_fail_dialog);
}
dev_open_fail_dialog = GTK_MESSAGE_DIALOG(glade_xml_get_widget(xml, "dev_open_fail_dialog"));
assert(dev_open_fail_dialog);
}