The problem is, If I open the menu the event loop is blocked till I close the menu.
Code: Select all
#NSKeyDown = 10
#NSKeyUp = 11
#NSFlagsChanged = 12
#NSAlphaShiftKeyMask = 1 << 16
#NSShiftKeyMask = 1 << 17
#NSControlKeyMask = 1 << 18
#NSAlternateKeyMask = 1 << 19
#NSCommandKeyMask = 1 << 20
Global sharedApplication = CocoaMessage(0, 0, "NSApplication sharedApplication")
Define currentEvent, type, modifierFlags
If OpenWindow(0, 0, 0, 320, 170, "", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
If CreateMenu(1, WindowID(0))
MenuTitle("MyMenu")
MenuItem(1, "Item")
EndIf
Define TxMenueText.s
Repeat
Event = WaitWindowEvent()
currentEvent = CocoaMessage(0, sharedApplication, "currentEvent")
If currentEvent
type = CocoaMessage(0, currentEvent, "type")
If type = #NSFlagsChanged
modifierFlags = CocoaMessage(0, currentEvent, "modifierFlags")
If TxMenueText <> ""
SetMenuItemText(1, 1, TxMenueText)
EndIf
If modifierFlags & #NSShiftKeyMask
TxMenueText =GetMenuItemText(1, 1)
Debug TxMenueText
SetMenuItemText(1, 1, "Item +shift")
EndIf
EndIf
EndIf
Until Event = #PB_Event_CloseWindow
EndIf