1 #ifndef __INK_EXTENSION_PARAMFLOAT_H
2 #define __INK_EXTENSION_PARAMFLOAT_H
4 /*
5 * Copyright (C) 2005-2007 Authors:
6 * Ted Gould <ted@gould.cx>
7 * Johan Engelen <johan@shouraizou.nl> *
8 * Released under GNU GPL, read the file 'COPYING' for more information
9 */
11 #include <gtkmm/widget.h>
12 #include <xml/node.h>
13 #include <document.h>
14 #include "parameter.h"
16 namespace Inkscape {
17 namespace Extension {
19 class ParamFloat : public Parameter {
20 private:
21 /** \brief Internal value. */
22 float _value;
23 float _min;
24 float _max;
25 int _precision;
26 public:
27 ParamFloat (const gchar * name, const gchar * guitext, const gchar * desc, const Parameter::_scope_t scope, Inkscape::Extension::Extension * ext, Inkscape::XML::Node * xml);
28 /** \brief Returns \c _value */
29 float get (const SPDocument * doc, const Inkscape::XML::Node * node) { return _value; }
30 float set (float in, SPDocument * doc, Inkscape::XML::Node * node);
31 float max (void) { return _max; }
32 float min (void) { return _min; }
33 float precision (void) { return _precision; }
34 Gtk::Widget * get_widget(SPDocument * doc, Inkscape::XML::Node * node, sigc::signal<void> * changeSignal);
35 Glib::ustring * string (void);
36 };
38 } /* namespace Extension */
39 } /* namespace Inkscape */
41 #endif /* __INK_EXTENSION_PARAMFLOAT_H */
43 /*
44 Local Variables:
45 mode:c++
46 c-file-style:"stroustrup"
47 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
48 indent-tabs-mode:nil
49 fill-column:99
50 End:
51 */
52 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :