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/licensor.h"
22 #include "ui/widget/notebook-page.h"
23 #include "ui/widget/registry.h"
24 #include "dialog.h"
26 using namespace Inkscape::UI::Widget;
28 namespace Inkscape {
29 namespace XML {
30 class Node;
31 }
32 namespace UI {
33 namespace Widget {
34 class EntityEntry;
35 }
36 namespace Dialog {
38 typedef std::list<EntityEntry*> RDElist;
40 class DocumentMetadata : public Inkscape::UI::Dialog::Dialog {
41 public:
42 void update();
43 static DocumentMetadata *create();
44 static void destroy();
45 sigc::connection _doc_replaced_connection;
47 protected:
48 void build_metadata();
49 void init();
50 virtual void on_response (int);
52 Gtk::Tooltips _tt;
53 Gtk::Notebook _notebook;
55 NotebookPage _page_metadata1, _page_metadata2;
57 //---------------------------------------------------------------
58 RDElist _rdflist;
59 Licensor _licensor;
61 gchar * _prefs_path;
62 Registry _wr;
64 private:
65 DocumentMetadata();
66 virtual ~DocumentMetadata();
67 };
69 } // namespace Dialog
70 } // namespace UI
71 } // namespace Inkscape
73 #endif // INKSCAPE_UI_DIALOG_DOCUMENT_METADATA_H
75 /*
76 Local Variables:
77 mode:c++
78 c-file-style:"stroustrup"
79 c-file-offsets:((innamespace . 0)(inline-open . 0))
80 indent-tabs-mode:nil
81 fill-column:99
82 End:
83 */
84 // vim: filetype=c++:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :