summaryrefslogtreecommitdiffstats
path: root/src/ui/widget/registered-widget.cpp
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2016-07-24 16:49:11 +0000
committerjabiertxof <info@marker.es>2016-07-24 16:49:11 +0000
commita5d6c9a27683820be3d84eea73c2d6f161ce0e8e (patch)
treeb9ba6c20747c4d6d7b4479d229b9daf8eea5c5bd /src/ui/widget/registered-widget.cpp
parentThis for you CR ยท Measure line, show the distance on rect lines CAD like wit... (diff)
downloadinkscape-a5d6c9a27683820be3d84eea73c2d6f161ce0e8e.tar.gz
inkscape-a5d6c9a27683820be3d84eea73c2d6f161ce0e8e.zip
Add Text tag and update widgets code
(bzr r15017.1.2)
Diffstat (limited to 'src/ui/widget/registered-widget.cpp')
-rw-r--r--src/ui/widget/registered-widget.cpp44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/ui/widget/registered-widget.cpp b/src/ui/widget/registered-widget.cpp
index 298377af3..7abab25c9 100644
--- a/src/ui/widget/registered-widget.cpp
+++ b/src/ui/widget/registered-widget.cpp
@@ -25,6 +25,7 @@
#include "ui/widget/scalar-unit.h"
#include "ui/widget/point.h"
#include "ui/widget/random.h"
+#include "ui/widget/font-selector.h"
#include "widgets/spinbutton-events.h"
#include "xml/repr.h"
@@ -805,6 +806,49 @@ RegisteredRandom::on_value_changed()
_wr->setUpdating (false);
}
+/*#########################################
+ * Registered FONT-SELECTOR
+ */
+
+RegisteredFontSelector::~RegisteredFontSelector()
+{
+ _value_changed_connection.disconnect();
+}
+
+RegisteredFontSelector::RegisteredFontSelector ( const Glib::ustring& label, const Glib::ustring& tip,
+ const Glib::ustring& key, Registry& wr, Inkscape::XML::Node* repr_in,
+ SPDocument* doc_in )
+ : RegisteredWidget<FontSelector> (label, tip)
+{
+ init_parent(key, wr, repr_in, doc_in);
+ _value_changed_connection = signal_fontselupd.connect (sigc::mem_fun (*this, &RegisteredFontSelector::on_value_changed));
+}
+
+void
+RegisteredFontSelector::setValue (Glib::ustring fontspec, double fontsize)
+{
+ if (fontsize != 0) { //have value in the effect
+ FontSelector::setValue (fontspec, fontsize);
+ }
+}
+
+void
+RegisteredFontSelector::on_value_changed()
+{
+
+ if (_wr->isUpdating())
+ return;
+
+ _wr->setUpdating (true);
+
+ Inkscape::SVGOStringStream os;
+ os << getFontSpec() << " @ " << getFontSize();
+
+ write_to_xml(os.str().c_str());
+
+ _wr->setUpdating (false);
+}
+
} // namespace Dialog
} // namespace UI
} // namespace Inkscape