menu_test.monkey2 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #import "<std>"
  2. #import "<mojo>"
  3. #import "<mojox>"
  4. Using std..
  5. Using mojo..
  6. Using mojox..
  7. Class MyWindow Extends Window
  8. Field menuBar:MenuBar
  9. Method New()
  10. Super.New( "Dialogs Demo",640,480,WindowFlags.Resizable )
  11. Local fileMenu:=New Menu( "File" )
  12. Local recentFiles:=New Menu( "Recent Files..." )
  13. recentFiles.AddAction( "File1" )
  14. recentFiles.AddAction( "File2" )
  15. recentFiles.AddAction( "File3" )
  16. recentFiles.AddAction( "File4" )
  17. recentFiles.AddAction( "File5" )
  18. fileMenu.AddAction( "Open" ).Triggered=Lambda()
  19. Alert( "Open Selected..." )
  20. End
  21. fileMenu.AddSubMenu( recentFiles )
  22. fileMenu.AddAction( "Save" ).Triggered=Lambda()
  23. Alert( "Save Selected..." )
  24. End
  25. fileMenu.AddSeparator()
  26. fileMenu.AddAction( "Close" ).Triggered=Lambda()
  27. Alert( "Close Selected..." )
  28. End
  29. fileMenu.AddAction( "Quit" ).Triggered=Lambda()
  30. App.Terminate()
  31. End
  32. Local editMenu:=New Menu( "Edit" )
  33. editMenu.AddAction( "Cut" ).Triggered=Lambda()
  34. Alert( "Cut Selected..." )
  35. End
  36. editMenu.AddAction( "Copy" ).Triggered=Lambda()
  37. Alert( "Copy Selected..." )
  38. End
  39. editMenu.AddAction( "Paste" ).Triggered=Lambda()
  40. Alert( "Paste Selected..." )
  41. End
  42. menuBar=New MenuBar
  43. menuBar.AddMenu( fileMenu )
  44. menuBar.AddMenu( editMenu )
  45. ContentView=menuBar
  46. End
  47. Method OnMouseEvent( event:MouseEvent ) Override
  48. Select event.Type
  49. Case EventType.MouseUp
  50. Select event.Button
  51. Case MouseButton.Right
  52. Local menu:=New Menu
  53. menu.AddAction( "Action 1" )
  54. menu.AddAction( "Action 2" )
  55. menu.AddAction( "Action 3" )
  56. menu.Open( event.Location,event.View,menuBar )
  57. event.Eat()
  58. End
  59. End
  60. End
  61. End
  62. Function Main()
  63. New AppInstance
  64. New MyWindow
  65. App.Run()
  66. End