summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMaximilian Albert <maximilian.albert@gmail.com>2008-07-30 10:56:10 +0000
committercilix42 <cilix42@users.sourceforge.net>2008-07-30 10:56:10 +0000
commit1723f7a2cc084d5fbe35ad3f9e00cb17506d3a4a (patch)
tree703165983f1df0a965bb380b2b3aa3f7b65c1e8a /src
parentfix invisible selection in the list; remove stripes; fix undo comment (diff)
downloadinkscape-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.cpp12
-rw-r--r--src/live_effects/parameter/text.h1
-rw-r--r--src/ui/widget/registered-widget.cpp2
-rw-r--r--src/ui/widget/text.cpp6
-rw-r--r--src/ui/widget/text.h2
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();