summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorJabiertxof <jabier.arraiza@marker.es>2018-11-08 18:36:18 +0000
committerJabiertxof <jabier.arraiza@marker.es>2018-11-09 10:44:36 +0000
commit0ddbdf18a2cfcf54f591b1372bb3eb9dde9728e2 (patch)
tree90fe83ef220a34b5df3877e7b7dc01af82b78a4c /src/widgets
parentAdd README to src/ui/view (diff)
downloadinkscape-0ddbdf18a2cfcf54f591b1372bb3eb9dde9728e2.tar.gz
inkscape-0ddbdf18a2cfcf54f591b1372bb3eb9dde9728e2.zip
This improve symbolic icon rendering moving it to CSS only. There is places in the UI whar we claim for a Pixbuf. Currently its not possible render them as symbolic without the previos hack
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/button.cpp2
-rw-r--r--src/widgets/ege-adjustment-action.cpp2
-rw-r--r--src/widgets/gradient-selector.cpp2
-rw-r--r--src/widgets/ink-action.cpp2
-rw-r--r--src/widgets/ink-radio-action.cpp2
-rw-r--r--src/widgets/ink-toggle-action.cpp5
-rw-r--r--src/widgets/paint-selector.cpp6
-rw-r--r--src/widgets/toolbox.cpp12
-rw-r--r--src/widgets/toolbox.h1
9 files changed, 23 insertions, 11 deletions
diff --git a/src/widgets/button.cpp b/src/widgets/button.cpp
index de7aa8880..8933c2672 100644
--- a/src/widgets/button.cpp
+++ b/src/widgets/button.cpp
@@ -214,7 +214,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_WIDGET(sp_get_icon_image(action->image, button->lsize)->gobj());
+ child = sp_get_icon_image(action->image, button->lsize);
gtk_widget_show(child);
gtk_container_add(GTK_CONTAINER(button), child);
}
diff --git a/src/widgets/ege-adjustment-action.cpp b/src/widgets/ege-adjustment-action.cpp
index 15647c245..155f33389 100644
--- a/src/widgets/ege-adjustment-action.cpp
+++ b/src/widgets/ege-adjustment-action.cpp
@@ -867,7 +867,7 @@ 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_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
+ sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize);
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 8da832a26..85c4214a7 100644
--- a/src/widgets/gradient-selector.cpp
+++ b/src/widgets/gradient-selector.cpp
@@ -95,7 +95,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_WIDGET(sp_get_icon_image(iconName, GTK_ICON_SIZE_SMALL_TOOLBAR)->gobj());
+ GtkWidget *child = sp_get_icon_image(iconName, GTK_ICON_SIZE_SMALL_TOOLBAR);
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 bbdcd1c66..c879f2c11 100644
--- a/src/widgets/ink-action.cpp
+++ b/src/widgets/ink-action.cpp
@@ -171,7 +171,7 @@ static GtkWidget* ink_action_create_tool_item( GtkAction* action )
GtkToolButton* button = GTK_TOOL_BUTTON(item);
GtkWidget *child =
- GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
+ sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize);
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 5f8e3448a..fb117594a 100644
--- a/src/widgets/ink-radio-action.cpp
+++ b/src/widgets/ink-radio-action.cpp
@@ -168,7 +168,7 @@ static GtkWidget* ink_radio_action_create_tool_item( GtkAction* action )
GtkToolButton* button = GTK_TOOL_BUTTON(item);
GtkWidget *child =
- GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
+ sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize);
gtk_widget_set_hexpand(child, FALSE);
gtk_widget_set_vexpand(child, FALSE);
gtk_tool_button_set_icon_widget(button, child);
diff --git a/src/widgets/ink-toggle-action.cpp b/src/widgets/ink-toggle-action.cpp
index fdd3e2498..f7dc36450 100644
--- a/src/widgets/ink-toggle-action.cpp
+++ b/src/widgets/ink-toggle-action.cpp
@@ -188,7 +188,7 @@ static GtkWidget* ink_toggle_action_create_tool_item( GtkAction* action )
GtkToolButton* button = GTK_TOOL_BUTTON(item);
if ( act->private_data->iconId ) {
GtkWidget *child =
- GTK_WIDGET(sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize)->gobj());
+ sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize);
gtk_widget_set_hexpand(child, FALSE);
gtk_widget_set_vexpand(child, FALSE);
@@ -220,8 +220,7 @@ 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_WIDGET(
- sp_get_icon_image(action->private_data->iconId, action->private_data->iconSize)->gobj());
+ GtkWidget *child = sp_get_icon_image(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);
diff --git a/src/widgets/paint-selector.cpp b/src/widgets/paint-selector.cpp
index 51061a947..b3e4c302d 100644
--- a/src/widgets/paint-selector.cpp
+++ b/src/widgets/paint-selector.cpp
@@ -238,7 +238,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_WIDGET(sp_get_icon_image("fill-rule-even-odd", GTK_ICON_SIZE_MENU)->gobj());
+ w = sp_get_icon_image("fill-rule-even-odd", GTK_ICON_SIZE_MENU);
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);
@@ -249,7 +249,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_WIDGET(sp_get_icon_image("fill-rule-nonzero", GTK_ICON_SIZE_MENU)->gobj());
+ w = sp_get_icon_image("fill-rule-nonzero", GTK_ICON_SIZE_MENU);
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);
@@ -318,7 +318,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_WIDGET(sp_get_icon_image(pixmap, GTK_ICON_SIZE_BUTTON)->gobj());
+ w = sp_get_icon_image(pixmap, GTK_ICON_SIZE_BUTTON);
gtk_container_add(GTK_CONTAINER(b), w);
gtk_box_pack_start(GTK_BOX(psel->style), b, FALSE, FALSE, 0);
diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp
index 670693bc4..41b237b29 100644
--- a/src/widgets/toolbox.cpp
+++ b/src/widgets/toolbox.cpp
@@ -137,6 +137,18 @@ GtkIconSize ToolboxFactory::prefToSize( Glib::ustring const &path, int base ) {
return sizeChoices[index];
}
+Gtk::IconSize ToolboxFactory::prefToSize_mm( Glib::ustring const &path, int base ) {
+ static Gtk::IconSize sizeChoices[] = {
+ Gtk::ICON_SIZE_LARGE_TOOLBAR,
+ Gtk::ICON_SIZE_SMALL_TOOLBAR,
+ Gtk::ICON_SIZE_MENU,
+ Gtk::ICON_SIZE_DIALOG
+ };
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ int index = prefs->getIntLimited( path, base, 0, G_N_ELEMENTS(sizeChoices) );
+ return sizeChoices[index];
+}
+
static struct {
gchar const *type_name;
gchar const *data_name;
diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h
index ff19c802c..a5cc98b5c 100644
--- a/src/widgets/toolbox.h
+++ b/src/widgets/toolbox.h
@@ -62,6 +62,7 @@ public:
static void updateSnapToolbox(SPDesktop *desktop, Inkscape::UI::Tools::ToolBase *eventcontext, GtkWidget *toolbox);
static GtkIconSize prefToSize(Glib::ustring const &path, int base = 0 );
+ static Gtk::IconSize prefToSize_mm(Glib::ustring const &path, int base = 0 );
private:
ToolboxFactory() = delete;