summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorsu_v <suv-sf@users.sourceforge.net>2012-09-25 20:41:04 +0000
committer~suv <suv-sf@users.sourceforge.net>2012-09-25 20:41:04 +0000
commit10f49c2924837a6b429b2ad7d41deb1a400cc913 (patch)
tree72c2781995a3666454e51043b713683501283bea /src
parentChanges from 2012-09-24 (diff)
parentDoc. Shapes tutorial update (see Bug #817907 - Linked offsets regression). (diff)
downloadinkscape-10f49c2924837a6b429b2ad7d41deb1a400cc913.tar.gz
inkscape-10f49c2924837a6b429b2ad7d41deb1a400cc913.zip
merge from trunk (r11704)
(bzr r11668.1.14)
Diffstat (limited to 'src')
-rw-r--r--src/event-context.cpp36
-rw-r--r--src/ink-action.cpp6
-rw-r--r--src/widgets/gradient-selector.cpp2
-rw-r--r--src/widgets/gradient-toolbar.cpp2
-rw-r--r--src/widgets/stroke-marker-selector.cpp5
-rw-r--r--src/widgets/stroke-style.cpp1
-rw-r--r--src/widgets/widget-sizes.h4
7 files changed, 47 insertions, 9 deletions
diff --git a/src/event-context.cpp b/src/event-context.cpp
index 2c9ed1abd..b8a2dc797 100644
--- a/src/event-context.cpp
+++ b/src/event-context.cpp
@@ -172,6 +172,27 @@ static void sp_event_context_dispose(GObject *object) {
}
/**
+ * Set the cursor to a standard GDK cursor
+ */
+void sp_event_context_set_cursor(SPEventContext *event_context, GdkCursorType cursor_type) {
+
+ GtkWidget *w = GTK_WIDGET(sp_desktop_canvas(event_context->desktop));
+ GdkDisplay *display = gdk_display_get_default();
+ GdkCursor *cursor = gdk_cursor_new_for_display(display, cursor_type);
+
+#if WITH_GTKMM_3_0
+ if (cursor) {
+ gdk_window_set_cursor (gtk_widget_get_window (w), cursor);
+ g_object_unref (cursor);
+ }
+#else
+ gdk_window_set_cursor (gtk_widget_get_window (w), cursor);
+ gdk_cursor_unref (cursor);
+#endif
+
+}
+
+/**
* Recreates and draws cursor on desktop related to SPEventContext.
*/
void sp_event_context_update_cursor(SPEventContext *ec) {
@@ -360,6 +381,7 @@ static gint sp_event_context_private_root_handler(
SPEventContext *event_context, GdkEvent *event) {
static Geom::Point button_w;
static unsigned int panning = 0;
+ static unsigned int panning_cursor = 0;
static unsigned int zoom_rb = 0;
SPDesktop *desktop = event_context->desktop;
@@ -393,6 +415,7 @@ static gint sp_event_context_private_root_handler(
switch (event->button.button) {
case 1:
if (event_context->space_panning) {
+
// When starting panning, make sure there are no snap events pending because these might disable the panning again
sp_event_context_discard_delayed_snap_event(event_context);
panning = 1;
@@ -408,6 +431,7 @@ static gint sp_event_context_private_root_handler(
if (event->button.state & GDK_SHIFT_MASK) {
zoom_rb = 2;
} else {
+
// When starting panning, make sure there are no snap events pending because these might disable the panning again
sp_event_context_discard_delayed_snap_event(event_context);
panning = 2;
@@ -415,6 +439,7 @@ static gint sp_event_context_private_root_handler(
GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK
| GDK_POINTER_MOTION_HINT_MASK, NULL,
event->button.time - 1);
+
}
ret = TRUE;
break;
@@ -466,6 +491,11 @@ static gint sp_event_context_private_root_handler(
gobble_motion_events(panning == 2 ? GDK_BUTTON2_MASK : (panning
== 1 ? GDK_BUTTON1_MASK : GDK_BUTTON3_MASK));
+ if (panning_cursor == 0) {
+ panning_cursor = 1;
+ sp_event_context_set_cursor(event_context, GDK_FLEUR);
+ }
+
Geom::Point const motion_w(event->motion.x, event->motion.y);
Geom::Point const moved_w(motion_w - button_w);
event_context->desktop->scroll_world(moved_w, true); // we're still scrolling, do not redraw
@@ -496,6 +526,11 @@ static gint sp_event_context_private_root_handler(
break;
case GDK_BUTTON_RELEASE:
xp = yp = 0;
+ if (panning_cursor == 1) {
+ panning_cursor = 0;
+ GtkWidget *w = GTK_WIDGET(sp_desktop_canvas(event_context->desktop));
+ gdk_window_set_cursor(gtk_widget_get_window (w), event_context->cursor);
+ }
if (within_tolerance && (panning || zoom_rb)) {
zoom_rb = 0;
if (panning) {
@@ -665,6 +700,7 @@ static gint sp_event_context_private_root_handler(
if (event_context->space_panning) {
event_context->space_panning = false;
event_context->_message_context->clear();
+
if (panning == 1) {
panning = 0;
sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate),
diff --git a/src/ink-action.cpp b/src/ink-action.cpp
index 4c6008b01..c79cebd1e 100644
--- a/src/ink-action.cpp
+++ b/src/ink-action.cpp
@@ -458,8 +458,10 @@ static void ink_toggle_action_update_icon( InkToggleAction* action )
GtkToolButton* button = GTK_TOOL_BUTTON(proxies->data);
GtkWidget* child = sp_icon_new( action->private_data->iconSize, action->private_data->iconId );
- gtk_widget_show_all( child );
- gtk_tool_button_set_icon_widget( button, child );
+ GtkWidget* align = gtk_alignment_new( 0.5, 0.5, 0.0, 0.0 );
+ gtk_container_add( GTK_CONTAINER(align), child );
+ gtk_widget_show_all( align );
+ gtk_tool_button_set_icon_widget( button, align );
}
}
diff --git a/src/widgets/gradient-selector.cpp b/src/widgets/gradient-selector.cpp
index 3eba2da23..082f04a77 100644
--- a/src/widgets/gradient-selector.cpp
+++ b/src/widgets/gradient-selector.cpp
@@ -153,7 +153,7 @@ static void sp_gradient_selector_init(SPGradientSelector *sel)
Gtk::TreeView::Column* name_column = sel->treeview->get_column(1);
sel->text_renderer->property_editable() = true;
name_column->add_attribute(sel->text_renderer->property_text(), sel->columns->name);
- name_column->set_min_width(200);
+ name_column->set_min_width(180);
name_column->set_clickable(true);
name_column->set_resizable(true);
diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp
index 7542e16b3..ea88b96fa 100644
--- a/src/widgets/gradient-toolbar.cpp
+++ b/src/widgets/gradient-toolbar.cpp
@@ -1231,7 +1231,7 @@ void sp_gradient_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions,
_("Link gradients"),
_("Link gradients to change all related gradients"),
INKSCAPE_ICON("object-unlocked"),
- secondarySize );
+ Inkscape::ICON_SIZE_DECORATION );
g_object_set( itact, "short_label", "Lock", NULL );
g_signal_connect_after( G_OBJECT(itact), "toggled", G_CALLBACK(gr_linked_changed), desktop) ;
gtk_action_group_add_action( mainActions, GTK_ACTION(itact) );
diff --git a/src/widgets/stroke-marker-selector.cpp b/src/widgets/stroke-marker-selector.cpp
index 206f166f9..62fa47603 100644
--- a/src/widgets/stroke-marker-selector.cpp
+++ b/src/widgets/stroke-marker-selector.cpp
@@ -57,8 +57,8 @@ MarkerComboBox::MarkerComboBox(gchar const *id, int l) :
set_model(marker_store);
pack_start(image_renderer, false);
pack_end(label_renderer, true);
- label_renderer.set_padding(5, 0);
- image_renderer.set_padding(5, 0);
+ label_renderer.set_padding(2, 0);
+ image_renderer.set_padding(2, 0);
set_cell_data_func(label_renderer, sigc::mem_fun(*this, &MarkerComboBox::prepareLabelRenderer));
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, NULL, NULL);
@@ -562,6 +562,7 @@ MarkerComboBox::create_marker_image(unsigned psize, gchar const *mname,
void MarkerComboBox::prepareLabelRenderer( Gtk::TreeModel::const_iterator const &row ) {
Glib::ustring name=(*row)[marker_columns.label];
label_renderer.property_markup() = name.c_str();
+ label_renderer.property_scale() = 0.8;
}
void MarkerComboBox::prepareImageRenderer( Gtk::TreeModel::const_iterator const &row ) {
diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp
index 5f686881f..832865eae 100644
--- a/src/widgets/stroke-style.cpp
+++ b/src/widgets/stroke-style.cpp
@@ -601,7 +601,6 @@ StrokeStyle::forkMarker(SPObject *marker, int loc, SPItem *item)
sp_repr_css_set_property(css_item, marker_id, g_strconcat("url(#", mark_repr->attribute("id"), ")", NULL));
sp_repr_css_change_recursive(item->getRepr(), css_item, "style");
- Inkscape::GC::release(mark_repr);
sp_repr_css_attr_unref(css_item);
css_item = 0;
diff --git a/src/widgets/widget-sizes.h b/src/widgets/widget-sizes.h
index 644740637..c3f9e1119 100644
--- a/src/widgets/widget-sizes.h
+++ b/src/widgets/widget-sizes.h
@@ -29,8 +29,8 @@
#define STATUS_ZOOM_WIDTH 57
-#define SELECTED_STYLE_SB_WIDTH 38
-#define SELECTED_STYLE_WIDTH 180
+#define SELECTED_STYLE_SB_WIDTH 48
+#define SELECTED_STYLE_WIDTH 190
#define STYLE_SWATCH_WIDTH 100
#define STATUS_LAYER_FONT_SIZE 7700