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
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)
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 * PIV evaluation interface
30 * $Log: piveval_interface.c,v $
31 * Revision 1.4 2003-09-01 11:17:15 gerber
32 * improved monitoring of interrogation process
34 * Revision 1.3 2003/08/22 15:24:52 gerber
35 * interactive spatial scaling
37 * Revision 1.2 2003/07/25 15:40:24 gerber
38 * removed/disabled setting of correlation in Eval tab, Correlation type in Image info tab
40 * Revision 1.1.1.1 2003/06/17 17:10:52 gerber
51 #include "piveval_interface.h"
57 create_piveval (GtkWidget
*main_window
,
60 GpivConsole
* gpiv
= gtk_object_get_data(GTK_OBJECT(main_window
), "gpiv");
61 PivEval
* eval
= g_new0(PivEval
, 1);
63 eval
->mon
.pi_da
.nx
= 1;
64 eval
->mon
.pi_da
.ny
= 1;
65 gpiv_alloc_pivdata(&eval
->mon
.pi_da
);
67 eval
->mon
.int_size_old
= 0;
68 eval
->mon
.affine
[0] = gpiv_var
.piv_disproc_zoom
;
69 eval
->mon
.affine
[1] = 0.0;
70 eval
->mon
.affine
[2] = 0.0;
71 eval
->mon
.affine
[3] = gpiv_var
.piv_disproc_zoom
;
72 eval
->mon
.affine
[4] = 0.0;
73 eval
->mon
.affine
[5] = 0.0;
75 eval
->mon
.int_size_old
= 0;
76 eval
->mon
.affine_vl
[0] = gpiv_var
.piv_disproc_vlength
;
77 eval
->mon
.affine_vl
[1] = 0.0;
78 eval
->mon
.affine_vl
[2] = 0.0;
79 eval
->mon
.affine_vl
[3] = gpiv_var
.piv_disproc_vlength
;
80 eval
->mon
.affine_vl
[4] = 0.0;
81 eval
->mon
.affine_vl
[5] = 0.0;
83 eval
->tooltips
= gtk_tooltips_new();
86 eval
->vbox_label
= gtk_vbox_new(FALSE
,
88 gtk_widget_ref(eval
->vbox_label
);
89 gtk_object_set_data_full(GTK_OBJECT(main_window
),
92 (GtkDestroyNotify
) gtk_widget_unref
);
93 gtk_widget_show(eval
->vbox_label
);
94 gtk_container_add(GTK_CONTAINER(container
),
97 eval
->label_title
= gtk_label_new(_("Piv: image evaluation"));
98 gtk_widget_ref(eval
->label_title
);
99 gtk_object_set_data_full(GTK_OBJECT(main_window
),
102 (GtkDestroyNotify
) gtk_widget_unref
);
103 gtk_widget_show(eval
->label_title
);
104 gtk_box_pack_start(GTK_BOX(eval
->vbox_label
),
113 eval
->vbox_scroll
= gtk_vbox_new(FALSE
,
115 gtk_widget_ref(eval
->vbox_scroll
);
116 gtk_object_set_data_full(GTK_OBJECT(main_window
),
119 (GtkDestroyNotify
) gtk_widget_unref
);
120 gtk_widget_show(eval
->vbox_scroll
);
121 gtk_box_pack_start(GTK_BOX(eval
->vbox_label
),
122 eval
->vbox_scroll
, TRUE
,
126 eval
->scrolledwindow
= gtk_scrolled_window_new(NULL
,
128 gtk_widget_ref(eval
->scrolledwindow
);
129 gtk_object_set_data_full(GTK_OBJECT(main_window
),
131 eval
->scrolledwindow
,
132 (GtkDestroyNotify
) gtk_widget_unref
);
133 gtk_widget_show(eval
->scrolledwindow
);
134 gtk_box_pack_start(GTK_BOX(eval
->vbox_scroll
),
135 eval
->scrolledwindow
,
139 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(eval
->scrolledwindow
),
141 GTK_POLICY_AUTOMATIC
);
143 eval
->viewport
= gtk_viewport_new(NULL
,
145 gtk_widget_ref(eval
->viewport
);
146 gtk_object_set_data_full(GTK_OBJECT(main_window
),
149 (GtkDestroyNotify
) gtk_widget_unref
);
150 gtk_widget_show(eval
->viewport
);
151 gtk_container_add(GTK_CONTAINER(eval
->scrolledwindow
),
153 gtk_widget_set_usize(GTK_WIDGET(eval
->scrolledwindow
),
160 eval
->table
= gtk_table_new(2,
163 gtk_widget_ref(eval
->table
);
164 gtk_object_set_data_full(GTK_OBJECT(main_window
),
167 (GtkDestroyNotify
) gtk_widget_unref
);
168 gtk_widget_show(eval
->table
);
169 gtk_container_add(GTK_CONTAINER(eval
->viewport
),
174 * table for entries of first, last and pre-shift columns/rows
176 eval
->table_aoi
= gtk_table_new(4,
179 gtk_widget_ref(eval
->table_aoi
);
180 gtk_object_set_data_full(GTK_OBJECT(main_window
),
183 (GtkDestroyNotify
) gtk_widget_unref
);
184 gtk_widget_show(eval
->table_aoi
);
185 gtk_table_attach(GTK_TABLE(eval
->table
),
191 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
192 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
198 eval
->label_colstart
= gtk_label_new(_("first col:"));
199 gtk_widget_ref(eval
->label_colstart
);
200 gtk_object_set_data_full(GTK_OBJECT(main_window
),
202 eval
->label_colstart
,
203 (GtkDestroyNotify
) gtk_widget_unref
);
204 gtk_widget_show(eval
->label_colstart
);
205 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
206 eval
->label_colstart
,
211 (GtkAttachOptions
) (0),
212 (GtkAttachOptions
) (0),
218 eval
->label_colend
= gtk_label_new(_("last col:"));
219 gtk_widget_ref(eval
->label_colend
);
220 gtk_object_set_data_full(GTK_OBJECT(main_window
),
223 (GtkDestroyNotify
) gtk_widget_unref
);
224 gtk_widget_show(eval
->label_colend
);
225 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
231 (GtkAttachOptions
) (0),
232 (GtkAttachOptions
) (0),
238 eval
->label_preshiftcol
= gtk_label_new(_("pre-shift col:"));
239 gtk_widget_ref(eval
->label_preshiftcol
);
240 gtk_object_set_data_full(GTK_OBJECT(main_window
),
242 eval
->label_preshiftcol
,
243 (GtkDestroyNotify
) gtk_widget_unref
);
244 gtk_widget_show(eval
->label_preshiftcol
);
245 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
246 eval
->label_preshiftcol
,
251 (GtkAttachOptions
) (0),
252 (GtkAttachOptions
) (0),
258 eval
->label_rowstart
= gtk_label_new(_("first row:"));
259 gtk_widget_ref(eval
->label_rowstart
);
260 gtk_object_set_data_full(GTK_OBJECT(main_window
),
262 eval
->label_rowstart
,
263 (GtkDestroyNotify
) gtk_widget_unref
);
264 gtk_widget_show(eval
->label_rowstart
);
265 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
266 eval
->label_rowstart
,
271 (GtkAttachOptions
) (0),
272 (GtkAttachOptions
) (0),
278 eval
->label_rowend
= gtk_label_new(_("last row:"));
279 gtk_widget_ref(eval
->label_rowend
);
280 gtk_object_set_data_full(GTK_OBJECT(main_window
),
283 (GtkDestroyNotify
) gtk_widget_unref
);
284 gtk_widget_show(eval
->label_rowend
);
285 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
291 (GtkAttachOptions
) (0),
292 (GtkAttachOptions
) (0),
298 eval
->label_preshiftrow
= gtk_label_new(_("pre-shift row:"));
299 gtk_widget_ref(eval
->label_preshiftrow
);
300 gtk_object_set_data_full(GTK_OBJECT(main_window
),
302 eval
->label_preshiftrow
,
303 (GtkDestroyNotify
) gtk_widget_unref
);
304 gtk_widget_show(eval
->label_preshiftrow
);
305 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
306 eval
->label_preshiftrow
,
311 (GtkAttachOptions
) (0),
312 (GtkAttachOptions
) (0),
318 * spinner for colstart
320 eval
->spinbutton_adj_colstart
=
321 gtk_adjustment_new(piv_eval_par
.col_start
,
323 gpiv_par
.img_width
- 1,
327 eval
->spinbutton_colstart
=
328 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_colstart
),
331 gtk_widget_ref(eval
->spinbutton_colstart
);
332 gtk_object_set_data_full(GTK_OBJECT(main_window
),
333 "spinbutton_colstart",
334 eval
->spinbutton_colstart
,
335 (GtkDestroyNotify
) gtk_widget_unref
);
336 gtk_widget_show(eval
->spinbutton_colstart
);
337 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
338 eval
->spinbutton_colstart
,
343 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
344 (GtkAttachOptions
) (0),
347 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(eval
->spinbutton_colstart
),
350 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_colstart
),
353 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_colstart
),
356 /* gtk_signal_connect (GTK_OBJECT (eval->spinbutton_colstart),
358 on_eval->spinbutton_colstart_activate,
359 eval->spinbutton_colstart);
361 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_colstart
),
363 on_spinbutton_piv_int
,
364 eval
->spinbutton_colstart
);
369 eval
->spinbutton_adj_colend
=
370 gtk_adjustment_new(piv_eval_par
.col_end
,
372 gpiv_par
.img_width
- 1,
376 eval
->spinbutton_colend
=
377 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_colend
),
380 gtk_widget_ref(eval
->spinbutton_colend
);
381 gtk_object_set_data_full(GTK_OBJECT(main_window
),
383 eval
->spinbutton_colend
,
384 (GtkDestroyNotify
) gtk_widget_unref
);
385 gtk_widget_show(eval
->spinbutton_colend
);
386 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
387 eval
->spinbutton_colend
,
392 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
393 (GtkAttachOptions
) (0),
396 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(eval
->spinbutton_colend
),
399 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_colend
),
402 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_colend
),
405 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_colend
),
407 on_spinbutton_piv_int
,
408 eval
->spinbutton_colend
);
412 * spinner for preshiftcol
414 eval
->spinbutton_adj_preshiftcol
=
415 gtk_adjustment_new(piv_eval_par
.pre_shift_col
,
416 -(gpiv_par
.img_width
- 1),
417 gpiv_par
.img_width
- 1,
421 eval
->spinbutton_preshiftcol
=
422 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_preshiftcol
),
425 gtk_widget_ref(eval
->spinbutton_preshiftcol
);
426 gtk_object_set_data_full(GTK_OBJECT(main_window
),
427 "spinbutton_preshiftcol",
428 eval
->spinbutton_preshiftcol
,
429 (GtkDestroyNotify
) gtk_widget_unref
);
430 gtk_widget_show(eval
->spinbutton_preshiftcol
);
431 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
432 eval
->spinbutton_preshiftcol
,
437 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
438 (GtkAttachOptions
) (0),
441 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON
442 (eval
->spinbutton_preshiftcol
),
445 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_preshiftcol
),
448 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_preshiftcol
),
451 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_preshiftcol
),
453 on_spinbutton_piv_int
,
454 eval
->spinbutton_preshiftcol
);
458 * spinner for rowstart
460 eval
->spinbutton_adj_rowstart
=
461 gtk_adjustment_new(piv_eval_par
.row_start
,
463 gpiv_par
.img_height
- 1,
467 eval
->spinbutton_rowstart
=
468 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_rowstart
),
471 gtk_widget_ref(eval
->spinbutton_rowstart
);
472 gtk_object_set_data_full(GTK_OBJECT(main_window
),
473 "spinbutton_rowstart",
474 eval
->spinbutton_rowstart
,
475 (GtkDestroyNotify
) gtk_widget_unref
);
476 gtk_widget_show(eval
->spinbutton_rowstart
);
477 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
478 eval
->spinbutton_rowstart
,
483 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
484 (GtkAttachOptions
) (0),
487 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(eval
->spinbutton_rowstart
),
490 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_rowstart
),
493 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_rowstart
),
496 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_rowstart
),
498 on_spinbutton_piv_int
,
499 eval
->spinbutton_rowstart
);
505 eval
->spinbutton_adj_rowend
=
506 gtk_adjustment_new(piv_eval_par
.row_end
,
508 gpiv_par
.img_height
- 1,
512 eval
->spinbutton_rowend
=
513 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_rowend
),
516 gtk_widget_ref(eval
->spinbutton_rowend
);
517 gtk_object_set_data_full(GTK_OBJECT(main_window
),
519 eval
->spinbutton_rowend
,
520 (GtkDestroyNotify
) gtk_widget_unref
);
521 gtk_widget_show(eval
->spinbutton_rowend
);
522 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
523 eval
->spinbutton_rowend
,
528 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
529 (GtkAttachOptions
) (0),
533 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_rowend
),
536 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_rowend
),
539 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_rowend
),
541 on_spinbutton_piv_int
,
542 eval
->spinbutton_rowend
);
546 * spinner for preshiftrow
548 eval
->spinbutton_adj_preshiftrow
=
549 gtk_adjustment_new(piv_eval_par
.pre_shift_row
,
550 -(gpiv_par
.img_height
- 1),
551 gpiv_par
.img_height
- 1,
555 eval
->spinbutton_preshiftrow
=
556 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_preshiftrow
),
559 gtk_widget_ref(eval
->spinbutton_preshiftrow
);
560 gtk_object_set_data_full(GTK_OBJECT(main_window
),
561 "spinbutton_preshiftrow",
562 eval
->spinbutton_preshiftrow
,
563 (GtkDestroyNotify
) gtk_widget_unref
);
564 gtk_widget_show(eval
->spinbutton_preshiftrow
);
565 gtk_table_attach(GTK_TABLE(eval
->table_aoi
),
566 eval
->spinbutton_preshiftrow
,
571 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
572 (GtkAttachOptions
) (0),
576 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_preshiftrow
),
579 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_preshiftrow
),
582 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_preshiftrow
),
584 on_spinbutton_piv_int
,
585 eval
->spinbutton_preshiftrow
);
589 * radio buttons and spinners for interrogation size 1
592 eval
->hbox_intreg
= gtk_hbox_new(FALSE
, 0);
593 gtk_widget_ref(eval
->hbox_intreg
);
594 gtk_object_set_data_full(GTK_OBJECT(main_window
),
597 (GtkDestroyNotify
) gtk_widget_unref
);
598 gtk_widget_show(eval
->hbox_intreg
);
599 gtk_table_attach(GTK_TABLE(eval
->table
), eval
->hbox_intreg
,
604 (GtkAttachOptions
) (GTK_FILL
),
605 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
), 0, 0);
607 eval
->frame_2
= gtk_frame_new(_("Int Size 1"));
608 gtk_widget_ref(eval
->frame_2
);
609 gtk_object_set_data_full(GTK_OBJECT(main_window
),
612 (GtkDestroyNotify
) gtk_widget_unref
);
613 gtk_widget_show(eval
->frame_2
);
614 gtk_box_pack_start(GTK_BOX(eval
->hbox_intreg
),
620 eval
->vbox_intsize1
= gtk_vbox_new(FALSE
, 0);
621 gtk_widget_ref(eval
->vbox_intsize1
);
622 gtk_object_set_data_full(GTK_OBJECT(main_window
),
625 (GtkDestroyNotify
) gtk_widget_unref
);
626 gtk_widget_show(eval
->vbox_intsize1
);
627 gtk_container_add(GTK_CONTAINER(eval
->frame_2
),
628 eval
->vbox_intsize1
);
632 * spinner for interrogation size 1
634 eval
->spinbutton_adj_intsize1
=
635 gtk_adjustment_new(piv_eval_par
.int_size_1
,
641 eval
->spinbutton_intsize1
=
642 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_intsize1
),
645 gtk_widget_ref(eval
->spinbutton_intsize1
);
646 gtk_object_set_data_full(GTK_OBJECT(main_window
),
647 "spinbutton_intsize1",
648 eval
->spinbutton_intsize1
,
649 (GtkDestroyNotify
) gtk_widget_unref
);
650 gtk_widget_show(eval
->spinbutton_intsize1
);
651 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize1
),
652 eval
->spinbutton_intsize1
,
655 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_intsize1
),
658 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_intsize1
),
661 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_intsize1
),
663 on_spinbutton_piv_int
,
664 eval
->spinbutton_intsize1
);
669 * radio buttons for interrogation size 1
672 /* eval->radiobutton_intsize1_1 = */
673 /* gtk_radio_button_new_with_label(eval->int_size_1_group, _("8")); */
674 /* eval->int_size_1_group = */
675 /* gtk_radio_button_group(GTK_RADIO_BUTTON */
676 /* (eval->radiobutton_intsize1_1)); */
677 /* gtk_widget_ref(eval->radiobutton_intsize1_1); */
678 /* gtk_object_set_data_full(GTK_OBJECT(main_window), */
679 /* "radiobutton_intsize1_1", */
680 /* eval->radiobutton_intsize1_1, */
681 /* (GtkDestroyNotify) gtk_widget_unref); */
682 /* gtk_widget_show(eval->radiobutton_intsize1_1); */
683 /* gtk_box_pack_start(GTK_BOX(eval->vbox_intsize1), */
684 /* eval->radiobutton_intsize1_1, FALSE, FALSE, 0); */
686 /* gtk_object_set_data(GTK_OBJECT(eval->radiobutton_intsize1_1), "intsize1", */
688 /* gtk_object_set_data(GTK_OBJECT(eval->radiobutton_intsize1_1), "var_type", */
690 /* gtk_signal_connect(GTK_OBJECT(eval->radiobutton_intsize1_1), "toggled", */
691 /* GTK_SIGNAL_FUNC(on_eval->radiobutton_int), NULL); */
694 eval
->radiobutton_intsize1_2
=
695 gtk_radio_button_new_with_label(eval
->int_size_1_group
,
697 eval
->int_size_1_group
=
698 gtk_radio_button_group(GTK_RADIO_BUTTON
699 (eval
->radiobutton_intsize1_2
));
700 gtk_widget_ref(eval
->radiobutton_intsize1_2
);
701 gtk_object_set_data_full(GTK_OBJECT(main_window
),
702 "radiobutton_intsize1_2",
703 eval
->radiobutton_intsize1_2
,
704 (GtkDestroyNotify
) gtk_widget_unref
);
705 gtk_widget_show(eval
->radiobutton_intsize1_2
);
706 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize1
),
707 eval
->radiobutton_intsize1_2
,
712 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_2
),
715 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_2
),
718 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_2
),
721 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize1_2
),
723 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
728 eval
->radiobutton_intsize1_3
=
729 gtk_radio_button_new_with_label(eval
->int_size_1_group
,
731 eval
->int_size_1_group
=
732 gtk_radio_button_group(GTK_RADIO_BUTTON
733 (eval
->radiobutton_intsize1_3
));
734 gtk_widget_ref(eval
->radiobutton_intsize1_3
);
735 gtk_object_set_data_full(GTK_OBJECT(main_window
),
736 "radiobutton_intsize1_3",
737 eval
->radiobutton_intsize1_3
,
738 (GtkDestroyNotify
) gtk_widget_unref
);
739 gtk_widget_show(eval
->radiobutton_intsize1_3
);
740 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize1
),
741 eval
->radiobutton_intsize1_3
,
746 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_3
),
749 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_3
),
752 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_3
),
755 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize1_3
),
757 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
762 eval
->radiobutton_intsize1_4
=
763 gtk_radio_button_new_with_label(eval
->int_size_1_group
,
765 eval
->int_size_1_group
=
766 gtk_radio_button_group(GTK_RADIO_BUTTON
767 (eval
->radiobutton_intsize1_4
));
768 gtk_widget_ref(eval
->radiobutton_intsize1_4
);
769 gtk_object_set_data_full(GTK_OBJECT(main_window
),
770 "radiobutton_intsize1_4",
771 eval
->radiobutton_intsize1_4
,
772 (GtkDestroyNotify
) gtk_widget_unref
);
773 gtk_widget_show(eval
->radiobutton_intsize1_4
);
774 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize1
),
775 eval
->radiobutton_intsize1_4
,
780 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_4
),
783 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_4
),
786 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_4
),
789 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize1_4
),
791 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
796 eval
->radiobutton_intsize1_5
=
797 gtk_radio_button_new_with_label(eval
->int_size_1_group
,
799 eval
->int_size_1_group
=
800 gtk_radio_button_group(GTK_RADIO_BUTTON
801 (eval
->radiobutton_intsize1_5
));
802 gtk_widget_ref(eval
->radiobutton_intsize1_5
);
803 gtk_object_set_data_full(GTK_OBJECT(main_window
),
804 "radiobutton_intsize1_5",
805 eval
->radiobutton_intsize1_5
,
806 (GtkDestroyNotify
) gtk_widget_unref
);
807 gtk_widget_show(eval
->radiobutton_intsize1_5
);
808 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize1
),
809 eval
->radiobutton_intsize1_5
,
814 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_5
),
817 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_5
),
820 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize1_5
),
823 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize1_5
),
825 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
830 * radio buttons for interrogation size 2
833 eval
->frame_3
= gtk_frame_new(_("Int Size 2"));
834 gtk_widget_ref(eval
->frame_3
);
835 gtk_object_set_data_full(GTK_OBJECT(main_window
),
838 (GtkDestroyNotify
) gtk_widget_unref
);
839 gtk_widget_show(eval
->frame_3
);
840 gtk_box_pack_start(GTK_BOX(eval
->hbox_intreg
),
847 eval
->vbox_intsize2
= gtk_vbox_new(FALSE
,
849 gtk_widget_ref(eval
->vbox_intsize2
);
850 gtk_object_set_data_full(GTK_OBJECT(main_window
),
853 (GtkDestroyNotify
) gtk_widget_unref
);
854 gtk_widget_show(eval
->vbox_intsize2
);
855 gtk_container_add(GTK_CONTAINER(eval
->frame_3
),
856 eval
->vbox_intsize2
);
860 * spinner for interrogation size 2
862 eval
->spinbutton_adj_intsize2
=
863 gtk_adjustment_new(piv_eval_par
.int_size_2
,
869 eval
->spinbutton_intsize2
=
870 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_intsize2
),
873 gtk_widget_ref(eval
->spinbutton_intsize2
);
874 gtk_object_set_data_full(GTK_OBJECT(main_window
),
875 "spinbutton_intsize2",
876 eval
->spinbutton_intsize2
,
877 (GtkDestroyNotify
) gtk_widget_unref
);
878 gtk_widget_show(eval
->spinbutton_intsize2
);
879 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize2
),
880 eval
->spinbutton_intsize2
,
885 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_intsize2
),
888 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_intsize2
),
891 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_intsize2
),
893 on_spinbutton_piv_int
,
894 eval
->spinbutton_intsize2
);
899 /* eval->radiobutton_intsize2_1 = */
900 /* gtk_radio_button_new_with_label(eval->int_size_2_group, _("8")); */
901 /* eval->int_size_2_group = */
902 /* gtk_radio_button_group(GTK_RADIO_BUTTON */
903 /* (eval->radiobutton_intsize2_1)); */
904 /* gtk_widget_ref(eval->radiobutton_intsize2_1); */
905 /* gtk_object_set_data_full(GTK_OBJECT(main_window), */
906 /* "radiobutton_intsize2_1", */
907 /* eval->radiobutton_intsize2_1, */
908 /* (GtkDestroyNotify) gtk_widget_unref); */
909 /* gtk_widget_show(eval->radiobutton_intsize2_1); */
910 /* gtk_box_pack_start(GTK_BOX(eval->vbox_intsize2), */
911 /* eval->radiobutton_intsize2_1, FALSE, FALSE, 0); */
913 /* gtk_object_set_data(GTK_OBJECT(eval->radiobutton_intsize2_1),
915 /* gtk_object_set_data(GTK_OBJECT(eval->radiobutton_intsize2_1), "intsize2", */
917 /* gtk_object_set_data(GTK_OBJECT(eval->radiobutton_intsize2_1), "var_type", */
919 /* gtk_signal_connect(GTK_OBJECT(eval->radiobutton_intsize2_1), "toggled", */
920 /* GTK_SIGNAL_FUNC(on_radiobutton_piv_int), NULL); */
923 eval
->radiobutton_intsize2_2
=
924 gtk_radio_button_new_with_label(eval
->int_size_2_group
,
926 eval
->int_size_2_group
=
927 gtk_radio_button_group(GTK_RADIO_BUTTON
928 (eval
->radiobutton_intsize2_2
));
929 gtk_widget_ref(eval
->radiobutton_intsize2_2
);
930 gtk_object_set_data_full(GTK_OBJECT(main_window
),
931 "radiobutton_intsize2_2",
932 eval
->radiobutton_intsize2_2
,
933 (GtkDestroyNotify
) gtk_widget_unref
);
934 gtk_widget_show(eval
->radiobutton_intsize2_2
);
935 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize2
),
936 eval
->radiobutton_intsize2_2
,
941 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_2
),
944 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_2
),
947 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_2
),
950 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize2_2
),
952 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
957 eval
->radiobutton_intsize2_3
=
958 gtk_radio_button_new_with_label(eval
->int_size_2_group
,
960 eval
->int_size_2_group
=
961 gtk_radio_button_group(GTK_RADIO_BUTTON
962 (eval
->radiobutton_intsize2_3
));
963 gtk_widget_ref(eval
->radiobutton_intsize2_3
);
964 gtk_object_set_data_full(GTK_OBJECT(main_window
),
965 "radiobutton_intsize2_3",
966 eval
->radiobutton_intsize2_3
,
967 (GtkDestroyNotify
) gtk_widget_unref
);
968 gtk_widget_show(eval
->radiobutton_intsize2_3
);
969 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize2
),
970 eval
->radiobutton_intsize2_3
,
975 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_3
),
978 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_3
),
981 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_3
),
984 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize2_3
),
986 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
991 eval
->radiobutton_intsize2_4
=
992 gtk_radio_button_new_with_label(eval
->int_size_2_group
,
994 eval
->int_size_2_group
=
995 gtk_radio_button_group(GTK_RADIO_BUTTON
996 (eval
->radiobutton_intsize2_4
));
997 gtk_widget_ref(eval
->radiobutton_intsize2_4
);
998 gtk_object_set_data_full(GTK_OBJECT(main_window
),
999 "radiobutton_intsize2_4",
1000 eval
->radiobutton_intsize2_4
,
1001 (GtkDestroyNotify
) gtk_widget_unref
);
1002 gtk_widget_show(eval
->radiobutton_intsize2_4
);
1003 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize2
),
1004 eval
->radiobutton_intsize2_4
,
1009 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_4
),
1011 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_4
),
1014 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_4
),
1017 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize2_4
),
1019 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1024 eval
->radiobutton_intsize2_5
=
1025 gtk_radio_button_new_with_label(eval
->int_size_2_group
,
1027 eval
->int_size_2_group
=
1028 gtk_radio_button_group(GTK_RADIO_BUTTON
1029 (eval
->radiobutton_intsize2_5
));
1030 gtk_widget_ref(eval
->radiobutton_intsize2_5
);
1031 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1032 "radiobutton_intsize2_5",
1033 eval
->radiobutton_intsize2_5
,
1034 (GtkDestroyNotify
) gtk_widget_unref
);
1035 gtk_widget_show(eval
->radiobutton_intsize2_5
);
1036 gtk_box_pack_start(GTK_BOX(eval
->vbox_intsize2
),
1037 eval
->radiobutton_intsize2_5
,
1042 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_5
),
1045 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_5
),
1048 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intsize2_5
)
1051 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intsize2_5
),
1053 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1058 * radio buttons for shifted distance of interrogation areas
1061 eval
->frame_4
= gtk_frame_new(_("Shift"));
1062 gtk_widget_ref(eval
->frame_4
);
1063 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1066 (GtkDestroyNotify
) gtk_widget_unref
);
1067 gtk_widget_show(eval
->frame_4
);
1068 gtk_box_pack_start(GTK_BOX(eval
->hbox_intreg
),
1074 eval
->vbox_shift
= gtk_vbox_new(FALSE
,
1076 gtk_widget_ref(eval
->vbox_shift
);
1077 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1080 (GtkDestroyNotify
) gtk_widget_unref
);
1081 gtk_widget_show(eval
->vbox_shift
);
1082 gtk_container_add(GTK_CONTAINER(eval
->frame_4
),
1087 * spinner for interrogation shift
1089 eval
->spinbutton_adj_intshift
=
1090 gtk_adjustment_new(piv_eval_par
.int_shift
,
1096 eval
->spinbutton_intshift
=
1097 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_intshift
),
1100 gtk_widget_ref(eval
->spinbutton_intshift
);
1101 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1102 "spinbutton_intshift",
1103 eval
->spinbutton_intshift
,
1104 (GtkDestroyNotify
) gtk_widget_unref
);
1105 gtk_widget_show(eval
->spinbutton_intshift
);
1106 gtk_box_pack_start(GTK_BOX(eval
->vbox_shift
), eval
->spinbutton_intshift
,
1111 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_intshift
),
1114 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_intshift
),
1117 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_intshift
),
1119 on_spinbutton_piv_int
,
1120 eval
->spinbutton_intshift
);
1124 eval
->radiobutton_intshift_1
=
1125 gtk_radio_button_new_with_label(eval
->int_shift_group
,
1127 eval
->int_shift_group
=
1128 gtk_radio_button_group(GTK_RADIO_BUTTON
1129 (eval
->radiobutton_intshift_1
));
1130 gtk_widget_ref(eval
->radiobutton_intshift_1
);
1131 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1133 "radiobutton_intshift_1",
1134 eval
->radiobutton_intshift_1
,
1135 (GtkDestroyNotify
) gtk_widget_unref
);
1136 gtk_widget_show(eval
->radiobutton_intshift_1
);
1137 gtk_box_pack_start(GTK_BOX(eval
->vbox_shift
),
1138 eval
->radiobutton_intshift_1
,
1143 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_1
),
1146 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_1
),
1149 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_1
),
1152 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intshift_1
),
1154 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1159 eval
->radiobutton_intshift_2
=
1160 gtk_radio_button_new_with_label(eval
->int_shift_group
,
1162 eval
->int_shift_group
=
1163 gtk_radio_button_group(GTK_RADIO_BUTTON
1164 (eval
->radiobutton_intshift_2
));
1165 gtk_widget_ref(eval
->radiobutton_intshift_2
);
1166 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1167 "radiobutton_intshift_2",
1168 eval
->radiobutton_intshift_2
,
1169 (GtkDestroyNotify
) gtk_widget_unref
);
1170 gtk_widget_show(eval
->radiobutton_intshift_2
);
1171 gtk_box_pack_start(GTK_BOX(eval
->vbox_shift
),
1172 eval
->radiobutton_intshift_2
,
1177 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_2
),
1180 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_2
),
1183 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_2
),
1186 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intshift_2
),
1188 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1193 eval
->radiobutton_intshift_3
=
1194 gtk_radio_button_new_with_label(eval
->int_shift_group
,
1196 eval
->int_shift_group
=
1197 gtk_radio_button_group(GTK_RADIO_BUTTON
1198 (eval
->radiobutton_intshift_3
));
1199 gtk_widget_ref(eval
->radiobutton_intshift_3
);
1200 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1201 "radiobutton_intshift_3",
1202 eval
->radiobutton_intshift_3
,
1203 (GtkDestroyNotify
) gtk_widget_unref
);
1204 gtk_widget_show(eval
->radiobutton_intshift_3
);
1205 gtk_box_pack_start(GTK_BOX(eval
->vbox_shift
),
1206 eval
->radiobutton_intshift_3
,
1211 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_3
),
1214 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_3
),
1217 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_3
),
1220 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intshift_3
),
1222 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1227 eval
->radiobutton_intshift_4
=
1228 gtk_radio_button_new_with_label(eval
->int_shift_group
,
1230 eval
->int_shift_group
=
1231 gtk_radio_button_group(GTK_RADIO_BUTTON
1232 (eval
->radiobutton_intshift_4
));
1233 gtk_widget_ref(eval
->radiobutton_intshift_4
);
1234 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1235 "radiobutton_intshift_4",
1236 eval
->radiobutton_intshift_4
,
1237 (GtkDestroyNotify
) gtk_widget_unref
);
1238 gtk_widget_show(eval
->radiobutton_intshift_4
);
1239 gtk_box_pack_start(GTK_BOX(eval
->vbox_shift
),
1240 eval
->radiobutton_intshift_4
,
1245 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_4
),
1248 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_4
),
1251 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_4
),
1254 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intshift_4
),
1256 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1261 eval
->radiobutton_intshift_5
=
1262 gtk_radio_button_new_with_label(eval
->int_shift_group
,
1264 eval
->int_shift_group
=
1265 gtk_radio_button_group(GTK_RADIO_BUTTON
1266 (eval
->radiobutton_intshift_5
));
1267 gtk_widget_ref(eval
->radiobutton_intshift_5
);
1268 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1269 "radiobutton_intshift_5",
1270 eval
->radiobutton_intshift_5
,
1271 (GtkDestroyNotify
) gtk_widget_unref
);
1272 gtk_widget_show(eval
->radiobutton_intshift_5
);
1273 gtk_box_pack_start(GTK_BOX(eval
->vbox_shift
),
1274 eval
->radiobutton_intshift_5
,
1279 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_5
),
1282 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_5
),
1285 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_intshift_5
),
1288 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_intshift_5
),
1290 GTK_SIGNAL_FUNC(on_radiobutton_piv_int
),
1295 * radio button for mouse selecting
1298 eval
->frame_1
= gtk_frame_new(_("Mouse select"));
1299 gtk_widget_ref(eval
->frame_1
);
1300 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1303 (GtkDestroyNotify
) gtk_widget_unref
);
1304 gtk_widget_show(eval
->frame_1
);
1305 gtk_table_attach(GTK_TABLE(eval
->table
),
1311 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
1312 (GtkAttachOptions
) (GTK_FILL
),
1317 eval
->vbox_mouseselect
= gtk_vbox_new(FALSE
,
1319 gtk_widget_ref(eval
->vbox_mouseselect
);
1320 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1322 eval
->vbox_mouseselect
,
1323 (GtkDestroyNotify
) gtk_widget_unref
);
1324 gtk_widget_show(eval
->vbox_mouseselect
);
1325 gtk_container_add(GTK_CONTAINER(eval
->frame_1
),
1326 eval
->vbox_mouseselect
);
1329 eval
->radiobutton_mouse_1
=
1330 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1332 gpiv
->mouse_sel_group
=
1333 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_1
));
1334 gtk_widget_ref(eval
->radiobutton_mouse_1
);
1335 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1336 "radiobutton_mouse_1",
1337 eval
->radiobutton_mouse_1
,
1338 (GtkDestroyNotify
) gtk_widget_unref
);
1339 gtk_widget_show(eval
->radiobutton_mouse_1
);
1340 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1341 eval
->radiobutton_mouse_1
,
1346 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_1
),
1349 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_1
),
1352 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_1
),
1354 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse1_enter
),
1356 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_1
),
1358 GTK_SIGNAL_FUNC(on_widget_leave
),
1360 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_1
),
1362 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1367 eval
->radiobutton_mouse_2
=
1368 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1370 gpiv
->mouse_sel_group
=
1371 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_2
));
1372 gtk_widget_ref(eval
->radiobutton_mouse_2
);
1373 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1374 "radiobutton_mouse_2",
1375 eval
->radiobutton_mouse_2
,
1376 (GtkDestroyNotify
) gtk_widget_unref
);
1377 gtk_widget_show(eval
->radiobutton_mouse_2
);
1378 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1379 eval
->radiobutton_mouse_2
,
1384 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_2
),
1387 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_2
),
1390 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_2
),
1392 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse2_enter
),
1394 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_2
),
1396 GTK_SIGNAL_FUNC(on_widget_leave
),
1398 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_2
),
1400 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1405 eval
->radiobutton_mouse_3
=
1406 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1408 gpiv
->mouse_sel_group
=
1409 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_3
));
1410 gtk_widget_ref(eval
->radiobutton_mouse_3
);
1411 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1412 "radiobutton_mouse_3",
1413 eval
->radiobutton_mouse_3
,
1414 (GtkDestroyNotify
) gtk_widget_unref
);
1415 gtk_widget_show(eval
->radiobutton_mouse_3
);
1416 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1417 eval
->radiobutton_mouse_3
,
1422 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_3
),
1425 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_3
),
1427 "2" /* SINGLE_AREA_MS */);
1428 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_3
),
1430 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse3_enter
),
1432 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_3
),
1434 GTK_SIGNAL_FUNC(on_widget_leave
),
1436 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_3
),
1438 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1443 eval
->radiobutton_mouse_4
=
1444 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1446 gpiv
->mouse_sel_group
=
1447 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_4
));
1448 gtk_widget_ref(eval
->radiobutton_mouse_4
);
1449 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1450 "radiobutton_mouse_4",
1451 eval
->radiobutton_mouse_4
,
1452 (GtkDestroyNotify
) gtk_widget_unref
);
1453 gtk_widget_show(eval
->radiobutton_mouse_4
);
1454 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1455 eval
->radiobutton_mouse_4
,
1460 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_4
),
1463 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_4
),
1465 "3" /* SINGLE_POINT_MS */);
1466 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_4
),
1468 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse4_enter
),
1470 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_4
),
1472 GTK_SIGNAL_FUNC(on_widget_leave
),
1474 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_4
),
1476 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1481 eval
->radiobutton_mouse_5
=
1482 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1484 gpiv
->mouse_sel_group
=
1485 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_5
));
1486 gtk_widget_ref(eval
->radiobutton_mouse_5
);
1487 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1488 "radiobutton_mouse_5",
1489 eval
->radiobutton_mouse_5
,
1490 (GtkDestroyNotify
) gtk_widget_unref
);
1491 gtk_widget_show(eval
->radiobutton_mouse_5
);
1492 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1493 eval
->radiobutton_mouse_5
,
1498 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_5
),
1501 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_5
),
1504 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_5
),
1506 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse5_enter
),
1508 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_5
),
1510 GTK_SIGNAL_FUNC(on_widget_leave
),
1512 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_5
),
1514 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1519 eval
->radiobutton_mouse_6
=
1520 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1522 gpiv
->mouse_sel_group
=
1523 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_6
));
1524 gtk_widget_ref(eval
->radiobutton_mouse_6
);
1525 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1526 "radiobutton_mouse_6",
1527 eval
->radiobutton_mouse_6
,
1528 (GtkDestroyNotify
) gtk_widget_unref
);
1529 gtk_widget_show(eval
->radiobutton_mouse_6
);
1530 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1531 eval
->radiobutton_mouse_6
,
1536 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_6
),
1539 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_6
),
1541 "5" /* V_LINE_MS */);
1542 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_6
),
1544 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse6_enter
),
1546 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_6
),
1548 GTK_SIGNAL_FUNC(on_widget_leave
),
1550 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_6
),
1552 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1557 eval
->radiobutton_mouse_7
=
1558 gtk_radio_button_new_with_label(gpiv
->mouse_sel_group
,
1560 gpiv
->mouse_sel_group
=
1561 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_mouse_7
));
1562 gtk_widget_ref(eval
->radiobutton_mouse_7
);
1563 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1564 "radiobutton_mouse_7",
1565 eval
->radiobutton_mouse_7
,
1566 (GtkDestroyNotify
) gtk_widget_unref
);
1567 gtk_widget_show(eval
->radiobutton_mouse_7
);
1568 gtk_box_pack_start(GTK_BOX(eval
->vbox_mouseselect
),
1569 eval
->radiobutton_mouse_7
,
1574 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_7
),
1577 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_mouse_7
),
1579 "6" /* H_LINE_MS */);
1580 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_7
),
1582 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse7_enter
),
1584 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_7
),
1586 GTK_SIGNAL_FUNC(on_widget_leave
),
1588 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_mouse_7
),
1590 GTK_SIGNAL_FUNC(on_radiobutton_piv_mouse
),
1595 * radio buttons for sub-pixel interpolation scheme
1598 eval
->frame_5
= gtk_frame_new(_("Interpolation scheme"));
1599 gtk_widget_ref(eval
->frame_5
);
1600 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1603 (GtkDestroyNotify
) gtk_widget_unref
);
1604 gtk_widget_show(eval
->frame_5
);
1605 gtk_table_attach(GTK_TABLE(eval
->table
),
1611 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
1612 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
1617 eval
->vbox10
= gtk_vbox_new(FALSE
,
1619 gtk_widget_ref(eval
->vbox10
);
1620 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1623 (GtkDestroyNotify
) gtk_widget_unref
);
1624 gtk_widget_show(eval
->vbox10
);
1625 gtk_container_add(GTK_CONTAINER(eval
->frame_5
),
1629 eval
->radiobutton_fit_none
=
1630 gtk_radio_button_new_with_label(eval
->vbox10_group
,
1632 eval
->vbox10_group
=
1633 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_fit_none
));
1634 gtk_widget_ref(eval
->radiobutton_fit_none
);
1635 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1636 "radiobutton_fit_none",
1637 eval
->radiobutton_fit_none
,
1638 (GtkDestroyNotify
) gtk_widget_unref
);
1639 gtk_widget_show(eval
->radiobutton_fit_none
);
1640 gtk_box_pack_start(GTK_BOX(eval
->vbox10
),
1641 eval
->radiobutton_fit_none
,
1646 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_none
),
1649 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_none
),
1652 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_none
),
1655 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_fit_none
),
1657 GTK_SIGNAL_FUNC(on_toggle_piv
),
1662 eval
->radiobutton_fit_gauss
=
1663 gtk_radio_button_new_with_label(eval
->vbox10_group
,
1665 eval
->vbox10_group
=
1666 gtk_radio_button_group(GTK_RADIO_BUTTON
1667 (eval
->radiobutton_fit_gauss
));
1668 gtk_widget_ref(eval
->radiobutton_fit_gauss
);
1669 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1670 "radiobutton_fit_gauss",
1671 eval
->radiobutton_fit_gauss
,
1672 (GtkDestroyNotify
) gtk_widget_unref
);
1673 gtk_widget_show(eval
->radiobutton_fit_gauss
);
1674 gtk_box_pack_start(GTK_BOX(eval
->vbox10
),
1675 eval
->radiobutton_fit_gauss
,
1680 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_gauss
),
1683 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_gauss
),
1686 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_gauss
),
1689 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_fit_gauss
),
1691 GTK_SIGNAL_FUNC(on_toggle_piv
),
1696 eval
->radiobutton_fit_power
=
1697 gtk_radio_button_new_with_label(eval
->vbox10_group
,
1699 eval
->vbox10_group
=
1700 gtk_radio_button_group(GTK_RADIO_BUTTON
1701 (eval
->radiobutton_fit_power
));
1702 gtk_widget_ref(eval
->radiobutton_fit_power
);
1703 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1704 "radiobutton_fit_power",
1705 eval
->radiobutton_fit_power
,
1706 (GtkDestroyNotify
) gtk_widget_unref
);
1707 gtk_widget_show(eval
->radiobutton_fit_power
);
1708 gtk_box_pack_start(GTK_BOX(eval
->vbox10
),
1709 eval
->radiobutton_fit_power
,
1714 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_power
),
1717 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_power
),
1720 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_power
),
1723 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_fit_power
),
1725 GTK_SIGNAL_FUNC(on_toggle_piv
),
1730 eval
->radiobutton_fit_gravity
=
1731 gtk_radio_button_new_with_label(eval
->vbox10_group
,
1733 eval
->vbox10_group
=
1734 gtk_radio_button_group(GTK_RADIO_BUTTON
1735 (eval
->radiobutton_fit_gravity
));
1736 gtk_widget_ref(eval
->radiobutton_fit_gravity
);
1737 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1738 "radiobutton_fit_gravity",
1739 eval
->radiobutton_fit_gravity
,
1740 (GtkDestroyNotify
) gtk_widget_unref
);
1741 gtk_widget_show(eval
->radiobutton_fit_gravity
);
1742 gtk_box_pack_start(GTK_BOX(eval
->vbox10
),
1743 eval
->radiobutton_fit_gravity
,
1748 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_gravity
),
1751 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_gravity
),
1754 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_fit_gravity
),
1757 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_fit_gravity
),
1759 GTK_SIGNAL_FUNC(on_toggle_piv
),
1764 /* eval->radiobutton_fit_marquardt = gtk_radio_button_new_with_label (eval->vbox10_group,
1766 /* eval->vbox10_group = gtk_radio_button_group (GTK_RADIO_BUTTON (eval->radiobutton_fit_marquardt)); */
1767 /* gtk_widget_ref (eval->radiobutton_fit_marquardt); */
1768 /* gtk_object_set_data_full (GTK_OBJECT (main_window),
1769 "radiobutton_fit_marquardt",
1770 eval->radiobutton_fit_marquardt, */
1771 /* (GtkDestroyNotify) gtk_widget_unref); */
1772 /* gtk_widget_show (eval->radiobutton_fit_marquardt); */
1773 /* gtk_box_pack_start (GTK_BOX (eval->vbox10),
1774 eval->radiobutton_fit_marquardt,
1779 /* gtk_object_set_data(GTK_OBJECT (eval->radiobutton_fit_marquardt), */
1782 /* gtk_object_set_data(GTK_OBJECT(eval->radiobutton_fit_marquardt),
1785 /* gtk_object_set_data(GTK_OBJECT (eval->radiobutton_fit_marquardt), */
1788 /* gtk_signal_connect (GTK_OBJECT (eval->radiobutton_fit_marquardt),
1790 /* GTK_SIGNAL_FUNC (on_toggle_piv), */
1796 * radio buttons for correlation peak number to be detected
1798 eval
->frame_6
= gtk_frame_new(_("Peak #"));
1799 gtk_widget_ref(eval
->frame_6
);
1800 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1803 (GtkDestroyNotify
) gtk_widget_unref
);
1804 gtk_widget_show(eval
->frame_6
);
1805 gtk_table_attach(GTK_TABLE(eval
->table
),
1811 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
1812 (GtkAttachOptions
) (GTK_FILL
),
1816 eval
->vbox11
= gtk_vbox_new(FALSE
,
1818 gtk_widget_ref(eval
->vbox11
);
1819 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1822 (GtkDestroyNotify
) gtk_widget_unref
);
1823 gtk_widget_show(eval
->vbox11
);
1824 gtk_container_add(GTK_CONTAINER(eval
->frame_6
),
1827 eval
->radiobutton_peak_1
=
1828 gtk_radio_button_new_with_label(eval
->vbox11_group
,
1830 eval
->vbox11_group
=
1831 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_peak_1
));
1832 gtk_widget_ref(eval
->radiobutton_peak_1
);
1833 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1834 "radiobutton_peak_1",
1835 eval
->radiobutton_peak_1
,
1836 (GtkDestroyNotify
) gtk_widget_unref
);
1837 gtk_widget_show(eval
->radiobutton_peak_1
);
1838 gtk_box_pack_start(GTK_BOX(eval
->vbox11
),
1839 eval
->radiobutton_peak_1
,
1844 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_1
),
1847 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_1
),
1850 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_1
),
1853 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_peak_1
),
1855 GTK_SIGNAL_FUNC(on_toggle_piv
),
1860 eval
->radiobutton_peak_2
=
1861 gtk_radio_button_new_with_label(eval
->vbox11_group
,
1863 eval
->vbox11_group
=
1864 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_peak_2
));
1865 gtk_widget_ref(eval
->radiobutton_peak_2
);
1866 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1867 "radiobutton_peak_2",
1868 eval
->radiobutton_peak_2
,
1869 (GtkDestroyNotify
) gtk_widget_unref
);
1870 gtk_widget_show(eval
->radiobutton_peak_2
);
1871 gtk_box_pack_start(GTK_BOX(eval
->vbox11
),
1872 eval
->radiobutton_peak_2
,
1877 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_2
),
1880 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_2
),
1883 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_2
),
1886 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_peak_2
),
1888 GTK_SIGNAL_FUNC(on_toggle_piv
),
1893 eval
->radiobutton_peak_3
=
1894 gtk_radio_button_new_with_label(eval
->vbox11_group
,
1896 eval
->vbox11_group
=
1897 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_peak_3
));
1898 gtk_widget_ref(eval
->radiobutton_peak_3
);
1899 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1900 "radiobutton_peak_3",
1901 eval
->radiobutton_peak_3
,
1902 (GtkDestroyNotify
) gtk_widget_unref
);
1903 gtk_widget_show(eval
->radiobutton_peak_3
);
1904 gtk_box_pack_start(GTK_BOX(eval
->vbox11
),
1905 eval
->radiobutton_peak_3
,
1910 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_3
),
1913 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_3
),
1916 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_peak_3
),
1919 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_peak_3
),
1921 GTK_SIGNAL_FUNC(on_toggle_piv
),
1926 * additonal calculation schemes for correlation detection
1929 eval
->frame_7
= gtk_frame_new(_("Interrogation with:"));
1930 gtk_widget_ref(eval
->frame_7
);
1931 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1934 (GtkDestroyNotify
) gtk_widget_unref
);
1935 gtk_widget_show(eval
->frame_7
);
1936 gtk_table_attach(GTK_TABLE(eval
->table
),
1942 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
1943 (GtkAttachOptions
) (GTK_FILL
),
1948 eval
->vbox12
= gtk_vbox_new(FALSE
,
1950 gtk_widget_ref(eval
->vbox12
);
1951 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1954 (GtkDestroyNotify
) gtk_widget_unref
);
1955 gtk_widget_show(eval
->vbox12
);
1956 gtk_container_add(GTK_CONTAINER(eval
->frame_7
),
1960 eval
->checkbutton_weightkernel
=
1961 gtk_check_button_new_with_label(_("Weight Kernel"));
1962 gtk_widget_ref(eval
->checkbutton_weightkernel
);
1963 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1964 "checkbutton_weightkernel",
1965 eval
->checkbutton_weightkernel
,
1966 (GtkDestroyNotify
) gtk_widget_unref
);
1967 gtk_widget_show(eval
->checkbutton_weightkernel
);
1968 gtk_box_pack_start(GTK_BOX(eval
->vbox12
),
1969 eval
->checkbutton_weightkernel
,
1974 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_weightkernel
),
1977 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_weightkernel
),
1980 gtk_signal_connect(GTK_OBJECT(eval
->checkbutton_weightkernel
),
1982 GTK_SIGNAL_FUNC(on_toggle_piv
),
1987 eval
->checkbutton_zerooff
=
1988 gtk_check_button_new_with_label(_("Zero off-set"));
1989 gtk_widget_ref(eval
->checkbutton_zerooff
);
1990 gtk_object_set_data_full(GTK_OBJECT(main_window
),
1991 "checkbutton_zerooff",
1992 eval
->checkbutton_zerooff
,
1993 (GtkDestroyNotify
) gtk_widget_unref
);
1994 gtk_widget_show(eval
->checkbutton_zerooff
);
1995 gtk_box_pack_start(GTK_BOX(eval
->vbox12
),
1996 eval
->checkbutton_zerooff
,
2001 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_zerooff
),
2004 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_zerooff
),
2007 gtk_signal_connect(GTK_OBJECT(eval
->checkbutton_zerooff
),
2009 GTK_SIGNAL_FUNC(on_toggle_piv
),
2014 eval
->checkbutton_centraldiff
=
2015 gtk_check_button_new_with_label(_("Central diff."));
2016 gtk_widget_ref(eval
->checkbutton_centraldiff
);
2017 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2018 "checkbutton_centraldiff",
2019 eval
->checkbutton_centraldiff
,
2020 (GtkDestroyNotify
) gtk_widget_unref
);
2021 gtk_widget_show(eval
->checkbutton_centraldiff
);
2022 gtk_box_pack_start(GTK_BOX(eval
->vbox12
),
2023 eval
->checkbutton_centraldiff
,
2028 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_centraldiff
),
2031 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_centraldiff
),
2034 gtk_signal_connect(GTK_OBJECT(eval
->checkbutton_centraldiff
),
2036 GTK_SIGNAL_FUNC(on_toggle_piv
),
2041 * radio buttons for cross-or auto correlation
2042 * defined in header, not user definable
2045 eval
->frame_8
= gtk_frame_new(_("Correlation"));
2046 gtk_widget_ref(eval
->frame_8
);
2047 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2050 (GtkDestroyNotify
) gtk_widget_unref
);
2051 gtk_widget_show(eval
->frame_8
);
2052 gtk_table_attach(GTK_TABLE(eval
->table
),
2058 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2059 (GtkAttachOptions
) (GTK_FILL
),
2063 eval
->vbox13
= gtk_vbox_new(FALSE
,
2065 gtk_widget_ref(eval
->vbox13
);
2066 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2069 (GtkDestroyNotify
) gtk_widget_unref
);
2070 gtk_widget_show(eval
->vbox13
);
2071 gtk_container_add(GTK_CONTAINER(eval
->frame_8
),
2076 eval
->radiobutton_cross_1
=
2077 gtk_radio_button_new_with_label(eval
->vbox13_group
,
2079 eval
->vbox13_group
=
2080 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_cross_1
));
2081 gtk_widget_ref(eval
->radiobutton_cross_1
);
2082 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2083 "radiobutton_cross_1",
2084 eval
->radiobutton_cross_1
,
2085 (GtkDestroyNotify
) gtk_widget_unref
);
2086 gtk_widget_show(eval
->radiobutton_cross_1
);
2087 gtk_box_pack_start(GTK_BOX(eval
->vbox13
),
2088 eval
->radiobutton_cross_1
,
2093 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_cross_1
),
2096 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_cross_1
),
2099 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_cross_1
),
2102 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_cross_1
),
2104 GTK_SIGNAL_FUNC(on_toggle_piv
),
2109 eval
->radiobutton_cross_2
=
2110 gtk_radio_button_new_with_label(eval
->vbox13_group
,
2112 eval
->vbox13_group
=
2113 gtk_radio_button_group(GTK_RADIO_BUTTON(eval
->radiobutton_cross_2
));
2114 gtk_widget_ref(eval
->radiobutton_cross_2
);
2115 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2116 "radiobutton_cross_2",
2117 eval
->radiobutton_cross_2
,
2118 (GtkDestroyNotify
) gtk_widget_unref
);
2119 gtk_widget_show(eval
->radiobutton_cross_2
);
2120 gtk_box_pack_start(GTK_BOX(eval
->vbox13
),
2121 eval
->radiobutton_cross_2
,
2126 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_cross_2
),
2129 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_cross_2
),
2132 gtk_object_set_data(GTK_OBJECT(eval
->radiobutton_cross_2
),
2135 gtk_signal_connect(GTK_OBJECT(eval
->radiobutton_cross_2
),
2137 GTK_SIGNAL_FUNC(on_toggle_piv
),
2143 * Monitoring the process by displaying interrogation area's in correlation
2146 eval
->frame_monitor
=
2147 gtk_frame_new(_("Interrogation areas and correlation"));
2148 gtk_widget_ref(eval
->frame_monitor
);
2149 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2151 eval
->frame_monitor
,
2152 (GtkDestroyNotify
) gtk_widget_unref
);
2153 gtk_widget_show(eval
->frame_monitor
);
2154 gtk_table_attach(GTK_TABLE(eval
->table
),
2155 eval
->frame_monitor
,
2160 (GtkAttachOptions
) (GTK_FILL
),
2161 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2166 eval
->table_monitor
= gtk_table_new(2,
2169 gtk_widget_ref(eval
->table_monitor
);
2170 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2172 eval
->table_monitor
,
2173 (GtkDestroyNotify
) gtk_widget_unref
);
2174 gtk_widget_show(eval
->table_monitor
);
2175 gtk_container_add(GTK_CONTAINER(eval
->frame_monitor
),
2176 eval
->table_monitor
);
2180 * gnome canvas interrogation area1
2182 eval
->frame_monitor_int1
= gtk_frame_new(_("Int. area 1"));
2183 gtk_widget_ref(eval
->frame_monitor_int1
);
2184 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2185 "frame_monitor_int1",
2186 eval
->frame_monitor_int1
,
2187 (GtkDestroyNotify
) gtk_widget_unref
);
2188 gtk_widget_show(eval
->frame_monitor_int1
);
2189 gtk_table_attach(GTK_TABLE(eval
->table_monitor
),
2190 eval
->frame_monitor_int1
,
2195 (GtkAttachOptions
) (GTK_FILL
),
2196 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2199 gtk_widget_set_usize(GTK_WIDGET(eval
->frame_monitor_int1
),
2201 MAX_INTERR_SIZE
+ 25);
2205 gtk_widget_push_visual (gdk_imlib_get_visual ());
2206 gtk_widget_push_colormap (gdk_imlib_get_colormap ());
2207 eval
->canvas_monitor_int1
= gnome_canvas_new ();
2209 gtk_widget_pop_colormap ();
2210 gtk_widget_pop_visual ();
2211 gtk_widget_ref (eval
->canvas_monitor_int1
);
2212 gtk_object_set_data_full (GTK_OBJECT (main_window
),
2213 "canvas_monitor_int1",
2214 eval
->canvas_monitor_int1
,
2215 (GtkDestroyNotify
) gtk_widget_unref
);
2216 gtk_widget_show (eval
->canvas_monitor_int1
);
2217 gtk_container_add (GTK_CONTAINER (eval
->frame_monitor_int1
),
2218 eval
->canvas_monitor_int1
);
2223 * gnome canvas interrogation area2
2225 eval
->frame_monitor_int2
= gtk_frame_new(_("Int. area 2"));
2226 gtk_widget_ref(eval
->frame_monitor_int2
);
2227 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2228 "frame_monitor_int2",
2229 eval
->frame_monitor_int2
,
2230 (GtkDestroyNotify
) gtk_widget_unref
);
2231 gtk_widget_show(eval
->frame_monitor_int2
);
2232 gtk_table_attach(GTK_TABLE(eval
->table_monitor
),
2233 eval
->frame_monitor_int2
,
2238 (GtkAttachOptions
) (GTK_FILL
),
2239 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2242 gtk_widget_set_usize(GTK_WIDGET(eval
->frame_monitor_int2
),
2244 MAX_INTERR_SIZE
+ 25);
2249 /* gtk_widget_push_visual (gdk_rgb_get_visual ()); */
2250 /* gtk_widget_push_colormap (gdk_rgb_get_cmap ()); */
2251 /* eval->canvas_monitor_int2 = gnome_canvas_new_aa (); */
2253 gtk_widget_push_visual (gdk_imlib_get_visual ());
2254 gtk_widget_push_colormap (gdk_imlib_get_colormap ());
2255 eval
->canvas_monitor_int2
= gnome_canvas_new ();
2257 gtk_widget_pop_colormap ();
2258 gtk_widget_pop_visual ();
2259 gtk_widget_ref (eval
->canvas_monitor_int2
);
2260 gtk_object_set_data_full (GTK_OBJECT (main_window
),
2261 "canvas_monitor_int2",
2262 eval
->canvas_monitor_int2
,
2263 (GtkDestroyNotify
) gtk_widget_unref
);
2264 gtk_widget_show (eval
->canvas_monitor_int2
);
2265 gtk_container_add (GTK_CONTAINER (eval
->frame_monitor_int2
),
2266 eval
->canvas_monitor_int2
);
2270 * Gnome canvas display corr function
2272 eval
->frame_monitor_cov
= gtk_frame_new(_("Correlation"));
2273 gtk_widget_ref(eval
->frame_monitor_cov
);
2274 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2275 "frame_monitor_cov",
2276 eval
->frame_monitor_cov
,
2277 (GtkDestroyNotify
) gtk_widget_unref
);
2278 gtk_widget_show(eval
->frame_monitor_cov
);
2279 gtk_table_attach(GTK_TABLE(eval
->table_monitor
),
2280 eval
->frame_monitor_cov
,
2285 (GtkAttachOptions
) (GTK_FILL
),
2286 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2289 gtk_widget_set_usize(GTK_WIDGET(eval
->frame_monitor_cov
),
2291 MAX_INTERR_SIZE
+ 25);
2295 gtk_widget_push_visual (gdk_imlib_get_visual ());
2296 gtk_widget_push_colormap (gdk_imlib_get_colormap ());
2298 eval
->canvas_monitor_cov
= gnome_canvas_new ();
2299 gtk_widget_pop_colormap ();
2300 gtk_widget_pop_visual ();
2301 gtk_widget_ref (eval
->canvas_monitor_cov
);
2302 gtk_object_set_data_full (GTK_OBJECT (main_window
),
2303 "canvas_monitor_cov",
2304 eval
->canvas_monitor_cov
,
2305 (GtkDestroyNotify
) gtk_widget_unref
);
2306 gtk_widget_show (eval
->canvas_monitor_cov
);
2307 gtk_container_add (GTK_CONTAINER (eval
->frame_monitor_cov
),
2308 eval
->canvas_monitor_cov
);
2312 * gnome canvas display values
2314 eval
->frame_monitor_vec
= gtk_frame_new(_("Estimator"));
2315 gtk_widget_ref(eval
->frame_monitor_vec
);
2316 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2317 "frame_monitor_vec",
2318 eval
->frame_monitor_vec
,
2319 (GtkDestroyNotify
) gtk_widget_unref
);
2320 gtk_widget_show(eval
->frame_monitor_vec
);
2321 gtk_table_attach(GTK_TABLE(eval
->table_monitor
),
2322 eval
->frame_monitor_vec
,
2327 (GtkAttachOptions
) (GTK_FILL
),
2328 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2331 gtk_widget_set_usize(GTK_WIDGET(eval
->frame_monitor_vec
),
2333 MAX_INTERR_SIZE
+ 25);
2335 /* gtk_widget_push_visual (gdk_rgb_get_visual ()); */
2336 /* gtk_widget_push_colormap (gdk_rgb_get_cmap ()); */
2337 /* eval->canvas_monitor_vec = gnome_canvas_new_aa (); */
2339 gtk_widget_push_visual(gdk_imlib_get_visual());
2340 gtk_widget_push_colormap(gdk_imlib_get_colormap());
2341 eval
->canvas_monitor_vec
= gnome_canvas_new();
2343 gtk_widget_pop_colormap();
2344 gtk_widget_pop_visual();
2345 gtk_widget_ref(eval
->canvas_monitor_vec
);
2346 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2347 "canvas_monitor_vec",
2348 eval
->canvas_monitor_vec
,
2349 (GtkDestroyNotify
) gtk_widget_unref
);
2350 gtk_widget_show(eval
->canvas_monitor_vec
);
2351 gtk_container_add(GTK_CONTAINER(eval
->frame_monitor_vec
),
2352 eval
->canvas_monitor_vec
);
2356 * Define button to switched on/off
2358 eval
->hbox_monitor
= gtk_hbox_new(FALSE
, 0);
2359 gtk_widget_ref(eval
->hbox_monitor
);
2360 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2363 (GtkDestroyNotify
) gtk_widget_unref
);
2364 gtk_widget_show(eval
->hbox_monitor
);
2365 gtk_table_attach(GTK_TABLE(eval
->table_monitor
),
2371 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
2372 (GtkAttachOptions
) (GTK_FILL
),
2376 eval
->checkbutton_monitor
=
2377 gtk_check_button_new_with_label(_("Monitor"));
2378 gtk_widget_ref(eval
->checkbutton_monitor
);
2379 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2380 "checkbutton_monitor",
2381 eval
->checkbutton_monitor
,
2382 (GtkDestroyNotify
) gtk_widget_unref
);
2383 gtk_widget_show(eval
->checkbutton_monitor
);
2384 gtk_box_pack_start(GTK_BOX(eval
->hbox_monitor
),
2385 eval
->checkbutton_monitor
,
2390 gtk_object_set_data(GTK_OBJECT(eval
->checkbutton_monitor
),
2393 gtk_signal_connect(GTK_OBJECT(eval
->checkbutton_monitor
),
2395 GTK_SIGNAL_FUNC(on_checkbutton_piv_monitor_enter
),
2397 gtk_signal_connect(GTK_OBJECT(eval
->checkbutton_monitor
),
2399 GTK_SIGNAL_FUNC(on_widget_leave
),
2401 gtk_signal_connect(GTK_OBJECT(eval
->checkbutton_monitor
),
2403 GTK_SIGNAL_FUNC(on_checkbutton_piv_monitor
),
2411 eval
->label_monitor_zoom
= gtk_label_new(_("Zoom:"));
2412 gtk_widget_ref(eval
->label_monitor_zoom
);
2413 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2414 "eval_label_monitor_zoom",
2415 eval
->label_monitor_zoom
,
2416 (GtkDestroyNotify
) gtk_widget_unref
);
2417 gtk_widget_show(eval
->label_monitor_zoom
);
2418 gtk_box_pack_start(GTK_BOX(eval
->hbox_monitor
),
2419 eval
->label_monitor_zoom
,
2426 eval
->spinbutton_adj_monitor_zoom
=
2427 gtk_adjustment_new(gpiv_var
.piv_disproc_zoom
,
2436 eval
->spinbutton_monitor_zoom
=
2437 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_monitor_zoom
),
2440 gtk_widget_ref(eval
->spinbutton_monitor_zoom
);
2441 gtk_widget_show(eval
->spinbutton_monitor_zoom
);
2442 gtk_box_pack_start(GTK_BOX(eval
->hbox_monitor
),
2443 eval
->spinbutton_monitor_zoom
,
2447 gtk_entry_set_editable(GTK_ENTRY(eval
->spinbutton_monitor_zoom
),
2449 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(eval
->spinbutton_monitor_zoom
),
2452 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_monitor_zoom
),
2455 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_monitor_zoom
),
2457 on_spinbutton_piv_monitor_zoom
,
2458 eval
->spinbutton_monitor_zoom
);
2463 * spinner for vector length
2465 eval
->label_monitor_vectorscale
= gtk_label_new(_("Vector scale:"));
2466 gtk_widget_ref(eval
->label_monitor_vectorscale
);
2467 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2468 "eval_label_monitor_vectorscale",
2469 eval
->label_monitor_vectorscale
,
2470 (GtkDestroyNotify
) gtk_widget_unref
);
2471 gtk_widget_show(eval
->label_monitor_vectorscale
);
2472 gtk_box_pack_start(GTK_BOX(eval
->hbox_monitor
),
2473 eval
->label_monitor_vectorscale
,
2480 eval
->spinbutton_adj_monitor_vectorscale
=
2481 gtk_adjustment_new(gpiv_var
.piv_disproc_vlength
,
2490 eval
->spinbutton_monitor_vectorscale
=
2491 gtk_spin_button_new(GTK_ADJUSTMENT(eval
->spinbutton_adj_monitor_vectorscale
),
2494 gtk_widget_ref(eval
->spinbutton_monitor_vectorscale
);
2495 gtk_widget_show(eval
->spinbutton_monitor_vectorscale
);
2496 gtk_box_pack_start(GTK_BOX(eval
->hbox_monitor
),
2497 eval
->spinbutton_monitor_vectorscale
,
2501 gtk_entry_set_editable(GTK_ENTRY(eval
->spinbutton_monitor_vectorscale
),
2503 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(eval
->spinbutton_monitor_vectorscale
),
2506 gtk_object_set_data(GTK_OBJECT(eval
->spinbutton_monitor_vectorscale
),
2509 gtk_signal_connect(GTK_OBJECT(eval
->spinbutton_monitor_vectorscale
),
2511 on_spinbutton_piv_monitor_vectorscale
,
2512 eval
->spinbutton_monitor_vectorscale
);
2517 * PIV activating button
2519 eval
->button
= gtk_button_new_with_label(_("piv"));
2520 gtk_widget_ref(eval
->button
);
2521 gtk_object_set_data_full(GTK_OBJECT(main_window
),
2524 (GtkDestroyNotify
) gtk_widget_unref
);
2525 gtk_widget_show(eval
->button
);
2526 gtk_table_attach(GTK_TABLE(eval
->table
),
2532 (GtkAttachOptions
) (GTK_FILL
),
2533 (GtkAttachOptions
) (GTK_FILL
),
2536 gtk_tooltips_set_tip(eval
->tooltips
,
2538 _("analyses a PIV image (pair) resulting into mean displacements of the particle images within the interrogation areas"),
2541 gtk_object_set_data(GTK_OBJECT(eval
->button
),
2544 gtk_signal_connect(GTK_OBJECT(eval
->button
),
2546 GTK_SIGNAL_FUNC(on_button_piv_enter
),
2548 gtk_signal_connect(GTK_OBJECT(eval
->button
),
2550 GTK_SIGNAL_FUNC(on_widget_leave
),
2552 gtk_signal_connect(GTK_OBJECT(eval
->button
),
2554 GTK_SIGNAL_FUNC(on_button_piv
),
2559 * Setting initial values
2563 /* if (piv_eval_par.int_size_1 == 8) { */
2564 /* gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON */
2565 /* (eval->radiobutton_intsize1_1),
2570 if (piv_eval_par
.int_size_1
== 16) {
2571 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2572 (eval
->radiobutton_intsize1_2
),
2577 if (piv_eval_par
.int_size_1
== 32) {
2578 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2579 (eval
->radiobutton_intsize1_3
),
2584 if (piv_eval_par
.int_size_1
== 64) {
2585 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2586 (eval
->radiobutton_intsize1_4
),
2591 if (piv_eval_par
.int_size_1
== 128) {
2592 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2593 (eval
->radiobutton_intsize1_5
),
2599 /* if (piv_eval_par.int_size_2 == 8) { */
2600 /* gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON */
2601 /* (eval->radiobutton_intsize2_1),
2606 if (piv_eval_par
.int_size_2
== 16) {
2607 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2608 (eval
->radiobutton_intsize2_2
),
2613 if (piv_eval_par
.int_size_2
== 32) {
2614 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2615 (eval
->radiobutton_intsize2_3
),
2620 if (piv_eval_par
.int_size_2
== 64) {
2621 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2622 (eval
->radiobutton_intsize2_4
),
2627 if (piv_eval_par
.int_size_2
== 128) {
2628 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2629 (eval
->radiobutton_intsize2_5
),
2636 if (piv_eval_par
.int_shift
== 8) {
2637 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2638 (eval
->radiobutton_intshift_1
),
2643 if (piv_eval_par
.int_shift
== 16) {
2644 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2645 (eval
->radiobutton_intshift_2
),
2650 if (piv_eval_par
.int_shift
== 32) {
2651 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2652 (eval
->radiobutton_intshift_3
),
2657 if (piv_eval_par
.int_shift
== 64) {
2658 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2659 (eval
->radiobutton_intshift_4
),
2664 if (piv_eval_par
.int_shift
== 128) {
2665 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2666 (eval
->radiobutton_intshift_5
),
2671 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON
2672 (eval
->radiobutton_mouse_1
),
2676 if (piv_eval_par
.ifit
== 0) {
2677 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2678 (eval
->radiobutton_fit_none
),
2683 if (piv_eval_par
.ifit
== 1) {
2684 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2685 (eval
->radiobutton_fit_gauss
),
2690 if (piv_eval_par
.ifit
== 2) {
2691 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2692 (eval
->radiobutton_fit_power
),
2697 if (piv_eval_par
.ifit
== 3) {
2698 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2699 (eval
->radiobutton_fit_gravity
),
2704 /* if (ifit == -1) { */
2705 /* gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON (eval->radiobutton_fit_marquardt),
2710 if (piv_eval_par
.peak
== 1) {
2711 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2712 (eval
->radiobutton_peak_1
),
2717 if (piv_eval_par
.peak
== 2) {
2718 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2719 (eval
->radiobutton_peak_2
),
2724 if (piv_eval_par
.peak
== 3) {
2725 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2726 (eval
->radiobutton_peak_3
),
2731 if (piv_eval_par
.weight
== 1) {
2732 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2733 (eval
->checkbutton_weightkernel
),
2736 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2737 (eval
->checkbutton_weightkernel
),
2741 if (piv_eval_par
.zero_off
== 1) {
2742 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2743 (eval
->checkbutton_zerooff
),
2746 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2747 (eval
->checkbutton_zerooff
),
2751 if (piv_eval_par
.central_diff
== 1) {
2752 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2753 (eval
->checkbutton_centraldiff
),
2756 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2757 (eval
->checkbutton_centraldiff
),
2762 if (image_par
.x_corr
== 0) {
2763 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2764 (eval
->radiobutton_cross_1
),
2769 if (image_par
.x_corr
== 1) {
2770 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2771 (eval
->radiobutton_cross_2
),
2779 if (gpiv_par
.display_process
== 1) {
2780 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2781 (eval
->checkbutton_monitor
),
2784 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON
2785 (eval
->checkbutton_monitor
),