diff options
| author | Martin Owens <doctormo@gmail.com> | 2014-03-27 01:33:44 +0000 |
|---|---|---|
| committer | Martin Owens <doctormo@gmail.com> | 2014-03-27 01:33:44 +0000 |
| commit | 5a4fb2325f60d292b47330f540b26a3279341c90 (patch) | |
| tree | d2aa7967be25450b83e625025366c618101ae49f /src/display/sp-ctrlline.cpp | |
| parent | The Polar Arrange Tab of the Arrange Dialog now hides the parametric (diff) | |
| parent | Remove Snap menu item and improve grid menu item text (diff) | |
| download | inkscape-5a4fb2325f60d292b47330f540b26a3279341c90.tar.gz inkscape-5a4fb2325f60d292b47330f540b26a3279341c90.zip | |
Commit a merge to trunk, with probabal errors
(bzr r11073.1.36)
Diffstat (limited to 'src/display/sp-ctrlline.cpp')
| -rw-r--r-- | src/display/sp-ctrlline.cpp | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/src/display/sp-ctrlline.cpp b/src/display/sp-ctrlline.cpp index 11d0b34f8..aef284c1a 100644 --- a/src/display/sp-ctrlline.cpp +++ b/src/display/sp-ctrlline.cpp @@ -32,7 +32,7 @@ namespace { void sp_ctrlline_class_init(SPCtrlLineClass *klass, gpointer data); void sp_ctrlline_init(SPCtrlLine *ctrlline, gpointer g_class); -void sp_ctrlline_destroy(GtkObject *object); +void sp_ctrlline_destroy(SPCanvasItem *object); void sp_ctrlline_update(SPCanvasItem *item, Geom::Affine const &affine, unsigned int flags); void sp_ctrlline_render(SPCanvasItem *item, SPCanvasBuf *buf); @@ -79,7 +79,7 @@ void sp_ctrlline_init(SPCtrlLine *ctrlline, gpointer /*g_class*/) ctrlline->item=NULL; } -void sp_ctrlline_destroy(GtkObject *object) +void sp_ctrlline_destroy(SPCanvasItem *object) { g_return_if_fail(object != NULL); g_return_if_fail(SP_IS_CTRLLINE(object)); @@ -88,8 +88,8 @@ void sp_ctrlline_destroy(GtkObject *object) ctrlline->item = NULL; - if (GTK_OBJECT_CLASS (parent_class)->destroy) { - (* GTK_OBJECT_CLASS (parent_class)->destroy)(object); + if(SP_CANVAS_ITEM_CLASS (parent_class)->destroy) { + (* SP_CANVAS_ITEM_CLASS (parent_class)->destroy)(object); } } @@ -105,15 +105,25 @@ void sp_ctrlline_render(SPCanvasItem *item, SPCanvasBuf *buf) return; } + Geom::Point s = cl->s * cl->affine; + Geom::Point e = cl->e * cl->affine; + + ink_cairo_set_source_rgba32(buf->ct, 0xffffffbf); + cairo_set_line_width(buf->ct, 2); + cairo_new_path(buf->ct); + + cairo_move_to(buf->ct, s[Geom::X] - buf->rect.left(), s[Geom::Y] - buf->rect.top()); + cairo_line_to(buf->ct, e[Geom::X] - buf->rect.left(), e[Geom::Y] - buf->rect.top()); + + cairo_stroke(buf->ct); + + ink_cairo_set_source_rgba32(buf->ct, cl->rgba); cairo_set_line_width(buf->ct, 1); cairo_new_path(buf->ct); - Geom::Point s = cl->s * cl->affine; - Geom::Point e = cl->e * cl->affine; - - cairo_move_to (buf->ct, s[Geom::X] - buf->rect.left(), s[Geom::Y] - buf->rect.top()); - cairo_line_to (buf->ct, e[Geom::X] - buf->rect.left(), e[Geom::Y] - buf->rect.top()); + cairo_move_to(buf->ct, s[Geom::X] - buf->rect.left(), s[Geom::Y] - buf->rect.top()); + cairo_line_to(buf->ct, e[Geom::X] - buf->rect.left(), e[Geom::Y] - buf->rect.top()); cairo_stroke(buf->ct); } |
