ProjectFrameMenu.ts 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import strings = require("./EditorStrings");
  2. import EditorEvents = require("../editor/EditorEvents");
  3. import EditorUI = require("./EditorUI");
  4. import MenuItemSources = require("./menus/MenuItemSources");
  5. class ProjectFrameMenus extends Atomic.ScriptObject {
  6. constructor() {
  7. super();
  8. MenuItemSources.createMenuItemSource("project create items", createItems);
  9. this.subscribeToEvent(EditorEvents.ContentFolderChanged, (ev:EditorEvents.ContentFolderChangedEvent) => {
  10. this.contentFolder = ev.path;
  11. })
  12. }
  13. handlePopupMenu(target: Atomic.UIWidget, refid: string): boolean {
  14. if (!target || !refid) return;
  15. if (target.id == "create popup") {
  16. if (refid == "create_folder") {
  17. EditorUI.getModelOps().showCreateFolder(this.contentFolder);
  18. return true;
  19. }
  20. if (refid == "create_script") {
  21. return true;
  22. }
  23. }
  24. return false;
  25. }
  26. contentFolder:string;
  27. }
  28. export = ProjectFrameMenus;
  29. // initialization
  30. var StringID = strings.StringID;
  31. var createItems = {
  32. "Folder": ["create_folder", undefined, "Folder.icon"],
  33. "-1": null,
  34. "Script": ["create_script", undefined, "JavascriptBitmap"]
  35. };