aboutsummaryrefslogtreecommitdiff
path: root/src/imagedisplay.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/imagedisplay.c')
-rw-r--r--src/imagedisplay.c24
1 files changed, 19 insertions, 5 deletions
diff --git a/src/imagedisplay.c b/src/imagedisplay.c
index c70d8a8..3877da8 100644
--- a/src/imagedisplay.c
+++ b/src/imagedisplay.c
@@ -207,16 +207,30 @@ static gboolean imagedisplay_redraw(GtkWidget *drawingarea, GdkEventExpose *even
GdkGC *gc;
- if ( cur->type == IMAGEDISPLAY_MARK_CIRCLE_2 ) {
- gc = imagedisplay->gc_marks_2;
- } else {
- gc = imagedisplay->gc_marks_1;
+ switch ( cur->type ) {
+ case IMAGEDISPLAY_MARK_CIRCLE_1 : gc = imagedisplay->gc_marks_1; break;
+ case IMAGEDISPLAY_MARK_CIRCLE_2 : gc = imagedisplay->gc_marks_2; break;
+ case IMAGEDISPLAY_MARK_LINE_1 : gc = imagedisplay->gc_marks_1; break;
+ default : gc = imagedisplay->gc_marks_1; break;
}
- gdk_draw_arc(drawingarea->window, gc, FALSE,
+ if ( (cur->type == IMAGEDISPLAY_MARK_CIRCLE_1) || (cur->type == IMAGEDISPLAY_MARK_CIRCLE_2) ) {
+
+ gdk_draw_arc(drawingarea->window, gc, FALSE,
xoffs + cur->x*scale - 5,
yoffs + imagedisplay->view_height-1-cur->y*scale - 5,
11, 11, 0, 64*360);
+
+ } else if ( (cur->type == IMAGEDISPLAY_MARK_LINE_1) || (cur->type == IMAGEDISPLAY_MARK_LINE_2) ) {
+
+ gdk_draw_line(drawingarea->window, gc,
+ xoffs + cur->x*scale,
+ yoffs + imagedisplay->view_height-1-cur->y*scale,
+ xoffs + cur->x2*scale,
+ yoffs + imagedisplay->view_height-1-cur->y2*scale );
+
+ }
+
cur = cur->next;
}