[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
gEDA-cvs: branch: master updated (1.1.1.20070708-1-gff036cb)
The branch, master has been updated
via ff036cbb89336c48106b064af499b6e841c7d8a5 (commit)
from e978b9098c7567ad3b9c834a5e4914de3bc039ec (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
=========
Summary
=========
gschem/src/i_callbacks.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 49 insertions(+), 0 deletions(-)
=================
Commit Messages
=================
commit ff036cbb89336c48106b064af499b6e841c7d8a5
Author: Carlos Nieves Onega <cnieves@xxxxxxxxxx>
Date: Mon Jul 9 18:36:36 2007 +0200
Disable rotating while copying, & fix hitting rotate hotkey/menu while moving.
Rotating while copying is still not supported, so disable it.
Fix behaviour when hitting the rotate hotkey, or select the edit->rotate menu
while moving.
Previously the move action was cancelled and then the selection was rotated.
Now, the objects being moved are rotated, and the move action continues.
:100644 100644 cc3477b... 266e74c... M gschem/src/i_callbacks.c
=========
Changes
=========
commit ff036cbb89336c48106b064af499b6e841c7d8a5
Author: Carlos Nieves Onega <cnieves@xxxxxxxxxx>
Date: Mon Jul 9 18:36:36 2007 +0200
Disable rotating while copying, & fix hitting rotate hotkey/menu while moving.
Rotating while copying is still not supported, so disable it.
Fix behaviour when hitting the rotate hotkey, or select the edit->rotate menu
while moving.
Previously the move action was cancelled and then the selection was rotated.
Now, the objects being moved are rotated, and the move action continues.
diff --git a/gschem/src/i_callbacks.c b/gschem/src/i_callbacks.c
index cc3477b..266e74c 100644
--- a/gschem/src/i_callbacks.c
+++ b/gschem/src/i_callbacks.c
@@ -800,6 +800,30 @@ DEFINE_I_CALLBACK(edit_rotate_90)
exit_if_null(w_current);
+ /* Rotating inside a copy action is still not
+ supported. In these cases, do nothing */
+ if ( (w_current->inside_action) &&
+ ((w_current->event_state == ENDCOPY) ||
+ (w_current->event_state == ENDMCOPY)) )
+ {
+ return;
+ }
+
+ /* If inside a move action, send a button 3 released, so rotating
+ will be handled by x_event.c */
+ if ( (w_current->inside_action) &&
+ ((w_current->event_state == ENDMOVE)) )
+ {
+ GdkEvent* event;
+
+ event = gdk_event_new(GDK_BUTTON_RELEASE);
+ ((GdkEventButton*) event)->button = 2;
+ x_event_button_released (NULL, (GdkEventButton *) event, w_current);
+ gdk_event_free(event);
+
+ return;
+ }
+
i_set_state(w_current, ENDROTATEP);
i_update_middle_button(w_current, i_callback_edit_rotate_90, _("Rotate"));
}
@@ -817,6 +841,31 @@ DEFINE_I_CALLBACK(edit_rotate_90_hotkey)
int w_x, w_y;
exit_if_null(w_current);
+
+ /* Rotating inside a copy action is still not
+ supported. In these cases, do nothing */
+ if ( (w_current->inside_action) &&
+ ((w_current->event_state == ENDCOPY) ||
+ (w_current->event_state == ENDMCOPY)) )
+ {
+ return;
+ }
+
+ /* If inside a move action, send a button 3 released, so rotating
+ will be handled by x_event.c */
+ if ( (w_current->inside_action) &&
+ ((w_current->event_state == ENDMOVE)) )
+ {
+ GdkEvent* event;
+
+ event = gdk_event_new(GDK_BUTTON_RELEASE);
+ ((GdkEventButton*) event)->button = 2;
+ x_event_button_released (NULL, (GdkEventButton *) event, w_current);
+ gdk_event_free(event);
+
+ return;
+ }
+
o_redraw_cleanstates(w_current);
object_list = w_current->page_current->selection_list;
_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs