igor's ru.po, update msg.txt, get_cursor_over_window tweaks
[goodguy/history.git] / cinelerra-5.1 / guicast / bcpopupmenu.C
index 6a8c63e2f9daaafa61089100eaf36798d685e89c..be17a0a311403824ec130180a18e2cf7f7b767bd 100644 (file)
@@ -26,7 +26,7 @@
 #include "bcpopupmenu.h"
 #include "bcresources.h"
 #include "bcsignals.h"
-#include "colors.h"
+#include "bccolors.h"
 #include "fonts.h"
 #include <string.h>
 #include "vframe.h"
@@ -96,6 +96,7 @@ BC_PopupMenu::~BC_PopupMenu()
 {
        use_title = 0;
        deactivate();
+       delete menu_popup;
        for(int i = 0; i < TOTAL_IMAGES; i++)
        {
                if(images[i]) delete images[i];
@@ -290,6 +291,7 @@ int BC_PopupMenu::activate_menu()
 {
        if( !get_button_down() || !BC_WindowBase::get_resources()->popupmenu_btnup )
                return menu_activate();
+       top_level->active_popup_menu = this;
        pending = 1;
        return 0;
 }
@@ -327,7 +329,7 @@ int BC_PopupMenu::menu_activate()
                popup_down = 1;
                if(use_title) draw_title(1);
        }
-       return 0;
+       return 1;
 }
 
 int BC_PopupMenu::deactivate_menu()
@@ -471,7 +473,7 @@ int BC_PopupMenu::cursor_leave_event()
        if( popup_down ) {
                if( !get_button_down() && !menu_popup->cursor_inside() ) {
                        status = BUTTON_UP;
-                       deactivate_menu();
+//                     deactivate_menu();
                }
                menu_popup->dispatch_cursor_leave();
        }