summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorJabier Arraiza <jabier.arraiza@marker.es>2018-07-21 02:55:31 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2018-07-21 02:55:31 +0000
commit75d662f71d8eeb4b1c83e9bb61c1bd56f9b0e959 (patch)
treee31f9e32ffa511bb495fc75eac6484681798e0d2 /src/widgets
parentCMake/MSYS2: Update for enchant-2 (diff)
downloadinkscape-75d662f71d8eeb4b1c83e9bb61c1bd56f9b0e959.tar.gz
inkscape-75d662f71d8eeb4b1c83e9bb61c1bd56f9b0e959.zip
adding gtk-theme
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/button.cpp7
-rw-r--r--src/widgets/desktop-widget.cpp42
-rw-r--r--src/widgets/desktop-widget.h3
-rw-r--r--src/widgets/ege-adjustment-action.cpp6
-rw-r--r--src/widgets/gradient-selector.cpp3
-rw-r--r--src/widgets/ink-action.cpp5
-rw-r--r--src/widgets/ink-radio-action.cpp8
-rw-r--r--src/widgets/ink-toggle-action.cpp21
-rw-r--r--src/widgets/paint-selector.cpp8
-rw-r--r--src/widgets/stroke-marker-selector.cpp4
-rw-r--r--src/widgets/stroke-style.cpp4
11 files changed, 65 insertions, 46 deletions
diff --git a/src/widgets/button.cpp b/src/widgets/button.cpp
index 19443716c..83094c156 100644
--- a/src/widgets/button.cpp
+++ b/src/widgets/button.cpp
@@ -15,9 +15,10 @@
#include "button.h"
#include "helper/action-context.h"
-#include "ui/interface.h"
-#include "shortcuts.h"
#include "helper/action.h"
+#include "helper/icon-loader.h"
+#include "shortcuts.h"
+#include "ui/interface.h"
static void sp_button_dispose(GObject *object);
static void sp_button_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width);
@@ -211,7 +212,7 @@ static void sp_button_set_action(SPButton *button, SPAction *action)
button->c_set_sensitive = action->signal_set_sensitive.connect(
sigc::bind<0>(sigc::ptr_fun(&gtk_widget_set_sensitive), GTK_WIDGET(button)));
if (action->image) {
- child = gtk_image_new_from_icon_name(action->image, button->lsize);
+ child = GTK_WIDGET(sp_get_icon_image(action->image, "/toolbox/tools/small")->gobj());
gtk_widget_show(child);
gtk_container_add(GTK_CONTAINER(button), child);
}
diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp
index d0b6af9a0..41a7c41b4 100644
--- a/src/widgets/desktop-widget.cpp
+++ b/src/widgets/desktop-widget.cpp
@@ -1194,29 +1194,35 @@ SPDesktopWidget::shutdown()
* Use depends on setting of "options.savewindowgeometry".
* But we save the info here regardless of the setting.
*/
- {
- Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- bool maxed = desktop->is_maximized();
- bool full = desktop->is_fullscreen();
- prefs->setBool("/desktop/geometry/fullscreen", full);
- prefs->setBool("/desktop/geometry/maximized", maxed);
- gint w, h, x, y;
- desktop->getWindowGeometry(x, y, w, h);
- // Don't save geom for maximized windows. It
- // just tells you the current maximized size, which is not
- // as useful as whatever value it had previously.
- if (!maxed && !full) {
- prefs->setInt("/desktop/geometry/width", w);
- prefs->setInt("/desktop/geometry/height", h);
- prefs->setInt("/desktop/geometry/x", x);
- prefs->setInt("/desktop/geometry/y", y);
- }
- }
+ storeDesktopPosition();
return FALSE;
}
/**
+ * \store dessktop position
+ */
+void
+SPDesktopWidget::storeDesktopPosition() {
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ bool maxed = desktop->is_maximized();
+ bool full = desktop->is_fullscreen();
+ prefs->setBool("/desktop/geometry/fullscreen", full);
+ prefs->setBool("/desktop/geometry/maximized", maxed);
+ gint w, h, x, y;
+ desktop->getWindowGeometry(x, y, w, h);
+ // Don't save geom for maximized windows. It
+ // just tells you the current maximized size, which is not
+ // as useful as whatever value it had previously.
+ if (!maxed && !full) {
+ prefs->setInt("/desktop/geometry/width", w);
+ prefs->setInt("/desktop/geometry/height", h);
+ prefs->setInt("/desktop/geometry/x", x);
+ prefs->setInt("/desktop/geometry/y", y);
+ }
+}
+
+/**
* \pre this->desktop->main != 0
*/
void
diff --git a/src/widgets/desktop-widget.h b/src/widgets/desktop-widget.h
index 60b100028..d3917a505 100644
--- a/src/widgets/desktop-widget.h
+++ b/src/widgets/desktop-widget.h
@@ -163,6 +163,8 @@ struct SPDesktopWidget {
_dtw->window = nullptr;
}
+ void storeDesktopPosition() override
+ { _dtw->storeDesktopPosition(); }
void requestCanvasUpdate() override
{ _dtw->requestCanvasUpdate(); }
void requestCanvasUpdateAndWait() override
@@ -237,6 +239,7 @@ struct SPDesktopWidget {
bool isToolboxButtonActive (gchar const *id);
void setToolboxPosition(Glib::ustring const& id, GtkPositionType pos);
void setCoordinateStatus(Geom::Point p);
+ void storeDesktopPosition();
void requestCanvasUpdate();
void requestCanvasUpdateAndWait();
void enableInteraction();
diff --git a/src/widgets/ege-adjustment-action.cpp b/src/widgets/ege-adjustment-action.cpp
index 5b71110b2..927b6aec0 100644
--- a/src/widgets/ege-adjustment-action.cpp
+++ b/src/widgets/ege-adjustment-action.cpp
@@ -50,9 +50,10 @@
#include <gdk/gdkkeysyms.h>
#include <gdkmm/display.h>
-#include "widgets/ege-adjustment-action.h"
+#include "helper/icon-loader.h"
#include "ui/icon-names.h"
#include "ui/widget/ink-spinscale.h"
+#include "widgets/ege-adjustment-action.h"
static void ege_adjustment_action_finalize( GObject* object );
static void ege_adjustment_action_get_property( GObject* obj, guint propId, GValue* value, GParamSpec * pspec );
@@ -864,7 +865,8 @@ static GtkWidget* create_tool_item( GtkAction* action )
/* Use an icon if available or use short-label */
if ( act->private_data->iconId && strcmp( act->private_data->iconId, "" ) != 0 ) {
- GtkWidget* icon = gtk_image_new_from_icon_name( act->private_data->iconId, act->private_data->iconSize );
+ GtkWidget *icon =
+ GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
gtk_box_pack_start( GTK_BOX(hb), icon, FALSE, FALSE, 0 );
} else {
GtkWidget* lbl = gtk_label_new( g_value_get_string( &value ) ? g_value_get_string( &value ) : "wwww" );
diff --git a/src/widgets/gradient-selector.cpp b/src/widgets/gradient-selector.cpp
index 230282e6d..10b1ecf04 100644
--- a/src/widgets/gradient-selector.cpp
+++ b/src/widgets/gradient-selector.cpp
@@ -35,6 +35,7 @@
#include "style.h"
#include "helper/action.h"
+#include "helper/icon-loader.h"
#include "ui/icon-names.h"
@@ -98,7 +99,7 @@ static void sp_gradient_selector_class_init(SPGradientSelectorClass *klass)
static void gradsel_style_button(GtkWidget *gtkbtn, char const *iconName)
{
Gtk::Button *btn = Glib::wrap(GTK_BUTTON(gtkbtn));
- GtkWidget *child = gtk_image_new_from_icon_name(iconName, GTK_ICON_SIZE_SMALL_TOOLBAR);
+ GtkWidget *child = GTK_WIDGET(sp_get_icon_image(iconName, GTK_ICON_SIZE_SMALL_TOOLBAR)->gobj());
gtk_widget_show(child);
btn->add(*manage(Glib::wrap(child)));
btn->set_relief(Gtk::RELIEF_NONE);
diff --git a/src/widgets/ink-action.cpp b/src/widgets/ink-action.cpp
index 5adb69ac6..ee6478403 100644
--- a/src/widgets/ink-action.cpp
+++ b/src/widgets/ink-action.cpp
@@ -1,5 +1,5 @@
#include "ink-action.h"
-
+#include "helper/icon-loader.h"
#include <gtk/gtk.h>
static void ink_action_finalize( GObject* obj );
@@ -161,7 +161,8 @@ static GtkWidget* ink_action_create_tool_item( GtkAction* action )
if ( GTK_IS_TOOL_BUTTON(item) ) {
GtkToolButton* button = GTK_TOOL_BUTTON(item);
- GtkWidget* child = gtk_image_new_from_icon_name( act->private_data->iconId, act->private_data->iconSize );
+ GtkWidget *child =
+ GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
gtk_tool_button_set_icon_widget( button, child );
} else {
// For now trigger a warning but don't do anything else
diff --git a/src/widgets/ink-radio-action.cpp b/src/widgets/ink-radio-action.cpp
index 611e0c624..d0bff1271 100644
--- a/src/widgets/ink-radio-action.cpp
+++ b/src/widgets/ink-radio-action.cpp
@@ -1,4 +1,5 @@
#include "ink-radio-action.h"
+#include "helper/icon-loader.h"
static void ink_radio_action_finalize( GObject* obj );
static void ink_radio_action_get_property( GObject* obj, guint propId, GValue* value, GParamSpec * pspec );
@@ -157,9 +158,10 @@ static GtkWidget* ink_radio_action_create_tool_item( GtkAction* action )
if ( GTK_IS_TOOL_BUTTON(item) ) {
GtkToolButton* button = GTK_TOOL_BUTTON(item);
- GtkWidget* child = gtk_image_new_from_icon_name( act->private_data->iconId, act->private_data->iconSize );
- gtk_widget_set_hexpand(child, FALSE);
- gtk_widget_set_vexpand(child, FALSE);
+ GtkWidget *child =
+ GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
+ gtk_widget_set_hexpand(child, FALSE);
+ gtk_widget_set_vexpand(child, FALSE);
gtk_tool_button_set_icon_widget(button, child);
} else {
// For now trigger a warning but don't do anything else
diff --git a/src/widgets/ink-toggle-action.cpp b/src/widgets/ink-toggle-action.cpp
index 467f0f24c..77dc39c3d 100644
--- a/src/widgets/ink-toggle-action.cpp
+++ b/src/widgets/ink-toggle-action.cpp
@@ -1,4 +1,5 @@
#include "ink-toggle-action.h"
+#include "helper/icon-loader.h"
static void ink_toggle_action_finalize( GObject* obj );
static void ink_toggle_action_get_property( GObject* obj, guint propId, GValue* value, GParamSpec * pspec );
@@ -163,11 +164,12 @@ static GtkWidget* ink_toggle_action_create_tool_item( GtkAction* action )
if ( GTK_IS_TOOL_BUTTON(item) ) {
GtkToolButton* button = GTK_TOOL_BUTTON(item);
if ( act->private_data->iconId ) {
- GtkWidget* child = gtk_image_new_from_icon_name( act->private_data->iconId, act->private_data->iconSize );
+ GtkWidget *child =
+ GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
- gtk_widget_set_hexpand(child, FALSE);
- gtk_widget_set_vexpand(child, FALSE);
- gtk_tool_button_set_icon_widget(button, child);
+ gtk_widget_set_hexpand(child, FALSE);
+ gtk_widget_set_vexpand(child, FALSE);
+ gtk_tool_button_set_icon_widget(button, child);
} else {
gchar *label = nullptr;
g_object_get( G_OBJECT(action), "short_label", &label, NULL );
@@ -195,11 +197,12 @@ static void ink_toggle_action_update_icon( InkToggleAction* action )
if ( GTK_IS_TOOL_BUTTON(proxies->data) ) {
GtkToolButton* button = GTK_TOOL_BUTTON(proxies->data);
- GtkWidget* child = gtk_image_new_from_icon_name( action->private_data->iconId, action->private_data->iconSize );
- gtk_widget_set_hexpand(child, FALSE);
- gtk_widget_set_vexpand(child, FALSE);
- gtk_widget_show_all(child);
- gtk_tool_button_set_icon_widget(button, child);
+ GtkWidget *child = GTK_WIDGET(
+ sp_get_icon_image(action->private_data->iconId, action->private_data->iconSize)->gobj());
+ gtk_widget_set_hexpand(child, FALSE);
+ gtk_widget_set_vexpand(child, FALSE);
+ gtk_widget_show_all(child);
+ gtk_tool_button_set_icon_widget(button, child);
}
}
diff --git a/src/widgets/paint-selector.cpp b/src/widgets/paint-selector.cpp
index 3fcd40bdf..3b93f20f5 100644
--- a/src/widgets/paint-selector.cpp
+++ b/src/widgets/paint-selector.cpp
@@ -34,6 +34,7 @@
#include "paint-selector.h"
#include "path-prefix.h"
+#include "helper/icon-loader.h"
#include "helper/stock-items.h"
#include "style.h"
@@ -243,7 +244,7 @@ sp_paint_selector_init(SPPaintSelector *psel)
// TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
gtk_widget_set_tooltip_text(psel->evenodd, _("Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)"));
g_object_set_data(G_OBJECT(psel->evenodd), "mode", GUINT_TO_POINTER(SPPaintSelector::FILLRULE_EVENODD));
- w = gtk_image_new_from_icon_name("fill-rule-even-odd", GTK_ICON_SIZE_MENU);
+ w = GTK_WIDGET(sp_get_icon_image("fill-rule-even-odd", GTK_ICON_SIZE_MENU)->gobj());
gtk_container_add(GTK_CONTAINER(psel->evenodd), w);
gtk_box_pack_start(GTK_BOX(psel->fillrulebox), psel->evenodd, FALSE, FALSE, 0);
g_signal_connect(G_OBJECT(psel->evenodd), "toggled", G_CALLBACK(sp_paint_selector_fillrule_toggled), psel);
@@ -254,7 +255,7 @@ sp_paint_selector_init(SPPaintSelector *psel)
// TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
gtk_widget_set_tooltip_text(psel->nonzero, _("Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)"));
g_object_set_data(G_OBJECT(psel->nonzero), "mode", GUINT_TO_POINTER(SPPaintSelector::FILLRULE_NONZERO));
- w = gtk_image_new_from_icon_name("fill-rule-nonzero", GTK_ICON_SIZE_MENU);
+ w = GTK_WIDGET(sp_get_icon_image("fill-rule-nonzero", GTK_ICON_SIZE_MENU)->gobj());
gtk_container_add(GTK_CONTAINER(psel->nonzero), w);
gtk_box_pack_start(GTK_BOX(psel->fillrulebox), psel->nonzero, FALSE, FALSE, 0);
g_signal_connect(G_OBJECT(psel->nonzero), "toggled", G_CALLBACK(sp_paint_selector_fillrule_toggled), psel);
@@ -323,8 +324,7 @@ static GtkWidget *sp_paint_selector_style_button_add(SPPaintSelector *psel,
gtk_toggle_button_set_mode(GTK_TOGGLE_BUTTON(b), FALSE);
g_object_set_data(G_OBJECT(b), "mode", GUINT_TO_POINTER(mode));
- w = gtk_image_new_from_icon_name(pixmap, GTK_ICON_SIZE_BUTTON);
- gtk_widget_show(w);
+ w = GTK_WIDGET(sp_get_icon_image(pixmap, GTK_ICON_SIZE_BUTTON)->gobj());
gtk_container_add(GTK_CONTAINER(b), w);
gtk_box_pack_start(GTK_BOX(psel->style), b, FALSE, FALSE, 0);
diff --git a/src/widgets/stroke-marker-selector.cpp b/src/widgets/stroke-marker-selector.cpp
index 191d215f3..dfa8614a1 100644
--- a/src/widgets/stroke-marker-selector.cpp
+++ b/src/widgets/stroke-marker-selector.cpp
@@ -25,6 +25,7 @@
#include "path-prefix.h"
#include "stroke-style.h"
+#include "helper/icon-loader.h"
#include "helper/stock-items.h"
#include "io/sys.h"
@@ -55,8 +56,7 @@ MarkerComboBox::MarkerComboBox(gchar const *id, int l) :
set_cell_data_func(image_renderer, sigc::mem_fun(*this, &MarkerComboBox::prepareImageRenderer));
gtk_combo_box_set_row_separator_func(GTK_COMBO_BOX(gobj()), MarkerComboBox::separator_cb, nullptr, nullptr);
- empty_image = new Gtk::Image();
- empty_image->set_from_icon_name("no-marker", Gtk::ICON_SIZE_SMALL_TOOLBAR);
+ empty_image = sp_get_icon_image("no-marker", Gtk::ICON_SIZE_SMALL_TOOLBAR);
sandbox = ink_markers_preview_doc ();
desktop = SP_ACTIVE_DESKTOP;
diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp
index 9f702a3c4..3a5abbca4 100644
--- a/src/widgets/stroke-style.cpp
+++ b/src/widgets/stroke-style.cpp
@@ -28,6 +28,7 @@
#include "svg/svg-color.h"
+#include "helper/icon-loader.h"
#include "ui/widget/unit-menu.h"
#include "widgets/style-utils.h"
@@ -120,8 +121,7 @@ StrokeStyle::StrokeStyleButton::StrokeStyleButton(Gtk::RadioButtonGroup &grp,
show();
set_mode(false);
- auto px = Gtk::manage(new Gtk::Image());
- px->set_from_icon_name(icon, Gtk::ICON_SIZE_LARGE_TOOLBAR);
+ auto px = Gtk::manage(sp_get_icon_image(icon, Gtk::ICON_SIZE_LARGE_TOOLBAR));
g_assert(px != nullptr);
px->show();
add(*px);