1 /* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4 c-style: "K&R" -*- */
4 /*----------------------------------------------------------------------
6 gpiv - Graphic program for Particle Image Velocimetry, based on gtk/gnome
9 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
10 Gerber van der Graaf <gerber_graaf@users.sourceforge.net>
12 This file is part of gpiv.
14 Gpiv is free software; you can redistribute it and/or modify
15 it under the terms of the GNU General Public License as published by
16 the Free Software Foundation; either version 2, or (at your option)
19 This program is distributed in the hope that it will be useful,
20 but WITHOUT ANY WARRANTY; without even the implied warranty of
21 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 GNU General Public License for more details.
24 You should have received a copy of the GNU General Public License
25 along with this program; if not, write to the Free Software Foundation,
26 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
28 ----------------------------------------------------------------------*/
32 * Revision 1.13 2007-12-19 08:42:35 gerber
35 * Revision 1.12 2007-11-23 16:24:07 gerber
36 * release 0.5.0: Kafka
38 * Revision 1.11 2007-06-06 17:00:48 gerber
39 * Retreives images/data from URI using Gnome Virtual File System.
41 * Revision 1.10 2007-03-22 16:00:32 gerber
42 * Added image processing tabulator
44 * Revision 1.9 2007-01-29 11:27:43 gerber
45 * added image formats png, gif, tif png, bmp, improved buffer display
47 * Revision 1.8 2006-09-18 07:27:04 gerber
48 * *** empty log message ***
50 * Revision 1.7 2006/01/31 14:28:11 gerber
53 * Revision 1.6 2005/01/19 15:53:41 gerber
54 * Initiation of Data Acquisition (DAC); trigerring of lasers and camera
55 * by using RTAI and Realtime Linux, recording images from IEEE1394
56 * (Firewire) IIDC compliant camera's
58 * Revision 1.5 2004/06/14 21:19:23 gerber
59 * Image depth up to 16 bits.
60 * Improvement "single int" and "drag int" in Eval tab.
61 * Viewer's pop-up menu.
62 * Adaption for gpiv_matrix_* and gpiv_vector_*.
64 * See Changelog for further info.
66 * Revision 1.4 2003/09/04 13:31:55 gerber
67 * init of printing (unfinished)
69 * Revision 1.3 2003/09/01 11:17:14 gerber
70 * improved monitoring of interrogation process
72 * Revision 1.2 2003/08/22 15:24:52 gerber
73 * interactive spatial scaling
75 * Revision 1.1.1.1 2003/06/17 17:10:52 gerber
86 * Callback functions for main
90 on_clist_buf_rowselect (GtkWidget
*clist
,
93 GdkEventButton
*event
,
98 on_clist_buf_drag_data_received (GtkWidget
*widget
,
99 GdkDragContext
*context
,
102 GtkSelectionData
*selection_data
,
107 delete_console (GtkWidget
*widget
,
115 select_all (gpointer data
,
120 select_none (gpointer data
,
125 on_open_activate (GtkMenuItem
*menuitem
,
129 on_save_activate (GtkMenuItem
*menuitem
,
133 save_all_data (GpivConsole
*gpiv
);
136 on_print_activate (GtkMenuItem
*menuitem
,
139 on_execute_activate (GtkMenuItem
*menuitem
,
142 on_stop_activate (GtkMenuItem
*menuitem
,
146 on_close_activate (GtkMenuItem
*menuitem
,
150 on_save_as_activate (GtkMenuItem
*menuitem
,
154 /* file_saveas_ok_sel(GtkWidget *widget, */
155 /* GtkFileSelection * fs */
159 file_saveas_ok_sel (GpivConsole
*gpiv
,
164 on_exit_activate (GtkMenuItem
*menuitem
,
168 on_close_buffer_activate (GtkMenuItem
*menuitem
,
172 on_preferences_activate (GtkWidget
*widget
,
173 /* GtkMenuItem *menuitem, */
177 on_about_activate (GtkMenuItem
*menuitem
,
182 on_manual_activate (GtkMenuItem
*menuitem
,
186 on_button_open_clicked (GtkButton
*button
,
190 on_menubar_activate (GtkWidget
*widget
,
195 on_toolbuttons_activate (GtkWidget
*widget
,
200 on_gpivbuttons_activate (GtkWidget
*widget
,
205 on_tabulator_activate (GtkWidget
*widget
,
210 on_tooltip_activate (GtkWidget
*widget
,
215 on_buffer_set_focus (GtkWindow
*window
,
220 gtk_window_destroy (GtkButton
*button
,
224 on_view_options_clicked (GtkButton
*button
,
228 on_appbar_display_user_response (GnomeAppBar
*gnomeappbar
,
232 on_button_open_enter (GtkContainer
*container
,
233 GtkDirectionType direction
,
236 on_button_save_enter (GtkContainer
*container
,
237 GtkDirectionType direction
,
241 on_button_print_enter (GtkContainer
*container
,
242 GtkDirectionType direction
,
246 on_button_execute_enter (GtkContainer
*container
,
247 GtkDirectionType direction
,
251 on_button_stop_enter (GtkContainer
*container
,
252 GtkDirectionType direction
,
256 on_button_stop_press (GtkWidget
*widget
,
260 on_button_stop_release (GtkWidget
*widget
,
264 on_button_close_enter (GtkContainer
*container
,
265 GtkDirectionType direction
,
269 on_button_exit_enter (GtkContainer
*container
,
270 GtkDirectionType direction
,
275 * process toolbar callbacks
279 on_toolbar_checkbutton_cam (GtkWidget
*widget
,
281 #endif /* ENABLE_CAM */
285 on_toolbar_checkbutton_trig (GtkWidget
*widget
,
287 #endif /* ENABLE_TRIG */
289 #ifdef ENABLE_IMGPROC
291 on_toolbar_checkbutton_imgproc (GtkWidget
*widget
,
293 #endif /* ENABLE_IMGPROC */
295 on_toolbar_checkbutton_piv (GtkWidget
*widget
,
299 on_toolbar_checkbutton_gradient (GtkWidget
*widget
,
303 on_toolbar_checkbutton_resstats (GtkWidget
*widget
,
307 on_toolbar_checkbutton_errvec (GtkWidget
*widget
,
311 on_toolbar_checkbutton_peaklck (GtkWidget
*widget
,
315 on_toolbar_checkbutton_scale (GtkWidget
*widget
,
319 on_toolbar_checkbutton_average (GtkWidget
*widget
,
323 on_toolbar_checkbutton_subavg (GtkWidget
*widget
,
327 on_toolbar_checkbutton_vorstra (GtkWidget
*widget
,
332 /* on_button_quit_no_clicked (GtkButton *button, */
333 /* gpointer user_data); */
336 /* on_button_quit_gpiv_yes_clicked (GtkButton *button, */
337 /* gpointer user_data); */
340 /* on_button_message_clicked (GtkButton *button, */
341 /* gpointer user_data); */
344 /* on_button_error_clicked (GtkButton *button, */
345 /* gpointer user_data); */
348 on_button_message_clicked (GtkDialog
*dialog
,
354 on_notebook_switch_page (GtkNotebook
*notebook
,
355 GtkNotebookPage
*page
,
360 #endif /* CONSOLE_H */