[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Confusing new 1.6 behavior



On Sun, 2009-11-15 at 06:39 -0700, John Doty wrote:
> In previous versions, when adding a component, the component would  
> start out "graphic" green, and turn to "selection" orange immediately  
> when placed.

It still does this.. but I see the effect you are referring to.

The placed object is selected, and drawn orange - but there is
immediately a new object ready to be placed attached to the cursor.

That object sits in front of the one you just placed, and hides its
colour.

The "old" way (IIRC), was that the object being placed was XOR'd with
the screen, so you would see some other colour when they were on top of
each other.

Does it feel any better with the attached patch applied?

Best wishes,

Peter C.

From 226e0d1471fdf90bb8e44d9a30a5f45f9586512a Mon Sep 17 00:00:00 2001
From: Peter Clifton <pcjc2@xxxxxxxxx>
Date: Sun, 15 Nov 2009 15:16:15 +0000
Subject: [PATCH] Don't immediately redraw rubberband objects after placing

This allows the user to see the placed (and selected) object
without it being overwriten by any object still attached to the
mouse cursor. (This made it appear that the object had not been
placed).

The rubberband objects attached to the cursor are re-drawn as soon
as the mouse moves.
---
 gschem/src/x_event.c |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/gschem/src/x_event.c b/gschem/src/x_event.c
index d13255b..0986520 100644
--- a/gschem/src/x_event.c
+++ b/gschem/src/x_event.c
@@ -298,7 +298,6 @@ gint x_event_button_pressed(GtkWidget *widget, GdkEventButton *event,
           i_update_toolbar(w_current);
         } else {
           o_place_invalidate_rubber (w_current, TRUE);
-          w_current->rubber_visible = 1;
         }
         break;
 
@@ -589,7 +588,6 @@ gint x_event_button_released(GtkWidget *widget, GdkEventButton *event,
         w_current->inside_action = 1;
         /* Keep the state and the inside_action, as the copy has not finished. */
         o_place_invalidate_rubber (w_current, TRUE);
-        w_current->rubber_visible = 1;
         i_set_state(w_current, ENDMCOPY);
         i_update_toolbar(w_current);
         o_undo_savestate(w_current, UNDO_ALL);
-- 
1.6.3.3


_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user