X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;ds=sidebyside;f=cinelerra-5.1%2Fcinelerra%2Fcwindowgui.C;h=ecb58bee58ae8604fdb05d5f9962a582b124b08d;hb=376dbcef804a17c74f0db851064e7947a3d0a5f5;hp=37dd35bf20c3c244aead401cf5705b10e811dac6;hpb=7ead44762b23da404eee89b63e0474153fdf58a1;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/cwindowgui.C b/cinelerra-5.1/cinelerra/cwindowgui.C index 37dd35bf..ecb58bee 100644 --- a/cinelerra-5.1/cinelerra/cwindowgui.C +++ b/cinelerra-5.1/cinelerra/cwindowgui.C @@ -219,14 +219,7 @@ void CWindowGUI::create_objects() tool_panel = new CWindowTool(mwindow, this); tool_panel->Thread::start(); - set_operation(mwindow->edl->session->cwindow_operation); - - - - canvas->draw_refresh(0); - - draw_status(0); unlock_window(); } @@ -425,15 +418,26 @@ void CWindowGUI::zoom_canvas(double value, int update_menu) canvas->draw_refresh(); } - - void CWindowGUI::set_operation(int value) { - mwindow->edl->session->cwindow_operation = value; + switch( value ) { + case CWINDOW_TOOL_WINDOW: + mwindow->edl->session->tool_window = !mwindow->edl->session->tool_window; + composite_panel->operation[CWINDOW_TOOL_WINDOW]->update(mwindow->edl->session->tool_window); + tool_panel->update_show_window(); + return; + case CWINDOW_TITLESAFE: + mwindow->edl->session->safe_regions = !mwindow->edl->session->safe_regions; + composite_panel->operation[CWINDOW_TITLESAFE]->update(mwindow->edl->session->safe_regions); + value = mwindow->edl->session->cwindow_operation; + break; + default: + mwindow->edl->session->cwindow_operation = value; + composite_panel->set_operation(value); + break; + } - composite_panel->set_operation(value); edit_panel->update(); - tool_panel->start_tool(value); canvas->draw_refresh(); } @@ -453,6 +457,7 @@ int CWindowGUI::close_event() int CWindowGUI::keypress_event() { int result = 0; + int cwindow_operation = CWINDOW_NONE; switch(get_keypress()) { @@ -556,6 +561,23 @@ int CWindowGUI::keypress_event() } break; + case KEY_F1: cwindow_operation = CWINDOW_PROTECT; break; + case KEY_F2: cwindow_operation = CWINDOW_ZOOM; break; + case KEY_F3: cwindow_operation = CWINDOW_MASK; break; + case KEY_F4: cwindow_operation = CWINDOW_RULER; break; + case KEY_F5: cwindow_operation = CWINDOW_CAMERA; break; + case KEY_F6: cwindow_operation = CWINDOW_PROJECTOR; break; + case KEY_F7: cwindow_operation = CWINDOW_CROP; break; + case KEY_F8: cwindow_operation = CWINDOW_EYEDROP; break; + case KEY_F9: cwindow_operation = CWINDOW_TOOL_WINDOW; break; + case KEY_F10: cwindow_operation = CWINDOW_TITLESAFE; break; + case KEY_F11: canvas->reset_camera(); break; + case KEY_F12: canvas->reset_projector(); break; + } + + if( cwindow_operation >= 0 ) { + set_operation(cwindow_operation); + result = 1; } if(!result) result = transport->keypress_event(); @@ -765,7 +787,7 @@ CWrapper_cut(next_edit) void CWindowEditing::to_clip() { - mwindow->to_clip(mwindow->edl, _("composer window: "), 0); + mwindow->to_clip(mwindow->edl, _("composer window: "), 0); } @@ -869,20 +891,9 @@ int CWindowSlider::handle_event() void CWindowSlider::set_position() { double new_length = mwindow->edl->tracks->total_length(); -// if(mwindow->edl->local_session->preview_end <= 0 || -// mwindow->edl->local_session->preview_end > new_length) -// mwindow->edl->local_session->preview_end = new_length; -// if(mwindow->edl->local_session->preview_start > -// mwindow->edl->local_session->preview_end) -// mwindow->edl->local_session->preview_start = 0; - - update(mwindow->theme->cslider_w, mwindow->edl->local_session->get_selectionstart(1), - 0, - new_length); -// mwindow->edl->local_session->preview_start, -// mwindow->edl->local_session->preview_end); + 0, new_length); } @@ -2545,7 +2556,7 @@ int CWindowCanvas::test_crop(int button_press, int &redraw) redraw = 1; } } - else + else // Translate all 4 points if(gui->current_operation == CWINDOW_CROP && gui->crop_translate) {