1 #ifndef __INK_EXTENSION_PARAMNOTEBOOK_H__\r
2 #define __INK_EXTENSION_PARAMNOTEBOOK_H__\r
3 \r
4 /** \file\r
5 * Notebook parameter for extensions.\r
6 */\r
7 \r
8 /*\r
9 * Author:\r
10 * Johan Engelen <johan@shouraizou.nl>\r
11 *\r
12 * Copyright (C) 2006 Author\r
13 *\r
14 * Released under GNU GPL, read the file 'COPYING' for more information\r
15 */\r
16 \r
17 #include <gtkmm/widget.h>\r
18 \r
19 #include "xml/document.h"\r
20 #include "extension-forward.h"\r
21 \r
22 #include "parameter.h"\r
23 \r
24 namespace Inkscape {\r
25 namespace Extension {\r
26 \r
27 \r
28 \r
29 // \brief A class to represent a notebookparameter of an extension\r
30 class ParamNotebook : public Parameter {\r
31 private:\r
32 /** \brief Internal value. This should point to a string that has\r
33 been allocated in memory. And should be free'd. \r
34 It is the name of the current page. */\r
35 gchar * _value;\r
36 \r
37 GSList * pages; /**< A table to store the pages with parameters for this notebook.\r
38 This only gets created if there are pages in this\r
39 notebook */\r
40 public:\r
41 ParamNotebook(const gchar * name, const gchar * guitext, const gchar * desc, const Parameter::_scope_t scope, Inkscape::Extension::Extension * ext, Inkscape::XML::Node * xml);\r
42 ~ParamNotebook(void);\r
43 Gtk::Widget * get_widget(SPDocument * doc, Inkscape::XML::Node * node);\r
44 Glib::ustring * string (void);\r
45 \r
46 const gchar * get (const SPDocument * doc, const Inkscape::XML::Node * node) { return _value; }\r
47 const gchar * set (const int in, SPDocument * doc, Inkscape::XML::Node * node);\r
48 }; /* class ParamNotebook */\r
49 \r
50 \r
51 \r
52 \r
53 \r
54 } /* namespace Extension */\r
55 } /* namespace Inkscape */\r
56 \r
57 #endif /* __INK_EXTENSION_PARAMNOTEBOOK_H__ */\r
58 \r
59 /*\r
60 Local Variables:\r
61 mode:c++\r
62 c-file-style:"stroustrup"\r
63 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))\r
64 indent-tabs-mode:nil\r
65 fill-column:99\r
66 End:\r
67 */\r
68 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :\r