summaryrefslogtreecommitdiffstats
Unidiff
-rw-r--r--src/Makefile.am55
-rw-r--r--src/controller/README_controller.txt18
-rw-r--r--src/controller/actions/clear_selection.h (renamed from src/controller/clear_selection.h)0
-rw-r--r--src/controller/actions/clear_selection.sqc (renamed from src/controller/clear_selection.sqc)4
-rw-r--r--src/controller/actions/pan.c8
-rw-r--r--src/controller/actions/pan.h9
-rw-r--r--src/controller/actions/process_hits.c (renamed from src/controller/exp004processhits.c)12
-rw-r--r--src/controller/actions/process_hits.h8
-rw-r--r--src/controller/actions/sel_save.c141
-rw-r--r--src/controller/actions/sel_save.h9
-rw-r--r--src/controller/actions/sel_save.sqc (renamed from src/controller/selsave.sqc)8
-rw-r--r--src/controller/actions/selection_from_db.h (renamed from src/controller/selection_from_db.h)0
-rw-r--r--src/controller/actions/selection_from_db.sqc (renamed from src/controller/selection_from_db.sqc)8
-rw-r--r--src/controller/actions/set_ortho.h (renamed from src/controller/set_ortho.h)0
-rw-r--r--src/controller/actions/vis_sel_set.h (renamed from src/controller/vis_sel_set.h)0
-rw-r--r--src/controller/actions/zoom.c (renamed from src/controller/performzoom.c)12
-rw-r--r--src/controller/actions/zoom.h9
-rw-r--r--src/controller/callbacks/display.c (renamed from src/controller/exp004display.c)8
-rw-r--r--src/controller/callbacks/display.h9
-rw-r--r--src/controller/callbacks/keyboard.c (renamed from src/controller/keyboard.c)10
-rw-r--r--src/controller/callbacks/keyboard.h (renamed from src/controller/keyboard.h)0
-rw-r--r--src/controller/callbacks/mouse.c (renamed from src/controller/exp004mouse.c)36
-rw-r--r--src/controller/callbacks/mouse.h9
-rw-r--r--src/controller/callbacks/mouse_wheel.c (renamed from src/controller/mousewheel.c)22
-rw-r--r--src/controller/callbacks/mouse_wheel.h (renamed from src/controller/mousewheel.h)8
-rw-r--r--src/controller/callbacks/reshape.c (renamed from src/controller/exp004reshape.c)10
-rw-r--r--src/controller/callbacks/reshape.h6
-rw-r--r--src/controller/exp004display.h6
-rw-r--r--src/controller/exp004mouse.h6
-rw-r--r--src/controller/exp004processhits.h8
-rw-r--r--src/controller/exp004reshape.h6
-rw-r--r--src/controller/performzoom.h9
-rw-r--r--src/controller/selsave.h9
-rw-r--r--src/controller/set_ortho.c21
-rw-r--r--src/model/geometry/density_legend_geometry.c4
-rw-r--r--src/view/exp004view.c20
36 files changed, 332 insertions, 176 deletions
diff --git a/src/controller/actions/process_hits.c b/src/controller/actions/process_hits.c
new file mode 100644
index 0000000..4a76d1c
--- a/dev/null
+++ b/src/controller/actions/process_hits.c
@@ -0,0 +1,45 @@
1#define GL_GLEXT_PROTOTYPES
2#include "../../view/exp004state0.h"
3#include "../../model/geometry/map_geometry.h"
4#include "process_hits.h"
5#include "sel_save.h"
6
7/*
8 * A simple alias to make the code more readable.
9 */
10#define S exp004state0
11
12/*
13 * The implementation of this function is based on
14 * [Angel,2008,pp80-81].
15 */
16void
17process_hits (const GLint hits, const GLuint * hitlist)
18{
19 for (unsigned int i = 0; i < hits; i++)
20 {
21 hitlist += 3;
22
23 /*
24 * Add the hits to the selection.
25 */
26 S.selection.set[*hitlist] = true;
27
28 hitlist++;
29 }
30
31 sel_save ();
32
33 glBindBuffer (GL_ARRAY_BUFFER, S.buffers[BASE_COLORS]);
34 glColorPointer (4, GL_FLOAT, 0, 0);
35 glBufferData (GL_ARRAY_BUFFER,
36 sizeof (S.base_colors_data), S.base_colors_data,
37 GL_STATIC_DRAW);
38
39 /*
40 * Rebuild the display list for the map.
41 */
42 map_geometry ();
43
44 return;
45}

Valid XHTML 1.0 Strict

Copyright © 2009 Don Pellegrino All Rights Reserved.