FuncProjectMenu.tsx 1014 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import Func from '@/Engine/ECS/Function';
  2. import { PAGE_KEY } from '@/Project/constants';
  3. import { FuncMainState } from '../FuncMain';
  4. export enum FuncProjectMenuState {
  5. ProjectMenu,
  6. }
  7. export default class FuncProjectMenu extends Func<FuncProjectMenuState> {
  8. constructor(name: string) {
  9. super(name);
  10. super.initStates((sm) => {
  11. sm.addState(
  12. FuncProjectMenuState.ProjectMenu,
  13. this.onStateIn,
  14. null,
  15. this.onStateExit,
  16. this,
  17. );
  18. });
  19. }
  20. onStateIn(): void {
  21. window.GT_APP.sysPage.add(PAGE_KEY.ProjectMenu, {
  22. clickMenu: this.clickMenu,
  23. subModule: window.GT_APP.funcMain.subModule,
  24. });
  25. }
  26. onStateExit(): void {
  27. window.GT_APP.sysPage.removeByKey(PAGE_KEY.ProjectMenu);
  28. }
  29. clickMenu(menu: Api.IMenu): void {
  30. console.log(menu);
  31. if (!menu.UnityPath) return;
  32. let app = window.GT_APP;
  33. switch (menu.UnityPath) {
  34. case '1':
  35. app.funcMain.changeState(FuncMainState.PageMenu);
  36. break;
  37. }
  38. }
  39. }