Code

Disable the page selector when there's only one page
[inkscape.git] / src / widgets / desktop-widget.h
index ef70a21d1a2a81070225bd59f7523a6c9103de46..bb9d7ef860d78c2f3a186084218a94aee1e8cbd0 100644 (file)
@@ -32,8 +32,6 @@ GtkType sp_desktop_widget_get_type();
 
 void sp_desktop_widget_destroy (SPDesktopWidget* dtw);
 
-gint sp_desktop_widget_set_focus(GtkWidget *widget, GdkEvent *event, SPDesktopWidget *dtw);
-
 void sp_desktop_widget_show_decorations(SPDesktopWidget *dtw, gboolean show);
 void sp_desktop_widget_iconify(SPDesktopWidget *dtw);
 void sp_desktop_widget_maximize(SPDesktopWidget *dtw);
@@ -66,7 +64,7 @@ struct SPDesktopWidget {
 
     SPDesktop *desktop;
 
-    GtkWindow *window;
+    Gtk::Window *window;
     
     // The root vbox of the window layout.
     GtkWidget *vbox;
@@ -113,7 +111,7 @@ struct SPDesktopWidget {
 
         virtual void setTitle (gchar const *uri)
             { _dtw->updateTitle (uri); }
-        virtual void* getWindow()
+        virtual Gtk::Window* getWindow()
             { return _dtw->window; }
         virtual void layout() 
             { sp_desktop_widget_layout (_dtw); }
@@ -138,7 +136,11 @@ struct SPDesktopWidget {
         virtual bool shutdown()
             { return _dtw->shutdown(); }
         virtual void destroy()
-            { gtk_widget_destroy (static_cast<GtkWidget*>((void*)(_dtw->window)));}
+            {
+                               if(_dtw->window != NULL)
+                               delete _dtw->window;
+                               _dtw->window = NULL;
+                       }
         
         virtual void requestCanvasUpdate()
             { _dtw->requestCanvasUpdate(); }
@@ -170,6 +172,8 @@ struct SPDesktopWidget {
             { _dtw->setToolboxFocusTo (id); }
         virtual void setToolboxAdjustmentValue (const gchar *id, double val)
             { _dtw->setToolboxAdjustmentValue (id, val); }
+        virtual void setToolboxSelectOneValue (gchar const *id, int val)
+            { _dtw->setToolboxSelectOneValue (id, val); }
         virtual bool isToolboxButtonActive (gchar const* id)
             { return _dtw->isToolboxButtonActive (id); }
         virtual void setCoordinateStatus (NR::Point p)
@@ -195,6 +199,7 @@ struct SPDesktopWidget {
     bool warnDialog (gchar *text);
     void setToolboxFocusTo (gchar const *);
     void setToolboxAdjustmentValue (gchar const * id, double value);
+    void setToolboxSelectOneValue (gchar const * id, gint value);
     bool isToolboxButtonActive (gchar const *id);
     void setCoordinateStatus(NR::Point p);
     void requestCanvasUpdate();
@@ -202,6 +207,8 @@ struct SPDesktopWidget {
     void enableInteraction();
     void disableInteraction();
     void updateTitle(gchar const *uri);
+       
+       bool onFocusInEvent(GdkEventFocus*);
 };
 
 /// The SPDesktopWidget vtable