diff options
| author | Maximilian Albert <maximilian.albert@gmail.com> | 2008-07-30 10:56:10 +0000 |
|---|---|---|
| committer | cilix42 <cilix42@users.sourceforge.net> | 2008-07-30 10:56:10 +0000 |
| commit | 1723f7a2cc084d5fbe35ad3f9e00cb17506d3a4a (patch) | |
| tree | 703165983f1df0a965bb380b2b3aa3f7b65c1e8a /src | |
| parent | fix invisible selection in the list; remove stripes; fix undo comment (diff) | |
| download | inkscape-1723f7a2cc084d5fbe35ad3f9e00cb17506d3a4a.tar.gz inkscape-1723f7a2cc084d5fbe35ad3f9e00cb17506d3a4a.zip | |
Make text widget for TextParams work and re-enable it
(bzr r6469)
Diffstat (limited to 'src')
| -rw-r--r-- | src/live_effects/parameter/text.cpp | 12 | ||||
| -rw-r--r-- | src/live_effects/parameter/text.h | 1 | ||||
| -rw-r--r-- | src/ui/widget/registered-widget.cpp | 2 | ||||
| -rw-r--r-- | src/ui/widget/text.cpp | 6 | ||||
| -rw-r--r-- | src/ui/widget/text.h | 2 |
5 files changed, 9 insertions, 14 deletions
diff --git a/src/live_effects/parameter/text.cpp b/src/live_effects/parameter/text.cpp index 4b36edf78..bf11192dd 100644 --- a/src/live_effects/parameter/text.cpp +++ b/src/live_effects/parameter/text.cpp @@ -28,6 +28,7 @@ TextParam::TextParam( const Glib::ustring& label, const Glib::ustring& tip, const Glib::ustring& key, Inkscape::UI::Widget::Registry* wr, Effect* effect, const Glib::ustring default_value ) : Parameter(label, tip, key, wr, effect), + value(default_value), defvalue(default_value) { canvas_text = (SPCanvasText *) sp_canvastext_new(sp_desktop_tempgroup(inkscape_active_desktop()), Geom::Point(0,0), ""); @@ -69,32 +70,27 @@ TextParam::param_readSVGValue(const gchar * strvalue) gchar * TextParam::param_getSVGValue() const { - return (gchar *) defvalue.c_str(); + return (gchar *) value.c_str(); } Gtk::Widget * TextParam::param_newWidget(Gtk::Tooltips * /*tooltips*/) { - /** Inkscape::UI::Widget::RegisteredText *rsu = Gtk::manage(new Inkscape::UI::Widget::RegisteredText( param_label, param_tooltip, param_key, *param_wr, param_effect->getRepr(), param_effect->getSPDoc())); - rsu->setText(""); + rsu->setText(value.c_str()); rsu->setProgrammatically = false; rsu->set_undo_parameters(SP_VERB_DIALOG_LIVE_PATH_EFFECT, _("Change text parameter")); return dynamic_cast<Gtk::Widget *> (rsu); - **/ - - // widget is disabled until it works correctly - return NULL; } void TextParam::param_setValue(const Glib::ustring newvalue) { - defvalue = newvalue; + value = newvalue; sp_canvastext_set_text (canvas_text, newvalue.c_str()); } diff --git a/src/live_effects/parameter/text.h b/src/live_effects/parameter/text.h index 432ceeed1..ee47f028f 100644 --- a/src/live_effects/parameter/text.h +++ b/src/live_effects/parameter/text.h @@ -51,6 +51,7 @@ private: double anchor_x; double anchor_y; + Glib::ustring value; Glib::ustring defvalue; SPCanvasText *canvas_text; diff --git a/src/ui/widget/registered-widget.cpp b/src/ui/widget/registered-widget.cpp index b91e5d998..2cc6e3c62 100644 --- a/src/ui/widget/registered-widget.cpp +++ b/src/ui/widget/registered-widget.cpp @@ -273,6 +273,8 @@ RegisteredText::on_activate() write_to_xml(os.str().c_str()); set_sensitive(true); + setText(os.str().c_str()); + _wr->setUpdating (false); } diff --git a/src/ui/widget/text.cpp b/src/ui/widget/text.cpp index 974e85054..3284af54a 100644 --- a/src/ui/widget/text.cpp +++ b/src/ui/widget/text.cpp @@ -39,7 +39,6 @@ Text::Text(Glib::ustring const &label, Glib::ustring const &tooltip, : Labelled(label, tooltip, new Gtk::Entry(), suffix, icon, mnemonic), setProgrammatically(false) { - //static_cast<Gtk::Entry*>(_widget)->set_numeric(); } /** Get the text in the entry */ @@ -47,17 +46,15 @@ const char * Text::getText() const { g_assert(_widget != NULL); - //return g_strdup_printf("%f", static_cast<Gtk::SpinButton*>(_widget)->get_value()); return static_cast<Gtk::Entry*>(_widget)->get_text().c_str(); } /** Sets the text of the text entry */ void -Text::setText(char* text) +Text::setText(const char* text) { g_assert(_widget != NULL); setProgrammatically = true; // callback is supposed to reset back, if it cares - //static_cast<Gtk::SpinButton*>(_widget)->set_value(42.43); // FIXME: set correctly static_cast<Gtk::Entry*>(_widget)->set_text(text); // FIXME: set correctly } @@ -65,7 +62,6 @@ Text::setText(char* text) Glib::SignalProxy0<void> Text::signal_activate() { - //return static_cast<Gtk::SpinButton*>(_widget)->signal_value_changed(); return static_cast<Gtk::Entry*>(_widget)->signal_activate(); } diff --git a/src/ui/widget/text.h b/src/ui/widget/text.h index a1ec03355..038e6e5dd 100644 --- a/src/ui/widget/text.h +++ b/src/ui/widget/text.h @@ -34,7 +34,7 @@ public: const char* getText() const; - void setText(char* text); + void setText(const char* text); void update(); |
