menu_test.monkey2 1.7 KB

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