diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2016-08-01 08:50:36 +0000 |
|---|---|---|
| committer | jabiertxof <info@marker.es> | 2016-08-01 08:50:36 +0000 |
| commit | c10966d3ebdac9c920d6329aa4eaca4d450c84da (patch) | |
| tree | 1fe54662949e366cebd8a6235f33b15385511932 /src | |
| parent | Fix text param and alow run from commandline (diff) | |
| download | inkscape-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.cpp | 14 |
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) { |
