diff options
author | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-10-25 17:42:26 +0000 |
---|---|---|
committer | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-10-25 17:42:26 +0000 |
commit | 43c03565d1ee87135e9fe206bcbf834e16763879 (patch) | |
tree | 7a72155168fe2365960f3d6a0e717c723844a8c2 /src/imagedisplay.c | |
parent | f96d25141ffee4ec8d18dbbcadb734fb16c92d52 (diff) |
Feature partnering algorithm (of sorts)
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@177 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src/imagedisplay.c')
-rw-r--r-- | src/imagedisplay.c | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/src/imagedisplay.c b/src/imagedisplay.c index c2f2fbe..c70d8a8 100644 --- a/src/imagedisplay.c +++ b/src/imagedisplay.c @@ -119,7 +119,7 @@ void imagedisplay_put_data(ImageDisplay *imagedisplay, ImageRecord imagerecord) } -void imagedisplay_clear_circles(ImageDisplay *imagedisplay) { +void imagedisplay_clear_marks(ImageDisplay *imagedisplay) { ImageDisplayMark *cur; @@ -135,7 +135,7 @@ void imagedisplay_clear_circles(ImageDisplay *imagedisplay) { static void imagedisplay_destroyed(GtkWidget *widget, ImageDisplay *imagedisplay) { - imagedisplay_clear_circles(imagedisplay); + imagedisplay_clear_marks(imagedisplay); if ( imagedisplay->flags & IMAGEDISPLAY_QUIT_IF_CLOSED ) { gtk_exit(0); @@ -333,6 +333,28 @@ void imagedisplay_add_mark(ImageDisplay *imagedisplay, double x, double y, Image } +void imagedisplay_add_line(ImageDisplay *imagedisplay, double x1, double y1, double x2, double y2, ImageDisplayMarkType type) { + + ImageDisplayMark *new; + + new = malloc(sizeof(ImageDisplayMark)); + new->x = x1; new->y = y1; + new->x2 = x2; new->y2 = y2; + new->type = type; + new->next = NULL; + + if ( !imagedisplay->marks ) { + imagedisplay->marks = new; + } else { + ImageDisplayMark *cur = imagedisplay->marks; + while ( cur->next ) { + cur = cur->next; + } + cur->next = new; + } + +} + void imagedisplay_force_redraw(ImageDisplay *imagedisplay) { imagedisplay_rescale(imagedisplay, imagedisplay->drawingarea_width, imagedisplay->drawingarea_height); gtk_widget_queue_draw_area(imagedisplay->drawingarea, 0, 0, imagedisplay->drawingarea_width, imagedisplay->drawingarea_height); |