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