aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortaw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1>2007-10-03 16:47:37 +0000
committertaw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1>2007-10-03 16:47:37 +0000
commit4712ae776093d645e85e2280153976191227c4f3 (patch)
tree0139e7caf79c7f9d49356a055c7625f041c6b97e /src
parent36c105cc55ad40fab27d69b7cb31f243aa3ee35c (diff)
Progress towards indexing lines
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@149 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src')
-rw-r--r--src/displaywindow.c28
-rw-r--r--src/displaywindow.h2
2 files changed, 21 insertions, 9 deletions
diff --git a/src/displaywindow.c b/src/displaywindow.c
index 8f883b7..92e3b0a 100644
--- a/src/displaywindow.c
+++ b/src/displaywindow.c
@@ -90,14 +90,6 @@ static gint displaywindow_changeview(GtkWidget *widget, GtkRadioAction *action,
}
-static gint displaywindow_changecube(GtkWidget *widget, DisplayWindow *dw) {
-
- dw->cube = gtk_toggle_action_get_active(GTK_TOGGLE_ACTION(widget));
- displaywindow_update(dw);
-
- return 0;
-}
-
static gboolean displaywindow_gl_button_press(GtkWidget *widget, GdkEventButton *event, DisplayWindow *dw) {
dw->x_start = event->x;
dw->y_start = event->y;
@@ -824,6 +816,22 @@ static void displaywindow_addui_callback(GtkUIManager *ui, GtkWidget *widget, Gt
}
+static gint displaywindow_changecube(GtkWidget *widget, DisplayWindow *dw) {
+
+ dw->cube = gtk_toggle_action_get_active(GTK_TOGGLE_ACTION(widget));
+ displaywindow_update(dw);
+
+ return 0;
+}
+
+static gint displaywindow_changelines(GtkWidget *widget, DisplayWindow *dw) {
+
+ dw->lines = gtk_toggle_action_get_active(GTK_TOGGLE_ACTION(widget));
+ displaywindow_update(dw);
+
+ return 0;
+}
+
static void displaywindow_addmenubar(DisplayWindow *dw) {
GtkActionEntry entries[] = {
@@ -849,7 +857,8 @@ static void displaywindow_addmenubar(DisplayWindow *dw) {
};
guint n_radios = G_N_ELEMENTS(radios);
GtkToggleActionEntry toggles[] = {
- { "CubeAction", NULL, "100 nm^-1 _cube", "<Ctrl>C", NULL, G_CALLBACK(displaywindow_changecube), TRUE },
+ { "CubeAction", NULL, "Show 100 nm^-1 _Cube", "<Ctrl>C", NULL, G_CALLBACK(displaywindow_changecube), dw->cube },
+ { "LinesAction", NULL, "Show Indexing Lines", "<Ctrl>L", NULL, G_CALLBACK(displaywindow_changelines), dw->lines },
};
guint n_toggles = G_N_ELEMENTS(toggles);
@@ -898,6 +907,7 @@ DisplayWindow *displaywindow_open(ControlContext *ctx) {
dw->view_quat[3] = 1.0;
dw->ctx = ctx;
dw->cube = TRUE;
+ dw->lines = FALSE;
dw->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(dw->window), title);
diff --git a/src/displaywindow.h b/src/displaywindow.h
index 98ec148..f53e19f 100644
--- a/src/displaywindow.h
+++ b/src/displaywindow.h
@@ -17,6 +17,7 @@
#define DISPLAYWINDOW_H
#include <gtk/gtk.h>
+#include <GL/gl.h>
#include "control.h"
@@ -44,6 +45,7 @@ typedef struct dw_struct {
int gl_use_buffers; /* 0=use vertex arrays only, otherwise use VBOs */
GLuint gl_ref_vertex_buffer; /* "Measured reflection" stuff */
GLfloat *gl_ref_vertex_array;
+ int lines;
GLuint gl_ref_normal_buffer;
GLfloat *gl_ref_normal_array;
GLsizei gl_ref_num_vertices;