summaryrefslogtreecommitdiffstats
path: root/src/widgets/desktop-widget.h
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-01-14 08:13:09 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-01-14 08:13:09 +0000
commit7f7da4643d6909af5cd58b2f24846774e3af509b (patch)
tree1fec13b3616ecc90fb251bb9e643aefc43c80c43 /src/widgets/desktop-widget.h
parentSome additional docs (diff)
parentInitial cut of disabling floating windows on window managers with problems. (diff)
downloadinkscape-7f7da4643d6909af5cd58b2f24846774e3af509b.tar.gz
inkscape-7f7da4643d6909af5cd58b2f24846774e3af509b.zip
* Merge from trunk
* Update to new snapping API * Modify the join action slightly (bzr r8846.2.11)
Diffstat (limited to 'src/widgets/desktop-widget.h')
-rw-r--r--src/widgets/desktop-widget.h36
1 files changed, 26 insertions, 10 deletions
diff --git a/src/widgets/desktop-widget.h b/src/widgets/desktop-widget.h
index 04146cac6..33f2a6ae7 100644
--- a/src/widgets/desktop-widget.h
+++ b/src/widgets/desktop-widget.h
@@ -5,6 +5,7 @@
* SPDesktopWidget: handling Gtk events on a desktop.
*
* Authors:
+ * Jon A. Cruz <jon@joncruz.org> (c) 2010
* John Bintz <jcoswell@coswellproductions.org> (c) 2006
* Ralf Stephan <ralf@ark.in-berlin.de> (c) 2005, distrib. under GPL2
* ? -2004
@@ -26,28 +27,23 @@
typedef struct _EgeColorProfTracker EgeColorProfTracker;
-#define SP_TYPE_DESKTOP_WIDGET (sp_desktop_widget_get_type ())
+#define SP_TYPE_DESKTOP_WIDGET SPDesktopWidget::getType()
#define SP_DESKTOP_WIDGET(o) (GTK_CHECK_CAST ((o), SP_TYPE_DESKTOP_WIDGET, SPDesktopWidget))
#define SP_DESKTOP_WIDGET_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_DESKTOP_WIDGET, SPDesktopWidgetClass))
#define SP_IS_DESKTOP_WIDGET(o) (GTK_CHECK_TYPE ((o), SP_TYPE_DESKTOP_WIDGET))
#define SP_IS_DESKTOP_WIDGET_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_DESKTOP_WIDGET))
-GtkType sp_desktop_widget_get_type();
-
void sp_desktop_widget_destroy (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);
void sp_desktop_widget_fullscreen(SPDesktopWidget *dtw);
-void sp_desktop_widget_layout(SPDesktopWidget *dtw);
void sp_desktop_widget_update_zoom(SPDesktopWidget *dtw);
void sp_desktop_widget_update_rulers (SPDesktopWidget *dtw);
void sp_desktop_widget_update_hruler (SPDesktopWidget *dtw);
void sp_desktop_widget_update_vruler (SPDesktopWidget *dtw);
-void sp_desktop_widget_update_namedview (SPDesktopWidget *dtw);
-
/* Show/hide rulers & scrollbars */
void sp_desktop_widget_toggle_rulers (SPDesktopWidget *dtw);
void sp_desktop_widget_toggle_scrollbars (SPDesktopWidget *dtw);
@@ -80,14 +76,14 @@ struct SPDesktopWidget {
// The root vbox of the window layout.
GtkWidget *vbox;
+ GtkWidget *hbox;
+
GtkWidget *menubar, *statusbar;
Inkscape::UI::Dialogs::SwatchesPanel *panels;
GtkWidget *hscrollbar, *vscrollbar, *vscrollbar_box;
- GtkWidget *tool_toolbox, *aux_toolbox, *commands_toolbox, *snap_toolbox;
-
/* Rulers */
GtkWidget *hruler, *vruler;
GtkWidget *hruler_box, *vruler_box; // eventboxes for setting tooltips
@@ -129,8 +125,11 @@ struct SPDesktopWidget {
{ _dtw->updateTitle (uri); }
virtual Gtk::Window* getWindow()
{ return _dtw->window; }
- virtual void layout()
- { sp_desktop_widget_layout (_dtw); }
+
+ virtual void layout() {
+ _dtw->layoutWidgets();
+ }
+
virtual void present()
{ _dtw->presentWindow(); }
virtual void getGeometry (gint &x, gint &y, gint &w, gint &h)
@@ -221,6 +220,7 @@ struct SPDesktopWidget {
void setToolboxAdjustmentValue (gchar const * id, double value);
void setToolboxSelectOneValue (gchar const * id, gint value);
bool isToolboxButtonActive (gchar const *id);
+ void setToolboxPosition(Glib::ustring const& id, GtkPositionType pos);
void setCoordinateStatus(Geom::Point p);
void requestCanvasUpdate();
void requestCanvasUpdateAndWait();
@@ -231,6 +231,22 @@ struct SPDesktopWidget {
Inkscape::UI::Widget::Dock* getDock();
+ static GtkType getType();
+ static SPDesktopWidget* createInstance(SPNamedView *namedview);
+
+ void updateNamedview();
+
+private:
+ GtkWidget *tool_toolbox;
+ GtkWidget *aux_toolbox;
+ GtkWidget *commands_toolbox,;
+ GtkWidget *snap_toolbox;
+
+ static void init(SPDesktopWidget *widget);
+ void layoutWidgets();
+
+ void namedviewModified(SPObject *obj, guint flags);
+
};
/// The SPDesktopWidget vtable