notebook.h revision 081364debe4793081bf3f50cb82ca7d0999a41d4
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * Notebook parameter for extensions.
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * Johan Engelen <johan@shouraizou.nl>
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * Jon A. Cruz <jon@joncruz.org>
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * Copyright (C) 2006 Author
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * Released under GNU GPL, read the file 'COPYING' for more information
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh/** A class to represent a notebookparameter of an extension. */
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh * Internal value. This should point to a string that has
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh * been allocated in memory. And should be free'd.
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh * It is the name of the current page.
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh GSList * pages; /**< A table to store the pages with parameters for this notebook.
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh This only gets created if there are pages in this
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh notebook */
dc4f69a188c203f2fdc65f22d0d57904a8c52dd7miklosh ParamNotebook(const gchar * name, const gchar * guitext, const gchar * desc, const Parameter::_scope_t scope, bool gui_hidden, const gchar * gui_tip, Inkscape::Extension::Extension * ext, Inkscape::XML::Node * xml);
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh Gtk::Widget * get_widget(SPDocument * doc, Inkscape::XML::Node * node, sigc::signal<void> * changeSignal);
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * A function to get the currentpage and the parameters in a string form.
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh * @return A string with the 'value' and all the parameters on all pages as command line arguments.
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh virtual void string (std::list <std::string> &list) const;
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh // Explicitly call superclass version to avoid method being hidden.
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh virtual void string(std::string &string) const {return Parameter::string(string);}
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh const gchar * get (const SPDocument * /*doc*/, const Inkscape::XML::Node * /*node*/) { return _value; }
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh const gchar * set (const int in, SPDocument * doc, Inkscape::XML::Node * node);
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh}; /* class ParamNotebook */
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh} // namespace Extension
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh} // namespace Inkscape
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh#endif /* INK_EXTENSION_PARAMNOTEBOOK_H_SEEN */
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh Local Variables:
dc4f69a188c203f2fdc65f22d0d57904a8c52dd7miklosh c-file-style:"stroustrup"
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
3711b3e25395437ee0a09dbbb2a76d999c4ef322miklosh indent-tabs-mode:nil
a4d12a5147f3d1d6b568a326e39ef5dca384248dmiklosh fill-column:99
7a7fa095a483e8b652af9f00e5169f62c84f09b9miklosh// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :