diff options
author | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-12-07 13:08:51 +0000 |
---|---|---|
committer | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-12-07 13:08:51 +0000 |
commit | acdeee2c5432855cb959c2c2f21d141cd9f4dfb7 (patch) | |
tree | b84395684ade660eeaab6d1185069921cb91287c /src/displaywindow.c | |
parent | a1f8c90bda4c5acd00a5d8b828da3d8b2e5995d8 (diff) |
Fix things
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@227 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src/displaywindow.c')
-rw-r--r-- | src/displaywindow.c | 47 |
1 files changed, 26 insertions, 21 deletions
diff --git a/src/displaywindow.c b/src/displaywindow.c index 215d5e2..7223d94 100644 --- a/src/displaywindow.c +++ b/src/displaywindow.c @@ -76,7 +76,7 @@ static gint displaywindow_changeview(GtkWidget *widget, GtkRadioAction *action, static gint displaywindow_changemode(GtkWidget *widget, GtkRadioAction *action, DisplayWindow *dw) { - dw->mode = gtk_radio_action_get_current_value(action); + dw->mode = gtk_radio_action_get_current_value(action); displaywindow_update(dw); return 0; @@ -773,25 +773,6 @@ static gint displaywindow_gl_expose(GtkWidget *widget, GdkEventExpose *event, Di glPopClientAttrib(); } - /* Draw indexing lines */ - if ( dw->lines && dw->gl_line_num_vertices ) { - glPushClientAttrib(GL_CLIENT_VERTEX_ARRAY_BIT); - glEnableClientState(GL_VERTEX_ARRAY); - glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, grey); - glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, black); - glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, black); - if ( dw->gl_use_buffers ) { - glBindBufferARB(GL_ARRAY_BUFFER, dw->gl_line_vertex_buffer); - glVertexPointer(3, GL_FLOAT, 0, NULL); - glDrawArrays(GL_LINES, 0, dw->gl_line_num_vertices); - glBindBufferARB(GL_ARRAY_BUFFER, 0); - } else { - glVertexPointer(3, GL_FLOAT, 0, dw->gl_line_vertex_array); - glDrawArrays(GL_LINES, 0, dw->gl_line_num_vertices); - } - glPopClientAttrib(); - } - } else { /* Draw generated reflections */ @@ -821,6 +802,25 @@ static gint displaywindow_gl_expose(GtkWidget *widget, GdkEventExpose *event, Di } + /* Draw indexing lines */ + if ( dw->lines && dw->gl_line_num_vertices ) { + glPushClientAttrib(GL_CLIENT_VERTEX_ARRAY_BIT); + glEnableClientState(GL_VERTEX_ARRAY); + glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, grey); + glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, black); + glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, black); + if ( dw->gl_use_buffers ) { + glBindBufferARB(GL_ARRAY_BUFFER, dw->gl_line_vertex_buffer); + glVertexPointer(3, GL_FLOAT, 0, NULL); + glDrawArrays(GL_LINES, 0, dw->gl_line_num_vertices); + glBindBufferARB(GL_ARRAY_BUFFER, 0); + } else { + glVertexPointer(3, GL_FLOAT, 0, dw->gl_line_vertex_array); + glDrawArrays(GL_LINES, 0, dw->gl_line_num_vertices); + } + glPopClientAttrib(); + } + /* Draw everything else */ glCallList(dw->gl_list_id); @@ -1151,9 +1151,14 @@ static gint displaywindow_refinestack(GtkWidget *widget, DisplayWindow *dw) { static gint displaywindow_extract(GtkWidget *widget, DisplayWindow *dw) { GtkWidget *d; + GtkAction *action; intensities_extract(dw->ctx); - dw->mode = DW_MEASURED; + + action = gtk_action_group_get_action(dw->action_group, "MappedAction"); + #ifdef HAVE_GTK_TEN + gtk_radio_action_set_current_value(GTK_RADIO_ACTION(action), DW_MEASURED); + #endif /* HAVE_GTK_TEN */ displaywindow_update(dw); d = gtk_ui_manager_get_widget(dw->ui, "/ui/displaywindow/file/savehkl"); |