X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fbcmenupopup.C;h=1888e6cfdf514dfe9562bb0c5358dea8cd9a0917;hb=6fd57106820e676e368399d16b925bdc78d34621;hp=9ffa152ff513881a5f6b1abc79042e11cc239eee;hpb=b0adaf11e855fd84af935d879848467a957d6c67;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/guicast/bcmenupopup.C b/cinelerra-5.1/guicast/bcmenupopup.C index 9ffa152f..1888e6cf 100644 --- a/cinelerra-5.1/guicast/bcmenupopup.C +++ b/cinelerra-5.1/guicast/bcmenupopup.C @@ -115,6 +115,7 @@ int BC_MenuPopup::add_item(BC_MenuItem *item) int BC_MenuPopup::remove_item(BC_MenuItem *item) { menu_items.remove(item); + return 0; } int BC_MenuPopup::del_item(BC_MenuItem *item) @@ -133,9 +134,14 @@ int BC_MenuPopup::del_item(BC_MenuItem *item) return 0; } -int BC_MenuPopup::total_menuitems() +BC_MenuItem *BC_MenuPopup::get_item(int i) +{ + return menu_items[i]; +} + +int BC_MenuPopup::total_items() { - return menu_items.total; + return menu_items.size(); } int BC_MenuPopup::dispatch_button_press() @@ -143,7 +149,7 @@ int BC_MenuPopup::dispatch_button_press() int result = 0; if(popup) { - for(int i = 0; i < menu_items.total && !result; i++) + for(int i = 0; i < menu_items.total && !result && popup; i++) { result = menu_items.values[i]->dispatch_button_press(); } @@ -157,7 +163,7 @@ int BC_MenuPopup::dispatch_button_release() int result = 0, redraw = 0; if(popup) { - for(int i = 0; i < menu_items.total && !result; i++) + for(int i = 0; i < menu_items.total && !result && popup; i++) { result = menu_items.values[i]->dispatch_button_release(redraw); } @@ -422,12 +428,7 @@ BC_Popup* BC_MenuPopup::get_popup() int BC_MenuPopup::cursor_inside() { - if( !popup ) return 0; - int x = popup->get_relative_cursor_x(); - if( x < 0 || x > popup->get_w() ) return 0; - int y = popup->get_relative_cursor_y(); - if( y < 0 || y > popup->get_h() ) return 0; - return 1; + return !popup || !popup->cursor_above() ? 0 : 1; } int BC_MenuPopup::get_w()