X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fawindowgui.C;h=bee6da43413f3ff4d3b8ca9e155472ac0d802330;hp=a6a1c1ce9ed9f82a964c34fd1bbef5ca4e06cecd;hb=2ba7e9962ea989863e152373e96a09b00a0b4eb8;hpb=d4cfc2eaf603cd5abc76e98676a5ac8a53285c4e diff --git a/cinelerra-5.1/cinelerra/awindowgui.C b/cinelerra-5.1/cinelerra/awindowgui.C index a6a1c1ce..bee6da43 100644 --- a/cinelerra-5.1/cinelerra/awindowgui.C +++ b/cinelerra-5.1/cinelerra/awindowgui.C @@ -397,16 +397,10 @@ void AssetPicon::create_objects() AWindowGUI::AWindowGUI(MWindow *mwindow, AWindow *awindow) - : BC_Window(PROGRAM_NAME ": Resources", - mwindow->session->awindow_x, - mwindow->session->awindow_y, - mwindow->session->awindow_w, - mwindow->session->awindow_h, - 100, - 100, - 1, - 1, - 1) + : BC_Window(_(PROGRAM_NAME ": Resources"), + mwindow->session->awindow_x, mwindow->session->awindow_y, + mwindow->session->awindow_w, mwindow->session->awindow_h, + 100, 100, 1, 1, 1) { // printf("AWindowGUI::AWindowGUI %d %d %d %d\n", // mwindow->session->awindow_x, @@ -542,25 +536,19 @@ SET_TRACE SET_TRACE // Mandatory folders - folders.append(picon = new AssetPicon(mwindow, - this, - AEFFECT_FOLDER)); + folders.append(picon = new AssetPicon(mwindow, this, _(AEFFECT_FOLDER))); picon->persistent = 1; - folders.append(picon = new AssetPicon(mwindow, - this, - VEFFECT_FOLDER)); + folders.append(picon = new AssetPicon(mwindow, this, _(VEFFECT_FOLDER))); picon->persistent = 1; - folders.append(picon = new AssetPicon(mwindow, - this, - ATRANSITION_FOLDER)); + folders.append(picon = new AssetPicon(mwindow, this, _(ATRANSITION_FOLDER))); picon->persistent = 1; - folders.append(picon = new AssetPicon(mwindow, - this, - VTRANSITION_FOLDER)); + folders.append(picon = new AssetPicon(mwindow, this, _(VTRANSITION_FOLDER))); picon->persistent = 1; - folders.append(picon = new AssetPicon(mwindow, - this, - LABEL_FOLDER)); + folders.append(picon = new AssetPicon(mwindow, this, _(LABEL_FOLDER))); + picon->persistent = 1; + folders.append(picon = new AssetPicon(mwindow, this, _(CLIP_FOLDER))); + picon->persistent = 1; + folders.append(picon = new AssetPicon(mwindow, this, _(MEDIA_FOLDER))); picon->persistent = 1; create_label_folder(); @@ -597,7 +585,7 @@ SET_TRACE VFrame **images = mwindow->theme->get_image_set("playpatch_data"); AVIconDrawing::calculate_geometry(this, images, &avicon_w, &avicon_h); add_subwindow(avicon_drawing = new AVIconDrawing(this, fw-avicon_w, fy, images)); - add_subwindow(add_tools = new AddTools(mwindow, this, fx, fy, "Visibility")); + add_subwindow(add_tools = new AddTools(mwindow, this, fx, fy, _("Visibility"))); add_tools->create_objects(); fy += add_tools->get_h(); fh -= add_tools->get_h(); SET_TRACE @@ -684,9 +672,6 @@ int AWindowGUI::translation_event() void AWindowGUI::reposition_objects() { - divider->reposition_window( - mwindow->theme->adivider_x, mwindow->theme->adivider_y, - mwindow->theme->adivider_w, mwindow->theme->adivider_h); asset_list->reposition_window( mwindow->theme->alist_x, mwindow->theme->alist_y, mwindow->theme->alist_w, mwindow->theme->alist_h); @@ -747,7 +732,7 @@ void AWindowGUI::stop_vicon_drawing() AWindowRemovePluginGUI:: AWindowRemovePluginGUI(AWindow *awindow, AWindowRemovePlugin *thread, int x, int y, PluginServer *plugin) - : BC_Window(PROGRAM_NAME ": Remove plugin", x,y, 500,200, 50, 50, 1, 0, 1, -1, "", 1) + : BC_Window(_(PROGRAM_NAME ": Remove plugin"), x,y, 500,200, 50, 50, 1, 0, 1, -1, "", 1) { this->awindow = awindow; this->thread = thread; @@ -800,7 +785,7 @@ int AWindowRemovePlugin::remove_plugin(PluginServer *plugin, ArrayListpath); + printf(_("remove %s\n"), plugin->path); ArrayList *folder = plugin->audio ? plugin->transition ? &awindow->gui->atransitions : @@ -1496,6 +1481,12 @@ int AWindowFolders::selection_changed() { gui->stop_vicon_drawing(); + if(get_button_down() && get_buttonpress() == 3) + { + gui->folderlist_menu->update_titles(); + gui->folderlist_menu->activate_menu(); + } + strcpy(mwindow->edl->session->current_folder, picon->get_text()); //printf("AWindowFolders::selection_changed 1\n"); gui->asset_list->draw_background(); @@ -1507,23 +1498,22 @@ int AWindowFolders::selection_changed() } int AWindowFolders::button_press_event() -{ - if( get_buttonpress() == 3 && is_event_win() && cursor_inside() ) - return 0; - return BC_ListBox::button_press_event(); -} - -int AWindowFolders::button_release_event() { int result = 0; - if(get_buttonpress() == 3 && is_event_win() && cursor_inside()) + + result = BC_ListBox::button_press_event(); + + if(!result) { - gui->folderlist_menu->update_titles(); - gui->folderlist_menu->activate_menu(); - result = 1; + if(get_buttonpress() == 3 && is_event_win() && cursor_inside()) + { + gui->folderlist_menu->update_titles(); + gui->folderlist_menu->activate_menu(); + result = 1; + } } - else - result = BC_ListBox::button_release_event(); + + return result; } @@ -1532,6 +1522,7 @@ int AWindowFolders::button_release_event() + AWindowAssets::AWindowAssets(MWindow *mwindow, AWindowGUI *gui, int x, int y, int w, int h) : BC_ListBox(x, y, @@ -1559,36 +1550,20 @@ AWindowAssets::~AWindowAssets() } int AWindowAssets::button_press_event() -{ - if( get_buttonpress() == 3 && is_event_win() && cursor_inside() ) - return 0; - return BC_ListBox::button_press_event(); -} - -int AWindowAssets::button_release_event() { int result = 0; - if(get_buttonpress() == 3 && is_event_win() && cursor_inside()) { - if( !strcasecmp(mwindow->edl->session->current_folder, AEFFECT_FOLDER) || - !strcasecmp(mwindow->edl->session->current_folder, VEFFECT_FOLDER) || - !strcasecmp(mwindow->edl->session->current_folder, ATRANSITION_FOLDER) || - !strcasecmp(mwindow->edl->session->current_folder, VTRANSITION_FOLDER)) { - BC_ListBox::deactivate_selection(); - gui->assetlist_menu->update_titles(); - gui->assetlist_menu->activate_menu(); - } - else if (!strcasecmp(mwindow->edl->session->current_folder, LABEL_FOLDER)) { - gui->label_menu->update(); - gui->label_menu->activate_menu(); - } - else { - gui->asset_menu->update(); - gui->asset_menu->activate_menu(); - } + + result = BC_ListBox::button_press_event(); + + if(!result && get_buttonpress() == 3 && is_event_win() && cursor_inside()) + { + BC_ListBox::deactivate_selection(); + gui->assetlist_menu->update_titles(); + gui->assetlist_menu->activate_menu(); result = 1; } - else - result = BC_ListBox::button_release_event(); + + return result; } @@ -1596,28 +1571,25 @@ int AWindowAssets::button_release_event() int AWindowAssets::handle_event() { //printf("AWindowAssets::handle_event 1 %d %d\n", get_buttonpress(), get_selection(0, 0)); - if(get_selection(0, 0)) - { - if(!strcasecmp(mwindow->edl->session->current_folder, AEFFECT_FOLDER)) {} - else if(!strcasecmp(mwindow->edl->session->current_folder, VEFFECT_FOLDER)) {} - else if(!strcasecmp(mwindow->edl->session->current_folder, ATRANSITION_FOLDER)) {} - else if(!strcasecmp(mwindow->edl->session->current_folder, VTRANSITION_FOLDER)) {} - else if(mwindow->vwindows.size()) { + AssetPicon *asset_picon = (AssetPicon *)get_selection(0, 0); + if( !asset_picon ) return 0; + const char *folder = mwindow->edl->session->current_folder; + if( !strcasecmp(folder, AEFFECT_FOLDER) ) return 1; + if( !strcasecmp(folder, VEFFECT_FOLDER) ) return 1; + if( !strcasecmp(folder, ATRANSITION_FOLDER) ) return 1; + if( !strcasecmp(folder, VTRANSITION_FOLDER) ) return 1; + VWindow *vwindow = mwindow->vwindows.size() > DEFAULT_VWINDOW ? + mwindow->vwindows.get(DEFAULT_VWINDOW) : 0; + if( !vwindow || !vwindow->is_running() ) return 1; //printf("AWindowAssets::handle_event 2 %d %d\n", get_buttonpress(), get_selection(0, 0)); - mwindow->vwindows.get(DEFAULT_VWINDOW)->gui->lock_window("AWindowAssets::handle_event"); - - if(((AssetPicon*)get_selection(0, 0))->indexable) - mwindow->vwindows.get(DEFAULT_VWINDOW)->change_source(((AssetPicon*)get_selection(0, 0))->indexable); - else - if(((AssetPicon*)get_selection(0, 0))->edl) - mwindow->vwindows.get(DEFAULT_VWINDOW)->change_source(((AssetPicon*)get_selection(0, 0))->edl); - mwindow->vwindows.get(DEFAULT_VWINDOW)->gui->unlock_window(); - } - return 1; - } - - return 0; + vwindow->gui->lock_window("AWindowAssets::handle_event"); + if( asset_picon->indexable ) + vwindow->change_source(asset_picon->indexable); + else if( asset_picon->edl ) + vwindow->change_source(asset_picon->edl); + vwindow->gui->unlock_window(); + return 1; } int AWindowAssets::selection_changed() @@ -1639,6 +1611,18 @@ int AWindowAssets::selection_changed() if(((AssetPicon*)get_selection(0, 0))->label) gui->label_menu->activate_menu(); } + else + { + if(((AssetPicon*)get_selection(0, 0))->indexable) + gui->asset_menu->update(); + else + if(((AssetPicon*)get_selection(0, 0))->edl) + gui->asset_menu->update(); + + + + gui->asset_menu->activate_menu(); + } BC_ListBox::deactivate_selection(); return 1; @@ -1745,6 +1729,7 @@ int AWindowAssets::drag_motion_event() for(int i = 0; i < mwindow->vwindows.size(); i++) { VWindow *vwindow = mwindow->vwindows.get(i); + if( !vwindow->is_running() ) continue; vwindow->gui->lock_window("AWindowAssets::drag_motion_event"); vwindow->gui->drag_motion(); vwindow->gui->unlock_window(); @@ -1778,6 +1763,7 @@ int AWindowAssets::drag_stop_event() for(int i = 0; i < mwindow->vwindows.size(); i++) { VWindow *vwindow = mwindow->vwindows.get(i); + if( !vwindow->is_running() ) continue; vwindow->gui->lock_window("AWindowAssets::drag_stop_event"); result = vwindow->gui->drag_stop(); vwindow->gui->unlock_window();