Code

This is the first c++ification commit from me. It handles sp-line, sp-polyline, sp...
[inkscape.git] / src / ui / dialog / document-metadata.h
1 /** \file
2  * \brief  Document Metadata dialog
3  */
4 /* Authors:
5  *   Ralf Stephan <ralf@ark.in-berlin.de>
6  *   Bryce W. Harrington <bryce@bryceharrington.org>
7  *
8  * Copyright (C) 2004, 2005, 2006 Authors
9  *
10  * Released under GNU GPL.  Read the file 'COPYING' for more information.
11  */
13 #ifndef INKSCAPE_UI_DIALOG_DOCUMENT_METADATA_H
14 #define INKSCAPE_UI_DIALOG_DOCUMENT_METADATA_H
16 #include <list>
17 #include <sigc++/sigc++.h>
18 #include <gtkmm/notebook.h>
19 #include <glibmm/i18n.h>
21 #include "ui/widget/panel.h"
22 #include "ui/widget/licensor.h"
23 #include "ui/widget/notebook-page.h"
24 #include "ui/widget/registry.h"
26 namespace Inkscape {
27     namespace XML {
28         class Node;
29     }
30     namespace UI {
31         namespace Widget {
32             class EntityEntry;
33         }
34         namespace Dialog {
36 typedef std::list<UI::Widget::EntityEntry*> RDElist;
38 class DocumentMetadata : public Inkscape::UI::Widget::Panel {
39 public:
40     void  update();
42     static DocumentMetadata &getInstance();
44     static void destroy();
46 protected:
47     void  build_metadata();
48     void  init();
50     void _handleDocumentReplaced(SPDesktop* desktop, SPDocument *document);
51     void _handleActivateDesktop(Inkscape::Application *application, SPDesktop *desktop);
52     void _handleDeactivateDesktop(Inkscape::Application *application, SPDesktop *desktop);
54     Gtk::Tooltips _tt;
55     Gtk::Notebook  _notebook;
57     UI::Widget::NotebookPage _page_metadata1;
58     UI::Widget::NotebookPage _page_metadata2;
60     //---------------------------------------------------------------
61     RDElist _rdflist;
62     UI::Widget::Licensor _licensor;
64     UI::Widget::Registry _wr;
66 private:
67     virtual ~DocumentMetadata();
68     DocumentMetadata();
69 };
71 } // namespace Dialog
72 } // namespace UI
73 } // namespace Inkscape
75 #endif // INKSCAPE_UI_DIALOG_DOCUMENT_METADATA_H
77 /*
78   Local Variables:
79   mode:c++
80   c-file-style:"stroustrup"
81   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
82   indent-tabs-mode:nil
83   fill-column:99
84   End:
85 */
86 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :