Code

family name field on svgfonts dialog now properly saves attribute. Should do the...
[inkscape.git] / src / ui / dialog / document-properties.h
index 439ad570111a1853301fb5b78102a470d5985bcc..a8750a32bfad6f42f0b2de1fb2c1667910b1f79c 100644 (file)
@@ -5,7 +5,7 @@
  *   Ralf Stephan <ralf@ark.in-berlin.de>
  *   Bryce W. Harrington <bryce@bryceharrington.org>
  *
- * Copyright (C) 2006 Johan Engelen <johan@shouraizou.nl>
+ * Copyright (C) 2006-2008 Johan Engelen <johan@shouraizou.nl>
  * Copyright (C) 2004, 2005 Authors
  *
  * Released under GNU GPL.  Read the file 'COPYING' for more information.
@@ -24,7 +24,7 @@
 #include "ui/widget/registered-widget.h"
 #include "ui/widget/registry.h"
 #include "ui/widget/tolerance-slider.h"
-#include "dialog.h"
+#include "ui/widget/panel.h"
 
 using namespace Inkscape::UI::Widget;
 
@@ -35,12 +35,11 @@ namespace Inkscape {
     namespace UI {
         namespace Dialog {
 
-class DocumentProperties : public Inkscape::UI::Dialog::Dialog {
+class DocumentProperties : public UI::Widget::Panel {
 public:
     void  update();
-    static DocumentProperties *create();
+    static DocumentProperties &getInstance();
     static void destroy();
-    sigc::connection _doc_replaced_connection;
 
     void  update_gridspage();
     
@@ -49,47 +48,52 @@ protected:
     void  build_grid();
     void  build_guides();
     void  build_snap();
+    void  build_snap_dtls();
     void  build_gridspage();
     void  init();
     virtual void  on_response (int);
 
+    void _handleDocumentReplaced(SPDesktop* desktop, SPDocument *document);
+    void _handleActivateDesktop(Inkscape::Application *application, SPDesktop *desktop);
+    void _handleDeactivateDesktop(Inkscape::Application *application, SPDesktop *desktop);
+
     Gtk::Tooltips _tt;
     Gtk::Notebook  _notebook;
 
-    NotebookPage   _page_page, _page_grid, _page_guides;
-    NotebookPage   _page_snap;
-    NotebookPage   _page_grids;
+    NotebookPage   _page_page, _page_guides;
+    NotebookPage   _page_snap, _page_snap_dtls;
+    Gtk::VBox      _grids_vbox;
 
+    Registry _wr;
     //---------------------------------------------------------------
     RegisteredCheckButton _rcb_canb, _rcb_bord, _rcb_shad;
     RegisteredColorPicker _rcp_bg, _rcp_bord;
     RegisteredUnitMenu    _rum_deflt;
     PageSizer             _page_sizer;
     //---------------------------------------------------------------
-    RegisteredCheckButton _rcbgrid; //_rcbsnbb, _rcbsnnod
-    RegisteredUnitMenu    _rumg, _rums;
-    RegisteredScalarUnit  _rsu_ox, _rsu_oy, _rsu_sx, _rsu_sy;
-    RegisteredColorPicker _rcp_gcol, _rcp_gmcol;
-    RegisteredSuffixedInteger _rsi;
-    //---------------------------------------------------------------
-    RegisteredCheckButton _rcb_sgui; //_rcb_snpgui, _rcb_snbgui
-    RegisteredUnitMenu    _rum_gusn;
-    ToleranceSlider      _rsu_sn, _rsu_gusn;
+    RegisteredCheckButton _rcb_sgui, _rcbsng;
     RegisteredColorPicker _rcp_gui, _rcp_hgui;
     //---------------------------------------------------------------
-    RegisteredCheckButton _rcbsnop, _rcbsnon; //_rcbsnbo, _rcbsnnob
-    RegisteredUnitMenu    _rumso;
-    ToleranceSlider       _rsu_sno;
-    RegisteredRadioButtonPair _rrb_pix;
+    RegisteredCheckButton _rcbs, _rcbsi, _rcbsnbb, _rcbsnn, _rcbsnop;
+    RegisteredCheckButton _rcbsnon, _rcbsnbbp, _rcbsnbbn, _rcbsnpb;
+    ToleranceSlider       _rsu_sno, _rsu_sn, _rsu_gusn;
+    //---------------------------------------------------------------
+    RegisteredCheckButton _rcbic;
+    RegisteredCheckButton _rcbsigg, _rcbsils;
     //---------------------------------------------------------------
     Gtk::Notebook   _grids_notebook;
+    Gtk::HBox       _grids_hbox_crea;
+    Gtk::Label      _grids_label_crea;
     Gtk::Button     _grids_button_new;
     Gtk::Button     _grids_button_remove;
     Gtk::ComboBoxText _grids_combo_gridtype;
+    Gtk::Label      _grids_label_def;
+    Gtk::HBox       _grids_space;
     //---------------------------------------------------------------
 
-    gchar * _prefs_path;
-    Registry _wr;
+    gchar const *_prefs_path;
+
+    Gtk::HBox& _createPageTabLabel(const Glib::ustring& label, const char *label_image);
 
 private:
     DocumentProperties();