Hi Andraz,

I find this patch REALLY difficult to use. I really don't know how to work with this patch anymore.. I personally have previewed a project via clicking-and-dragging. in a scrubbing manner. I know one can do this on the time-line, but these selection doesn't grow with the view. Also holding down the shift key sucks!

I really don't like the default of clicking on the time-line to be dragging clips around! (especially I am also used to looking at a feature, ( be it in the audio, or the video) and clicking just before it / after it to set the cursor at that location to play back from, or be the "out" of my new selection.

With your patch, the default is "do nothing" and if you move a pixel, sucked in, you've move your edits around (and possibly loosing sync)! I like the fact that to move edit's around took extra work of going into a different mode.

Just my thought.

Pierre

Andraž Tori wrote:
a patch that completely merges both editing modes of cinelerra into a single 
one, with shift key being the modifier ...

editing modes are one of the hardest things for new learners of cinelerra to 
comprehend (by my experience) and there is really no reason not to merge them, 
since most of people expect to use shift for selecting.

bye
andraz  
------------------------------------------------------------------------

diff -ru --exclude-from exclude hvirtual-svn/cinelerra/cwindowgui.C 
hvirtual-2.1/cinelerra/cwindowgui.C
--- hvirtual-svn/cinelerra/cwindowgui.C 2006-10-12 16:59:13.000000000 +0200
+++ hvirtual-2.1/cinelerra/cwindowgui.C 2006-10-19 14:22:43.000000000 +0200
@@ -612,8 +612,6 @@
cwindow->gui, mwindow->theme->cedit_x, mwindow->theme->cedit_y, - mwindow->edl->session->editing_mode, - 0,
                1,
0, 0,
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/editpanel.C 
hvirtual-2.1/cinelerra/editpanel.C
--- hvirtual-svn/cinelerra/editpanel.C  2006-10-12 12:09:09.000000000 +0200
+++ hvirtual-2.1/cinelerra/editpanel.C  2006-10-19 14:22:16.000000000 +0200
@@ -31,8 +31,6 @@
        BC_WindowBase *subwindow,
int x, int y, - int editing_mode, - int use_editing_mode, int use_keyframe, int use_splice, // Extra buttons
        int use_overwrite,
@@ -48,8 +46,6 @@
        int is_mwindow,
        int use_cut)
 {
-       this->editing_mode = editing_mode;
-       this->use_editing_mode = use_editing_mode;
        this->use_keyframe = use_keyframe;
        this->use_splice = use_splice;
        this->use_overwrite = use_overwrite;
@@ -70,8 +66,6 @@
        this->x = x;
        this->y = y;
        this->meter_panel = 0;
-       arrow = 0;
-       ibeam = 0;
        keyframe = 0;
        fit = 0;
        fit_autos = 0;
@@ -89,21 +83,12 @@
void EditPanel::update()
 {
-       int new_editing_mode = mwindow->edl->session->editing_mode;
-       if(arrow) arrow->update(new_editing_mode == EDITING_ARROW);
-       if(ibeam) ibeam->update(new_editing_mode == EDITING_IBEAM);
        if(keyframe) keyframe->update(mwindow->edl->session->auto_keyframes);
        subwindow->flush();
 }
void EditPanel::delete_buttons()
 {
-       if(use_editing_mode)
-       {
-               if(arrow) delete arrow;
-               if(ibeam) delete ibeam;
-       }
-       
        if(use_keyframe)
                delete keyframe;
@@ -144,19 +129,11 @@ SET_TRACE
-       if(use_editing_mode)
-       {
-               subwindow->add_subwindow(arrow = new ArrowButton(mwindow, this, 
x1, y1));
-               x1 += arrow->get_w();
-               subwindow->add_subwindow(ibeam = new IBeamButton(mwindow, this, 
x1, y1));
-               x1 += ibeam->get_w();
-       }
-
        if(use_keyframe)
        {
                subwindow->add_subwindow(keyframe = new KeyFrameButton(mwindow, 
x1, y1));
                x1 += keyframe->get_w();
-               x1 += mwindow->theme->toggle_margin;
+//             x1 += mwindow->theme->toggle_margin;
        }
// Mandatory
@@ -320,19 +297,11 @@
        this->y = y;
        x1 = x, y1 = y;
- if(use_editing_mode)
-       {
-               arrow->reposition_window(x1, y1);
-               x1 += arrow->get_w();
-               ibeam->reposition_window(x1, y1);
-               x1 += ibeam->get_w();
-       }
-
        if(use_keyframe)
        {
                keyframe->reposition_window(x1, y1);
                x1 += keyframe->get_w();
-               x1 += mwindow->theme->toggle_margin;
+//             x1 += mwindow->theme->toggle_margin;
        }
inpoint->reposition_window(x1, y1);
@@ -1004,55 +973,6 @@
-ArrowButton::ArrowButton(MWindow *mwindow, EditPanel *panel, int x, int y) - : BC_Toggle(x, - y, - mwindow->theme->get_image_set("arrow"),
-       mwindow->edl->session->editing_mode == EDITING_ARROW,
-       "",
-       0,
-       0,
-       0)
-{
-       this->mwindow = mwindow;
-       this->panel = panel;
-       set_tooltip(_("Drag and drop editing mode"));
-}
-
-int ArrowButton::handle_event()
-{
-       update(1);
-       panel->ibeam->update(0);
-       mwindow->set_editing_mode(EDITING_ARROW);
-// Nothing after this
-       return 1;
-}
-
-
-IBeamButton::IBeamButton(MWindow *mwindow, EditPanel *panel, int x, int y)
- : BC_Toggle(x, - y, - mwindow->theme->get_image_set("ibeam"),
-       mwindow->edl->session->editing_mode == EDITING_IBEAM,
-       "",
-       0,
-       0,
-       0)
-{
-       this->mwindow = mwindow;
-       this->panel = panel;
-       set_tooltip(_("Cut and paste editing mode"));
-}
-
-int IBeamButton::handle_event()
-{
-       update(1);
-       panel->arrow->update(0);
-       mwindow->set_editing_mode(EDITING_IBEAM);
-// Nothing after this
-       return 1;
-}
-
 KeyFrameButton::KeyFrameButton(MWindow *mwindow, int x, int y)
: BC_Toggle(x, y, diff -ru --exclude-from exclude hvirtual-svn/cinelerra/editpanel.h hvirtual-2.1/cinelerra/editpanel.h
--- hvirtual-svn/cinelerra/editpanel.h  2006-10-12 12:09:09.000000000 +0200
+++ hvirtual-2.1/cinelerra/editpanel.h  2006-10-19 14:22:10.000000000 +0200
@@ -294,24 +294,6 @@
 };
-class ArrowButton : public BC_Toggle
-{
-public:
-       ArrowButton(MWindow *mwindow, EditPanel *panel, int x, int y);
-       int handle_event();
-       MWindow *mwindow;
-       EditPanel *panel;
-};
-
-class IBeamButton : public BC_Toggle
-{
-public:
-       IBeamButton(MWindow *mwindow, EditPanel *panel, int x, int y);
-       int handle_event();
-       MWindow *mwindow;
-       EditPanel *panel;
-};
-
 class KeyFrameButton : public BC_Toggle
 {
 public:
@@ -328,8 +310,6 @@
                BC_WindowBase *subwindow,
int x, int y, - int editing_mode, // From edl.inc
-               int use_editing_mode,
int use_keyframe, int use_splice, // Extra buttons
                int use_overwrite,
@@ -369,9 +349,7 @@
        BC_WindowBase *subwindow;
        MeterPanel *meter_panel;
- int use_editing_mode;
        int use_keyframe;
-       int editing_mode;
        int use_splice;
        int use_overwrite;
        int use_lift;
@@ -408,8 +386,6 @@
        EditUndo *undo;
        EditRedo *redo;
        MeterShow *meters;
-       ArrowButton *arrow;
-       IBeamButton *ibeam;
        KeyFrameButton *keyframe;
 };
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/edl.inc hvirtual-2.1/cinelerra/edl.inc
--- hvirtual-svn/cinelerra/edl.inc      2006-10-12 12:09:08.000000000 +0200
+++ hvirtual-2.1/cinelerra/edl.inc      2006-10-19 14:23:13.000000000 +0200
@@ -16,12 +16,6 @@
 #define LOAD_SESSION   0x00000100
-#define EDITING_MODES 2
-
-// Editing modes
-#define EDITING_ARROW 0
-#define EDITING_IBEAM 1
-
#define EDIT_HANDLE_MODES 3
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/edlsession.C 
hvirtual-2.1/cinelerra/edlsession.C
--- hvirtual-svn/cinelerra/edlsession.C 2006-10-12 12:09:09.000000000 +0200
+++ hvirtual-2.1/cinelerra/edlsession.C 2006-10-19 14:24:23.000000000 +0200
@@ -181,7 +181,6 @@
        edit_handle_mode[0] = defaults->get("EDIT_HANDLE_MODE0", 
MOVE_ALL_EDITS);
        edit_handle_mode[1] = defaults->get("EDIT_HANDLE_MODE1", MOVE_ONE_EDIT);
        edit_handle_mode[2] = defaults->get("EDIT_HANDLE_MODE2", MOVE_NO_EDITS);
-       editing_mode = defaults->get("EDITING_MODE", EDITING_IBEAM);
        enable_duplex = defaults->get("ENABLE_DUPLEX", 1);
        folderlist_format = defaults->get("FOLDERLIST_FORMAT", FOLDERS_ICONS);
        frame_rate = defaults->get("FRAMERATE", (double)30000.0/1001);
@@ -313,7 +312,6 @@
     defaults->update("EDIT_HANDLE_MODE0", edit_handle_mode[0]);
     defaults->update("EDIT_HANDLE_MODE1", edit_handle_mode[1]);
     defaults->update("EDIT_HANDLE_MODE2", edit_handle_mode[2]);
-       defaults->update("EDITING_MODE", editing_mode);
        defaults->update("ENABLE_DUPLEX", enable_duplex);
     defaults->update("FOLDERLIST_FORMAT", folderlist_format);
        defaults->update("FRAMERATE", frame_rate);
@@ -518,7 +516,6 @@
                file->tag.get_property("DEFAULT_ATRANSITION", 
default_atransition);
                file->tag.get_property("DEFAULT_VTRANSITION", 
default_vtransition);
                default_transition_length = 
file->tag.get_property("DEFAULT_TRANSITION_LENGTH", default_transition_length);
-               editing_mode = file->tag.get_property("EDITING_MODE", 
editing_mode);
                folderlist_format = file->tag.get_property("FOLDERLIST_FORMAT", 
folderlist_format);
                highlighted_track = file->tag.get_property("HIGHLIGHTED_TRACK", 
0);
                labels_follow_edits = 
file->tag.get_property("LABELS_FOLLOW_EDITS", labels_follow_edits);
@@ -582,7 +579,6 @@
        file->tag.set_property("DEFAULT_ATRANSITION", default_atransition);
        file->tag.set_property("DEFAULT_VTRANSITION", default_vtransition);
        file->tag.set_property("DEFAULT_TRANSITION_LENGTH", 
default_transition_length);
-       file->tag.set_property("EDITING_MODE", editing_mode);
        file->tag.set_property("FOLDERLIST_FORMAT", folderlist_format);
        file->tag.set_property("HIGHLIGHTED_TRACK", highlighted_track);
        file->tag.set_property("LABELS_FOLLOW_EDITS", labels_follow_edits);
@@ -720,7 +716,6 @@
        edit_handle_mode[0] = session->edit_handle_mode[0];
        edit_handle_mode[1] = session->edit_handle_mode[1];
        edit_handle_mode[2] = session->edit_handle_mode[2];
-       editing_mode = session->editing_mode;
        enable_duplex = session->enable_duplex;
        folderlist_format = session->folderlist_format;
        frame_rate = session->frame_rate;
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/edlsession.h 
hvirtual-2.1/cinelerra/edlsession.h
--- hvirtual-svn/cinelerra/edlsession.h 2006-10-12 12:09:09.000000000 +0200
+++ hvirtual-2.1/cinelerra/edlsession.h 2006-10-19 14:24:28.000000000 +0200
@@ -100,8 +100,6 @@
        double default_transition_length;
 // Edit mode to use for each mouse button
int edit_handle_mode[3]; -// Editing mode
-       int editing_mode;
        EDL *edl;
        int enable_duplex;
 // AWindow format
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/mbuttons.C 
hvirtual-2.1/cinelerra/mbuttons.C
--- hvirtual-svn/cinelerra/mbuttons.C   2006-10-12 12:09:08.000000000 +0200
+++ hvirtual-2.1/cinelerra/mbuttons.C   2006-10-19 14:20:10.000000000 +0200
@@ -124,8 +124,6 @@
mbuttons, x, y,
-               mwindow->edl->session->editing_mode,
-               1,
                1,
0, 0, diff -ru --exclude-from exclude hvirtual-svn/cinelerra/mwindow.C hvirtual-2.1/cinelerra/mwindow.C
--- hvirtual-svn/cinelerra/mwindow.C    2006-10-14 11:17:37.000000000 +0200
+++ hvirtual-2.1/cinelerra/mwindow.C    2006-10-19 14:24:47.000000000 +0200
@@ -1481,21 +1481,6 @@
        cwindow->gui->unlock_window();
 }
-int MWindow::set_editing_mode(int new_editing_mode)
-{
-       gui->lock_window("MWindow::set_editing_mode");
-       edl->session->editing_mode = new_editing_mode;
-       gui->mbuttons->edit_panel->editing_mode = edl->session->editing_mode;
-       gui->mbuttons->edit_panel->update();
-       gui->canvas->update_cursor();
-       gui->unlock_window();
-       cwindow->gui->lock_window("MWindow::set_editing_mode");
-       cwindow->gui->edit_panel->update();
-       cwindow->gui->edit_panel->editing_mode = edl->session->editing_mode;
-       cwindow->gui->unlock_window();
-       return 0;
-}
-
void MWindow::sync_parameters(int change_type)
 {
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/mwindow.h 
hvirtual-2.1/cinelerra/mwindow.h
--- hvirtual-svn/cinelerra/mwindow.h    2006-10-12 16:59:13.000000000 +0200
+++ hvirtual-2.1/cinelerra/mwindow.h    2006-10-19 14:24:58.000000000 +0200
@@ -351,8 +351,6 @@
        void remove_assets_from_disk();
        void resize_track(Track *track, int w, int h);
        void set_auto_keyframes(int value);
-// Update the editing mode
-       int set_editing_mode(int new_editing_mode);
        void set_inpoint(int is_mwindow);
        void set_outpoint(int is_mwindow);
        void splice(EDL *source);
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/trackcanvas.C 
hvirtual-2.1/cinelerra/trackcanvas.C
--- hvirtual-svn/cinelerra/trackcanvas.C        2006-10-14 11:09:50.000000000 
+0200
+++ hvirtual-2.1/cinelerra/trackcanvas.C        2006-10-19 18:32:34.000000000 
+0200
@@ -130,9 +130,22 @@
int TrackCanvas::keypress_event()
 {
+/* we also recieve shift press and shift release */
        int result = 0;
+       if (get_keypress() == 65505) // Shift - both press and release
+       {
+               int old_cursor = get_cursor();
+               int new_cursor = old_cursor;
+               if ((shift_down()) && old_cursor == ARROW_CURSOR)
+                       new_cursor = IBEAM_CURSOR;
+               else
+               if (old_cursor == IBEAM_CURSOR)
+                       new_cursor = ARROW_CURSOR;
-
+               if (new_cursor != old_cursor)
+                       set_cursor(new_cursor);
+               result = 1;
+       }
        return result;
 }
@@ -780,11 +793,10 @@ void TrackCanvas::update_cursor()
 {
-       switch(mwindow->edl->session->editing_mode)
-       {
-               case EDITING_ARROW: set_cursor(ARROW_CURSOR); break;
-               case EDITING_IBEAM: set_cursor(IBEAM_CURSOR); break;
-       }
+       if (shift_down())
+               set_cursor(IBEAM_CURSOR);
+       else
+               set_cursor(ARROW_CURSOR);
 }
@@ -3962,11 +3974,10 @@
        result = 0;
// Default cursor
-       switch(mwindow->edl->session->editing_mode)
-       {
-               case EDITING_ARROW: new_cursor = ARROW_CURSOR; break;
-               case EDITING_IBEAM: new_cursor = IBEAM_CURSOR; break;
-       }
+       if (shift_down())
+               new_cursor = IBEAM_CURSOR;
+       else
+               new_cursor = ARROW_CURSOR;
switch(mwindow->session->current_operation)
        {
@@ -4697,7 +4708,7 @@
                                else
                                if(drag_start && track->record)
                                {
-                                       if(mwindow->edl->session->editing_mode 
== EDITING_ARROW)
+                                       if(!shift_down())
                                        {
 // Need to create drag window
                                                
mwindow->session->current_operation = DRAG_EDIT;
@@ -4831,7 +4842,7 @@
 // Move plugin
                if(drag_start && plugin->track->record)
                {
-                       if(mwindow->edl->session->editing_mode == EDITING_ARROW)
+                       if(!shift_down())
                        {
                                if(plugin->track->data_type == TRACK_AUDIO)
                                        mwindow->session->current_operation = 
DRAG_AEFFECT_COPY;
@@ -4970,7 +4981,6 @@
                {
                        activate();
                }
-
                if(get_buttonpress() == 1)
                {
                        gui->unlock_window();
@@ -4980,6 +4990,10 @@
int update_overlay = 0, update_cursor = 0, rerender = 0; + if (get_buttonpress() == 1 && get_double_click())
+               {
+                       rerender = start_selection(position, 1);
+               } else
                if(get_buttonpress() == 4)
                {
                        if(shift_down())
@@ -4998,11 +5012,9 @@
                        result = 1;
                }
                else
-               switch(mwindow->edl->session->editing_mode)
+               if (!shift_down())
                {
 // Test handles and resource boundaries and highlight a track
-                       case EDITING_ARROW:
-                       {
                                Edit *edit;
                                int handle;
if(mwindow->edl->session->auto_conf->transitions && @@ -5012,7 +5024,6 @@ new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
if(do_keyframes(cursor_x, @@ -5023,7 +5034,6 @@
                                        update_cursor,
                                        rerender))
                                {
-                                       break;
                                }
                                else
 // Test edit boundaries
@@ -5033,7 +5043,6 @@
new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
 // Test plugin boundaries
@@ -5043,34 +5052,27 @@
new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
                                if(do_edits(cursor_x, cursor_y, 1, 0, 
update_cursor, rerender, new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
                                if(do_plugins(cursor_x, cursor_y, 0, 1, 
update_cursor, rerender))
                                {
-                                       break;
                                }
                                else
                                if(test_resources(cursor_x, cursor_y))
                                {
-                                       break;
                                }
                                else
                                if(do_tracks(cursor_x, cursor_y, 1))
                                {
-                                       break;
                                }
-                               break;
-                       }
+               } else
+               {
// Test handles only and select a region
-                       case EDITING_IBEAM:
-                       {
 //printf("TrackCanvas::button_press_event %d\n", position);
if(mwindow->edl->session->auto_conf->transitions && @@ -5080,7 +5082,6 @@ new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
if(do_keyframes(cursor_x, @@ -5092,7 +5093,6 @@
                                        rerender))
                                {
                                        update_overlay = 1;
-                                       break;
                                }
                                else
 // Test edit boundaries
@@ -5102,7 +5102,6 @@
new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
 // Test plugin boundaries
@@ -5112,7 +5111,6 @@
new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
if(do_edits(cursor_x, @@ -5124,7 +5122,6 @@ new_cursor, update_cursor))
                                {
-                                       break;
                                }
                                else
if(do_plugins(cursor_x, @@ -5134,12 +5131,10 @@ update_cursor, rerender))
                                {
-                                       break;
                                }
                                else
                                if(do_tracks(cursor_x, cursor_y, 1))
                                {
-                                       break;
                                }
 // Highlight selection
                                else
@@ -5151,8 +5146,6 @@
                                        update_cursor = 1;
                                }
- break;
-                       }
                }
@@ -5193,14 +5186,14 @@
        return result;
 }
-int TrackCanvas::start_selection(double position)
+int TrackCanvas::start_selection(double position, int set_position)
 {
        int rerender = 0;
        position = mwindow->edl->align_to_frame(position, 0);
// Extend a border
-       if(shift_down())
+       if(!set_position)
        {
double midpoint = (mwindow->edl->local_session->get_selectionstart(1) + mwindow->edl->local_session->get_selectionend(1)) / 2;
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/trackcanvas.h 
hvirtual-2.1/cinelerra/trackcanvas.h
--- hvirtual-svn/cinelerra/trackcanvas.h        2006-10-12 12:09:08.000000000 
+0200
+++ hvirtual-2.1/cinelerra/trackcanvas.h        2006-10-19 18:28:23.000000000 
+0200
@@ -283,7 +283,7 @@
        int repeat_event(int64_t duration);
        void start_dragscroll();
        void stop_dragscroll();
-       int start_selection(double position);
+       int start_selection(double position, int set_position = 0);
        int drag_motion();
        int drag_stop();
        int64_t get_drop_position (int *is_insertion, Edit *moved_edit, int64_t 
moved_edit_length);
diff -ru --exclude-from exclude hvirtual-svn/cinelerra/vwindowgui.C 
hvirtual-2.1/cinelerra/vwindowgui.C
--- hvirtual-svn/cinelerra/vwindowgui.C 2006-10-14 23:46:27.000000000 +0200
+++ hvirtual-2.1/cinelerra/vwindowgui.C 2006-10-19 14:22:29.000000000 +0200
@@ -451,8 +451,6 @@
vwindow->gui, mwindow->theme->vedit_x, mwindow->theme->vedit_y, - EDITING_ARROW, - 0,
                0,
1, 1,
diff -ru --exclude-from exclude hvirtual-svn/guicast/bcwindowbase.C 
hvirtual-2.1/guicast/bcwindowbase.C
--- hvirtual-svn/guicast/bcwindowbase.C 2006-10-14 17:42:10.000000000 +0200
+++ hvirtual-2.1/guicast/bcwindowbase.C 2006-10-19 12:41:30.000000000 +0200
@@ -363,7 +363,7 @@
attr.event_mask = DEFAULT_EVENT_MASKS | StructureNotifyMask | - KeyPressMask;
+                       KeyPressMask | KeyReleaseMask;
attr.background_pixel = get_color(this->bg_color);
                attr.colormap = cmap;
@@ -459,7 +459,7 @@
                        CWCursor;
attr.event_mask = DEFAULT_EVENT_MASKS |
-                       KeyPressMask;
+                       KeyPressMask | KeyReleaseMask;
if(this->bg_color == -1)
                        this->bg_color = resources.get_bg_color();
@@ -854,6 +854,24 @@
translation_count++;
                        break;
+               case KeyRelease:
+                       get_key_masks(event);
+                       keys_return[0] = 0;
+                       XLookupString((XKeyEvent*)event, keys_return, 1, 
&keysym, 0);
+
+// printf("BC_WindowBase::dispatch_event 2 %llx\n", +// event->xkey.state);
+// block out control keys
+
+                       // We want to get shift notifications
+                       if (keysym == 65505) {
+                               shift_mask = 0;
+                               key_pressed = keysym;
+                       } else
+                               break;
+                       result = dispatch_keypress_event();
+                       
+                       break;
case KeyPress:
                        get_key_masks(event);
@@ -863,12 +881,20 @@
// printf("BC_WindowBase::dispatch_event 2 %llx\n", // event->xkey.state);
 // block out control keys
+
+                       // We want to get shift notifications
+                       key_pressed = 0;
+                       if (keysym == 65505) {
+                               shift_mask = 1;
+                               key_pressed = keysym;
+                       }
+                       else
                        if(keysym > 0xffe0 && keysym < 0xffff) break;
if(test_keypress) printf("BC_WindowBase::dispatch_event %x\n", keysym); -
+                       if (!key_pressed)
                        switch(keysym)
                        {
 // block out extra keys
 // Translate key codes
diff -ru --exclude-from exclude hvirtual-svn/plugins/suv/suv.C 
hvirtual-2.1/plugins/suv/suv.C
--- hvirtual-svn/plugins/suv/suv.C      2006-10-12 12:06:03.000000000 +0200
+++ hvirtual-2.1/plugins/suv/suv.C      2006-10-19 14:27:26.000000000 +0200
@@ -581,9 +581,7 @@
- new_toggle("arrow.png", editpanel_up, editpanel_hi, editpanel_checked, editpanel_dn, editpanel_checkedhi, "arrow");
        new_toggle("autokeyframe.png", transport_up, editpanel_hi, editpanel_checked, 
editpanel_dn, editpanel_checkedhi, "autokeyframe");
-       new_toggle("ibeam.png", editpanel_up, editpanel_hi, editpanel_checked, 
editpanel_dn, editpanel_checkedhi, "ibeam");
        new_toggle("show_meters.png", editpanel_up, editpanel_hi, editpanel_checked, 
editpanel_dn, editpanel_checkedhi, "meters");
VFrame *cpanel_up = new_image("cpanel_up.png");
diff -ru --exclude-from exclude hvirtual-svn/plugins/suv/data/Makefile.am 
hvirtual-2.1/plugins/suv/data/Makefile.am
--- hvirtual-svn/plugins/suv/data/Makefile.am   2006-10-12 12:06:03.000000000 
+0200
+++ hvirtual-2.1/plugins/suv/data/Makefile.am   2006-10-19 18:39:51.000000000 
+0200
@@ -23,12 +23,6 @@
        apply_dn.png \
        apply_hi.png \
        apply_up.png \
-       arrow.png \
-       arrow_checked.png \
-       arrow_checkedhi.png \
-       arrow_dn.png \
-       arrow_hi.png \
-       arrow_up.png \
        asset_append_dn.png \
        asset_append_hi.png \
        asset_append_up.png \
@@ -239,12 +233,6 @@
        hslider_fg_dn.png \
        hslider_fg_hi.png \
        hslider_fg_up.png \
-       ibeam.png \
-       ibeam_checked.png \
-       ibeam_checkedhi.png \
-       ibeam_dn.png \
-       ibeam_hi.png \
-       ibeam_up.png \
        icons.png \
        in_checked.png \
        in_checkedhi.png \
--- hvirtual-svn/cinelerra/trackcanvas.C        2006-10-19 18:40:36.000000000 
+0200
+++ hvirtual-2.1/cinelerra/trackcanvas.C        2006-10-19 18:57:25.000000000 
+0200
@@ -4990,9 +4990,10 @@
int update_overlay = 0, update_cursor = 0, rerender = 0; - if (get_buttonpress() == 1 && get_double_click())
+               if (get_buttonpress() == 1 && get_double_click() && 
shift_down())
                {
                        rerender = start_selection(position, 1);
+                       update_cursor = 1;
                } else
                if(get_buttonpress() == 4)
                {


_______________________________________________
Cinelerra mailing list
Cinelerra@skolelinux.no
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra

Reply via email to