summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2016-08-01 08:50:36 +0000
committerjabiertxof <info@marker.es>2016-08-01 08:50:36 +0000
commitc10966d3ebdac9c920d6329aa4eaca4d450c84da (patch)
tree1fe54662949e366cebd8a6235f33b15385511932 /src
parentFix text param and alow run from commandline (diff)
downloadinkscape-c10966d3ebdac9c920d6329aa4eaca4d450c84da.tar.gz
inkscape-c10966d3ebdac9c920d6329aa4eaca4d450c84da.zip
Finish format text label
(bzr r15017.1.22)
Diffstat (limited to 'src')
-rw-r--r--src/live_effects/lpe-measure-line.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/live_effects/lpe-measure-line.cpp b/src/live_effects/lpe-measure-line.cpp
index fc2ff0f8b..ad8a050ea 100644
--- a/src/live_effects/lpe-measure-line.cpp
+++ b/src/live_effects/lpe-measure-line.cpp
@@ -301,15 +301,23 @@ LPEMeasureLine::createTextLabel(Geom::Point pos, double length, Geom::Coord angl
length_str.imbue(std::locale::classic());
}
length_str << std::fixed << length;
- length_str << unit.get_abbreviation();
+ Glib::ustring label_value = Glib::ustring(format.param_getSVGValue());
+ size_t s = label_value.find((Glib::ustring)"{measure}",0);
+ if(s < label_value.length()) {
+ label_value.replace(s,s+9,length_str.str());
+ }
+ s = label_value.find((Glib::ustring)"{unit}",0);
+ if(s < label_value.length()) {
+ label_value.replace(s,s+6,unit.get_abbreviation());
+ }
Inkscape::XML::Node *rstring = NULL;
if (!elemref) {
- rstring = xml_doc->createTextNode(length_str.str().c_str());
+ rstring = xml_doc->createTextNode(label_value.c_str());
rtspan->addChild(rstring, NULL);
Inkscape::GC::release(rstring);
} else {
rstring = rtspan->firstChild();
- rstring->setContent(length_str.str().c_str());
+ rstring->setContent(label_value.c_str());
}
SPObject * text_obj = NULL;
if (!elemref) {