summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/CMakeLists.txt111
-rw-r--r--src/widgets/button.cpp38
-rw-r--r--src/widgets/button.h14
-rw-r--r--src/widgets/dash-selector.cpp4
-rw-r--r--src/widgets/desktop-widget.cpp74
-rw-r--r--src/widgets/desktop-widget.h20
-rw-r--r--src/widgets/eek-preview.cpp14
-rw-r--r--src/widgets/eek-preview.h4
-rw-r--r--src/widgets/ege-paint-def.cpp1
-rw-r--r--src/widgets/fill-style.cpp2
-rw-r--r--src/widgets/gradient-image.h13
-rw-r--r--src/widgets/gradient-selector.cpp57
-rw-r--r--src/widgets/gradient-selector.h10
-rw-r--r--src/widgets/gradient-toolbar.cpp24
-rw-r--r--src/widgets/gradient-toolbar.h2
-rw-r--r--src/widgets/gradient-vector.cpp42
-rw-r--r--src/widgets/gradient-vector.h10
-rw-r--r--src/widgets/icon.cpp10
-rw-r--r--src/widgets/icon.h6
-rw-r--r--src/widgets/paint-selector.cpp149
-rw-r--r--src/widgets/paint-selector.h10
-rw-r--r--src/widgets/ruler.cpp4
-rw-r--r--src/widgets/ruler.h14
-rw-r--r--src/widgets/select-toolbar.cpp26
-rw-r--r--src/widgets/select-toolbar.h3
-rw-r--r--src/widgets/shrink-wrap-button.cpp2
-rw-r--r--src/widgets/sp-attribute-widget.cpp3
-rw-r--r--src/widgets/sp-attribute-widget.h19
-rw-r--r--src/widgets/sp-color-gtkselector.h10
-rw-r--r--src/widgets/sp-color-icc-selector.cpp57
-rw-r--r--src/widgets/sp-color-icc-selector.h13
-rw-r--r--src/widgets/sp-color-notebook.cpp29
-rw-r--r--src/widgets/sp-color-notebook.h12
-rw-r--r--src/widgets/sp-color-scales.cpp70
-rw-r--r--src/widgets/sp-color-scales.h13
-rw-r--r--src/widgets/sp-color-selector.cpp54
-rw-r--r--src/widgets/sp-color-selector.h10
-rw-r--r--src/widgets/sp-color-slider.cpp95
-rw-r--r--src/widgets/sp-color-slider.h10
-rw-r--r--src/widgets/sp-color-wheel-selector.cpp43
-rw-r--r--src/widgets/sp-color-wheel-selector.h13
-rw-r--r--src/widgets/sp-widget.cpp48
-rw-r--r--src/widgets/sp-widget.h10
-rw-r--r--src/widgets/sp-xmlview-attr-list.h7
-rw-r--r--src/widgets/sp-xmlview-content.h8
-rw-r--r--src/widgets/sp-xmlview-tree.h8
-rw-r--r--src/widgets/spinbutton-events.h3
-rw-r--r--src/widgets/spw-utilities.cpp4
-rw-r--r--src/widgets/spw-utilities.h2
-rw-r--r--src/widgets/stroke-style.cpp13
-rw-r--r--src/widgets/toolbox.cpp115
-rw-r--r--src/widgets/toolbox.h3
52 files changed, 708 insertions, 628 deletions
diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt
index f3c0e70fa..d9e05f06a 100644
--- a/src/widgets/CMakeLists.txt
+++ b/src/widgets/CMakeLists.txt
@@ -1,36 +1,77 @@
-SET(widgets_SRC
-button.cpp
-calligraphic-profile-rename.cpp
-dash-selector.cpp
-desktop-widget.cpp
-font-selector.cpp
-gradient-image.cpp
-gradient-selector.cpp
-gradient-toolbar.cpp
-gradient-vector.cpp
-icon.cpp
-layer-selector.cpp
-paint-selector.cpp
-ruler.cpp
-select-toolbar.cpp
-shrink-wrap-button.cpp
-sp-color-gtkselector.cpp
-sp-color-icc-selector.cpp
-sp-color-notebook.cpp
-sp-color-preview.cpp
-sp-color-scales.cpp
-sp-color-selector.cpp
-sp-color-slider.cpp
-sp-color-wheel-selector.cpp
-spinbutton-events.cpp
-sp-widget.cpp
-spw-utilities.cpp
-sp-xmlview-attr-list.cpp
-sp-xmlview-content.cpp
-sp-xmlview-tree.cpp
-swatch-selector.cpp
-toolbox.cpp
+
+set(widgets_SRC
+ button.cpp
+ dash-selector.cpp
+ desktop-widget.cpp
+ eek-preview.cpp
+ ege-paint-def.cpp
+ fill-style.cpp
+ font-selector.cpp
+ gradient-image.cpp
+ gradient-selector.cpp
+ gradient-toolbar.cpp
+ gradient-vector.cpp
+ icon.cpp
+ paint-selector.cpp
+ ruler.cpp
+ select-toolbar.cpp
+ shrink-wrap-button.cpp
+ sp-attribute-widget.cpp
+ sp-color-gtkselector.cpp
+ sp-color-icc-selector.cpp
+ sp-color-notebook.cpp
+ sp-color-preview.cpp
+ sp-color-scales.cpp
+ sp-color-selector.cpp
+ sp-color-slider.cpp
+ sp-color-wheel-selector.cpp
+ sp-widget.cpp
+ sp-xmlview-attr-list.cpp
+ sp-xmlview-content.cpp
+ sp-xmlview-tree.cpp
+ spinbutton-events.cpp
+ spw-utilities.cpp
+ stroke-style.cpp
+ swatch-selector.cpp
+ toolbox.cpp
+
+ button.h
+ dash-selector.h
+ desktop-widget.h
+ eek-preview.h
+ ege-paint-def.h
+ fill-n-stroke-factory.h
+ fill-style.h
+ font-selector.h
+ gradient-image.h
+ gradient-selector.h
+ gradient-toolbar.h
+ gradient-vector.h
+ icon.h
+ paint-selector.h
+ ruler.h
+ select-toolbar.h
+ shrink-wrap-button.h
+ sp-attribute-widget.h
+ sp-color-gtkselector.h
+ sp-color-icc-selector.h
+ sp-color-notebook.h
+ sp-color-preview.h
+ sp-color-scales.h
+ sp-color-selector.h
+ sp-color-slider.h
+ sp-color-wheel-selector.h
+ sp-widget.h
+ sp-xmlview-attr-list.h
+ sp-xmlview-content.h
+ sp-xmlview-tree.h
+ spinbutton-events.h
+ spw-utilities.h
+ stroke-style.h
+ swatch-selector.h
+ toolbox.h
+ widget-sizes.h
)
-ADD_LIBRARY(widgets STATIC ${widgets_SRC})
-TARGET_LINK_LIBRARIES(widgets
-2geom ${INKSCAPE_LIBS})
+
+# add_inkscape_lib(widgets_LIB "${widgets_SRC}")
+add_inkscape_source("${widgets_SRC}")
diff --git a/src/widgets/button.cpp b/src/widgets/button.cpp
index dc830d096..e0b3a0fb9 100644
--- a/src/widgets/button.cpp
+++ b/src/widgets/button.cpp
@@ -46,7 +46,7 @@ static void sp_button_set_doubleclick_action (SPButton *button, SPAction *action
static void sp_button_action_set_active (SPAction *action, unsigned int active, void *data);
static void sp_button_action_set_sensitive (SPAction *action, unsigned int sensitive, void *data);
static void sp_button_action_set_shortcut (SPAction *action, unsigned int shortcut, void *data);
-static void sp_button_set_composed_tooltip (GtkTooltips *tooltips, GtkWidget *widget, SPAction *action);
+static void sp_button_set_composed_tooltip (GtkWidget *widget, SPAction *action);
static GtkToggleButtonClass *parent_class;
SPActionEventVector button_event_vector = {
@@ -98,12 +98,11 @@ sp_button_init (SPButton *button)
{
button->action = NULL;
button->doubleclick_action = NULL;
- button->tooltips = NULL;
gtk_container_set_border_width (GTK_CONTAINER (button), 0);
- GTK_WIDGET_UNSET_FLAGS (GTK_WIDGET (button), GTK_CAN_FOCUS);
- GTK_WIDGET_UNSET_FLAGS (GTK_WIDGET (button), GTK_CAN_DEFAULT);
+ gtk_widget_set_can_focus (GTK_WIDGET (button), FALSE);
+ gtk_widget_set_can_default (GTK_WIDGET (button), FALSE);
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (sp_button_perform_action), NULL);
g_signal_connect_after (G_OBJECT (button), "event", G_CALLBACK (sp_button_process_event), NULL);
@@ -116,11 +115,6 @@ sp_button_destroy (GtkObject *object)
button = SP_BUTTON (object);
- if (button->tooltips) {
- g_object_unref (G_OBJECT (button->tooltips));
- button->tooltips = NULL;
- }
-
if (button->action) {
sp_button_set_action (button, NULL);
}
@@ -186,7 +180,7 @@ sp_button_perform_action (SPButton *button, gpointer /*data*/)
GtkWidget *
-sp_button_new( Inkscape::IconSize size, SPButtonType type, SPAction *action, SPAction *doubleclick_action, GtkTooltips *tooltips )
+sp_button_new( Inkscape::IconSize size, SPButtonType type, SPAction *action, SPAction *doubleclick_action )
{
SPButton *button;
@@ -194,9 +188,6 @@ sp_button_new( Inkscape::IconSize size, SPButtonType type, SPAction *action, SPA
button->type = type;
button->lsize = CLAMP( size, Inkscape::ICON_SIZE_MENU, Inkscape::ICON_SIZE_DECORATION );
- button->tooltips = tooltips;
-
- if (tooltips) g_object_ref ((GObject *) tooltips);
sp_button_set_action (button, action);
if (doubleclick_action)
@@ -253,9 +244,7 @@ sp_button_set_action (SPButton *button, SPAction *action)
}
}
- if (button->tooltips) {
- sp_button_set_composed_tooltip (button->tooltips, (GtkWidget *) button, action);
- }
+ sp_button_set_composed_tooltip ((GtkWidget *) button, action);
}
static void
@@ -283,12 +272,10 @@ static void
sp_button_action_set_shortcut (SPAction *action, unsigned int /*shortcut*/, void *data)
{
SPButton *button=SP_BUTTON (data);
- if (button->tooltips) {
- sp_button_set_composed_tooltip (button->tooltips, GTK_WIDGET (button), action);
- }
+ sp_button_set_composed_tooltip (GTK_WIDGET (button), action);
}
-static void sp_button_set_composed_tooltip(GtkTooltips *tooltips, GtkWidget *widget, SPAction *action)
+static void sp_button_set_composed_tooltip(GtkWidget *widget, SPAction *action)
{
if (action) {
unsigned int shortcut = sp_shortcut_get_primary (action->verb);
@@ -298,16 +285,16 @@ static void sp_button_set_composed_tooltip(GtkTooltips *tooltips, GtkWidget *wid
gchar *key = sp_shortcut_get_label(shortcut);
gchar *tip = g_strdup_printf ("%s (%s)", action->tip, key);
- gtk_tooltips_set_tip(tooltips, widget, tip, NULL);
+ gtk_widget_set_tooltip_text(widget, tip);
g_free(tip);
g_free(key);
} else {
// action has no shortcut
- gtk_tooltips_set_tip(tooltips, widget, action->tip, NULL);
+ gtk_widget_set_tooltip_text(widget, action->tip);
}
} else {
// no action
- gtk_tooltips_set_tip(tooltips, widget, NULL, NULL);
+ gtk_widget_set_tooltip_text(widget, NULL);
}
}
@@ -316,12 +303,11 @@ sp_button_new_from_data( Inkscape::IconSize size,
SPButtonType type,
Inkscape::UI::View::View *view,
const gchar *name,
- const gchar *tip,
- GtkTooltips *tooltips )
+ const gchar *tip )
{
GtkWidget *button;
SPAction *action=sp_action_new(view, name, name, tip, name, 0);
- button = sp_button_new (size, type, action, NULL, tooltips);
+ button = sp_button_new (size, type, action, NULL);
nr_object_unref ((NRObject *) action);
return button;
}
diff --git a/src/widgets/button.h b/src/widgets/button.h
index f14af94d1..759096443 100644
--- a/src/widgets/button.h
+++ b/src/widgets/button.h
@@ -13,12 +13,10 @@
*/
#define SP_TYPE_BUTTON (sp_button_get_type ())
-#define SP_BUTTON(o) (GTK_CHECK_CAST ((o), SP_TYPE_BUTTON, SPButton))
-#define SP_IS_BUTTON(o) (GTK_CHECK_TYPE ((o), SP_TYPE_BUTTON))
+#define SP_BUTTON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_BUTTON, SPButton))
+#define SP_IS_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_BUTTON))
-#include <gtk/gtkwidget.h>
-#include <gtk/gtktogglebutton.h>
-#include <gtk/gtktooltips.h>
+#include <gtk/gtk.h>
#include "helper/action.h"
#include "icon-size.h"
@@ -40,7 +38,6 @@ struct SPButton {
unsigned int psize;
SPAction *action;
SPAction *doubleclick_action;
- GtkTooltips *tooltips;
};
struct SPButtonClass {
@@ -51,7 +48,7 @@ struct SPButtonClass {
GType sp_button_get_type (void);
-GtkWidget *sp_button_new (Inkscape::IconSize size, SPButtonType type, SPAction *action, SPAction *doubleclick_action, GtkTooltips *tooltips);
+GtkWidget *sp_button_new (Inkscape::IconSize size, SPButtonType type, SPAction *action, SPAction *doubleclick_action);
void sp_button_toggle_set_down (SPButton *button, gboolean down);
@@ -59,8 +56,7 @@ GtkWidget *sp_button_new_from_data (Inkscape::IconSize size,
SPButtonType type,
Inkscape::UI::View::View *view,
const gchar *name,
- const gchar *tip,
- GtkTooltips *tooltips);
+ const gchar *tip);
diff --git a/src/widgets/dash-selector.cpp b/src/widgets/dash-selector.cpp
index e7e029334..dead653de 100644
--- a/src/widgets/dash-selector.cpp
+++ b/src/widgets/dash-selector.cpp
@@ -32,7 +32,7 @@
#include <gtkmm/optionmenu.h>
#include <gtkmm/adjustment.h>
-#include <gtkmm/spinbutton.h>
+#include "ui/widget/spinbutton.h"
#include "dash-selector.h"
@@ -73,7 +73,7 @@ SPDashSelector::SPDashSelector() {
dash->set_menu(*m);
offset = new Gtk::Adjustment(0.0, 0.0, 10.0, 0.1, 1.0, 0.0);
- Gtk::SpinButton *sb = new Gtk::SpinButton(*offset, 0.1, 2);
+ Inkscape::UI::Widget::SpinButton *sb = new Inkscape::UI::Widget::SpinButton(*offset, 0.1, 2);
tt->set_tip(*sb, _("Pattern offset"));
sp_dialog_defocus_on_enter_cpp(sb);
diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp
index 63fdc5930..0d890fa86 100644
--- a/src/widgets/desktop-widget.cpp
+++ b/src/widgets/desktop-widget.cpp
@@ -58,6 +58,7 @@
#include "ui/widget/selected-style.h"
#include "ui/uxmanager.h"
#include "util/ege-appear-time-tracker.h"
+#include "sp-root.h"
// We're in the "widgets" directory, so no need to explicitly prefix these:
#include "button.h"
@@ -212,7 +213,7 @@ void CMSPrefWatcher::_setCmsSensitive(bool enabled)
#if ENABLE_LCMS
for ( std::list<SPDesktopWidget*>::iterator it = _widget_list.begin(); it != _widget_list.end(); ++it ) {
SPDesktopWidget *dtw = *it;
- if ( GTK_WIDGET_SENSITIVE( dtw->cms_adjust ) != enabled ) {
+ if ( gtk_widget_get_sensitive( dtw->cms_adjust ) != enabled ) {
cms_adjust_set_sensitive( dtw, enabled );
}
}
@@ -230,12 +231,12 @@ SPDesktopWidget::setMessage (Inkscape::MessageType type, const gchar *message)
gtk_label_set_markup (sb, message ? message : "");
// make sure the important messages are displayed immediately!
- if (type == Inkscape::IMMEDIATE_MESSAGE && GTK_WIDGET_DRAWABLE (GTK_WIDGET(sb))) {
+ if (type == Inkscape::IMMEDIATE_MESSAGE && gtk_widget_is_drawable (GTK_WIDGET(sb))) {
gtk_widget_queue_draw(GTK_WIDGET(sb));
gdk_window_process_updates(GTK_WIDGET(sb)->window, TRUE);
}
- gtk_tooltips_set_tip (this->tt, this->select_status_eventbox, gtk_label_get_text (sb) , NULL);
+ gtk_widget_set_tooltip_text (this->select_status_eventbox, gtk_label_get_text (sb));
}
Geom::Point
@@ -312,7 +313,6 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
dtw->window = 0;
dtw->desktop = NULL;
dtw->_interaction_disabled_counter = 0;
- dtw->tt = gtk_tooltips_new ();
/* Main table */
dtw->vbox = gtk_vbox_new (FALSE, 0);
@@ -358,7 +358,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
dtw->hruler = sp_hruler_new ();
dtw->hruler_box = eventbox;
sp_ruler_set_metric (GTK_RULER (dtw->hruler), SP_PT);
- gtk_tooltips_set_tip (dtw->tt, dtw->hruler_box, gettext(sp_unit_get_plural (&sp_unit_get_by_id(SP_UNIT_PT))), NULL);
+ gtk_widget_set_tooltip_text (dtw->hruler_box, gettext(sp_unit_get_plural (&sp_unit_get_by_id(SP_UNIT_PT))));
gtk_container_add (GTK_CONTAINER (eventbox), dtw->hruler);
gtk_table_attach (GTK_TABLE (canvas_tbl), eventbox, 1, 2, 0, 1, (GtkAttachOptions)(GTK_FILL), (GtkAttachOptions)(GTK_FILL), widget->style->xthickness, 0);
g_signal_connect (G_OBJECT (eventbox), "button_press_event", G_CALLBACK (sp_dt_hruler_event), dtw);
@@ -370,7 +370,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
dtw->vruler = sp_vruler_new ();
dtw->vruler_box = eventbox;
sp_ruler_set_metric (GTK_RULER (dtw->vruler), SP_PT);
- gtk_tooltips_set_tip (dtw->tt, dtw->vruler_box, gettext(sp_unit_get_plural (&sp_unit_get_by_id(SP_UNIT_PT))), NULL);
+ gtk_widget_set_tooltip_text (dtw->vruler_box, gettext(sp_unit_get_plural (&sp_unit_get_by_id(SP_UNIT_PT))));
gtk_container_add (GTK_CONTAINER (eventbox), GTK_WIDGET (dtw->vruler));
gtk_table_attach (GTK_TABLE (canvas_tbl), eventbox, 0, 1, 1, 2, (GtkAttachOptions)(GTK_FILL), (GtkAttachOptions)(GTK_FILL), 0, widget->style->ythickness);
g_signal_connect (G_OBJECT (eventbox), "button_press_event", G_CALLBACK (sp_dt_vruler_event), dtw);
@@ -388,8 +388,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
SP_BUTTON_TYPE_TOGGLE,
NULL,
INKSCAPE_ICON_ZOOM_ORIGINAL,
- _("Zoom drawing if window size changes"),
- dtw->tt);
+ _("Zoom drawing if window size changes"));
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dtw->sticky_zoom), prefs->getBool("/options/stickyzoom/value"));
gtk_box_pack_start (GTK_BOX (dtw->vscrollbar_box), dtw->sticky_zoom, FALSE, FALSE, 0);
g_signal_connect (G_OBJECT (dtw->sticky_zoom), "toggled", G_CALLBACK (sp_dtw_sticky_zoom_toggled), dtw);
@@ -411,8 +410,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
SP_BUTTON_TYPE_TOGGLE,
NULL,
INKSCAPE_ICON_COLOR_MANAGEMENT,
- tip,
- dtw->tt );
+ tip );
#if ENABLE_LCMS
{
Glib::ustring current = prefs->getString("/options/displayprofile/uri");
@@ -442,7 +440,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
#if ENABLE_LCMS
dtw->canvas->enable_cms_display_adj = prefs->getBool("/options/displayprofile/enable");
#endif // ENABLE_LCMS
- GTK_WIDGET_SET_FLAGS (GTK_WIDGET (dtw->canvas), GTK_CAN_FOCUS);
+ gtk_widget_set_can_focus (GTK_WIDGET (dtw->canvas), TRUE);
style = gtk_style_copy (GTK_WIDGET (dtw->canvas)->style);
style->bg[GTK_STATE_NORMAL] = style->white;
gtk_widget_set_style (GTK_WIDGET (dtw->canvas), style);
@@ -492,7 +490,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
// zoom status spinbutton
dtw->zoom_status = gtk_spin_button_new_with_range (log(SP_DESKTOP_ZOOM_MIN)/log(2), log(SP_DESKTOP_ZOOM_MAX)/log(2), 0.1);
- gtk_tooltips_set_tip (dtw->tt, dtw->zoom_status, _("Zoom"), NULL);
+ gtk_widget_set_tooltip_text (dtw->zoom_status, _("Zoom"));
gtk_widget_set_size_request (dtw->zoom_status, STATUS_ZOOM_WIDTH, -1);
gtk_entry_set_width_chars (GTK_ENTRY (dtw->zoom_status), 6);
gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (dtw->zoom_status), FALSE);
@@ -500,8 +498,8 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
g_signal_connect (G_OBJECT (dtw->zoom_status), "input", G_CALLBACK (sp_dtw_zoom_input), dtw);
g_signal_connect (G_OBJECT (dtw->zoom_status), "output", G_CALLBACK (sp_dtw_zoom_output), dtw);
gtk_object_set_data (GTK_OBJECT (dtw->zoom_status), "dtw", dtw->canvas);
- gtk_signal_connect (GTK_OBJECT (dtw->zoom_status), "focus-in-event", GTK_SIGNAL_FUNC (spinbutton_focus_in), dtw->zoom_status);
- gtk_signal_connect (GTK_OBJECT (dtw->zoom_status), "key-press-event", GTK_SIGNAL_FUNC (spinbutton_keypress), dtw->zoom_status);
+ g_signal_connect (G_OBJECT (dtw->zoom_status), "focus-in-event", G_CALLBACK (spinbutton_focus_in), dtw->zoom_status);
+ g_signal_connect (G_OBJECT (dtw->zoom_status), "key-press-event", G_CALLBACK (spinbutton_keypress), dtw->zoom_status);
dtw->zoom_update = g_signal_connect (G_OBJECT (dtw->zoom_status), "value_changed", G_CALLBACK (sp_dtw_zoom_value_changed), dtw);
dtw->zoom_update = g_signal_connect (G_OBJECT (dtw->zoom_status), "populate_popup", G_CALLBACK (sp_dtw_zoom_populate_popup), dtw);
@@ -512,7 +510,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
gtk_table_attach(GTK_TABLE(dtw->coord_status), gtk_vseparator_new(), 0,1, 0,2, GTK_FILL, GTK_FILL, 0, 0);
eventbox = gtk_event_box_new ();
gtk_container_add (GTK_CONTAINER (eventbox), dtw->coord_status);
- gtk_tooltips_set_tip (dtw->tt, eventbox, _("Cursor coordinates"), NULL);
+ gtk_widget_set_tooltip_text (eventbox, _("Cursor coordinates"));
GtkWidget *label_x = gtk_label_new(_("X:"));
gtk_misc_set_alignment (GTK_MISC(label_x), 0.0, 0.5);
gtk_table_attach(GTK_TABLE(dtw->coord_status), label_x, 1,2, 0,1, GTK_FILL, GTK_FILL, 0, 0);
@@ -601,7 +599,7 @@ sp_desktop_widget_destroy (GtkObject *object)
}
g_signal_handlers_disconnect_by_func(G_OBJECT (dtw->zoom_status), (gpointer) G_CALLBACK(sp_dtw_zoom_input), dtw);
g_signal_handlers_disconnect_by_func(G_OBJECT (dtw->zoom_status), (gpointer) G_CALLBACK(sp_dtw_zoom_output), dtw);
- gtk_signal_disconnect_by_data (GTK_OBJECT (dtw->zoom_status), dtw->zoom_status);
+ g_signal_handlers_disconnect_matched (G_OBJECT (dtw->zoom_status), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, dtw->zoom_status);
g_signal_handlers_disconnect_by_func (G_OBJECT (dtw->zoom_status), (gpointer) G_CALLBACK (sp_dtw_zoom_value_changed), dtw);
g_signal_handlers_disconnect_by_func (G_OBJECT (dtw->zoom_status), (gpointer) G_CALLBACK (sp_dtw_zoom_populate_popup), dtw);
g_signal_handlers_disconnect_by_func (G_OBJECT (dtw->canvas), (gpointer) G_CALLBACK (sp_desktop_widget_event), dtw);
@@ -699,7 +697,7 @@ sp_desktop_widget_size_allocate (GtkWidget *widget, GtkAllocation *allocation)
return;
}
- if (GTK_WIDGET_REALIZED (widget)) {
+ if (gtk_widget_get_realized (widget)) {
Geom::Rect const area = dtw->desktop->get_display_area();
double zoom = dtw->desktop->current_zoom();
@@ -891,7 +889,7 @@ SPDesktopWidget::shutdown()
"If you close without saving, your changes will be discarded."),
doc->getName());
// fix for bug 1767940:
- GTK_WIDGET_UNSET_FLAGS(GTK_WIDGET(GTK_MESSAGE_DIALOG(dialog)->label), GTK_CAN_FOCUS);
+ gtk_widget_set_can_focus(GTK_WIDGET(GTK_MESSAGE_DIALOG(dialog)->label), FALSE);
GtkWidget *close_button;
close_button = gtk_button_new_with_mnemonic(_("Close _without saving"));
@@ -947,7 +945,7 @@ SPDesktopWidget::shutdown()
"Do you want to save this file as Inkscape SVG?"),
doc->getName() ? doc->getName() : "Unnamed");
// fix for bug 1767940:
- GTK_WIDGET_UNSET_FLAGS(GTK_WIDGET(GTK_MESSAGE_DIALOG(dialog)->label), GTK_CAN_FOCUS);
+ gtk_widget_set_can_focus(GTK_WIDGET(GTK_MESSAGE_DIALOG(dialog)->label), FALSE);
GtkWidget *close_button;
close_button = gtk_button_new_with_mnemonic(_("Close _without saving"));
@@ -1079,7 +1077,7 @@ SPDesktopWidget::letZoomGrabFocus()
void
SPDesktopWidget::getWindowGeometry (gint &x, gint &y, gint &w, gint &h)
{
- gboolean vis = GTK_WIDGET_VISIBLE (this);
+ gboolean vis = gtk_widget_get_visible (GTK_WIDGET(this));
(void)vis; // TODO figure out why it is here but not used.
Gtk::Window *window = (Gtk::Window*)gtk_object_get_data (GTK_OBJECT(this), "window");
@@ -1150,6 +1148,25 @@ SPDesktopWidget::presentWindow()
gtk_window_present (w);
}
+bool SPDesktopWidget::showInfoDialog( Glib::ustring const &message )
+{
+ bool result = false;
+ GtkWindow *window = GTK_WINDOW( gtk_widget_get_toplevel( GTK_WIDGET(this) ) );
+ if (window)
+ {
+ GtkWidget *dialog = gtk_message_dialog_new(
+ window,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_OK,
+ "%s", message.c_str());
+ gtk_window_set_title( GTK_WINDOW(dialog), _("Note:")); // probably want to take this as a parameter.
+ gint response = gtk_dialog_run(GTK_DIALOG(dialog));
+ gtk_widget_destroy(dialog);
+ }
+ return result;
+}
+
bool
SPDesktopWidget::warnDialog (gchar* text)
{
@@ -1575,8 +1592,8 @@ void SPDesktopWidget::namedviewModified(SPObject *obj, guint flags)
} // children
} // if aux_toolbox is a container
- gtk_tooltips_set_tip(this->tt, this->hruler_box, gettext(sp_unit_get_plural (nv->doc_units)), NULL);
- gtk_tooltips_set_tip(this->tt, this->vruler_box, gettext(sp_unit_get_plural (nv->doc_units)), NULL);
+ gtk_widget_set_tooltip_text(this->hruler_box, gettext(sp_unit_get_plural (nv->doc_units)));
+ gtk_widget_set_tooltip_text(this->vruler_box, gettext(sp_unit_get_plural (nv->doc_units)));
sp_desktop_widget_update_rulers(this);
ToolboxFactory::updateSnapToolbox(this->desktop, 0, this->snap_toolbox);
@@ -1786,7 +1803,7 @@ void
sp_desktop_widget_toggle_rulers (SPDesktopWidget *dtw)
{
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- if (GTK_WIDGET_VISIBLE (dtw->hruler)) {
+ if (gtk_widget_get_visible (dtw->hruler)) {
gtk_widget_hide_all (dtw->hruler);
gtk_widget_hide_all (dtw->vruler);
prefs->setBool(dtw->desktop->is_fullscreen() ? "/fullscreen/rulers/state" : "/window/rulers/state", false);
@@ -1801,7 +1818,7 @@ void
sp_desktop_widget_toggle_scrollbars (SPDesktopWidget *dtw)
{
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- if (GTK_WIDGET_VISIBLE (dtw->hscrollbar)) {
+ if (gtk_widget_get_visible (dtw->hscrollbar)) {
gtk_widget_hide_all (dtw->hscrollbar);
gtk_widget_hide_all (dtw->vscrollbar_box);
gtk_widget_hide_all( dtw->cms_adjust );
@@ -1817,7 +1834,7 @@ sp_desktop_widget_toggle_scrollbars (SPDesktopWidget *dtw)
void sp_desktop_widget_toggle_color_prof_adj( SPDesktopWidget *dtw )
{
- if ( GTK_WIDGET_SENSITIVE( dtw->cms_adjust ) ) {
+ if ( gtk_widget_get_sensitive( dtw->cms_adjust ) ) {
if ( SP_BUTTON_IS_DOWN(dtw->cms_adjust) ) {
sp_button_toggle_set_down( SP_BUTTON(dtw->cms_adjust), FALSE );
} else {
@@ -1831,7 +1848,7 @@ void
sp_spw_toggle_menubar (SPDesktopWidget *dtw, bool is_fullscreen)
{
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- if (GTK_WIDGET_VISIBLE (dtw->menubar)) {
+ if (gtk_widget_get_visible (dtw->menubar)) {
gtk_widget_hide_all (dtw->menubar);
prefs->setBool(is_fullscreen ? "/fullscreen/menu/state" : "/window/menu/state", false);
} else {
@@ -1869,9 +1886,8 @@ sp_desktop_widget_update_scrollbars (SPDesktopWidget *dtw, double scale)
SPDocument *doc = dtw->desktop->doc();
Geom::Rect darea ( Geom::Point(-doc->getWidth(), -doc->getHeight()),
Geom::Point(2 * doc->getWidth(), 2 * doc->getHeight()) );
- SPObject* root = doc->root;
- SPItem* item = SP_ITEM(root);
- Geom::OptRect deskarea = Geom::unify(darea, item->getBboxDesktop());
+
+ Geom::OptRect deskarea = Geom::unify(darea, doc->getRoot()->getBboxDesktop());
/* Canvas region we always show unconditionally */
Geom::Rect carea( Geom::Point(deskarea->min()[Geom::X] * scale - 64, deskarea->max()[Geom::Y] * -scale - 64),
diff --git a/src/widgets/desktop-widget.h b/src/widgets/desktop-widget.h
index 0102897e5..6c5af0aac 100644
--- a/src/widgets/desktop-widget.h
+++ b/src/widgets/desktop-widget.h
@@ -12,8 +12,7 @@
* ? -2004
*/
-#include <gtk/gtktooltips.h>
-#include <gtk/gtkwindow.h>
+#include <gtk/gtk.h>
#include "libnr/nr-point.h"
#include "forward.h"
@@ -31,10 +30,10 @@ struct SPCanvas;
#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))
+#define SP_DESKTOP_WIDGET(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_DESKTOP_WIDGET, SPDesktopWidget))
+#define SP_DESKTOP_WIDGET_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_DESKTOP_WIDGET, SPDesktopWidgetClass))
+#define SP_IS_DESKTOP_WIDGET(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_DESKTOP_WIDGET))
+#define SP_IS_DESKTOP_WIDGET_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_DESKTOP_WIDGET))
void sp_desktop_widget_destroy (SPDesktopWidget* dtw);
@@ -70,8 +69,6 @@ struct SPDesktopWidget {
sigc::connection modified_connection;
- GtkTooltips *tt;
-
SPDesktop *desktop;
Gtk::Window *window;
@@ -200,8 +197,14 @@ struct SPDesktopWidget {
{ _dtw->setCoordinateStatus (p); }
virtual void setMessage (Inkscape::MessageType type, gchar const* msg)
{ _dtw->setMessage (type, msg); }
+
+ virtual bool showInfoDialog( Glib::ustring const &message ) {
+ return _dtw->showInfoDialog( message );
+ }
+
virtual bool warnDialog (gchar* text)
{ return _dtw->warnDialog (text); }
+
virtual Inkscape::UI::Widget::Dock* getDock ()
{ return _dtw->getDock(); }
};
@@ -218,6 +221,7 @@ struct SPDesktopWidget {
void setWindowSize (gint w, gint h);
void setWindowTransient (void *p, int transient_policy);
void presentWindow();
+ bool showInfoDialog( Glib::ustring const &message );
bool warnDialog (gchar *text);
void setToolboxFocusTo (gchar const *);
void setToolboxAdjustmentValue (gchar const * id, double value);
diff --git a/src/widgets/eek-preview.cpp b/src/widgets/eek-preview.cpp
index 8fefbe75c..1ca656ae1 100644
--- a/src/widgets/eek-preview.cpp
+++ b/src/widgets/eek-preview.cpp
@@ -192,7 +192,7 @@ static guint eek_preview_signals[LAST_SIGNAL] = { 0 };
gboolean eek_preview_expose_event( GtkWidget* widget, GdkEventExpose* event )
{
-/* g_message("Exposed!!! %s", GTK_WIDGET_HAS_FOCUS(widget) ? "XXX" : "---" ); */
+/* g_message("Exposed!!! %s", gtk_widget_has_focus(widget) ? "XXX" : "---" ); */
gint insetX = 0;
gint insetY = 0;
@@ -218,13 +218,13 @@ gboolean eek_preview_expose_event( GtkWidget* widget, GdkEventExpose* event )
}
*/
- if ( GTK_WIDGET_DRAWABLE( widget ) ) {
+ if ( gtk_widget_is_drawable( widget ) ) {
GtkStyle* style = gtk_widget_get_style( widget );
if ( insetX > 0 || insetY > 0 ) {
gtk_paint_flat_box( style,
widget->window,
- (GtkStateType)GTK_WIDGET_STATE(widget),
+ (GtkStateType)gtk_widget_get_state(widget),
GTK_SHADOW_NONE,
NULL,
widget,
@@ -379,7 +379,7 @@ gboolean eek_preview_expose_event( GtkWidget* widget, GdkEventExpose* event )
}
- if ( GTK_WIDGET_HAS_FOCUS(widget) ) {
+ if ( gtk_widget_has_focus(widget) ) {
gtk_paint_focus( style,
widget->window,
GTK_STATE_NORMAL,
@@ -437,7 +437,7 @@ static gboolean eek_preview_button_press_cb( GtkWidget* widget, GdkEventButton*
if ( gtk_get_event_widget( (GdkEvent*)event ) == widget ) {
EekPreview* preview = EEK_PREVIEW(widget);
- if ( preview->_takesFocus && !GTK_WIDGET_HAS_FOCUS(widget) ) {
+ if ( preview->_takesFocus && !gtk_widget_has_focus(widget) ) {
gtk_widget_grab_focus(widget);
}
@@ -684,8 +684,8 @@ void eek_preview_set_details( EekPreview* preview, PreviewStyle prevstyle, ViewT
static void eek_preview_init( EekPreview *preview )
{
GtkWidget* widg = GTK_WIDGET(preview);
- GTK_WIDGET_SET_FLAGS( widg, GTK_CAN_FOCUS );
- GTK_WIDGET_SET_FLAGS( widg, GTK_RECEIVES_DEFAULT );
+ gtk_widget_set_can_focus( widg, TRUE );
+ gtk_widget_set_receives_default( widg, TRUE );
gtk_widget_set_sensitive( widg, TRUE );
diff --git a/src/widgets/eek-preview.h b/src/widgets/eek-preview.h
index 49fe8e660..c15f25eb6 100644
--- a/src/widgets/eek-preview.h
+++ b/src/widgets/eek-preview.h
@@ -40,8 +40,8 @@
#ifndef SEEN_EEK_PREVIEW_H
#define SEEN_EEK_PREVIEW_H
-#include <gdk/gdkpixbuf.h>
-#include <gtk/gtkdrawingarea.h>
+#include <gdk/gdk.h>
+#include <gtk/gtk.h>
G_BEGIN_DECLS
diff --git a/src/widgets/ege-paint-def.cpp b/src/widgets/ege-paint-def.cpp
index 2fc6927df..9eb54b039 100644
--- a/src/widgets/ege-paint-def.cpp
+++ b/src/widgets/ege-paint-def.cpp
@@ -50,6 +50,7 @@
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
+#include <glibmm/i18n.h>
#include <glibmm/stringutils.h>
#if !defined(_)
diff --git a/src/widgets/fill-style.cpp b/src/widgets/fill-style.cpp
index b4272a3a4..c6e97666a 100644
--- a/src/widgets/fill-style.cpp
+++ b/src/widgets/fill-style.cpp
@@ -23,7 +23,7 @@
#include <glibmm/i18n.h>
#include <gtkmm/box.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include "desktop.h"
#include "selection.h"
diff --git a/src/widgets/gradient-image.h b/src/widgets/gradient-image.h
index e098beab4..ae5d40f56 100644
--- a/src/widgets/gradient-image.h
+++ b/src/widgets/gradient-image.h
@@ -13,7 +13,8 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include <gtk/gtkwidget.h>
+#include <gtk/gtk.h>
+
class SPGradient;
#include <glib.h>
@@ -22,10 +23,10 @@ class SPGradient;
#include <sigc++/connection.h>
#define SP_TYPE_GRADIENT_IMAGE (sp_gradient_image_get_type ())
-#define SP_GRADIENT_IMAGE(o) (GTK_CHECK_CAST ((o), SP_TYPE_GRADIENT_IMAGE, SPGradientImage))
-#define SP_GRADIENT_IMAGE_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_IMAGE, SPGradientImageClass))
-#define SP_IS_GRADIENT_IMAGE(o) (GTK_CHECK_TYPE ((o), SP_TYPE_GRADIENT_IMAGE))
-#define SP_IS_GRADIENT_IMAGE_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_IMAGE))
+#define SP_GRADIENT_IMAGE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_GRADIENT_IMAGE, SPGradientImage))
+#define SP_GRADIENT_IMAGE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_IMAGE, SPGradientImageClass))
+#define SP_IS_GRADIENT_IMAGE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_GRADIENT_IMAGE))
+#define SP_IS_GRADIENT_IMAGE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_IMAGE))
struct SPGradientImage {
GtkWidget widget;
@@ -44,6 +45,4 @@ GtkType sp_gradient_image_get_type (void);
GtkWidget *sp_gradient_image_new (SPGradient *gradient);
void sp_gradient_image_set_gradient (SPGradientImage *gi, SPGradient *gr);
-
-
#endif
diff --git a/src/widgets/gradient-selector.cpp b/src/widgets/gradient-selector.cpp
index f7a981c9f..a3110ed5b 100644
--- a/src/widgets/gradient-selector.cpp
+++ b/src/widgets/gradient-selector.cpp
@@ -16,11 +16,7 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
-#include <gtk/gtkhbox.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkoptionmenu.h>
-#include <gtk/gtkmenuitem.h>
-#include <gtk/gtktooltips.h>
+#include <gtk/gtk.h>
#include "document.h"
#include "../document-private.h"
@@ -89,30 +85,34 @@ sp_gradient_selector_class_init (SPGradientSelectorClass *klass)
parent_class = (GtkVBoxClass*)gtk_type_class (GTK_TYPE_VBOX);
- signals[GRABBED] = gtk_signal_new ("grabbed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPGradientSelectorClass, grabbed),
+ signals[GRABBED] = g_signal_new ("grabbed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPGradientSelectorClass, grabbed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- signals[DRAGGED] = gtk_signal_new ("dragged",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPGradientSelectorClass, dragged),
+ G_TYPE_NONE, 0);
+ signals[DRAGGED] = g_signal_new ("dragged",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPGradientSelectorClass, dragged),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- signals[RELEASED] = gtk_signal_new ("released",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPGradientSelectorClass, released),
+ G_TYPE_NONE, 0);
+ signals[RELEASED] = g_signal_new ("released",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPGradientSelectorClass, released),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- signals[CHANGED] = gtk_signal_new ("changed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPGradientSelectorClass, changed),
+ G_TYPE_NONE, 0);
+ signals[CHANGED] = g_signal_new ("changed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPGradientSelectorClass, changed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
+ G_TYPE_NONE, 0);
object_class->destroy = sp_gradient_selector_destroy;
}
@@ -137,7 +137,6 @@ static void sp_gradient_selector_init(SPGradientSelector *sel)
GtkWidget *hb = gtk_hbox_new( FALSE, 0 );
sel->nonsolid.push_back(hb);
gtk_box_pack_start( GTK_BOX(sel), hb, FALSE, FALSE, 0 );
- GtkTooltips *ttips = gtk_tooltips_new ();
sel->add = gtk_button_new_with_label (_("Duplicate"));
sel->nonsolid.push_back(sel->add);
@@ -163,12 +162,12 @@ static void sp_gradient_selector_init(SPGradientSelector *sel)
sel->nonsolid.push_back(sel->spread);
gtk_widget_show(sel->spread);
gtk_box_pack_end( GTK_BOX(hb), sel->spread, FALSE, FALSE, 0 );
- gtk_tooltips_set_tip( ttips, sel->spread,
+ gtk_widget_set_tooltip_text( sel->spread,
// TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html#LinearGradientSpreadMethodAttribute
_("Whether to fill with flat color beyond the ends of the gradient vector "
"(spreadMethod=\"pad\"), or repeat the gradient in the same direction "
"(spreadMethod=\"repeat\"), or repeat the gradient in alternating opposite "
- "directions (spreadMethod=\"reflect\")"), NULL);
+ "directions (spreadMethod=\"reflect\")"));
GtkWidget *m = gtk_menu_new();
GtkWidget *mi = gtk_menu_item_new_with_label(_("none"));
@@ -360,7 +359,7 @@ sp_gradient_selector_add_vector_clicked (GtkWidget */*w*/, SPGradientSelector *s
Inkscape::GC::release(stop);
}
- SP_DOCUMENT_DEFS(doc)->getRepr()->addChild(repr, NULL);
+ doc->getDefs()->getRepr()->addChild(repr, NULL);
gr = (SPGradient *) doc->getObjectByRepr(repr);
sp_gradient_vector_selector_set_gradient(
diff --git a/src/widgets/gradient-selector.h b/src/widgets/gradient-selector.h
index 860804ec6..d957f7baf 100644
--- a/src/widgets/gradient-selector.h
+++ b/src/widgets/gradient-selector.h
@@ -16,7 +16,7 @@
*/
#include <glib.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include <vector>
#include "sp-gradient.h"
#include "sp-gradient-spread.h"
@@ -25,10 +25,10 @@
class SPGradient;
#define SP_TYPE_GRADIENT_SELECTOR (sp_gradient_selector_get_type ())
-#define SP_GRADIENT_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_GRADIENT_SELECTOR, SPGradientSelector))
-#define SP_GRADIENT_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_SELECTOR, SPGradientSelectorClass))
-#define SP_IS_GRADIENT_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_GRADIENT_SELECTOR))
-#define SP_IS_GRADIENT_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_SELECTOR))
+#define SP_GRADIENT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_GRADIENT_SELECTOR, SPGradientSelector))
+#define SP_GRADIENT_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_SELECTOR, SPGradientSelectorClass))
+#define SP_IS_GRADIENT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_GRADIENT_SELECTOR))
+#define SP_IS_GRADIENT_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_SELECTOR))
diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp
index e7596ead4..9186044de 100644
--- a/src/widgets/gradient-toolbar.cpp
+++ b/src/widgets/gradient-toolbar.cpp
@@ -464,8 +464,6 @@ GtkWidget * gr_change_widget(SPDesktop *desktop)
SPGradientSpread spr_selected = (SPGradientSpread) INT_MAX; // meaning undefined
bool spr_multi = false;
- GtkTooltips *tt = gtk_tooltips_new();
-
gr_read_selection (selection, ev? ev->get_drag() : 0, gr_selected, gr_multi, spr_selected, spr_multi);
GtkWidget *widget = gtk_hbox_new(FALSE, FALSE);
@@ -484,10 +482,10 @@ GtkWidget * gr_change_widget(SPDesktop *desktop)
{
GtkWidget *hb = gtk_hbox_new(FALSE, 1);
GtkWidget *b = gtk_button_new_with_label(_("Edit..."));
- gtk_tooltips_set_tip(tt, b, _("Edit the stops of the gradient"), NULL);
+ gtk_widget_set_tooltip_text(b, _("Edit the stops of the gradient"));
gtk_widget_show(b);
gtk_container_add(GTK_CONTAINER(hb), b);
- gtk_signal_connect(GTK_OBJECT(b), "clicked", GTK_SIGNAL_FUNC(gr_edit), widget);
+ g_signal_connect(G_OBJECT(b), "clicked", G_CALLBACK(gr_edit), widget);
gtk_box_pack_start (GTK_BOX(buttons), hb, FALSE, FALSE, 0);
}
@@ -521,9 +519,9 @@ GtkWidget * gr_change_widget(SPDesktop *desktop)
// connect to release and modified signals of the defs (i.e. when someone changes gradient)
sigc::connection *release_connection = new sigc::connection();
- *release_connection = SP_DOCUMENT_DEFS(document)->connectRelease(sigc::bind<1>(sigc::ptr_fun(&gr_defs_release), widget));
+ *release_connection = document->getDefs()->connectRelease(sigc::bind<1>(sigc::ptr_fun(&gr_defs_release), widget));
sigc::connection *modified_connection = new sigc::connection();
- *modified_connection = SP_DOCUMENT_DEFS(document)->connectModified(sigc::bind<2>(sigc::ptr_fun(&gr_defs_modified), widget));
+ *modified_connection = document->getDefs()->connectModified(sigc::bind<2>(sigc::ptr_fun(&gr_defs_modified), widget));
// when widget is destroyed, disconnect
g_signal_connect(G_OBJECT(widget), "destroy", G_CALLBACK(gr_disconnect_sigc), release_connection);
@@ -542,8 +540,6 @@ sp_gradient_toolbox_new(SPDesktop *desktop)
gtk_object_set_data(GTK_OBJECT(tbl), "dtw", desktop->canvas);
gtk_object_set_data(GTK_OBJECT(tbl), "desktop", desktop);
- GtkTooltips *tt = gtk_tooltips_new();
-
sp_toolbox_add_label(tbl, _("<b>New:</b>"));
// TODO replace aux_toolbox_space(tbl, AUX_SPACING);
@@ -557,8 +553,7 @@ sp_gradient_toolbox_new(SPDesktop *desktop)
SP_BUTTON_TYPE_TOGGLE,
NULL,
INKSCAPE_ICON_PAINT_GRADIENT_LINEAR,
- _("Create linear gradient"),
- tt);
+ _("Create linear gradient") );
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_type), tbl);
g_object_set_data(G_OBJECT(tbl), "linear", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
@@ -571,8 +566,7 @@ sp_gradient_toolbox_new(SPDesktop *desktop)
SP_BUTTON_TYPE_TOGGLE,
NULL,
INKSCAPE_ICON_PAINT_GRADIENT_RADIAL,
- _("Create radial (elliptic or circular) gradient"),
- tt);
+ _("Create radial (elliptic or circular) gradient"));
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_type), tbl);
g_object_set_data(G_OBJECT(tbl), "radial", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
@@ -599,8 +593,7 @@ sp_gradient_toolbox_new(SPDesktop *desktop)
SP_BUTTON_TYPE_TOGGLE,
NULL,
INKSCAPE_ICON_OBJECT_FILL,
- _("Create gradient in the fill"),
- tt);
+ _("Create gradient in the fill"));
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_fillstroke), tbl);
g_object_set_data(G_OBJECT(tbl), "fill", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
@@ -613,8 +606,7 @@ sp_gradient_toolbox_new(SPDesktop *desktop)
SP_BUTTON_TYPE_TOGGLE,
NULL,
INKSCAPE_ICON_OBJECT_STROKE,
- _("Create gradient in the stroke"),
- tt);
+ _("Create gradient in the stroke"));
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_fillstroke), tbl);
g_object_set_data(G_OBJECT(tbl), "stroke", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
diff --git a/src/widgets/gradient-toolbar.h b/src/widgets/gradient-toolbar.h
index 41138724a..f1e258f6b 100644
--- a/src/widgets/gradient-toolbar.h
+++ b/src/widgets/gradient-toolbar.h
@@ -12,7 +12,7 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include <gtk/gtkwidget.h>
+#include <gtk/gtk.h>
struct SPDesktop;
GtkWidget *sp_gradient_toolbox_new (SPDesktop *desktop);
diff --git a/src/widgets/gradient-vector.cpp b/src/widgets/gradient-vector.cpp
index 737b3d7bb..a58b22d7c 100644
--- a/src/widgets/gradient-vector.cpp
+++ b/src/widgets/gradient-vector.cpp
@@ -104,13 +104,14 @@ static void sp_gradient_vector_selector_class_init(SPGradientVectorSelectorClass
parent_class = static_cast<GtkVBoxClass*>(gtk_type_class(GTK_TYPE_VBOX));
- signals[VECTOR_SET] = gtk_signal_new( "vector_set",
- GTK_RUN_LAST,
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPGradientVectorSelectorClass, vector_set),
- gtk_marshal_NONE__POINTER,
- GTK_TYPE_NONE, 1,
- GTK_TYPE_POINTER);
+ signals[VECTOR_SET] = g_signal_new( "vector_set",
+ G_TYPE_FROM_CLASS(object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET(SPGradientVectorSelectorClass, vector_set),
+ NULL, NULL,
+ gtk_marshal_NONE__POINTER,
+ G_TYPE_NONE, 1,
+ GTK_TYPE_POINTER);
object_class->destroy = sp_gradient_vector_selector_destroy;
}
@@ -204,8 +205,8 @@ void sp_gradient_vector_selector_set_gradient(SPGradientVectorSelector *gvs, SPD
// Connect signals
if (doc) {
- gvs->defs_release_connection = SP_DOCUMENT_DEFS(doc)->connectRelease(sigc::bind<1>(sigc::ptr_fun(&sp_gvs_defs_release), gvs));
- gvs->defs_modified_connection = SP_DOCUMENT_DEFS(doc)->connectModified(sigc::bind<2>(sigc::ptr_fun(&sp_gvs_defs_modified), gvs));
+ gvs->defs_release_connection = doc->getDefs()->connectRelease(sigc::bind<1>(sigc::ptr_fun(&sp_gvs_defs_release), gvs));
+ gvs->defs_modified_connection = doc->getDefs()->connectModified(sigc::bind<2>(sigc::ptr_fun(&sp_gvs_defs_modified), gvs));
}
if (gr) {
gvs->gradient_release_connection = gr->connectRelease(sigc::bind<1>(sigc::ptr_fun(&sp_gvs_gradient_release), gvs));
@@ -789,13 +790,12 @@ static GtkWidget * sp_gradient_vector_widget_new(SPGradient *gradient, SPStop *s
gtk_box_pack_start(GTK_BOX(vb), w, TRUE, TRUE, PAD);
sp_repr_add_listener(gradient->getRepr(), &grad_edit_dia_repr_events, vb);
- GtkTooltips *tt = gtk_tooltips_new();
/* Stop list */
GtkWidget *mnu = gtk_option_menu_new();
/* Create new menu widget */
update_stop_list(GTK_WIDGET(mnu), gradient, NULL);
- gtk_signal_connect(GTK_OBJECT(mnu), "changed", GTK_SIGNAL_FUNC(sp_grad_edit_select), vb);
+ g_signal_connect(G_OBJECT(mnu), "changed", G_CALLBACK(sp_grad_edit_select), vb);
gtk_widget_show(mnu);
gtk_object_set_data(GTK_OBJECT(vb), "stopmenu", mnu);
gtk_box_pack_start(GTK_BOX(vb), mnu, FALSE, FALSE, 0);
@@ -806,13 +806,13 @@ static GtkWidget * sp_gradient_vector_widget_new(SPGradient *gradient, SPStop *s
GtkWidget *b = gtk_button_new_with_label(_("Add stop"));
gtk_widget_show(b);
gtk_container_add(GTK_CONTAINER(hb), b);
- gtk_tooltips_set_tip(tt, b, _("Add another control stop to gradient"), NULL);
- gtk_signal_connect(GTK_OBJECT(b), "clicked", GTK_SIGNAL_FUNC(sp_grd_ed_add_stop), vb);
+ gtk_widget_set_tooltip_text(b, _("Add another control stop to gradient"));
+ g_signal_connect(G_OBJECT(b), "clicked", G_CALLBACK(sp_grd_ed_add_stop), vb);
b = gtk_button_new_with_label(_("Delete stop"));
gtk_widget_show(b);
gtk_container_add(GTK_CONTAINER(hb), b);
- gtk_tooltips_set_tip(tt, b, _("Delete current control stop from gradient"), NULL);
- gtk_signal_connect(GTK_OBJECT(b), "clicked", GTK_SIGNAL_FUNC(sp_grd_ed_del_stop), vb);
+ gtk_widget_set_tooltip_text(b, _("Delete current control stop from gradient"));
+ g_signal_connect(G_OBJECT(b), "clicked", G_CALLBACK(sp_grd_ed_del_stop), vb);
gtk_widget_show(hb);
gtk_box_pack_start(GTK_BOX(vb),hb, FALSE, FALSE, AUX_BETWEEN_BUTTON_GROUPS);
@@ -859,10 +859,10 @@ static GtkWidget * sp_gradient_vector_widget_new(SPGradient *gradient, SPStop *s
/* Signals */
- gtk_signal_connect(GTK_OBJECT(Offset_adj), "value_changed",
- GTK_SIGNAL_FUNC(offadjustmentChanged), vb);
+ g_signal_connect(G_OBJECT(Offset_adj), "value_changed",
+ G_CALLBACK(offadjustmentChanged), vb);
- // gtk_signal_connect(GTK_OBJECT(slider), "changed", GTK_SIGNAL_FUNC(offsliderChanged), vb);
+ // g_signal_connect(G_OBJECT(slider), "changed", G_CALLBACK(offsliderChanged), vb);
gtk_widget_show(hb);
gtk_box_pack_start(GTK_BOX(vb), hb, FALSE, FALSE, PAD);
@@ -926,9 +926,9 @@ GtkWidget * sp_gradient_vector_editor_new(SPGradient *gradient, SPStop *stop)
wd.win = dlg;
wd.stop = 0;
g_signal_connect(G_OBJECT(INKSCAPE), "activate_desktop", G_CALLBACK(sp_transientize_callback), &wd);
- gtk_signal_connect(GTK_OBJECT(dlg), "event", GTK_SIGNAL_FUNC(sp_dialog_event_handler), dlg);
- gtk_signal_connect(GTK_OBJECT(dlg), "destroy", G_CALLBACK(sp_gradient_vector_dialog_destroy), dlg);
- gtk_signal_connect(GTK_OBJECT(dlg), "delete_event", G_CALLBACK(sp_gradient_vector_dialog_delete), dlg);
+ g_signal_connect(G_OBJECT(dlg), "event", G_CALLBACK(sp_dialog_event_handler), dlg);
+ g_signal_connect(G_OBJECT(dlg), "destroy", G_CALLBACK(sp_gradient_vector_dialog_destroy), dlg);
+ g_signal_connect(G_OBJECT(dlg), "delete_event", G_CALLBACK(sp_gradient_vector_dialog_delete), dlg);
g_signal_connect(G_OBJECT(INKSCAPE), "shut_down", G_CALLBACK(sp_gradient_vector_dialog_delete), dlg);
g_signal_connect( G_OBJECT(INKSCAPE), "dialogs_hide", G_CALLBACK(sp_dialog_hide), dlg );
g_signal_connect( G_OBJECT(INKSCAPE), "dialogs_unhide", G_CALLBACK(sp_dialog_unhide), dlg );
diff --git a/src/widgets/gradient-vector.h b/src/widgets/gradient-vector.h
index 012d4e9a3..6b165aca2 100644
--- a/src/widgets/gradient-vector.h
+++ b/src/widgets/gradient-vector.h
@@ -20,14 +20,14 @@
#include <stddef.h>
#include <sigc++/connection.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include "../forward.h"
#define SP_TYPE_GRADIENT_VECTOR_SELECTOR (sp_gradient_vector_selector_get_type ())
-#define SP_GRADIENT_VECTOR_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_GRADIENT_VECTOR_SELECTOR, SPGradientVectorSelector))
-#define SP_GRADIENT_VECTOR_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_VECTOR_SELECTOR, SPGradientVectorSelectorClass))
-#define SP_IS_GRADIENT_VECTOR_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_GRADIENT_VECTOR_SELECTOR))
-#define SP_IS_GRADIENT_VECTOR_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_VECTOR_SELECTOR))
+#define SP_GRADIENT_VECTOR_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_GRADIENT_VECTOR_SELECTOR, SPGradientVectorSelector))
+#define SP_GRADIENT_VECTOR_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_VECTOR_SELECTOR, SPGradientVectorSelectorClass))
+#define SP_IS_GRADIENT_VECTOR_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_GRADIENT_VECTOR_SELECTOR))
+#define SP_IS_GRADIENT_VECTOR_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_VECTOR_SELECTOR))
struct SPGradientVectorSelector {
GtkVBox vbox;
diff --git a/src/widgets/icon.cpp b/src/widgets/icon.cpp
index 88cf43588..450c5f0d9 100644
--- a/src/widgets/icon.cpp
+++ b/src/widgets/icon.cpp
@@ -177,7 +177,7 @@ void IconImpl::classInit(SPIconClass *klass)
void IconImpl::init(SPIcon *icon)
{
- GTK_WIDGET_FLAGS(icon) |= GTK_NO_WINDOW;
+ gtk_widget_set_has_window (GTK_WIDGET (icon), FALSE);
icon->lsize = Inkscape::ICON_SIZE_BUTTON;
icon->psize = 0;
icon->name = 0;
@@ -225,14 +225,14 @@ void IconImpl::sizeAllocate(GtkWidget *widget, GtkAllocation *allocation)
{
widget->allocation = *allocation;
- if (GTK_WIDGET_DRAWABLE(widget)) {
+ if (gtk_widget_is_drawable(widget)) {
gtk_widget_queue_draw(widget);
}
}
int IconImpl::expose(GtkWidget *widget, GdkEventExpose *event)
{
- if ( GTK_WIDGET_DRAWABLE(widget) ) {
+ if ( gtk_widget_is_drawable(widget) ) {
SPIcon *icon = SP_ICON(widget);
if ( !icon->pb ) {
fetchPixbuf( icon );
@@ -996,13 +996,13 @@ void IconImpl::paint(SPIcon *icon, GdkRectangle const */*area*/)
bool unref_image = false;
/* copied from the expose function of GtkImage */
- if (GTK_WIDGET_STATE (icon) != GTK_STATE_NORMAL && image) {
+ if (gtk_widget_get_state (GTK_WIDGET(icon)) != GTK_STATE_NORMAL && image) {
GtkIconSource *source = gtk_icon_source_new();
gtk_icon_source_set_pixbuf(source, icon->pb);
gtk_icon_source_set_size(source, GTK_ICON_SIZE_SMALL_TOOLBAR); // note: this is boilerplate and not used
gtk_icon_source_set_size_wildcarded(source, FALSE);
image = gtk_style_render_icon (widget.style, source, gtk_widget_get_direction(&widget),
- (GtkStateType) GTK_WIDGET_STATE(&widget), (GtkIconSize)-1, &widget, "gtk-image");
+ (GtkStateType) gtk_widget_get_state(&widget), (GtkIconSize)-1, &widget, "gtk-image");
gtk_icon_source_free(source);
unref_image = true;
}
diff --git a/src/widgets/icon.h b/src/widgets/icon.h
index a20fad73a..f04d2f8da 100644
--- a/src/widgets/icon.h
+++ b/src/widgets/icon.h
@@ -19,10 +19,10 @@
#include "icon-size.h"
#define SP_TYPE_ICON SPIcon::getType()
-#define SP_ICON(o) (GTK_CHECK_CAST ((o), SP_TYPE_ICON, SPIcon))
-#define SP_IS_ICON(o) (GTK_CHECK_TYPE ((o), SP_TYPE_ICON))
+#define SP_ICON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_ICON, SPIcon))
+#define SP_IS_ICON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_ICON))
-#include <gtk/gtkwidget.h>
+#include <gtk/gtk.h>
struct SPIconClass {
GtkWidgetClass parent_class;
diff --git a/src/widgets/paint-selector.cpp b/src/widgets/paint-selector.cpp
index f0b55cf13..642837e61 100644
--- a/src/widgets/paint-selector.cpp
+++ b/src/widgets/paint-selector.cpp
@@ -23,14 +23,7 @@
#include <cstring>
#include <string>
-#include <gtk/gtkhbox.h>
-#include <gtk/gtkradiobutton.h>
-#include <gtk/gtkframe.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkoptionmenu.h>
-#include <gtk/gtktooltips.h>
-#include <gtk/gtkmenuitem.h>
-#include <gtk/gtkseparatormenuitem.h>
+#include <gtk/gtk.h>
#include "../sp-pattern.h"
#include <glibmm/i18n.h>
@@ -78,7 +71,7 @@ static void sp_paint_selector_class_init(SPPaintSelectorClass *klass);
static void sp_paint_selector_init(SPPaintSelector *slider);
static void sp_paint_selector_destroy(GtkObject *object);
-static GtkWidget *sp_paint_selector_style_button_add(SPPaintSelector *psel, gchar const *px, SPPaintSelector::Mode mode, GtkTooltips *tt, gchar const *tip);
+static GtkWidget *sp_paint_selector_style_button_add(SPPaintSelector *psel, gchar const *px, SPPaintSelector::Mode mode, gchar const *tip);
static void sp_paint_selector_style_button_toggled(GtkToggleButton *tb, SPPaintSelector *psel);
static void sp_paint_selector_fillrule_toggled(GtkToggleButton *tb, SPPaintSelector *psel);
@@ -171,42 +164,48 @@ sp_paint_selector_class_init(SPPaintSelectorClass *klass)
parent_class = (GtkVBoxClass*)gtk_type_class(GTK_TYPE_VBOX);
- psel_signals[MODE_CHANGED] = gtk_signal_new("mode_changed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPPaintSelectorClass, mode_changed),
+ psel_signals[MODE_CHANGED] = g_signal_new("mode_changed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPPaintSelectorClass, mode_changed),
+ NULL, NULL,
gtk_marshal_NONE__UINT,
- GTK_TYPE_NONE, 1, GTK_TYPE_UINT);
- psel_signals[GRABBED] = gtk_signal_new("grabbed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPPaintSelectorClass, grabbed),
+ G_TYPE_NONE, 1, GTK_TYPE_UINT);
+ psel_signals[GRABBED] = g_signal_new("grabbed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPPaintSelectorClass, grabbed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- psel_signals[DRAGGED] = gtk_signal_new("dragged",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPPaintSelectorClass, dragged),
+ G_TYPE_NONE, 0);
+ psel_signals[DRAGGED] = g_signal_new("dragged",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPPaintSelectorClass, dragged),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- psel_signals[RELEASED] = gtk_signal_new("released",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPPaintSelectorClass, released),
+ G_TYPE_NONE, 0);
+ psel_signals[RELEASED] = g_signal_new("released",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPPaintSelectorClass, released),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- psel_signals[CHANGED] = gtk_signal_new("changed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPPaintSelectorClass, changed),
+ G_TYPE_NONE, 0);
+ psel_signals[CHANGED] = g_signal_new("changed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPPaintSelectorClass, changed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- psel_signals[FILLRULE_CHANGED] = gtk_signal_new("fillrule_changed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPPaintSelectorClass, fillrule_changed),
+ G_TYPE_NONE, 0);
+ psel_signals[FILLRULE_CHANGED] = g_signal_new("fillrule_changed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPPaintSelectorClass, fillrule_changed),
+ NULL, NULL,
gtk_marshal_NONE__UINT,
- GTK_TYPE_NONE, 1, GTK_TYPE_UINT);
+ G_TYPE_NONE, 1, GTK_TYPE_UINT);
object_class->destroy = sp_paint_selector_destroy;
}
@@ -217,8 +216,6 @@ sp_paint_selector_class_init(SPPaintSelectorClass *klass)
static void
sp_paint_selector_init(SPPaintSelector *psel)
{
- GtkTooltips *tt = gtk_tooltips_new();
-
psel->mode = static_cast<SPPaintSelector::Mode>(-1); // huh? do you mean 0xff? -- I think this means "not in the enum"
/* Paint style button box */
@@ -229,19 +226,19 @@ sp_paint_selector_init(SPPaintSelector *psel)
/* Buttons */
psel->none = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_NONE,
- SPPaintSelector::MODE_NONE, tt, _("No paint"));
+ SPPaintSelector::MODE_NONE, _("No paint"));
psel->solid = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_SOLID,
- SPPaintSelector::MODE_COLOR_RGB, tt, _("Flat color"));
+ SPPaintSelector::MODE_COLOR_RGB, _("Flat color"));
psel->gradient = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_GRADIENT_LINEAR,
- SPPaintSelector::MODE_GRADIENT_LINEAR, tt, _("Linear gradient"));
+ SPPaintSelector::MODE_GRADIENT_LINEAR, _("Linear gradient"));
psel->radial = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_GRADIENT_RADIAL,
- SPPaintSelector::MODE_GRADIENT_RADIAL, tt, _("Radial gradient"));
+ SPPaintSelector::MODE_GRADIENT_RADIAL, _("Radial gradient"));
psel->pattern = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_PATTERN,
- SPPaintSelector::MODE_PATTERN, tt, _("Pattern"));
+ SPPaintSelector::MODE_PATTERN, _("Pattern"));
psel->swatch = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_SWATCH,
- SPPaintSelector::MODE_SWATCH, tt, _("Swatch"));
+ SPPaintSelector::MODE_SWATCH, _("Swatch"));
psel->unset = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON_PAINT_UNKNOWN,
- SPPaintSelector::MODE_UNSET, tt, _("Unset paint (make it undefined so it can be inherited)"));
+ SPPaintSelector::MODE_UNSET, _("Unset paint (make it undefined so it can be inherited)"));
/* Fillrule */
{
@@ -253,23 +250,23 @@ sp_paint_selector_init(SPPaintSelector *psel)
gtk_button_set_relief(GTK_BUTTON(psel->evenodd), GTK_RELIEF_NONE);
gtk_toggle_button_set_mode(GTK_TOGGLE_BUTTON(psel->evenodd), FALSE);
// TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
- gtk_tooltips_set_tip(tt, psel->evenodd, _("Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)"), NULL);
+ gtk_widget_set_tooltip_text(psel->evenodd, _("Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)"));
gtk_object_set_data(GTK_OBJECT(psel->evenodd), "mode", GUINT_TO_POINTER(SPPaintSelector::FILLRULE_EVENODD));
w = sp_icon_new(Inkscape::ICON_SIZE_DECORATION, INKSCAPE_ICON_FILL_RULE_EVEN_ODD);
gtk_container_add(GTK_CONTAINER(psel->evenodd), w);
gtk_box_pack_start(GTK_BOX(psel->fillrulebox), psel->evenodd, FALSE, FALSE, 0);
- gtk_signal_connect(GTK_OBJECT(psel->evenodd), "toggled", GTK_SIGNAL_FUNC(sp_paint_selector_fillrule_toggled), psel);
+ g_signal_connect(G_OBJECT(psel->evenodd), "toggled", G_CALLBACK(sp_paint_selector_fillrule_toggled), psel);
psel->nonzero = gtk_radio_button_new(gtk_radio_button_group(GTK_RADIO_BUTTON(psel->evenodd)));
gtk_button_set_relief(GTK_BUTTON(psel->nonzero), GTK_RELIEF_NONE);
gtk_toggle_button_set_mode(GTK_TOGGLE_BUTTON(psel->nonzero), FALSE);
// TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
- gtk_tooltips_set_tip(tt, psel->nonzero, _("Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)"), NULL);
+ gtk_widget_set_tooltip_text(psel->nonzero, _("Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)"));
gtk_object_set_data(GTK_OBJECT(psel->nonzero), "mode", GUINT_TO_POINTER(SPPaintSelector::FILLRULE_NONZERO));
w = sp_icon_new(Inkscape::ICON_SIZE_DECORATION, INKSCAPE_ICON_FILL_RULE_NONZERO);
gtk_container_add(GTK_CONTAINER(psel->nonzero), w);
gtk_box_pack_start(GTK_BOX(psel->fillrulebox), psel->nonzero, FALSE, FALSE, 0);
- gtk_signal_connect(GTK_OBJECT(psel->nonzero), "toggled", GTK_SIGNAL_FUNC(sp_paint_selector_fillrule_toggled), psel);
+ g_signal_connect(G_OBJECT(psel->nonzero), "toggled", G_CALLBACK(sp_paint_selector_fillrule_toggled), psel);
}
/* Frame */
@@ -297,12 +294,12 @@ sp_paint_selector_destroy(GtkObject *object)
static GtkWidget *sp_paint_selector_style_button_add(SPPaintSelector *psel,
gchar const *pixmap, SPPaintSelector::Mode mode,
- GtkTooltips *tt, gchar const *tip)
+ gchar const *tip)
{
GtkWidget *b, *w;
b = gtk_toggle_button_new();
- gtk_tooltips_set_tip(tt, b, tip, NULL);
+ gtk_widget_set_tooltip_text(b, tip);
gtk_widget_show(b);
gtk_container_set_border_width(GTK_CONTAINER(b), 0);
@@ -317,7 +314,7 @@ static GtkWidget *sp_paint_selector_style_button_add(SPPaintSelector *psel,
gtk_container_add(GTK_CONTAINER(b), w);
gtk_box_pack_start(GTK_BOX(psel->style), b, FALSE, FALSE, 0);
- gtk_signal_connect(GTK_OBJECT(b), "toggled", GTK_SIGNAL_FUNC(sp_paint_selector_style_button_toggled), psel);
+ g_signal_connect(G_OBJECT(b), "toggled", G_CALLBACK(sp_paint_selector_style_button_toggled), psel);
return b;
}
@@ -335,7 +332,7 @@ sp_paint_selector_fillrule_toggled(GtkToggleButton *tb, SPPaintSelector *psel)
{
if (!psel->update && gtk_toggle_button_get_active(tb)) {
SPPaintSelector::FillRule fr = static_cast<SPPaintSelector::FillRule>(GPOINTER_TO_UINT(g_object_get_data(G_OBJECT(tb), "mode")));
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[FILLRULE_CHANGED], fr);
+ g_signal_emit(G_OBJECT(psel), psel_signals[FILLRULE_CHANGED], 0, fr);
}
}
@@ -406,7 +403,7 @@ void SPPaintSelector::setMode(Mode mode)
break;
}
this->mode = mode;
- gtk_signal_emit(GTK_OBJECT(this), psel_signals[MODE_CHANGED], this->mode);
+ g_signal_emit(G_OBJECT(this), psel_signals[MODE_CHANGED], 0, this->mode);
update = FALSE;
}
}
@@ -619,17 +616,17 @@ sp_paint_selector_set_mode_none(SPPaintSelector *psel)
static void sp_paint_selector_color_grabbed(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[GRABBED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[GRABBED], 0);
}
static void sp_paint_selector_color_dragged(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[DRAGGED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[DRAGGED], 0);
}
static void sp_paint_selector_color_released(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[RELEASED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[RELEASED], 0);
}
static void
@@ -637,7 +634,7 @@ sp_paint_selector_color_changed(SPColorSelector *csel, SPPaintSelector *psel)
{
csel->base->getColorAlpha( psel->color, psel->alpha );
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[CHANGED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[CHANGED], 0);
}
static void sp_paint_selector_set_mode_color(SPPaintSelector *psel, SPPaintSelector::Mode /*mode*/)
@@ -663,10 +660,10 @@ static void sp_paint_selector_set_mode_color(SPPaintSelector *psel, SPPaintSelec
gtk_widget_show(csel);
gtk_object_set_data(GTK_OBJECT(vb), "color-selector", csel);
gtk_box_pack_start(GTK_BOX(vb), csel, TRUE, TRUE, 0);
- gtk_signal_connect(GTK_OBJECT(csel), "grabbed", GTK_SIGNAL_FUNC(sp_paint_selector_color_grabbed), psel);
- gtk_signal_connect(GTK_OBJECT(csel), "dragged", GTK_SIGNAL_FUNC(sp_paint_selector_color_dragged), psel);
- gtk_signal_connect(GTK_OBJECT(csel), "released", GTK_SIGNAL_FUNC(sp_paint_selector_color_released), psel);
- gtk_signal_connect(GTK_OBJECT(csel), "changed", GTK_SIGNAL_FUNC(sp_paint_selector_color_changed), psel);
+ g_signal_connect(G_OBJECT(csel), "grabbed", G_CALLBACK(sp_paint_selector_color_grabbed), psel);
+ g_signal_connect(G_OBJECT(csel), "dragged", G_CALLBACK(sp_paint_selector_color_dragged), psel);
+ g_signal_connect(G_OBJECT(csel), "released", G_CALLBACK(sp_paint_selector_color_released), psel);
+ g_signal_connect(G_OBJECT(csel), "changed", G_CALLBACK(sp_paint_selector_color_changed), psel);
/* Pack everything to frame */
gtk_container_add(GTK_CONTAINER(psel->frame), vb);
psel->selector = vb;
@@ -686,22 +683,22 @@ static void sp_paint_selector_set_mode_color(SPPaintSelector *psel, SPPaintSelec
static void sp_paint_selector_gradient_grabbed(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[GRABBED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[GRABBED], 0);
}
static void sp_paint_selector_gradient_dragged(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[DRAGGED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[DRAGGED], 0);
}
static void sp_paint_selector_gradient_released(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[RELEASED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[RELEASED], 0);
}
static void sp_paint_selector_gradient_changed(SPColorSelector * /*csel*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[CHANGED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[CHANGED], 0);
}
static void sp_paint_selector_set_mode_gradient(SPPaintSelector *psel, SPPaintSelector::Mode mode)
@@ -725,10 +722,10 @@ static void sp_paint_selector_set_mode_gradient(SPPaintSelector *psel, SPPaintSe
/* Create new gradient selector */
gsel = sp_gradient_selector_new();
gtk_widget_show(gsel);
- gtk_signal_connect(GTK_OBJECT(gsel), "grabbed", GTK_SIGNAL_FUNC(sp_paint_selector_gradient_grabbed), psel);
- gtk_signal_connect(GTK_OBJECT(gsel), "dragged", GTK_SIGNAL_FUNC(sp_paint_selector_gradient_dragged), psel);
- gtk_signal_connect(GTK_OBJECT(gsel), "released", GTK_SIGNAL_FUNC(sp_paint_selector_gradient_released), psel);
- gtk_signal_connect(GTK_OBJECT(gsel), "changed", GTK_SIGNAL_FUNC(sp_paint_selector_gradient_changed), psel);
+ g_signal_connect(G_OBJECT(gsel), "grabbed", G_CALLBACK(sp_paint_selector_gradient_grabbed), psel);
+ g_signal_connect(G_OBJECT(gsel), "dragged", G_CALLBACK(sp_paint_selector_gradient_dragged), psel);
+ g_signal_connect(G_OBJECT(gsel), "released", G_CALLBACK(sp_paint_selector_gradient_released), psel);
+ g_signal_connect(G_OBJECT(gsel), "changed", G_CALLBACK(sp_paint_selector_gradient_changed), psel);
/* Pack everything to frame */
gtk_container_add(GTK_CONTAINER(psel->frame), gsel);
psel->selector = gsel;
@@ -769,7 +766,7 @@ static void sp_psel_pattern_destroy(GtkWidget *widget, SPPaintSelector * /*psel*
static void sp_psel_pattern_change(GtkWidget * /*widget*/, SPPaintSelector *psel)
{
- gtk_signal_emit(GTK_OBJECT(psel), psel_signals[CHANGED]);
+ g_signal_emit(G_OBJECT(psel), psel_signals[CHANGED], 0);
}
@@ -1000,8 +997,8 @@ static void sp_paint_selector_set_mode_pattern(SPPaintSelector *psel, SPPaintSel
GtkWidget *mnu = gtk_option_menu_new();
ink_pattern_menu(mnu);
- gtk_signal_connect(GTK_OBJECT(mnu), "changed", GTK_SIGNAL_FUNC(sp_psel_pattern_change), psel);
- gtk_signal_connect(GTK_OBJECT(mnu), "destroy", GTK_SIGNAL_FUNC(sp_psel_pattern_destroy), psel);
+ g_signal_connect(G_OBJECT(mnu), "changed", G_CALLBACK(sp_psel_pattern_change), psel);
+ g_signal_connect(G_OBJECT(mnu), "destroy", G_CALLBACK(sp_psel_pattern_destroy), psel);
gtk_object_set_data(GTK_OBJECT(psel), "patternmenu", mnu);
g_object_ref( G_OBJECT(mnu));
diff --git a/src/widgets/paint-selector.h b/src/widgets/paint-selector.h
index f3aff5a68..c0e44683b 100644
--- a/src/widgets/paint-selector.h
+++ b/src/widgets/paint-selector.h
@@ -22,12 +22,12 @@
class SPGradient;
#define SP_TYPE_PAINT_SELECTOR (sp_paint_selector_get_type ())
-#define SP_PAINT_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_PAINT_SELECTOR, SPPaintSelector))
-#define SP_PAINT_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_PAINT_SELECTOR, SPPaintSelectorClass))
-#define SP_IS_PAINT_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_PAINT_SELECTOR))
-#define SP_IS_PAINT_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_PAINT_SELECTOR))
+#define SP_PAINT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_PAINT_SELECTOR, SPPaintSelector))
+#define SP_PAINT_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_PAINT_SELECTOR, SPPaintSelectorClass))
+#define SP_IS_PAINT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_PAINT_SELECTOR))
+#define SP_IS_PAINT_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_PAINT_SELECTOR))
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include "../forward.h"
#include <color.h>
diff --git a/src/widgets/ruler.cpp b/src/widgets/ruler.cpp
index dd0336413..704d395f7 100644
--- a/src/widgets/ruler.cpp
+++ b/src/widgets/ruler.cpp
@@ -246,7 +246,7 @@ sp_ruler_common_draw_ticks (GtkRuler *ruler)
g_return_if_fail (ruler != NULL);
- if (!GTK_WIDGET_DRAWABLE (ruler))
+ if (!gtk_widget_is_drawable (GTK_WIDGET (ruler)))
return;
g_object_get(G_OBJECT(ruler), "orientation", &orientation, NULL);
@@ -425,6 +425,6 @@ sp_ruler_set_metric (GtkRuler *ruler,
ruler->metric = const_cast<GtkRulerMetric *>(&sp_ruler_metrics[metric]);
- if (GTK_WIDGET_DRAWABLE (ruler))
+ if (gtk_widget_is_drawable (GTK_WIDGET (ruler)))
gtk_widget_queue_draw (GTK_WIDGET (ruler));
}
diff --git a/src/widgets/ruler.h b/src/widgets/ruler.h
index 7a3509325..3c55b39c4 100644
--- a/src/widgets/ruler.h
+++ b/src/widgets/ruler.h
@@ -13,7 +13,7 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include <gtk/gtkruler.h>
+#include <gtk/gtk.h>
#include "sp-metric.h"
#include <iostream>
#include <glib.h>
@@ -22,9 +22,9 @@
void sp_ruler_set_metric (GtkRuler * ruler, SPMetric metric);
-#define SP_HRULER(obj) GTK_CHECK_CAST (obj, sp_hruler_get_type (), SPHRuler)
-#define SP_HRULER_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, sp_hruler_get_type (), SPHRulerClass)
-#define SP_IS_HRULER(obj) GTK_CHECK_TYPE (obj, sp_hruler_get_type ())
+#define SP_HRULER(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, sp_hruler_get_type (), SPHRuler)
+#define SP_HRULER_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, sp_hruler_get_type (), SPHRulerClass)
+#define SP_IS_HRULER(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, sp_hruler_get_type ())
struct SPHRuler
@@ -47,9 +47,9 @@ GtkWidget* sp_hruler_new (void);
-#define SP_VRULER(obj) GTK_CHECK_CAST (obj, sp_vruler_get_type (), SPVRuler)
-#define SP_VRULER_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, sp_vruler_get_type (), SPVRulerClass)
-#define SP_IS_VRULER(obj) GTK_CHECK_TYPE (obj, sp_vruler_get_type ())
+#define SP_VRULER(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, sp_vruler_get_type (), SPVRuler)
+#define SP_VRULER_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, sp_vruler_get_type (), SPVRulerClass)
+#define SP_IS_VRULER(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, sp_vruler_get_type ())
struct SPVRuler
diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp
index 89253983b..7012badf8 100644
--- a/src/widgets/select-toolbar.cpp
+++ b/src/widgets/select-toolbar.cpp
@@ -17,12 +17,12 @@
#endif
#include <gtk/gtk.h>
-#include <gtk/gtkaction.h>
#include "widgets/button.h"
#include "widgets/spw-utilities.h"
#include "widgets/widget-sizes.h"
#include "widgets/spinbutton-events.h"
+#include "ui/widget/spinbutton.h"
#include "widgets/icon.h"
#include "widgets/sp-widget.h"
@@ -255,6 +255,16 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw)
g_object_set_data(G_OBJECT(spw), "update", GINT_TO_POINTER(FALSE));
}
+static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRate, guint digits )
+{
+ Inkscape::UI::Widget::SpinButton *inkSpinner = new Inkscape::UI::Widget::SpinButton(*Glib::wrap(adjustment, true), climbRate, digits);
+ inkSpinner = Gtk::manage( inkSpinner );
+ GtkWidget *widget = GTK_WIDGET( inkSpinner->gobj() );
+ return widget;
+}
+
+// TODO create_adjustment_action appears to be a rogue tile copy from toolbox.cpp. Resolve it to be unified:
+
static EgeAdjustmentAction * create_adjustment_action( gchar const *name,
gchar const *label,
gchar const *shortLabel,
@@ -266,6 +276,12 @@ static EgeAdjustmentAction * create_adjustment_action( gchar const *name,
gchar const *tooltip,
gboolean altx )
{
+ static bool init = false;
+ if ( !init ) {
+ init = true;
+ ege_adjustment_action_set_compact_tool_factory( createCustomSlider );
+ }
+
GtkAdjustment* adj = GTK_ADJUSTMENT( gtk_adjustment_new( 0.0, lower, 1e6, SPIN_STEP, SPIN_PAGE_STEP, 0 ) );
if (tracker) {
tracker->addAdjustment(adj);
@@ -279,7 +295,7 @@ static EgeAdjustmentAction * create_adjustment_action( gchar const *name,
g_object_set( act, "short_label", Q_(shortLabel), NULL );
}
- gtk_signal_connect( GTK_OBJECT(adj), "value_changed", GTK_SIGNAL_FUNC(sp_object_layout_any_value_changed), spw );
+ g_signal_connect( G_OBJECT(adj), "value_changed", G_CALLBACK(sp_object_layout_any_value_changed), spw );
if ( focusTarget ) {
ege_adjustment_action_set_focuswidget( act, focusTarget );
}
@@ -382,7 +398,7 @@ static GtkAction* create_action_for_verb( Inkscape::Verb* verb, Inkscape::UI::Vi
InkAction* inky = ink_action_new( verb->get_id(), verb->get_name(), verb->get_tip(), verb->get_image(), size );
act = GTK_ACTION(inky);
- g_signal_connect( G_OBJECT(inky), "activate", GTK_SIGNAL_FUNC(trigger_sp_action), targetAction );
+ g_signal_connect( G_OBJECT(inky), "activate", G_CALLBACK(trigger_sp_action), targetAction );
Inkscape::queueIconPrerender( verb->get_image(), size );
@@ -502,8 +518,8 @@ void sp_select_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb
g_object_set_data( G_OBJECT(spw), "contextActions", contextActions );
// Force update when selection changes.
- gtk_signal_connect(GTK_OBJECT(spw), "modify_selection", GTK_SIGNAL_FUNC(sp_selection_layout_widget_modify_selection), desktop);
- gtk_signal_connect(GTK_OBJECT(spw), "change_selection", GTK_SIGNAL_FUNC(sp_selection_layout_widget_change_selection), desktop);
+ g_signal_connect(G_OBJECT(spw), "modify_selection", G_CALLBACK(sp_selection_layout_widget_modify_selection), desktop);
+ g_signal_connect(G_OBJECT(spw), "change_selection", G_CALLBACK(sp_selection_layout_widget_change_selection), desktop);
// Update now.
sp_selection_layout_widget_update(SP_WIDGET(spw), SP_ACTIVE_DESKTOP ? sp_desktop_selection(SP_ACTIVE_DESKTOP) : NULL);
diff --git a/src/widgets/select-toolbar.h b/src/widgets/select-toolbar.h
index dbab1975a..a4c42880f 100644
--- a/src/widgets/select-toolbar.h
+++ b/src/widgets/select-toolbar.h
@@ -14,8 +14,7 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include <gtk/gtkactiongroup.h>
-#include <gtk/gtkstyle.h>
+#include <gtk/gtk.h>
struct SPDesktop;
void sp_select_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/shrink-wrap-button.cpp b/src/widgets/shrink-wrap-button.cpp
index d73f972d9..e0c9e3cd1 100644
--- a/src/widgets/shrink-wrap-button.cpp
+++ b/src/widgets/shrink-wrap-button.cpp
@@ -10,7 +10,7 @@
*/
#include <gtkmm/button.h>
-#include <gtk/gtkbin.h>
+#include <gtk/gtk.h>
namespace Inkscape {
namespace Widgets {
diff --git a/src/widgets/sp-attribute-widget.cpp b/src/widgets/sp-attribute-widget.cpp
index a64a03f4e..66ccb27f2 100644
--- a/src/widgets/sp-attribute-widget.cpp
+++ b/src/widgets/sp-attribute-widget.cpp
@@ -9,8 +9,7 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include <gtk/gtktable.h>
-#include <gtk/gtklabel.h>
+#include <gtk/gtk.h>
#include "xml/repr.h"
#include "macros.h"
#include "document.h"
diff --git a/src/widgets/sp-attribute-widget.h b/src/widgets/sp-attribute-widget.h
index 617c5b012..5d23e6754 100644
--- a/src/widgets/sp-attribute-widget.h
+++ b/src/widgets/sp-attribute-widget.h
@@ -18,16 +18,16 @@
#include <sigc++/connection.h>
#define SP_TYPE_ATTRIBUTE_WIDGET (sp_attribute_widget_get_type ())
-#define SP_ATTRIBUTE_WIDGET(obj) (GTK_CHECK_CAST ((obj), SP_TYPE_ATTRIBUTE_WIDGET, SPAttributeWidget))
-#define SP_ATTRIBUTE_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_ATTRIBUTE_WIDGET, SPAttributeWidgetClass))
-#define SP_IS_ATTRIBUTE_WIDGET(obj) (GTK_CHECK_TYPE ((obj), SP_TYPE_ATTRIBUTE_WIDGET))
-#define SP_IS_ATTRIBUTE_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_ATTRIBUTE_WIDGET))
+#define SP_ATTRIBUTE_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_ATTRIBUTE_WIDGET, SPAttributeWidget))
+#define SP_ATTRIBUTE_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_ATTRIBUTE_WIDGET, SPAttributeWidgetClass))
+#define SP_IS_ATTRIBUTE_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_ATTRIBUTE_WIDGET))
+#define SP_IS_ATTRIBUTE_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_ATTRIBUTE_WIDGET))
#define SP_TYPE_ATTRIBUTE_TABLE (sp_attribute_table_get_type ())
-#define SP_ATTRIBUTE_TABLE(obj) (GTK_CHECK_CAST ((obj), SP_TYPE_ATTRIBUTE_TABLE, SPAttributeTable))
-#define SP_ATTRIBUTE_TABLE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_ATTRIBUTE_TABLE, SPAttributeTableClass))
-#define SP_IS_ATTRIBUTE_TABLE(obj) (GTK_CHECK_TYPE ((obj), SP_TYPE_ATTRIBUTE_TABLE))
-#define SP_IS_ATTRIBUTE_TABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_ATTRIBUTE_TABLE))
+#define SP_ATTRIBUTE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_ATTRIBUTE_TABLE, SPAttributeTable))
+#define SP_ATTRIBUTE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_ATTRIBUTE_TABLE, SPAttributeTableClass))
+#define SP_IS_ATTRIBUTE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_ATTRIBUTE_TABLE))
+#define SP_IS_ATTRIBUTE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_ATTRIBUTE_TABLE))
namespace Inkscape {
namespace XML {
@@ -42,8 +42,7 @@ struct SPAttributeWidgetClass;
struct SPAttributeTable;
struct SPAttributeTableClass;
-#include <gtk/gtkentry.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include <forward.h>
diff --git a/src/widgets/sp-color-gtkselector.h b/src/widgets/sp-color-gtkselector.h
index b9b2b0862..3142406c1 100644
--- a/src/widgets/sp-color-gtkselector.h
+++ b/src/widgets/sp-color-gtkselector.h
@@ -1,7 +1,7 @@
#ifndef SEEN_SP_COLOR_GTKSELECTOR_H
#define SEEN_SP_COLOR_GTKSELECTOR_H
-#include <gtk/gtkcolorsel.h>
+#include <gtk/gtk.h>
#include "../color.h"
#include "sp-color-selector.h"
@@ -33,10 +33,10 @@ protected:
#define SP_TYPE_COLOR_GTKSELECTOR (sp_color_gtkselector_get_type ())
-#define SP_COLOR_GTKSELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_GTKSELECTOR, SPColorGtkselector))
-#define SP_COLOR_GTKSELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_GTKSELECTOR, SPColorGtkselectorClass))
-#define SP_IS_COLOR_GTKSELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_GTKSELECTOR))
-#define SP_IS_COLOR_GTKSELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_GTKSELECTOR))
+#define SP_COLOR_GTKSELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_GTKSELECTOR, SPColorGtkselector))
+#define SP_COLOR_GTKSELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_GTKSELECTOR, SPColorGtkselectorClass))
+#define SP_IS_COLOR_GTKSELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_GTKSELECTOR))
+#define SP_IS_COLOR_GTKSELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_GTKSELECTOR))
struct SPColorGtkselector {
SPColorSelector base;
diff --git a/src/widgets/sp-color-icc-selector.cpp b/src/widgets/sp-color-icc-selector.cpp
index 12467041c..3a2c7fbed 100644
--- a/src/widgets/sp-color-icc-selector.cpp
+++ b/src/widgets/sp-color-icc-selector.cpp
@@ -2,12 +2,7 @@
# include "config.h"
#endif
#include <math.h>
-#include <gtk/gtkbutton.h>
#include <gtk/gtk.h>
-#include <gtk/gtksignal.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtktable.h>
-#include <gtk/gtkspinbutton.h>
#include <glibmm/i18n.h>
#include "../dialogs/dialog-events.h"
#include "sp-color-icc-selector.h"
@@ -25,7 +20,6 @@
#ifdef DEBUG_LCMS
#include "preferences.h"
-#include <gtk/gtkmessagedialog.h>
#endif // DEBUG_LCMS
#endif // ENABLE_LCMS
@@ -143,8 +137,7 @@ ColorICCSelector::ColorICCSelector( SPColorSelector* csel )
_fooMap(0),
_adj(0),
_sbtn(0),
- _label(0),
- _tt(0)
+ _label(0)
#if ENABLE_LCMS
,
_profileName(""),
@@ -276,8 +269,6 @@ void ColorICCSelector::init()
_updating = FALSE;
_dragging = FALSE;
- _tt = gtk_tooltips_new();
-
t = gtk_table_new (5, 3, FALSE);
gtk_widget_show (t);
gtk_box_pack_start (GTK_BOX (_csel), t, TRUE, TRUE, 0);
@@ -296,7 +287,7 @@ void ColorICCSelector::init()
_fixupBtn = gtk_button_new_with_label(_("Fix"));
g_signal_connect( G_OBJECT(_fixupBtn), "clicked", G_CALLBACK(_fixupHit), (gpointer)this );
gtk_widget_set_sensitive( _fixupBtn, FALSE );
- gtk_tooltips_set_tip( _tt, _fixupBtn, _("Fix RGB fallback to match icc-color() value."), NULL );
+ gtk_widget_set_tooltip_text( _fixupBtn, _("Fix RGB fallback to match icc-color() value.") );
//gtk_misc_set_alignment( GTK_MISC (_fixupBtn), 1.0, 0.5 );
gtk_widget_show( _fixupBtn );
gtk_table_attach( GTK_TABLE (t), _fixupBtn, 0, 1, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD );
@@ -344,18 +335,18 @@ void ColorICCSelector::init()
/* Slider */
_fooSlider[i] = sp_color_slider_new( _fooAdj[i] );
#if ENABLE_LCMS
- gtk_tooltips_set_tip( _tt, _fooSlider[i], tips[i], NULL );
+ gtk_widget_set_tooltip_text( _fooSlider[i], tips[i] );
#else
- gtk_tooltips_set_tip( _tt, _fooSlider[i], ".", NULL );
+ gtk_widget_set_tooltip_text( _fooSlider[i], "." );
#endif // ENABLE_LCMS
gtk_widget_show( _fooSlider[i] );
gtk_table_attach( GTK_TABLE (t), _fooSlider[i], 1, 2, row, row + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)GTK_FILL, XPAD, YPAD );
_fooBtn[i] = gtk_spin_button_new( _fooAdj[i], step, digits );
#if ENABLE_LCMS
- gtk_tooltips_set_tip( _tt, _fooBtn[i], tips[i], NULL );
+ gtk_widget_set_tooltip_text( _fooBtn[i], tips[i] );
#else
- gtk_tooltips_set_tip( _tt, _fooBtn[i], ".", NULL );
+ gtk_widget_set_tooltip_text( _fooBtn[i], "." );
#endif // ENABLE_LCMS
sp_dialog_defocus_on_enter( _fooBtn[i] );
gtk_label_set_mnemonic_widget( GTK_LABEL(_fooLabel[i]), _fooBtn[i] );
@@ -367,11 +358,11 @@ void ColorICCSelector::init()
/* Signals */
- gtk_signal_connect( GTK_OBJECT( _fooAdj[i] ), "value_changed", GTK_SIGNAL_FUNC( _adjustmentChanged ), _csel );
+ g_signal_connect( G_OBJECT( _fooAdj[i] ), "value_changed", G_CALLBACK( _adjustmentChanged ), _csel );
- gtk_signal_connect( GTK_OBJECT( _fooSlider[i] ), "grabbed", GTK_SIGNAL_FUNC( _sliderGrabbed ), _csel );
- gtk_signal_connect( GTK_OBJECT( _fooSlider[i] ), "released", GTK_SIGNAL_FUNC( _sliderReleased ), _csel );
- gtk_signal_connect( GTK_OBJECT( _fooSlider[i] ), "changed", GTK_SIGNAL_FUNC( _sliderChanged ), _csel );
+ g_signal_connect( G_OBJECT( _fooSlider[i] ), "grabbed", G_CALLBACK( _sliderGrabbed ), _csel );
+ g_signal_connect( G_OBJECT( _fooSlider[i] ), "released", G_CALLBACK( _sliderReleased ), _csel );
+ g_signal_connect( G_OBJECT( _fooSlider[i] ), "changed", G_CALLBACK( _sliderChanged ), _csel );
row++;
}
@@ -387,7 +378,7 @@ void ColorICCSelector::init()
/* Slider */
_slider = sp_color_slider_new (_adj);
- gtk_tooltips_set_tip (_tt, _slider, _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_slider, _("Alpha (opacity)"));
gtk_widget_show (_slider);
gtk_table_attach (GTK_TABLE (t), _slider, 1, 2, row, row + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)GTK_FILL, XPAD, YPAD);
@@ -399,22 +390,22 @@ void ColorICCSelector::init()
/* Spinbutton */
_sbtn = gtk_spin_button_new (GTK_ADJUSTMENT (_adj), 1.0, 0);
- gtk_tooltips_set_tip (_tt, _sbtn, _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_sbtn, _("Alpha (opacity)"));
sp_dialog_defocus_on_enter (_sbtn);
gtk_label_set_mnemonic_widget (GTK_LABEL(_label), _sbtn);
gtk_widget_show (_sbtn);
gtk_table_attach (GTK_TABLE (t), _sbtn, 2, 3, row, row + 1, (GtkAttachOptions)0, (GtkAttachOptions)0, XPAD, YPAD);
/* Signals */
- gtk_signal_connect (GTK_OBJECT (_adj), "value_changed",
- GTK_SIGNAL_FUNC (_adjustmentChanged), _csel);
-
- gtk_signal_connect (GTK_OBJECT (_slider), "grabbed",
- GTK_SIGNAL_FUNC (_sliderGrabbed), _csel);
- gtk_signal_connect (GTK_OBJECT (_slider), "released",
- GTK_SIGNAL_FUNC (_sliderReleased), _csel);
- gtk_signal_connect (GTK_OBJECT (_slider), "changed",
- GTK_SIGNAL_FUNC (_sliderChanged), _csel);
+ g_signal_connect (G_OBJECT (_adj), "value_changed",
+ G_CALLBACK (_adjustmentChanged), _csel);
+
+ g_signal_connect (G_OBJECT (_slider), "grabbed",
+ G_CALLBACK (_sliderGrabbed), _csel);
+ g_signal_connect (G_OBJECT (_slider), "released",
+ G_CALLBACK (_sliderReleased), _csel);
+ g_signal_connect (G_OBJECT (_slider), "changed",
+ G_CALLBACK (_sliderChanged), _csel);
}
static void
@@ -700,8 +691,8 @@ void ColorICCSelector::_setProfile( SVGICCColor* profile )
for ( guint i = 0; i < _profChannelCount; i++ ) {
gtk_label_set_text_with_mnemonic( GTK_LABEL(_fooLabel[i]), names[i]);
- gtk_tooltips_set_tip( _tt, _fooSlider[i], tips[i], NULL );
- gtk_tooltips_set_tip( _tt, _fooBtn[i], tips[i], NULL );
+ gtk_widget_set_tooltip_text( _fooSlider[i], tips[i] );
+ gtk_widget_set_tooltip_text( _fooBtn[i], tips[i] );
sp_color_slider_set_colors( SP_COLOR_SLIDER(_fooSlider[i]),
SPColor(0.0, 0.0, 0.0).toRGBA32(0xff),
@@ -709,7 +700,7 @@ void ColorICCSelector::_setProfile( SVGICCColor* profile )
SPColor(1.0, 1.0, 1.0).toRGBA32(0xff) );
/*
_fooAdj[i] = GTK_ADJUSTMENT( gtk_adjustment_new( val, 0.0, _fooScales[i], step, page, page ) );
- gtk_signal_connect( GTK_OBJECT( _fooAdj[i] ), "value_changed", GTK_SIGNAL_FUNC( _adjustmentChanged ), _csel );
+ g_signal_connect( G_OBJECT( _fooAdj[i] ), "value_changed", G_CALLBACK( _adjustmentChanged ), _csel );
sp_color_slider_set_adjustment( SP_COLOR_SLIDER(_fooSlider[i]), _fooAdj[i] );
gtk_spin_button_set_adjustment( GTK_SPIN_BUTTON(_fooBtn[i]), _fooAdj[i] );
diff --git a/src/widgets/sp-color-icc-selector.h b/src/widgets/sp-color-icc-selector.h
index 9fd80c04a..9238e3f68 100644
--- a/src/widgets/sp-color-icc-selector.h
+++ b/src/widgets/sp-color-icc-selector.h
@@ -2,8 +2,7 @@
#define SEEN_SP_COLOR_ICC_SELECTOR_H
#include <glib/gtypes.h>
-#include <gtk/gtktooltips.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include "../color.h"
#include "sp-color-slider.h"
@@ -67,8 +66,6 @@ protected:
GtkWidget* _sbtn; /* Spinbutton */
GtkWidget* _label; /* Label */
- GtkTooltips* _tt; /* tooltip container */
-
#if ENABLE_LCMS
std::string _profileName;
Inkscape::ColorProfile* _prof;
@@ -85,10 +82,10 @@ private:
#define SP_TYPE_COLOR_ICC_SELECTOR (sp_color_icc_selector_get_type ())
-#define SP_COLOR_ICC_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_ICC_SELECTOR, SPColorICCSelector))
-#define SP_COLOR_ICC_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_ICC_SELECTOR, SPColorICCSelectorClass))
-#define SP_IS_COLOR_ICC_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_ICC_SELECTOR))
-#define SP_IS_COLOR_ICC_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_ICC_SELECTOR))
+#define SP_COLOR_ICC_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_ICC_SELECTOR, SPColorICCSelector))
+#define SP_COLOR_ICC_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_ICC_SELECTOR, SPColorICCSelectorClass))
+#define SP_IS_COLOR_ICC_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_ICC_SELECTOR))
+#define SP_IS_COLOR_ICC_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_ICC_SELECTOR))
struct SPColorICCSelector {
SPColorSelector parent;
diff --git a/src/widgets/sp-color-notebook.cpp b/src/widgets/sp-color-notebook.cpp
index 174971555..06e990dfb 100644
--- a/src/widgets/sp-color-notebook.cpp
+++ b/src/widgets/sp-color-notebook.cpp
@@ -203,8 +203,6 @@ void ColorNotebook::init()
GType *selector_types = 0;
guint selector_type_count = 0;
- GtkTooltips *tt = gtk_tooltips_new ();
-
/* tempory hardcoding to get types loaded */
SP_TYPE_COLOR_SCALES;
SP_TYPE_COLOR_WHEEL_SELECTOR;
@@ -320,7 +318,7 @@ void ColorNotebook::init()
// but first fix it so it remembers its settings in prefs and does not take that much space (entire vertical column!)
//gtk_table_attach (GTK_TABLE (table), align, 2, 3, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
- gtk_signal_connect_object(GTK_OBJECT(_btn), "event", GTK_SIGNAL_FUNC (sp_color_notebook_menu_handler), GTK_OBJECT(_csel));
+ g_signal_connect_swapped(G_OBJECT(_btn), "event", G_CALLBACK (sp_color_notebook_menu_handler), G_OBJECT(_csel));
if ( !found )
{
gtk_widget_set_sensitive (_btn, FALSE);
@@ -336,24 +334,21 @@ void ColorNotebook::init()
_box_colormanaged = gtk_event_box_new ();
GtkWidget *colormanaged = gtk_image_new_from_icon_name ("color-management-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
gtk_container_add (GTK_CONTAINER (_box_colormanaged), colormanaged);
- GtkTooltips *tooltips_colormanaged = gtk_tooltips_new ();
- gtk_tooltips_set_tip (tooltips_colormanaged, _box_colormanaged, _("Color Managed"), "");
+ gtk_widget_set_tooltip_text (_box_colormanaged, _("Color Managed"));
gtk_widget_set_sensitive (_box_colormanaged, false);
gtk_box_pack_start(GTK_BOX(rgbabox), _box_colormanaged, FALSE, FALSE, 2);
_box_outofgamut = gtk_event_box_new ();
GtkWidget *outofgamut = gtk_image_new_from_icon_name ("out-of-gamut-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
gtk_container_add (GTK_CONTAINER (_box_outofgamut), outofgamut);
- GtkTooltips *tooltips_outofgamut = gtk_tooltips_new ();
- gtk_tooltips_set_tip (tooltips_outofgamut, _box_outofgamut, _("Out of gamut!"), "");
+ gtk_widget_set_tooltip_text (_box_outofgamut, _("Out of gamut!"));
gtk_widget_set_sensitive (_box_outofgamut, false);
gtk_box_pack_start(GTK_BOX(rgbabox), _box_outofgamut, FALSE, FALSE, 2);
_box_toomuchink = gtk_event_box_new ();
GtkWidget *toomuchink = gtk_image_new_from_icon_name ("too-much-ink-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
gtk_container_add (GTK_CONTAINER (_box_toomuchink), toomuchink);
- GtkTooltips *tooltips_toomuchink = gtk_tooltips_new ();
- gtk_tooltips_set_tip (tooltips_toomuchink, _box_toomuchink, _("Too much ink!"), "");
+ gtk_widget_set_tooltip_text (_box_toomuchink, _("Too much ink!"));
gtk_widget_set_sensitive (_box_toomuchink, false);
gtk_box_pack_start(GTK_BOX(rgbabox), _box_toomuchink, FALSE, FALSE, 2);
@@ -368,7 +363,7 @@ void ColorNotebook::init()
sp_dialog_defocus_on_enter (_rgbae);
gtk_entry_set_max_length (GTK_ENTRY (_rgbae), 8);
gtk_entry_set_width_chars (GTK_ENTRY (_rgbae), 8);
- gtk_tooltips_set_tip (tt, _rgbae, _("Hexadecimal RGBA value of the color"), NULL);
+ gtk_widget_set_tooltip_text (_rgbae, _("Hexadecimal RGBA value of the color"));
gtk_box_pack_start(GTK_BOX(rgbabox), _rgbae, FALSE, FALSE, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL(_rgbal), _rgbae);
@@ -388,10 +383,10 @@ void ColorNotebook::init()
gtk_table_attach (GTK_TABLE (table), _p, 2, 3, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
#endif
- _switchId = g_signal_connect(GTK_OBJECT (_book), "switch-page",
- GTK_SIGNAL_FUNC (sp_color_notebook_switch_page), SP_COLOR_NOTEBOOK(_csel));
+ _switchId = g_signal_connect(G_OBJECT (_book), "switch-page",
+ G_CALLBACK (sp_color_notebook_switch_page), SP_COLOR_NOTEBOOK(_csel));
- _entryId = gtk_signal_connect (GTK_OBJECT (_rgbae), "changed", GTK_SIGNAL_FUNC (ColorNotebook::_rgbaEntryChangedHook), _csel);
+ _entryId = g_signal_connect (G_OBJECT (_rgbae), "changed", G_CALLBACK (ColorNotebook::_rgbaEntryChangedHook), _csel);
}
static void
@@ -653,10 +648,10 @@ GtkWidget* ColorNotebook::addPage(GType page_type, guint submode)
// g_message( "Hitting up for tab for '%s'", str );
tab_label = gtk_label_new(_(str));
gtk_notebook_append_page( GTK_NOTEBOOK (_book), page, tab_label );
- gtk_signal_connect (GTK_OBJECT (page), "grabbed", GTK_SIGNAL_FUNC (_entryGrabbed), _csel);
- gtk_signal_connect (GTK_OBJECT (page), "dragged", GTK_SIGNAL_FUNC (_entryDragged), _csel);
- gtk_signal_connect (GTK_OBJECT (page), "released", GTK_SIGNAL_FUNC (_entryReleased), _csel);
- gtk_signal_connect (GTK_OBJECT (page), "changed", GTK_SIGNAL_FUNC (_entryChanged), _csel);
+ g_signal_connect (G_OBJECT (page), "grabbed", G_CALLBACK (_entryGrabbed), _csel);
+ g_signal_connect (G_OBJECT (page), "dragged", G_CALLBACK (_entryDragged), _csel);
+ g_signal_connect (G_OBJECT (page), "released", G_CALLBACK (_entryReleased), _csel);
+ g_signal_connect (G_OBJECT (page), "changed", G_CALLBACK (_entryChanged), _csel);
}
return page;
diff --git a/src/widgets/sp-color-notebook.h b/src/widgets/sp-color-notebook.h
index 0b9b2ed87..8d2988636 100644
--- a/src/widgets/sp-color-notebook.h
+++ b/src/widgets/sp-color-notebook.h
@@ -12,9 +12,7 @@
* This code is in public domain
*/
-#include <gtk/gtkvbox.h>
-#include <gtk/gtknotebook.h>
-#include <gtk/gtkentry.h>
+#include <gtk/gtk.h>
#include "../color.h"
#include "sp-color-selector.h"
@@ -78,10 +76,10 @@ private:
#define SP_TYPE_COLOR_NOTEBOOK (sp_color_notebook_get_type ())
-#define SP_COLOR_NOTEBOOK(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebook))
-#define SP_COLOR_NOTEBOOK_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebookClass))
-#define SP_IS_COLOR_NOTEBOOK(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_NOTEBOOK))
-#define SP_IS_COLOR_NOTEBOOK_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_NOTEBOOK))
+#define SP_COLOR_NOTEBOOK(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebook))
+#define SP_COLOR_NOTEBOOK_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebookClass))
+#define SP_IS_COLOR_NOTEBOOK(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_NOTEBOOK))
+#define SP_IS_COLOR_NOTEBOOK_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_NOTEBOOK))
struct SPColorNotebook {
SPColorSelector parent; /* Parent */
diff --git a/src/widgets/sp-color-scales.cpp b/src/widgets/sp-color-scales.cpp
index fb8bb0795..25162dead 100644
--- a/src/widgets/sp-color-scales.cpp
+++ b/src/widgets/sp-color-scales.cpp
@@ -140,8 +140,6 @@ void ColorScales::init()
_updating = FALSE;
_dragging = FALSE;
- _tt = gtk_tooltips_new();
-
t = gtk_table_new (5, 3, FALSE);
gtk_widget_show (t);
gtk_box_pack_start (GTK_BOX (_csel), t, TRUE, TRUE, 0);
@@ -170,14 +168,14 @@ void ColorScales::init()
/* Attach channel value to adjustment */
gtk_object_set_data (GTK_OBJECT (_a[i]), "channel", GINT_TO_POINTER (i));
/* Signals */
- gtk_signal_connect (GTK_OBJECT (_a[i]), "value_changed",
- GTK_SIGNAL_FUNC (_adjustmentAnyChanged), _csel);
- gtk_signal_connect (GTK_OBJECT (_s[i]), "grabbed",
- GTK_SIGNAL_FUNC (_sliderAnyGrabbed), _csel);
- gtk_signal_connect (GTK_OBJECT (_s[i]), "released",
- GTK_SIGNAL_FUNC (_sliderAnyReleased), _csel);
- gtk_signal_connect (GTK_OBJECT (_s[i]), "changed",
- GTK_SIGNAL_FUNC (_sliderAnyChanged), _csel);
+ g_signal_connect (G_OBJECT (_a[i]), "value_changed",
+ G_CALLBACK (_adjustmentAnyChanged), _csel);
+ g_signal_connect (G_OBJECT (_s[i]), "grabbed",
+ G_CALLBACK (_sliderAnyGrabbed), _csel);
+ g_signal_connect (G_OBJECT (_s[i]), "released",
+ G_CALLBACK (_sliderAnyReleased), _csel);
+ g_signal_connect (G_OBJECT (_s[i]), "changed",
+ G_CALLBACK (_sliderAnyChanged), _csel);
}
/* Initial mode is none, so it works */
@@ -402,17 +400,17 @@ void ColorScales::setMode(SPColorScalesMode mode)
case SP_COLOR_SCALES_MODE_RGB:
_setRangeLimit(255.0);
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_R:"));
- gtk_tooltips_set_tip (_tt, _s[0], _("Red"), NULL);
- gtk_tooltips_set_tip (_tt, _b[0], _("Red"), NULL);
+ gtk_widget_set_tooltip_text (_s[0], _("Red"));
+ gtk_widget_set_tooltip_text (_b[0], _("Red"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_G:"));
- gtk_tooltips_set_tip (_tt, _s[1], _("Green"), NULL);
- gtk_tooltips_set_tip (_tt, _b[1], _("Green"), NULL);
+ gtk_widget_set_tooltip_text (_s[1], _("Green"));
+ gtk_widget_set_tooltip_text (_b[1], _("Green"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_B:"));
- gtk_tooltips_set_tip (_tt, _s[2], _("Blue"), NULL);
- gtk_tooltips_set_tip (_tt, _b[2], _("Blue"), NULL);
+ gtk_widget_set_tooltip_text (_s[2], _("Blue"));
+ gtk_widget_set_tooltip_text (_b[2], _("Blue"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A:"));
- gtk_tooltips_set_tip (_tt, _s[3], _("Alpha (opacity)"), NULL);
- gtk_tooltips_set_tip (_tt, _b[3], _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_s[3], _("Alpha (opacity)"));
+ gtk_widget_set_tooltip_text (_b[3], _("Alpha (opacity)"));
sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), NULL);
gtk_widget_hide (_l[4]);
gtk_widget_hide (_s[4]);
@@ -428,17 +426,17 @@ void ColorScales::setMode(SPColorScalesMode mode)
case SP_COLOR_SCALES_MODE_HSV:
_setRangeLimit(255.0);
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_H:"));
- gtk_tooltips_set_tip (_tt, _s[0], _("Hue"), NULL);
- gtk_tooltips_set_tip (_tt, _b[0], _("Hue"), NULL);
+ gtk_widget_set_tooltip_text (_s[0], _("Hue"));
+ gtk_widget_set_tooltip_text (_b[0], _("Hue"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_S:"));
- gtk_tooltips_set_tip (_tt, _s[1], _("Saturation"), NULL);
- gtk_tooltips_set_tip (_tt, _b[1], _("Saturation"), NULL);
+ gtk_widget_set_tooltip_text (_s[1], _("Saturation"));
+ gtk_widget_set_tooltip_text (_b[1], _("Saturation"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_L:"));
- gtk_tooltips_set_tip (_tt, _s[2], _("Lightness"), NULL);
- gtk_tooltips_set_tip (_tt, _b[2], _("Lightness"), NULL);
+ gtk_widget_set_tooltip_text (_s[2], _("Lightness"));
+ gtk_widget_set_tooltip_text (_b[2], _("Lightness"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A:"));
- gtk_tooltips_set_tip (_tt, _s[3], _("Alpha (opacity)"), NULL);
- gtk_tooltips_set_tip (_tt, _b[3], _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_s[3], _("Alpha (opacity)"));
+ gtk_widget_set_tooltip_text (_b[3], _("Alpha (opacity)"));
sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), (guchar*)sp_color_scales_hue_map ());
gtk_widget_hide (_l[4]);
gtk_widget_hide (_s[4]);
@@ -456,20 +454,20 @@ void ColorScales::setMode(SPColorScalesMode mode)
case SP_COLOR_SCALES_MODE_CMYK:
_setRangeLimit(100.0);
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_C:"));
- gtk_tooltips_set_tip (_tt, _s[0], _("Cyan"), NULL);
- gtk_tooltips_set_tip (_tt, _b[0], _("Cyan"), NULL);
+ gtk_widget_set_tooltip_text (_s[0], _("Cyan"));
+ gtk_widget_set_tooltip_text (_b[0], _("Cyan"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_M:"));
- gtk_tooltips_set_tip (_tt, _s[1], _("Magenta"), NULL);
- gtk_tooltips_set_tip (_tt, _b[1], _("Magenta"), NULL);
+ gtk_widget_set_tooltip_text (_s[1], _("Magenta"));
+ gtk_widget_set_tooltip_text (_b[1], _("Magenta"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_Y:"));
- gtk_tooltips_set_tip (_tt, _s[2], _("Yellow"), NULL);
- gtk_tooltips_set_tip (_tt, _b[2], _("Yellow"), NULL);
+ gtk_widget_set_tooltip_text (_s[2], _("Yellow"));
+ gtk_widget_set_tooltip_text (_b[2], _("Yellow"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_K:"));
- gtk_tooltips_set_tip (_tt, _s[3], _("Black"), NULL);
- gtk_tooltips_set_tip (_tt, _b[3], _("Black"), NULL);
+ gtk_widget_set_tooltip_text (_s[3], _("Black"));
+ gtk_widget_set_tooltip_text (_b[3], _("Black"));
gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[4]), _("_A:"));
- gtk_tooltips_set_tip (_tt, _s[4], _("Alpha (opacity)"), NULL);
- gtk_tooltips_set_tip (_tt, _b[4], _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_s[4], _("Alpha (opacity)"));
+ gtk_widget_set_tooltip_text (_b[4], _("Alpha (opacity)"));
sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), NULL);
gtk_widget_show (_l[4]);
gtk_widget_show (_s[4]);
diff --git a/src/widgets/sp-color-scales.h b/src/widgets/sp-color-scales.h
index 21a85a08e..8ffe5e7a8 100644
--- a/src/widgets/sp-color-scales.h
+++ b/src/widgets/sp-color-scales.h
@@ -2,8 +2,7 @@
#define SEEN_SP_COLOR_SCALES_H
#include <glib/gtypes.h>
-#include <gtk/gtktooltips.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include <color.h>
#include <widgets/sp-color-slider.h>
@@ -66,8 +65,6 @@ protected:
GtkWidget *_b[5]; /* Spinbuttons */
GtkWidget *_l[5]; /* Labels */
- GtkTooltips *_tt; /* tooltip container */
-
private:
// By default, disallow copy constructor and assignment operator
ColorScales(ColorScales const &obj);
@@ -77,10 +74,10 @@ private:
#define SP_TYPE_COLOR_SCALES (sp_color_scales_get_type())
-#define SP_COLOR_SCALES(o) (GTK_CHECK_CAST((o), SP_TYPE_COLOR_SCALES, SPColorScales))
-#define SP_COLOR_SCALES_CLASS(k) (GTK_CHECK_CLASS_CAST((k), SP_TYPE_COLOR_SCALES, SPColorScalesClass))
-#define SP_IS_COLOR_SCALES(o) (GTK_CHECK_TYPE((o), SP_TYPE_COLOR_SCALES))
-#define SP_IS_COLOR_SCALES_CLASS(k) (GTK_CHECK_CLASS_TYPE((k), SP_TYPE_COLOR_SCALES))
+#define SP_COLOR_SCALES(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_COLOR_SCALES, SPColorScales))
+#define SP_COLOR_SCALES_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SP_TYPE_COLOR_SCALES, SPColorScalesClass))
+#define SP_IS_COLOR_SCALES(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_COLOR_SCALES))
+#define SP_IS_COLOR_SCALES_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_COLOR_SCALES))
struct SPColorScales {
SPColorSelector parent;
diff --git a/src/widgets/sp-color-selector.cpp b/src/widgets/sp-color-selector.cpp
index c6f13b391..bf3564d2e 100644
--- a/src/widgets/sp-color-selector.cpp
+++ b/src/widgets/sp-color-selector.cpp
@@ -7,7 +7,7 @@
# include "config.h"
#endif
#include <math.h>
-#include <gtk/gtksignal.h>
+#include <gtk/gtk.h>
#include <glibmm/i18n.h>
#include "sp-color-selector.h"
@@ -70,28 +70,32 @@ void sp_color_selector_class_init( SPColorSelectorClass *klass )
parent_class = GTK_VBOX_CLASS( gtk_type_class(GTK_TYPE_VBOX) );
- csel_signals[GRABBED] = gtk_signal_new( "grabbed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPColorSelectorClass, grabbed),
+ csel_signals[GRABBED] = g_signal_new( "grabbed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPColorSelectorClass, grabbed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0 );
- csel_signals[DRAGGED] = gtk_signal_new( "dragged",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPColorSelectorClass, dragged),
+ csel_signals[DRAGGED] = g_signal_new( "dragged",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPColorSelectorClass, dragged),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0 );
- csel_signals[RELEASED] = gtk_signal_new( "released",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPColorSelectorClass, released),
+ csel_signals[RELEASED] = g_signal_new( "released",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPColorSelectorClass, released),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0 );
- csel_signals[CHANGED] = gtk_signal_new( "changed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET(SPColorSelectorClass, changed),
+ csel_signals[CHANGED] = g_signal_new( "changed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET(SPColorSelectorClass, changed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0 );
@@ -111,7 +115,7 @@ void sp_color_selector_init( SPColorSelector *csel )
{
csel->base->init();
}
-/* gtk_signal_connect(GTK_OBJECT(csel->rgbae), "changed", GTK_SIGNAL_FUNC(sp_color_selector_rgba_entry_changed), csel); */
+/* g_signal_connect(G_OBJECT(csel->rgbae), "changed", G_CALLBACK(sp_color_selector_rgba_entry_changed), csel); */
}
void sp_color_selector_destroy( GtkObject *object )
@@ -230,7 +234,7 @@ void ColorSelector::setColorAlpha( const SPColor& color, gfloat alpha, bool emit
_colorChanged();
if (emit) {
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[CHANGED]);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[CHANGED], 0);
}
#ifdef DUMP_CHANGE_INFO
} else {
@@ -248,7 +252,7 @@ void ColorSelector::_grabbed()
"GRABBED",
FOO_NAME(_csel));
#endif
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[GRABBED]);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[GRABBED], 0);
}
void ColorSelector::_released()
@@ -259,8 +263,8 @@ void ColorSelector::_released()
"RELEASED",
FOO_NAME(_csel));
#endif
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[RELEASED]);
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[CHANGED]);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[RELEASED], 0);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[CHANGED], 0);
}
// Called from subclasses to update color and broadcast if needed
@@ -288,7 +292,7 @@ void ColorSelector::_updateInternals( const SPColor& color, gfloat alpha, gboole
"GRABBED",
color.toRGBA32( alpha ), (color.icc?color.icc->colorProfile.c_str():"<null>"), FOO_NAME(_csel));
#endif
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[GRABBED]);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[GRABBED], 0);
}
else if ( released )
{
@@ -297,7 +301,7 @@ void ColorSelector::_updateInternals( const SPColor& color, gfloat alpha, gboole
"RELEASED",
color.toRGBA32( alpha ), (color.icc?color.icc->colorProfile.c_str():"<null>"), FOO_NAME(_csel));
#endif
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[RELEASED]);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[RELEASED], 0);
}
if ( colorDifferent || released )
@@ -307,7 +311,7 @@ void ColorSelector::_updateInternals( const SPColor& color, gfloat alpha, gboole
(_held ? "CHANGED" : "DRAGGED" ),
color.toRGBA32( alpha ), (color.icc?color.icc->colorProfile.c_str():"<null>"), FOO_NAME(_csel));
#endif
- gtk_signal_emit(GTK_OBJECT(_csel), csel_signals[_held ? CHANGED : DRAGGED]);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[_held ? CHANGED : DRAGGED], 0);
}
}
diff --git a/src/widgets/sp-color-selector.h b/src/widgets/sp-color-selector.h
index 3b35140ed..c27cad45f 100644
--- a/src/widgets/sp-color-selector.h
+++ b/src/widgets/sp-color-selector.h
@@ -1,7 +1,7 @@
#ifndef SEEN_SP_COLOR_SELECTOR_H
#define SEEN_SP_COLOR_SELECTOR_H
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include "../color.h"
#include <glib.h>
@@ -58,10 +58,10 @@ private:
#define SP_TYPE_COLOR_SELECTOR (sp_color_selector_get_type ())
-#define SP_COLOR_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_SELECTOR, SPColorSelector))
-#define SP_COLOR_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_SELECTOR, SPColorSelectorClass))
-#define SP_IS_COLOR_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_SELECTOR))
-#define SP_IS_COLOR_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_SELECTOR))
+#define SP_COLOR_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_SELECTOR, SPColorSelector))
+#define SP_COLOR_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_SELECTOR, SPColorSelectorClass))
+#define SP_IS_COLOR_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_SELECTOR))
+#define SP_IS_COLOR_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_SELECTOR))
#define SP_COLOR_SELECTOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SP_TYPE_COLOR_SELECTOR, SPColorSelectorClass))
struct SPColorSelector {
diff --git a/src/widgets/sp-color-slider.cpp b/src/widgets/sp-color-slider.cpp
index 0e30b1ce6..7b365bc73 100644
--- a/src/widgets/sp-color-slider.cpp
+++ b/src/widgets/sp-color-slider.cpp
@@ -1,5 +1,3 @@
-#define __SP_COLOR_SLIDER_C__
-
/*
* A slider with colored background
*
@@ -12,8 +10,7 @@
* This code is in public domain
*/
-#include <gtk/gtkversion.h>
-#include <gtk/gtksignal.h>
+#include <gtk/gtk.h>
#include "sp-color-scales.h"
#include "preferences.h"
@@ -90,30 +87,34 @@ sp_color_slider_class_init (SPColorSliderClass *klass)
parent_class = (GtkWidgetClass*)gtk_type_class (GTK_TYPE_WIDGET);
- slider_signals[GRABBED] = gtk_signal_new ("grabbed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPColorSliderClass, grabbed),
+ slider_signals[GRABBED] = g_signal_new ("grabbed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPColorSliderClass, grabbed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- slider_signals[DRAGGED] = gtk_signal_new ("dragged",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPColorSliderClass, dragged),
+ G_TYPE_NONE, 0);
+ slider_signals[DRAGGED] = g_signal_new ("dragged",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPColorSliderClass, dragged),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- slider_signals[RELEASED] = gtk_signal_new ("released",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPColorSliderClass, released),
+ G_TYPE_NONE, 0);
+ slider_signals[RELEASED] = g_signal_new ("released",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPColorSliderClass, released),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- slider_signals[CHANGED] = gtk_signal_new ("changed",
- (GtkSignalRunType)(GTK_RUN_FIRST | GTK_RUN_NO_RECURSE),
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPColorSliderClass, changed),
+ G_TYPE_NONE, 0);
+ slider_signals[CHANGED] = g_signal_new ("changed",
+ G_TYPE_FROM_CLASS(object_class),
+ (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
+ G_STRUCT_OFFSET (SPColorSliderClass, changed),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
+ G_TYPE_NONE, 0);
object_class->destroy = sp_color_slider_destroy;
@@ -134,7 +135,7 @@ static void
sp_color_slider_init (SPColorSlider *slider)
{
/* We are widget with window */
- GTK_WIDGET_UNSET_FLAGS (slider, GTK_NO_WINDOW);
+ gtk_widget_set_has_window (GTK_WIDGET(slider), TRUE);
slider->dragging = FALSE;
@@ -171,7 +172,7 @@ sp_color_slider_destroy (GtkObject *object)
slider = SP_COLOR_SLIDER (object);
if (slider->adjustment) {
- gtk_signal_disconnect_by_data (GTK_OBJECT (slider->adjustment), slider);
+ g_signal_handlers_disconnect_matched (G_OBJECT (slider->adjustment), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, slider);
gtk_object_unref (GTK_OBJECT (slider->adjustment));
slider->adjustment = NULL;
}
@@ -189,7 +190,7 @@ sp_color_slider_realize (GtkWidget *widget)
slider = SP_COLOR_SLIDER (widget);
- GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED);
+ gtk_widget_set_realized (widget, TRUE);
attributes.window_type = GDK_WINDOW_CHILD;
attributes.x = widget->allocation.x;
@@ -234,7 +235,7 @@ sp_color_slider_size_allocate (GtkWidget *widget, GtkAllocation *allocation)
widget->allocation = *allocation;
- if (GTK_WIDGET_REALIZED (widget)) {
+ if (gtk_widget_get_realized (widget)) {
/* Resize GdkWindow */
gdk_window_move_resize (widget->window, allocation->x, allocation->y, allocation->width, allocation->height);
}
@@ -247,7 +248,7 @@ sp_color_slider_expose (GtkWidget *widget, GdkEventExpose *event)
slider = SP_COLOR_SLIDER (widget);
- if (GTK_WIDGET_DRAWABLE (widget)) {
+ if (gtk_widget_is_drawable (widget)) {
gint width, height;
width = widget->allocation.width;
height = widget->allocation.height;
@@ -268,11 +269,11 @@ sp_color_slider_button_press (GtkWidget *widget, GdkEventButton *event)
gint cx, cw;
cx = widget->style->xthickness;
cw = widget->allocation.width - 2 * cx;
- gtk_signal_emit (GTK_OBJECT (slider), slider_signals[GRABBED]);
+ g_signal_emit (G_OBJECT (slider), slider_signals[GRABBED], 0);
slider->dragging = TRUE;
slider->oldvalue = slider->value;
ColorScales::setScaled( slider->adjustment, CLAMP ((gfloat) (event->x - cx) / cw, 0.0, 1.0) );
- gtk_signal_emit (GTK_OBJECT (slider), slider_signals[DRAGGED]);
+ g_signal_emit (G_OBJECT (slider), slider_signals[DRAGGED], 0);
gdk_pointer_grab (widget->window, FALSE,
(GdkEventMask)(GDK_POINTER_MOTION_MASK |
GDK_BUTTON_RELEASE_MASK),
@@ -292,8 +293,8 @@ sp_color_slider_button_release (GtkWidget *widget, GdkEventButton *event)
if (event->button == 1) {
gdk_pointer_ungrab (event->time);
slider->dragging = FALSE;
- gtk_signal_emit (GTK_OBJECT (slider), slider_signals[RELEASED]);
- if (slider->value != slider->oldvalue) gtk_signal_emit (GTK_OBJECT (slider), slider_signals[CHANGED]);
+ g_signal_emit (G_OBJECT (slider), slider_signals[RELEASED], 0);
+ if (slider->value != slider->oldvalue) g_signal_emit (G_OBJECT (slider), slider_signals[CHANGED], 0);
}
return FALSE;
@@ -311,7 +312,7 @@ sp_color_slider_motion_notify (GtkWidget *widget, GdkEventMotion *event)
cx = widget->style->xthickness;
cw = widget->allocation.width - 2 * cx;
ColorScales::setScaled( slider->adjustment, CLAMP ((gfloat) (event->x - cx) / cw, 0.0, 1.0) );
- gtk_signal_emit (GTK_OBJECT (slider), slider_signals[DRAGGED]);
+ g_signal_emit (G_OBJECT (slider), slider_signals[DRAGGED], 0);
}
return FALSE;
@@ -329,25 +330,21 @@ sp_color_slider_new (GtkAdjustment *adjustment)
return GTK_WIDGET (slider);
}
-void
-sp_color_slider_set_adjustment (SPColorSlider *slider, GtkAdjustment *adjustment)
+void sp_color_slider_set_adjustment(SPColorSlider *slider, GtkAdjustment *adjustment)
{
- g_return_if_fail (slider != NULL);
- g_return_if_fail (SP_IS_COLOR_SLIDER (slider));
+ g_return_if_fail (slider != NULL);
+ g_return_if_fail (SP_IS_COLOR_SLIDER (slider));
- if (!adjustment) {
- adjustment = (GtkAdjustment *) gtk_adjustment_new (0.0, 0.0, 1.0, 0.01, 0.0, 0.0);
- }
-#if GTK_CHECK_VERSION (2,14,0)
- else {
+ if (!adjustment) {
+ adjustment = (GtkAdjustment *) gtk_adjustment_new (0.0, 0.0, 1.0, 0.01, 0.0, 0.0);
+ } else {
gtk_adjustment_set_page_increment(adjustment, 0.0);
gtk_adjustment_set_page_size(adjustment, 0.0);
}
-#endif
if (slider->adjustment != adjustment) {
if (slider->adjustment) {
- gtk_signal_disconnect_by_data (GTK_OBJECT (slider->adjustment), slider);
+ g_signal_handlers_disconnect_matched (G_OBJECT (slider->adjustment), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, slider);
gtk_object_unref (GTK_OBJECT (slider->adjustment));
}
@@ -355,10 +352,10 @@ sp_color_slider_set_adjustment (SPColorSlider *slider, GtkAdjustment *adjustment
gtk_object_ref (GTK_OBJECT (adjustment));
gtk_object_sink (GTK_OBJECT (adjustment));
- gtk_signal_connect (GTK_OBJECT (adjustment), "changed",
- GTK_SIGNAL_FUNC (sp_color_slider_adjustment_changed), slider);
- gtk_signal_connect (GTK_OBJECT (adjustment), "value_changed",
- GTK_SIGNAL_FUNC (sp_color_slider_adjustment_value_changed), slider);
+ g_signal_connect (G_OBJECT (adjustment), "changed",
+ G_CALLBACK (sp_color_slider_adjustment_changed), slider);
+ g_signal_connect (G_OBJECT (adjustment), "value_changed",
+ G_CALLBACK (sp_color_slider_adjustment_value_changed), slider);
slider->value = ColorScales::getScaled( adjustment );
diff --git a/src/widgets/sp-color-slider.h b/src/widgets/sp-color-slider.h
index bdeb3e4b6..b8cfaf869 100644
--- a/src/widgets/sp-color-slider.h
+++ b/src/widgets/sp-color-slider.h
@@ -12,7 +12,7 @@
* This code is in public domain
*/
-#include <gtk/gtkwidget.h>
+#include <gtk/gtk.h>
#include <glib.h>
@@ -22,10 +22,10 @@ struct SPColorSlider;
struct SPColorSliderClass;
#define SP_TYPE_COLOR_SLIDER (sp_color_slider_get_type ())
-#define SP_COLOR_SLIDER(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_SLIDER, SPColorSlider))
-#define SP_COLOR_SLIDER_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_SLIDER, SPColorSliderClass))
-#define SP_IS_COLOR_SLIDER(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_SLIDER))
-#define SP_IS_COLOR_SLIDER_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_SLIDER))
+#define SP_COLOR_SLIDER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_SLIDER, SPColorSlider))
+#define SP_COLOR_SLIDER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_SLIDER, SPColorSliderClass))
+#define SP_IS_COLOR_SLIDER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_SLIDER))
+#define SP_IS_COLOR_SLIDER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_SLIDER))
struct SPColorSlider {
GtkWidget widget;
diff --git a/src/widgets/sp-color-wheel-selector.cpp b/src/widgets/sp-color-wheel-selector.cpp
index 2e36a024e..4bbda79a6 100644
--- a/src/widgets/sp-color-wheel-selector.cpp
+++ b/src/widgets/sp-color-wheel-selector.cpp
@@ -2,10 +2,7 @@
# include "config.h"
#endif
#include <math.h>
-#include <gtk/gtksignal.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtktable.h>
-#include <gtk/gtkspinbutton.h>
+#include <gtk/gtk.h>
#include <glibmm/i18n.h>
#include "../dialogs/dialog-events.h"
#include "sp-color-wheel-selector.h"
@@ -135,14 +132,12 @@ static void resizeHSVWheel( GtkHSV *hsv, GtkAllocation *allocation )
gtk_hsv_set_metrics( hsv, diam, ring );
}
-#if GTK_CHECK_VERSION(2,18,0)
static void handleWheelStyleSet(GtkHSV *hsv, GtkStyle* /*previous*/, gpointer /*userData*/)
{
GtkAllocation allocation = {0, 0, 0, 0};
gtk_widget_get_allocation( GTK_WIDGET(hsv), &allocation );
resizeHSVWheel( hsv, &allocation );
}
-#endif // GTK_CHECK_VERSION(2,18,0)
static void handleWheelAllocation(GtkHSV *hsv, GtkAllocation *allocation, gpointer /*userData*/)
{
@@ -157,8 +152,6 @@ void ColorWheelSelector::init()
_updating = FALSE;
_dragging = FALSE;
- _tt = gtk_tooltips_new();
-
t = gtk_table_new (5, 3, FALSE);
gtk_widget_show (t);
gtk_box_pack_start (GTK_BOX (_csel), t, TRUE, TRUE, 0);
@@ -184,7 +177,7 @@ void ColorWheelSelector::init()
/* Slider */
_slider = sp_color_slider_new (_adj);
- gtk_tooltips_set_tip (_tt, _slider, _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_slider, _("Alpha (opacity)"));
gtk_widget_show (_slider);
gtk_table_attach (GTK_TABLE (t), _slider, 1, 2, row, row + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)GTK_FILL, XPAD, YPAD);
@@ -196,34 +189,32 @@ void ColorWheelSelector::init()
/* Spinbutton */
_sbtn = gtk_spin_button_new (GTK_ADJUSTMENT (_adj), 1.0, 0);
- gtk_tooltips_set_tip (_tt, _sbtn, _("Alpha (opacity)"), NULL);
+ gtk_widget_set_tooltip_text (_sbtn, _("Alpha (opacity)"));
sp_dialog_defocus_on_enter (_sbtn);
gtk_label_set_mnemonic_widget (GTK_LABEL(_label), _sbtn);
gtk_widget_show (_sbtn);
gtk_table_attach (GTK_TABLE (t), _sbtn, 2, 3, row, row + 1, (GtkAttachOptions)0, (GtkAttachOptions)0, XPAD, YPAD);
/* Signals */
- gtk_signal_connect (GTK_OBJECT (_adj), "value_changed",
- GTK_SIGNAL_FUNC (_adjustmentChanged), _csel);
+ g_signal_connect (G_OBJECT (_adj), "value_changed",
+ G_CALLBACK (_adjustmentChanged), _csel);
- gtk_signal_connect (GTK_OBJECT (_slider), "grabbed",
- GTK_SIGNAL_FUNC (_sliderGrabbed), _csel);
- gtk_signal_connect (GTK_OBJECT (_slider), "released",
- GTK_SIGNAL_FUNC (_sliderReleased), _csel);
- gtk_signal_connect (GTK_OBJECT (_slider), "changed",
- GTK_SIGNAL_FUNC (_sliderChanged), _csel);
+ g_signal_connect (G_OBJECT (_slider), "grabbed",
+ G_CALLBACK (_sliderGrabbed), _csel);
+ g_signal_connect (G_OBJECT (_slider), "released",
+ G_CALLBACK (_sliderReleased), _csel);
+ g_signal_connect (G_OBJECT (_slider), "changed",
+ G_CALLBACK (_sliderChanged), _csel);
- gtk_signal_connect( GTK_OBJECT(_wheel), "changed",
- GTK_SIGNAL_FUNC(_wheelChanged), _csel );
+ g_signal_connect( G_OBJECT(_wheel), "changed",
+ G_CALLBACK (_wheelChanged), _csel );
// GTK does not automatically scale the color wheel, so we have to add that in:
- gtk_signal_connect( GTK_OBJECT(_wheel), "size-allocate",
- GTK_SIGNAL_FUNC(handleWheelAllocation), _csel );
-#if GTK_CHECK_VERSION(2,18,0)
- gtk_signal_connect( GTK_OBJECT(_wheel), "style-set",
- GTK_SIGNAL_FUNC(handleWheelStyleSet), _csel );
-#endif // GTK_CHECK_VERSION(2,18,0)
+ g_signal_connect( G_OBJECT (_wheel), "size-allocate",
+ G_CALLBACK (handleWheelAllocation), _csel );
+ g_signal_connect( G_OBJECT (_wheel), "style-set",
+ G_CALLBACK (handleWheelStyleSet), _csel );
}
static void
diff --git a/src/widgets/sp-color-wheel-selector.h b/src/widgets/sp-color-wheel-selector.h
index 34a5f4cd0..d8bcb730b 100644
--- a/src/widgets/sp-color-wheel-selector.h
+++ b/src/widgets/sp-color-wheel-selector.h
@@ -2,8 +2,7 @@
#define SEEN_SP_COLOR_WHEEL_SELECTOR_H
#include <glib/gtypes.h>
-#include <gtk/gtktooltips.h>
-#include <gtk/gtkvbox.h>
+#include <gtk/gtk.h>
#include "../color.h"
#include "sp-color-slider.h"
@@ -45,8 +44,6 @@ protected:
GtkWidget* _sbtn; /* Spinbutton */
GtkWidget* _label; /* Label */
- GtkTooltips* _tt; /* tooltip container */
-
private:
// By default, disallow copy constructor and assignment operator
ColorWheelSelector( const ColorWheelSelector& obj );
@@ -56,10 +53,10 @@ private:
#define SP_TYPE_COLOR_WHEEL_SELECTOR (sp_color_wheel_selector_get_type ())
-#define SP_COLOR_WHEEL_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_WHEEL_SELECTOR, SPColorWheelSelector))
-#define SP_COLOR_WHEEL_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_WHEEL_SELECTOR, SPColorWheelSelectorClass))
-#define SP_IS_COLOR_WHEEL_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_WHEEL_SELECTOR))
-#define SP_IS_COLOR_WHEEL_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_WHEEL_SELECTOR))
+#define SP_COLOR_WHEEL_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_WHEEL_SELECTOR, SPColorWheelSelector))
+#define SP_COLOR_WHEEL_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_WHEEL_SELECTOR, SPColorWheelSelectorClass))
+#define SP_IS_COLOR_WHEEL_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_WHEEL_SELECTOR))
+#define SP_IS_COLOR_WHEEL_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_WHEEL_SELECTOR))
struct SPColorWheelSelector {
SPColorSelector parent;
diff --git a/src/widgets/sp-widget.cpp b/src/widgets/sp-widget.cpp
index f694c461c..d5877db99 100644
--- a/src/widgets/sp-widget.cpp
+++ b/src/widgets/sp-widget.cpp
@@ -78,32 +78,36 @@ sp_widget_class_init (SPWidgetClass *klass)
object_class->destroy = sp_widget_destroy;
- signals[CONSTRUCT] = gtk_signal_new ("construct",
- GTK_RUN_FIRST,
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPWidgetClass, construct),
+ signals[CONSTRUCT] = g_signal_new ("construct",
+ G_TYPE_FROM_CLASS(object_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET (SPWidgetClass, construct),
+ NULL, NULL,
gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- signals[CHANGE_SELECTION] = gtk_signal_new ("change_selection",
- GTK_RUN_FIRST,
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPWidgetClass, change_selection),
+ G_TYPE_NONE, 0);
+ signals[CHANGE_SELECTION] = g_signal_new ("change_selection",
+ G_TYPE_FROM_CLASS(object_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET (SPWidgetClass, change_selection),
+ NULL, NULL,
gtk_marshal_NONE__POINTER,
- GTK_TYPE_NONE, 1,
+ G_TYPE_NONE, 1,
GTK_TYPE_POINTER);
- signals[MODIFY_SELECTION] = gtk_signal_new ("modify_selection",
- GTK_RUN_FIRST,
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPWidgetClass, modify_selection),
+ signals[MODIFY_SELECTION] = g_signal_new ("modify_selection",
+ G_TYPE_FROM_CLASS(object_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET (SPWidgetClass, modify_selection),
+ NULL, NULL,
gtk_marshal_NONE__POINTER_UINT,
- GTK_TYPE_NONE, 2,
+ G_TYPE_NONE, 2,
GTK_TYPE_POINTER, GTK_TYPE_UINT);
- signals[SET_SELECTION] = gtk_signal_new ("set_selection",
- GTK_RUN_FIRST,
- GTK_CLASS_TYPE(object_class),
- GTK_SIGNAL_OFFSET (SPWidgetClass, set_selection),
+ signals[SET_SELECTION] = g_signal_new ("set_selection",
+ G_TYPE_FROM_CLASS(object_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET (SPWidgetClass, set_selection),
+ NULL, NULL,
gtk_marshal_NONE__POINTER,
- GTK_TYPE_NONE, 1,
+ G_TYPE_NONE, 1,
GTK_TYPE_POINTER);
widget_class->show = sp_widget_show;
@@ -184,7 +188,7 @@ sp_widget_expose (GtkWidget *widget, GdkEventExpose *event)
gtk_container_propagate_expose (GTK_CONTAINER(widget), bin->child, event);
}
/*
- if ((bin->child) && (GTK_WIDGET_NO_WINDOW (bin->child))) {
+ if ((bin->child) && (!gtk_widget_get_has_window (bin->child))) {
GdkEventExpose ce;
ce = *event;
gtk_widget_event (bin->child, (GdkEvent *) &ce);
@@ -233,7 +237,7 @@ sp_widget_construct_global (SPWidget *spw, Inkscape::Application *inkscape)
g_return_val_if_fail (!spw->inkscape, NULL);
spw->inkscape = inkscape;
- if (GTK_WIDGET_VISIBLE (spw)) {
+ if (gtk_widget_get_visible (GTK_WIDGET(spw))) {
g_signal_connect (G_OBJECT (inkscape), "modify_selection", G_CALLBACK (sp_widget_modify_selection), spw);
g_signal_connect (G_OBJECT (inkscape), "change_selection", G_CALLBACK (sp_widget_change_selection), spw);
g_signal_connect (G_OBJECT (inkscape), "set_selection", G_CALLBACK (sp_widget_set_selection), spw);
diff --git a/src/widgets/sp-widget.h b/src/widgets/sp-widget.h
index e9f9cfe73..decd9c056 100644
--- a/src/widgets/sp-widget.h
+++ b/src/widgets/sp-widget.h
@@ -16,12 +16,12 @@
#include <glib.h>
#define SP_TYPE_WIDGET (sp_widget_get_type ())
-#define SP_WIDGET(obj) (GTK_CHECK_CAST ((obj), SP_TYPE_WIDGET, SPWidget))
-#define SP_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_WIDGET, SPWidgetClass))
-#define SP_IS_WIDGET(obj) (GTK_CHECK_TYPE ((obj), SP_TYPE_WIDGET))
-#define SP_IS_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_WIDGET))
+#define SP_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_WIDGET, SPWidget))
+#define SP_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_WIDGET, SPWidgetClass))
+#define SP_IS_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_WIDGET))
+#define SP_IS_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_WIDGET))
-#include <gtk/gtkbin.h>
+#include <gtk/gtk.h>
namespace Inkscape {
class Application;
diff --git a/src/widgets/sp-xmlview-attr-list.h b/src/widgets/sp-xmlview-attr-list.h
index 8e7b844d0..de79c7a37 100644
--- a/src/widgets/sp-xmlview-attr-list.h
+++ b/src/widgets/sp-xmlview-attr-list.h
@@ -13,7 +13,6 @@
*/
#include <stdio.h>
-#include <gtk/gtkctree.h>
#include <gtk/gtk.h>
#include "../xml/repr.h"
@@ -21,9 +20,9 @@
#define SP_TYPE_XMLVIEW_ATTR_LIST (sp_xmlview_attr_list_get_type ())
-#define SP_XMLVIEW_ATTR_LIST(o) (GTK_CHECK_CAST ((o), SP_TYPE_XMLVIEW_ATTR_LIST, SPXMLViewAttrList))
-#define SP_IS_XMLVIEW_ATTR_LIST(o) (GTK_CHECK_TYPE ((o), SP_TYPE_XMLVIEW_ATTR_LIST))
-#define SP_XMLVIEW_ATTR_LIST_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_XMLVIEW_ATTR_LIST))
+#define SP_XMLVIEW_ATTR_LIST(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_XMLVIEW_ATTR_LIST, SPXMLViewAttrList))
+#define SP_IS_XMLVIEW_ATTR_LIST(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_XMLVIEW_ATTR_LIST))
+#define SP_XMLVIEW_ATTR_LIST_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_XMLVIEW_ATTR_LIST))
struct SPXMLViewAttrList
{
diff --git a/src/widgets/sp-xmlview-content.h b/src/widgets/sp-xmlview-content.h
index 3077b2251..fe26891d0 100644
--- a/src/widgets/sp-xmlview-content.h
+++ b/src/widgets/sp-xmlview-content.h
@@ -16,7 +16,7 @@
#include <stdio.h>
-#include <gtk/gtktextview.h>
+#include <gtk/gtk.h>
#include "../xml/repr.h"
#include <glib.h>
@@ -24,9 +24,9 @@
#define SP_TYPE_XMLVIEW_CONTENT (sp_xmlview_content_get_type ())
-#define SP_XMLVIEW_CONTENT(o) (GTK_CHECK_CAST ((o), SP_TYPE_XMLVIEW_CONTENT, SPXMLViewContent))
-#define SP_IS_XMLVIEW_CONTENT(o) (GTK_CHECK_TYPE ((o), SP_TYPE_XMLVIEW_CONTENT))
-#define SP_XMLVIEW_CONTENT_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_XMLVIEW_CONTENT))
+#define SP_XMLVIEW_CONTENT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_XMLVIEW_CONTENT, SPXMLViewContent))
+#define SP_IS_XMLVIEW_CONTENT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_XMLVIEW_CONTENT))
+#define SP_XMLVIEW_CONTENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_XMLVIEW_CONTENT))
struct SPXMLViewContent
{
diff --git a/src/widgets/sp-xmlview-tree.h b/src/widgets/sp-xmlview-tree.h
index a5dadbb61..2b04e79eb 100644
--- a/src/widgets/sp-xmlview-tree.h
+++ b/src/widgets/sp-xmlview-tree.h
@@ -12,7 +12,7 @@
* Released under the GNU GPL; see COPYING for details
*/
-#include <gtk/gtkctree.h>
+#include <gtk/gtk.h>
#include "../xml/repr.h"
#include <glib.h>
@@ -20,9 +20,9 @@
#define SP_TYPE_XMLVIEW_TREE (sp_xmlview_tree_get_type ())
-#define SP_XMLVIEW_TREE(o) (GTK_CHECK_CAST ((o), SP_TYPE_XMLVIEW_TREE, SPXMLViewTree))
-#define SP_IS_XMLVIEW_TREE(o) (GTK_CHECK_TYPE ((o), SP_TYPE_XMLVIEW_TREE))
-#define SP_XMLVIEW_TREE_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_XMLVIEW_TREE))
+#define SP_XMLVIEW_TREE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_XMLVIEW_TREE, SPXMLViewTree))
+#define SP_IS_XMLVIEW_TREE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_XMLVIEW_TREE))
+#define SP_XMLVIEW_TREE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_XMLVIEW_TREE))
struct SPXMLViewTree;
struct SPXMLViewTreeClass;
diff --git a/src/widgets/spinbutton-events.h b/src/widgets/spinbutton-events.h
index 683748d0a..46652a346 100644
--- a/src/widgets/spinbutton-events.h
+++ b/src/widgets/spinbutton-events.h
@@ -10,8 +10,7 @@
*/
#include <glib/gtypes.h>
-#include <gtk/gtkstyle.h> /* GtkWidget */
-#include <gtk/gtktypeutils.h> /* GtkObject */
+#include <gtk/gtk.h> /* GtkWidget */
gboolean spinbutton_focus_in (GtkWidget *w, GdkEventKey *event, gpointer data);
void spinbutton_undo (GtkWidget *w);
diff --git a/src/widgets/spw-utilities.cpp b/src/widgets/spw-utilities.cpp
index 49e3a7495..aec1e2e11 100644
--- a/src/widgets/spw-utilities.cpp
+++ b/src/widgets/spw-utilities.cpp
@@ -92,10 +92,8 @@ GtkWidget *spw_vbox_checkbutton(GtkWidget *dialog, GtkWidget *vbox,
g_assert (dialog != NULL);
g_assert (vbox != NULL);
- GtkTooltips *tt = gtk_tooltips_new ();
-
GtkWidget *b = gtk_check_button_new_with_label (label);
- gtk_tooltips_set_tip(tt, b, tip, NULL);
+ gtk_widget_set_tooltip_text(b, tip);
g_assert (b != NULL);
gtk_widget_show (b);
gtk_box_pack_start (GTK_BOX (vbox), b, FALSE, FALSE, 0);
diff --git a/src/widgets/spw-utilities.h b/src/widgets/spw-utilities.h
index 9a387454f..443831353 100644
--- a/src/widgets/spw-utilities.h
+++ b/src/widgets/spw-utilities.h
@@ -19,7 +19,7 @@
*/
#include <glib/gtypes.h>
-#include <gtk/gtkstyle.h> /* GtkWidget */
+#include <gtk/gtk.h> /* GtkWidget */
#include <gtkmm/widget.h>
namespace Gtk {
diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp
index 5288b5102..9da39bac4 100644
--- a/src/widgets/stroke-style.cpp
+++ b/src/widgets/stroke-style.cpp
@@ -55,6 +55,7 @@
#include "widgets/paint-selector.h"
#include "widgets/sp-widget.h"
#include "widgets/spw-utilities.h"
+#include "ui/widget/spinbutton.h"
#include "xml/repr.h"
#include "stroke-style.h"
@@ -224,7 +225,7 @@ ink_marker_list_get (SPDocument *source)
return NULL;
GSList *ml = NULL;
- SPDefs *defs = (SPDefs *) SP_DOCUMENT_DEFS (source);
+ SPDefs *defs = source->getDefs();
for ( SPObject *child = defs->firstChild(); child; child = child->getNext() )
{
if (SP_IS_MARKER(child)) {
@@ -653,7 +654,7 @@ sp_stroke_style_line_widget_new(void)
Gtk::Container *spw;
Gtk::Table *t;
Gtk::Adjustment *a;
- Gtk::SpinButton *sb;
+ Inkscape::UI::Widget::SpinButton *sb;
Gtk::RadioButton *tb;
Gtk::HBox *f, *hb;
@@ -688,7 +689,7 @@ sp_stroke_style_line_widget_new(void)
a = new Gtk::Adjustment(1.0, 0.0, 1000.0, 0.1, 10.0, 0.0);
spw->set_data("width", a);
- sb = new Gtk::SpinButton(*a, 0.1, 3);
+ sb = new Inkscape::UI::Widget::SpinButton(*a, 0.1, 3);
tt->set_tip(*sb, _("Stroke width"));
sb->show();
spw_label(t, C_("Stroke width", "_Width:"), 0, i, sb);
@@ -765,7 +766,7 @@ sp_stroke_style_line_widget_new(void)
a = new Gtk::Adjustment(4.0, 0.0, 100.0, 0.1, 10.0, 0.0);
spw->set_data("miterlimit", a);
- sb = new Gtk::SpinButton(*a, 0.1, 2);
+ sb = new Inkscape::UI::Widget::SpinButton(*a, 0.1, 2);
tt->set_tip(*sb, _("Maximum length of the miter (in units of stroke width)"));
sb->show();
spw_label(t, _("Miter _limit:"), 0, i, sb);
@@ -1057,8 +1058,8 @@ sp_stroke_style_line_update(Gtk::Container *spw, Inkscape::Selection *sel)
tb = static_cast<Gtk::RadioButton *>(spw->get_data("bevel join"));
tb->set_sensitive(enabled);
- Gtk::SpinButton* sb = NULL;
- sb = static_cast<Gtk::SpinButton *>(spw->get_data("miterlimit_sb"));
+ Inkscape::UI::Widget::SpinButton* sb = NULL;
+ sb = static_cast<Inkscape::UI::Widget::SpinButton *>(spw->get_data("miterlimit_sb"));
sb->set_sensitive(enabled);
tb = static_cast<Gtk::RadioButton *>(spw->get_data("cap butt"));
diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp
index db86ff8a0..90d8f61b4 100644
--- a/src/widgets/toolbox.cpp
+++ b/src/widgets/toolbox.cpp
@@ -100,6 +100,7 @@
#include "../verbs.h"
#include "../widgets/button.h"
#include "../widgets/spinbutton-events.h"
+#include "ui/widget/spinbutton.h"
#include "../widgets/spw-utilities.h"
#include "../widgets/widget-sizes.h"
#include "../xml/attribute-record.h"
@@ -132,6 +133,7 @@ static void sp_node_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainA
static void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
static void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
static void sp_zoom_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
+static void sp_measure_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
static void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
static void sp_arc_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
static void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
@@ -173,6 +175,7 @@ static struct {
{ "SPTweakContext", "tweak_tool", SP_VERB_CONTEXT_TWEAK, SP_VERB_CONTEXT_TWEAK_PREFS },
{ "SPSprayContext", "spray_tool", SP_VERB_CONTEXT_SPRAY, SP_VERB_CONTEXT_SPRAY_PREFS },
{ "SPZoomContext", "zoom_tool", SP_VERB_CONTEXT_ZOOM, SP_VERB_CONTEXT_ZOOM_PREFS },
+ { "SPMeasureContext", "measure_tool", SP_VERB_CONTEXT_MEASURE, SP_VERB_CONTEXT_MEASURE_PREFS },
{ "SPRectContext", "rect_tool", SP_VERB_CONTEXT_RECT, SP_VERB_CONTEXT_RECT_PREFS },
{ "Box3DContext", "3dbox_tool", SP_VERB_CONTEXT_3DBOX, SP_VERB_CONTEXT_3DBOX_PREFS },
{ "SPArcContext", "arc_tool", SP_VERB_CONTEXT_ARC, SP_VERB_CONTEXT_ARC_PREFS },
@@ -211,6 +214,8 @@ static struct {
SP_VERB_INVALID, 0, 0},
{ "SPZoomContext", "zoom_toolbox", 0, sp_zoom_toolbox_prep, "ZoomToolbar",
SP_VERB_INVALID, 0, 0},
+ { "SPMeasureContext", "measure_toolbox", 0, sp_measure_toolbox_prep, "MeasureToolbar",
+ SP_VERB_INVALID, 0, 0},
{ "SPStarContext", "star_toolbox", 0, sp_star_toolbox_prep, "StarToolbar",
SP_VERB_CONTEXT_STAR_PREFS, "/tools/shapes/star", N_("Style of new stars")},
{ "SPRectContext", "rect_toolbox", 0, sp_rect_toolbox_prep, "RectToolbar",
@@ -360,6 +365,11 @@ static gchar const * ui_descr =
" <toolitem action='ZoomNext' />"
" </toolbar>"
+ " <toolbar name='MeasureToolbar'>"
+ " <toolitem action='MeasureFontSizeAction' />"
+ " <toolitem action='MeasureUnitsAction' />"
+ " </toolbar>"
+
" <toolbar name='StarToolbar'>"
" <separator />"
" <toolitem action='StarStateAction' />"
@@ -547,11 +557,11 @@ static void update_commands_toolbox(SPDesktop *desktop, SPEventContext *eventcon
static GtkWidget * sp_toolbox_button_new_from_verb_with_doubleclick( GtkWidget *t, Inkscape::IconSize size, SPButtonType type,
Inkscape::Verb *verb, Inkscape::Verb *doubleclick_verb,
- Inkscape::UI::View::View *view, GtkTooltips *tt);
+ Inkscape::UI::View::View *view);
class VerbAction : public Gtk::Action {
public:
- static Glib::RefPtr<VerbAction> create(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view, GtkTooltips *tooltips);
+ static Glib::RefPtr<VerbAction> create(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view);
virtual ~VerbAction();
virtual void set_active(bool active = true);
@@ -569,31 +579,29 @@ private:
Inkscape::Verb* verb;
Inkscape::Verb* verb2;
Inkscape::UI::View::View *view;
- GtkTooltips *tooltips;
bool active;
- VerbAction(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view, GtkTooltips *tooltips);
+ VerbAction(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view);
};
-Glib::RefPtr<VerbAction> VerbAction::create(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view, GtkTooltips *tooltips)
+Glib::RefPtr<VerbAction> VerbAction::create(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view)
{
Glib::RefPtr<VerbAction> result;
SPAction *action = verb->get_action(view);
if ( action ) {
//SPAction* action2 = verb2 ? verb2->get_action(view) : 0;
- result = Glib::RefPtr<VerbAction>(new VerbAction(verb, verb2, view, tooltips));
+ result = Glib::RefPtr<VerbAction>(new VerbAction(verb, verb2, view));
}
return result;
}
-VerbAction::VerbAction(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view, GtkTooltips *tooltips) :
+VerbAction::VerbAction(Inkscape::Verb* verb, Inkscape::Verb* verb2, Inkscape::UI::View::View *view) :
Gtk::Action(Glib::ustring(verb->get_id()), Gtk::StockID(verb->get_image()), Glib::ustring(_(verb->get_name())), Glib::ustring(_(verb->get_tip()))),
verb(verb),
verb2(verb2),
view(view),
- tooltips(tooltips),
active(false)
{
}
@@ -623,8 +631,7 @@ Gtk::Widget* VerbAction::create_tool_item_vfunc()
SP_BUTTON_TYPE_TOGGLE,
verb,
verb2,
- view,
- tooltips );
+ view );
if ( active ) {
sp_button_toggle_set_down( SP_BUTTON(button), active);
}
@@ -807,7 +814,7 @@ static void delete_prefspusher(GtkObject * /*obj*/, PrefPusher *watcher )
GtkWidget * sp_toolbox_button_new_from_verb_with_doubleclick(GtkWidget *t, Inkscape::IconSize size, SPButtonType type,
Inkscape::Verb *verb, Inkscape::Verb *doubleclick_verb,
- Inkscape::UI::View::View *view, GtkTooltips *tt)
+ Inkscape::UI::View::View *view)
{
SPAction *action = verb->get_action(view);
if (!action) {
@@ -823,7 +830,7 @@ GtkWidget * sp_toolbox_button_new_from_verb_with_doubleclick(GtkWidget *t, Inksc
/* fixme: Handle sensitive/unsensitive */
/* fixme: Implement sp_button_new_from_action */
- GtkWidget *b = sp_button_new(size, type, action, doubleclick_action, tt);
+ GtkWidget *b = sp_button_new(size, type, action, doubleclick_action);
gtk_widget_show(b);
@@ -880,7 +887,7 @@ static GtkAction* create_action_for_verb( Inkscape::Verb* verb, Inkscape::UI::Vi
act = GTK_ACTION(inky);
gtk_action_set_sensitive( act, targetAction->sensitive );
- g_signal_connect( G_OBJECT(inky), "activate", GTK_SIGNAL_FUNC(trigger_sp_action), targetAction );
+ g_signal_connect( G_OBJECT(inky), "activate", G_CALLBACK(trigger_sp_action), targetAction );
SPAction*rebound = dynamic_cast<SPAction *>( nr_object_ref( dynamic_cast<NRObject *>(targetAction) ) );
nr_active_object_add_listener( (NRActiveObject *)rebound, (NRObjectEventVector *)&action_event_vector, sizeof(SPActionEventVector), inky );
@@ -931,7 +938,7 @@ static Glib::RefPtr<Gtk::ActionGroup> create_or_fetch_actions( SPDesktop* deskto
SP_VERB_ZOOM_PAGE,
SP_VERB_ZOOM_PAGE_WIDTH,
SP_VERB_ZOOM_PREV,
- SP_VERB_ZOOM_SELECTION,
+ SP_VERB_ZOOM_SELECTION
};
Inkscape::IconSize toolboxSize = ToolboxFactory::prefToSize("/toolbox/small");
@@ -958,9 +965,8 @@ static Glib::RefPtr<Gtk::ActionGroup> create_or_fetch_actions( SPDesktop* deskto
}
if ( !mainActions->get_action("ToolZoom") ) {
- GtkTooltips *tt = gtk_tooltips_new();
for ( guint i = 0; i < G_N_ELEMENTS(tools) && tools[i].type_name; i++ ) {
- Glib::RefPtr<VerbAction> va = VerbAction::create(Inkscape::Verb::get(tools[i].verb), Inkscape::Verb::get(tools[i].doubleclick_verb), view, tt);
+ Glib::RefPtr<VerbAction> va = VerbAction::create(Inkscape::Verb::get(tools[i].verb), Inkscape::Verb::get(tools[i].doubleclick_verb), view);
if ( va ) {
mainActions->add(va);
if ( i == 0 ) {
@@ -1052,6 +1058,14 @@ GtkWidget *ToolboxFactory::createSnapToolbox()
return toolboxNewCommon( tb, BAR_SNAP, GTK_POS_LEFT );
}
+static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRate, guint digits )
+{
+ Inkscape::UI::Widget::SpinButton *inkSpinner = new Inkscape::UI::Widget::SpinButton(*Glib::wrap(adjustment, true), climbRate, digits);
+ inkSpinner = Gtk::manage( inkSpinner );
+ GtkWidget *widget = GTK_WIDGET( inkSpinner->gobj() );
+ return widget;
+}
+
static EgeAdjustmentAction * create_adjustment_action( gchar const *name,
gchar const *label, gchar const *shortLabel, gchar const *tooltip,
Glib::ustring const &path, gdouble def,
@@ -1064,6 +1078,12 @@ static EgeAdjustmentAction * create_adjustment_action( gchar const *name,
void (*callback)(GtkAdjustment *, GObject *),
gdouble climb = 0.1, guint digits = 3, double factor = 1.0 )
{
+ static bool init = false;
+ if ( !init ) {
+ init = true;
+ ege_adjustment_action_set_compact_tool_factory( createCustomSlider );
+ }
+
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
GtkAdjustment* adj = GTK_ADJUSTMENT( gtk_adjustment_new( prefs->getDouble(path, def) * factor,
lower, upper, step, page, 0 ) );
@@ -1071,7 +1091,7 @@ static EgeAdjustmentAction * create_adjustment_action( gchar const *name,
sp_unit_selector_add_adjustment( SP_UNIT_SELECTOR(us), adj );
}
- gtk_signal_connect( GTK_OBJECT(adj), "value-changed", GTK_SIGNAL_FUNC(callback), dataKludge );
+ g_signal_connect( G_OBJECT(adj), "value-changed", G_CALLBACK(callback), dataKludge );
EgeAdjustmentAction* act = ege_adjustment_action_new( adj, name, label, tooltip, 0, climb, digits );
if ( shortLabel ) {
@@ -1612,6 +1632,54 @@ static void sp_zoom_toolbox_prep(SPDesktop * /*desktop*/, GtkActionGroup* /*main
// no custom GtkAction setup needed
} // end of sp_zoom_toolbox_prep()
+static void
+sp_measure_fontsize_value_changed(GtkAdjustment *adj, GObject *tbl)
+{
+ SPDesktop *desktop = (SPDesktop *) g_object_get_data( tbl, "desktop" );
+
+ if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) {
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ prefs->setInt(Glib::ustring("/tools/measure/fontsize"), adj->value);
+ }
+}
+
+static void measure_unit_changed(GtkAction* /*act*/, GObject* tbl)
+{
+ UnitTracker* tracker = reinterpret_cast<UnitTracker*>(g_object_get_data(tbl, "tracker"));
+ SPUnit const *unit = tracker->getActiveUnit();
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ prefs->setInt("/tools/measure/unitid", unit->unit_id);
+}
+
+static void sp_measure_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, GObject* holder)
+{
+ UnitTracker* tracker = new UnitTracker( SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE );
+ tracker->setActiveUnit( sp_desktop_namedview(desktop)->doc_units );
+ g_object_set_data( holder, "tracker", tracker );
+
+ EgeAdjustmentAction *eact = 0;
+
+ /* Font Size */
+ {
+ eact = create_adjustment_action( "MeasureFontSizeAction",
+ _("Font Size"), _("Font Size:"),
+ _("The font size to be used in the measurement labels"),
+ "/tools/measure/fontsize", 0.0,
+ GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL,
+ 10, 36, 1.0, 4.0,
+ 0, 0, 0,
+ sp_measure_fontsize_value_changed);
+ gtk_action_group_add_action( mainActions, GTK_ACTION(eact) );
+ }
+
+ // add the units menu
+ {
+ GtkAction* act = tracker->createAction( "MeasureUnitsAction", _("Units"), _("Units:") );
+ g_signal_connect_after( G_OBJECT(act), "changed", G_CALLBACK(measure_unit_changed), (GObject*)holder );
+ gtk_action_group_add_action( mainActions, act );
+ }
+} // end of sp_measure_toolbox_prep()
+
void ToolboxFactory::setToolboxDesktop(GtkWidget *toolbox, SPDesktop *desktop)
{
sigc::connection *conn = static_cast<sigc::connection*>(g_object_get_data(G_OBJECT(toolbox),
@@ -1726,7 +1794,7 @@ void ToolboxFactory::setOrientation(GtkWidget* toolbox, GtkOrientation orientati
{
#if DUMP_DETAILS
g_message("Set orientation for %p to be %d", toolbox, orientation);
- GType type = GTK_WIDGET_TYPE(toolbox);
+ GType type = G_OBJECT_TYPE(toolbox);
g_message(" [%s]", g_type_name(type));
g_message(" %p", g_object_get_data(G_OBJECT(toolbox), BAR_ID_KEY));
#endif
@@ -1741,7 +1809,7 @@ void ToolboxFactory::setOrientation(GtkWidget* toolbox, GtkOrientation orientati
GtkWidget* child = gtk_bin_get_child(GTK_BIN(toolbox));
if (child) {
#if DUMP_DETAILS
- GType type2 = GTK_WIDGET_TYPE(child);
+ GType type2 = G_OBJECT_TYPE(child);
g_message(" child [%s]", g_type_name(type2));
#endif // DUMP_DETAILS
@@ -1755,7 +1823,7 @@ void ToolboxFactory::setOrientation(GtkWidget* toolbox, GtkOrientation orientati
for (GList* curr = children; curr; curr = g_list_next(curr)) {
GtkWidget* child2 = GTK_WIDGET(curr->data);
#if DUMP_DETAILS
- GType type3 = GTK_WIDGET_TYPE(child2);
+ GType type3 = G_OBJECT_TYPE(child2);
g_message(" child2 [%s]", g_type_name(type3));
#endif // DUMP_DETAILS
@@ -1765,7 +1833,7 @@ void ToolboxFactory::setOrientation(GtkWidget* toolbox, GtkOrientation orientati
for (GList* curr2 = children2; curr2; curr2 = g_list_next(curr2)) {
GtkWidget* child3 = GTK_WIDGET(curr2->data);
#if DUMP_DETAILS
- GType type4 = GTK_WIDGET_TYPE(child3);
+ GType type4 = G_OBJECT_TYPE(child3);
g_message(" child3 [%s]", g_type_name(type4));
#endif // DUMP_DETAILS
if (GTK_IS_TOOLBAR(child3)) {
@@ -1823,6 +1891,7 @@ void setup_tool_toolbox(GtkWidget *toolbox, SPDesktop *desktop)
" <toolitem action='ToolNode' />"
" <toolitem action='ToolTweak' />"
" <toolitem action='ToolZoom' />"
+ " <toolitem action='ToolMeasure' />"
" <!-- Shapes -->"
" <toolitem action='ToolRect' />"
@@ -8362,7 +8431,9 @@ static void paintbucket_offset_changed(GtkAdjustment *adj, GObject *tbl)
SPUnit const *unit = tracker->getActiveUnit();
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- prefs->setDouble("/tools/paintbucket/offset", (gdouble)sp_units_get_pixels(adj->value, *unit));
+ // Don't adjust the offset value because we're saving the
+ // unit and it'll be correctly handled on load.
+ prefs->setDouble("/tools/paintbucket/offset", (gdouble)adj->value);
prefs->setString("/tools/paintbucket/offsetunits", sp_unit_get_abbreviation(unit));
}
diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h
index a25705536..0f3ce83c5 100644
--- a/src/widgets/toolbox.h
+++ b/src/widgets/toolbox.h
@@ -15,8 +15,7 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include <gtk/gtkstyle.h>
-#include <gtk/gtktooltips.h>
+#include <gtk/gtk.h>
#include <glibmm/ustring.h>
#include "forward.h"