bugrepair: drag and drop
[gpiv.git] / src / console_interface.h
blobfcfabb93e7b9bf1c6bcc71706ef31ee15129b3d8
1 /* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4 c-style: "K&R" -*- */
3 /*----------------------------------------------------------------------
5 gpiv - Graphic program for Particle Image Velocimetry, based on gtk/gnome
6 libraries.
8 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
9 Gerber van der Graaf <gerber_graaf@users.sourceforge.net>
11 This file is part of gpiv.
13 Gpiv is free software; you can redistribute it and/or modify
14 it under the terms of the GNU General Public License as published by
15 the Free Software Foundation; either version 2, or (at your option)
16 any later version.
18 This program is distributed in the hope that it will be useful,
19 but WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 GNU General Public License for more details.
23 You should have received a copy of the GNU General Public License
24 along with this program; if not, write to the Free Software Foundation,
25 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
27 -----------------------------------------------------------------------------*/
30 * $Log: console_interface.h,v $
31 * Revision 1.9 2007-11-23 16:24:07 gerber
32 * release 0.5.0: Kafka
34 * Revision 1.8 2007-06-06 17:00:48 gerber
35 * Retreives images/data from URI using Gnome Virtual File System.
37 * Revision 1.7 2007-03-22 16:00:32 gerber
38 * Added image processing tabulator
40 * Revision 1.6 2007-01-29 11:27:43 gerber
41 * added image formats png, gif, tif png, bmp, improved buffer display
43 * Revision 1.5 2006-09-18 07:27:05 gerber
44 * *** empty log message ***
46 * Revision 1.4 2006/01/31 14:28:11 gerber
47 * version 0.3.0
49 * Revision 1.2 2005/01/19 15:53:41 gerber
50 * Initiation of Data Acquisition (DAC); trigerring of lasers and camera
51 * by using RTAI and Realtime Linux, recording images from IEEE1394
52 * (Firewire) IIDC compliant camera's
54 * Revision 1.1.1.1 2003/06/17 17:10:52 gerber
55 * Imported gpiv
58 /* -- widgets from GtkWidget *gpiv_gui_gtk ------------*/
59 /* #ifdef HAVE_CONFIG_H */
60 /* # include <config.h> */
61 /* #endif */
63 /* GtkWidget* create_exit (void); */
65 #ifndef CONSOLE_INTERFACE_H
66 #define CONSOLE_INTERFACE_H
68 #include "gpiv_gui.h"
69 #ifdef ENABLE_DAC
70 #include "dac_interface.h"
71 #endif /* ENABLE_DAC */
72 #include "imgh_interface.h"
73 #ifdef ENABLE_IMGPROC
74 #include "imgproc_interface.h"
75 #endif /* ENABLE_IMGPROC */
76 #include "piveval_interface.h"
77 #include "pivvalid_interface.h"
78 #include "pivpost_interface.h"
81 * widget for pop-up menu
84 typedef struct _GpivConsole GpivConsole;
85 struct _GpivConsole {
87 * General widgets for gpiv-gui
89 GnomeApp *console;
90 GtkWidget *appbar;
91 GtkTooltips *tooltips;
93 GtkWidget *dock1;
94 GtkWidget *alignment3;
95 GtkWidget *menubar;
96 GtkWidget *eventbox1;
97 GtkWidget *toolbar1;
98 gint tmp_toolbar_icon_size;
99 GtkWidget *button_open;
100 GtkWidget *button_save;
101 /* GtkWidget *button_print; */
102 GtkWidget *button_execute;
103 GtkWidget *button_stop;
104 GtkWidget *button_close;
105 GtkWidget *vseparator;
106 GtkWidget *button_exit;
107 GtkWidget *hbox_main;
108 GtkWidget *handlebox_buf;
111 * Menu widgets
113 GtkWidget *toggle_view_buttons;
114 const GtkWidget *toggle_view_tool;
115 const GtkWidget *toggle_view_tab;
118 * Buffer handlebox & clist
120 gint first_selected_row;
121 gint last_selected_row;
122 GtkWidget *alignment_buf;
123 GtkWidget *eventbox_buf;
124 GtkWidget *scrolledwindow_buf;
125 GtkObject *scrolledwindow_buf_adj;
126 GtkWidget *button_buf;
127 GtkWidget *viewport_buf;
128 #ifdef GTK4
129 GtkTreeStore *list_buf;
130 #else
131 #endif /* GTK4 */
132 GtkWidget *clist_buf;
133 GtkWidget *label_buf_1;
134 GtkWidget *label_buf_2;
135 GtkWidget *vbox_main;
138 * gpiv toolbox
140 GtkWidget *handlebox1;
141 GtkWidget *scrolledwindow_handbox1;
142 GtkWidget *viewport_handbox1;
143 GtkWidget *toolbar2;
144 GtkWidget *hbox_toolbar2;
145 #ifdef ENABLE_CAM
146 GtkWidget *button_toolbar_cam;
147 #endif
148 #ifdef ENABLE_TRIG
149 GtkWidget *button_toolbar_trig;
150 #endif
151 #ifdef ENABLE_IMGPROC
152 GtkWidget *button_toolbar_imgproc;
153 #endif
154 GtkWidget *button_toolbar_piv;
155 GtkWidget *button_toolbar_gradient;
156 GtkWidget *button_toolbar_resstats;
157 GtkWidget *button_toolbar_errvec;
158 GtkWidget *button_toolbar_peaklock;
159 GtkWidget *button_toolbar_scale;
160 GtkWidget *button_toolbar_average;
161 GtkWidget *button_toolbar_subavg;
162 GtkWidget *button_toolbar_vorstra;
165 * Tabulator
167 GtkWidget *notebook;
168 #ifdef ENABLE_CAM
169 Dac *dac;
170 GtkWidget *tablabel_dac;
171 #else /* ENABLE_CAM */
172 #ifdef ENABLE_TRIG
173 Dac *dac;
174 GtkWidget *tablabel_dac;
175 #endif /* ENABLE_TRIG */
176 #endif /* ENABLE_CAM */
177 Imgheader *imgh;
178 GtkWidget *tablabel_imgh;
179 #ifdef ENABLE_IMGPROC
180 Imgprocess *imgproc;
181 GtkWidget *tablabel_imgproc;
182 #endif
183 PivEval *piveval;
184 GtkWidget *tablabel_piveval;
185 PivValid *pivvalid;
186 GtkWidget *tablabel_pivvalid;
187 PivPost *pivpost;
188 GtkWidget *tablabel_pivpost;
190 GSList *mouse_sel_group;
195 GpivConsole *
196 create_gpiv(void);
198 GtkWidget *
199 create_menu_gpiv_popup (GpivConsole *gpiv);
203 #endif /* CONSOLE_INTERFACE_H */