summaryrefslogtreecommitdiffstats
path: root/src/measure-context.cpp
diff options
context:
space:
mode:
authorDiederik van Lierop <mail@diedenrezi.nl>2012-01-01 15:46:12 +0000
committerDiederik van Lierop <mail@diedenrezi.nl>2012-01-01 15:46:12 +0000
commit6a7bd5175bba266e10ff5eac5c630ec3115b2e19 (patch)
treee3982ca0e391ecc060d2f7403e77a936783979a2 /src/measure-context.cpp
parentItem and image properties dialog update: restoring correct behaviour in case ... (diff)
downloadinkscape-6a7bd5175bba266e10ff5eac5c630ec3115b2e19.tar.gz
inkscape-6a7bd5175bba266e10ff5eac5c630ec3115b2e19.zip
1) Fix CanvasText alignment bugs caused by static variables, uninitialized variables, and variable border width
2) Snap tooltips no longer overlap with measure tool tooltips, and now have a background color (similar to the measure tool) (bzr r10816)
Diffstat (limited to 'src/measure-context.cpp')
-rw-r--r--src/measure-context.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/measure-context.cpp b/src/measure-context.cpp
index 8d33608a0..f98ff4de1 100644
--- a/src/measure-context.cpp
+++ b/src/measure-context.cpp
@@ -395,12 +395,13 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv
// TODO cleanup memory, Glib::ustring, etc.:
char* angle_str = static_cast<char*>(malloc(20));
sprintf(angle_str, "%.2f °", angle * 180/M_PI);
- SPCanvasItem *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, end_point + desktop->w2d(Geom::Point(5*fontsize,0)), angle_str);
+ SPCanvasItem *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, end_point + desktop->w2d(Geom::Point(3*fontsize, fontsize)), angle_str);
sp_canvastext_set_fontsize(SP_CANVASTEXT(canvas_tooltip), fontsize);
SP_CANVASTEXT(canvas_tooltip)->rgba = 0xffffffff;
SP_CANVASTEXT(canvas_tooltip)->rgba_background = 0x337f337f;
SP_CANVASTEXT(canvas_tooltip)->outline = false;
SP_CANVASTEXT(canvas_tooltip)->background = true;
+ SP_CANVASTEXT(canvas_tooltip)->anchor_position = TEXT_ANCHOR_LEFT;
measure_tmp_items.push_back(desktop->add_temporary_canvasitem(canvas_tooltip, 0));
free(angle_str);
@@ -411,12 +412,13 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv
char* totallength_str = static_cast<char*>(malloc(20));
sprintf(totallength_str, "%.2f %s", totallengthval, unit.abbr);
- SPCanvasItem *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, end_point + desktop->w2d(Geom::Point(5*fontsize,-2*fontsize)), totallength_str);
+ SPCanvasItem *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, end_point + desktop->w2d(Geom::Point(3*fontsize, -fontsize)), totallength_str);
sp_canvastext_set_fontsize(SP_CANVASTEXT(canvas_tooltip), fontsize);
SP_CANVASTEXT(canvas_tooltip)->rgba = 0xffffffff;
SP_CANVASTEXT(canvas_tooltip)->rgba_background = 0x3333337f;
SP_CANVASTEXT(canvas_tooltip)->outline = false;
SP_CANVASTEXT(canvas_tooltip)->background = true;
+ SP_CANVASTEXT(canvas_tooltip)->anchor_position = TEXT_ANCHOR_LEFT;
measure_tmp_items.push_back(desktop->add_temporary_canvasitem(canvas_tooltip, 0));
free(totallength_str);
@@ -449,6 +451,7 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv
SP_CANVASTEXT(canvas_tooltip)->rgba_background = 0x33337f7f;
SP_CANVASTEXT(canvas_tooltip)->outline = false;
SP_CANVASTEXT(canvas_tooltip)->background = true;
+ SP_CANVASTEXT(canvas_tooltip)->anchor_position = TEXT_ANCHOR_CENTER;
measure_tmp_items.push_back(desktop->add_temporary_canvasitem(canvas_tooltip, 0));
free(total_str);