projects
/
goodguy
/
history.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
req input focus wdw be viewable
[goodguy/history.git]
/
cinelerra-5.1
/
guicast
/
bcpopupmenu.C
diff --git
a/cinelerra-5.1/guicast/bcpopupmenu.C
b/cinelerra-5.1/guicast/bcpopupmenu.C
index 9d8e2c223132310ebc93c8a306a0a3eff8296952..4c639fe27d25890f96bd4289cc77c21c651ca569 100644
(file)
--- a/
cinelerra-5.1/guicast/bcpopupmenu.C
+++ b/
cinelerra-5.1/guicast/bcpopupmenu.C
@@
-26,7
+26,7
@@
#include "bcpopupmenu.h"
#include "bcresources.h"
#include "bcsignals.h"
#include "bcpopupmenu.h"
#include "bcresources.h"
#include "bcsignals.h"
-#include "colors.h"
+#include "
bc
colors.h"
#include "fonts.h"
#include <string.h>
#include "vframe.h"
#include "fonts.h"
#include <string.h>
#include "vframe.h"
@@
-291,6
+291,7
@@
int BC_PopupMenu::activate_menu()
{
if( !get_button_down() || !BC_WindowBase::get_resources()->popupmenu_btnup )
return menu_activate();
{
if( !get_button_down() || !BC_WindowBase::get_resources()->popupmenu_btnup )
return menu_activate();
+ top_level->active_popup_menu = this;
pending = 1;
return 0;
}
pending = 1;
return 0;
}
@@
-328,7
+329,7
@@
int BC_PopupMenu::menu_activate()
popup_down = 1;
if(use_title) draw_title(1);
}
popup_down = 1;
if(use_title) draw_title(1);
}
- return
0
;
+ return
1
;
}
int BC_PopupMenu::deactivate_menu()
}
int BC_PopupMenu::deactivate_menu()
@@
-368,6
+369,7
@@
int BC_PopupMenu::repeat_event(int64_t duration)
int BC_PopupMenu::button_press_event()
{
int BC_PopupMenu::button_press_event()
{
+ int result = 0;
if(get_buttonpress() == 1 &&
is_event_win() &&
use_title)
if(get_buttonpress() == 1 &&
is_event_win() &&
use_title)
@@
-403,17
+405,18
@@
int BC_PopupMenu::button_press_event()
BC_MenuItem *tmp = menu_popup->menu_items.values[theval];
set_text(tmp->get_text());
BC_MenuItem *tmp = menu_popup->menu_items.values[theval];
set_text(tmp->get_text());
- if (!tmp->handle_event())
- this->handle_event();
+ result = tmp->handle_event();
+ if( !result )
+ result = this->handle_event();
}
if(popup_down)
{
// Menu is down so dispatch to popup.
menu_popup->dispatch_button_press();
}
if(popup_down)
{
// Menu is down so dispatch to popup.
menu_popup->dispatch_button_press();
- re
turn
1;
+ re
sult =
1;
}
}
- return
0
;
+ return
result
;
}
int BC_PopupMenu::button_release_event()
}
int BC_PopupMenu::button_release_event()
@@
-472,7
+475,7
@@
int BC_PopupMenu::cursor_leave_event()
if( popup_down ) {
if( !get_button_down() && !menu_popup->cursor_inside() ) {
status = BUTTON_UP;
if( popup_down ) {
if( !get_button_down() && !menu_popup->cursor_inside() ) {
status = BUTTON_UP;
-
deactivate_menu();
+
//
deactivate_menu();
}
menu_popup->dispatch_cursor_leave();
}
}
menu_popup->dispatch_cursor_leave();
}