main.js 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. // This script is the main entry point of the example
  2. //Load scene
  3. Atomic.player.loadScene("Scenes/Scene.scene");
  4. // build host for GUI, which there will be a lot of.
  5. var view = new Atomic.UIView();
  6. var layout = new Atomic.UILayout();
  7. layout.rect = view.rect;
  8. layout.axis = Atomic.UI_AXIS_Y;
  9. layout.layoutSize = Atomic.UI_LAYOUT_SIZE_AVAILABLE;
  10. layout.layoutDistribution = Atomic.UI_LAYOUT_DISTRIBUTION_AVAILABLE;
  11. layout.layoutPosition = Atomic.UI_LAYOUT_POSITION_GRAVITY;
  12. layout.setSkinBg ("background_solid"); // make it look presentable.
  13. // example of adding a font, will be used later
  14. Atomic.ui.addFont("Textures/BrokenGlass.ttf", "BrokenGlass");
  15. // set up some stuff for mobile, so we can use the same app code & layouts
  16. // by lying about the device DPI. Everyone lies about DPI.
  17. if (( Atomic.platform == "Android" ) || Atomic.platform == "iOS") {
  18. Atomic.ui.loadSkin("Textures/mobile.tb.txt");
  19. if (Atomic.graphics.width > 1200)
  20. Atomic.ui.setDefaultFont("Vera", 14);
  21. else
  22. Atomic.ui.setDefaultFont("Vera", 10);
  23. }
  24. else {
  25. Atomic.ui.loadSkin("Textures/desktop.tb.txt");
  26. }
  27. // load the main UI layout
  28. layout.load("Scenes/main_layout.ui.txt");
  29. view.addChild(layout);
  30. // and get going
  31. var maintb = layout.getWidget("maintabs");
  32. var acttb = layout.getWidget("primarytabs");
  33. var semitb = layout.getWidget("moretabs");
  34. var viewtb = layout.getWidget("supporttabs");
  35. var supporttb = layout.getWidget("atomictabs");
  36. supporttb.setCurrentPage(0);
  37. viewtb.setCurrentPage(0);
  38. semitb.setCurrentPage(0);
  39. acttb.setCurrentPage(0);
  40. maintb.setCurrentPage(0); // do this or esle the tab contents look like crap!
  41. // exit by pressing the atomic logo button
  42. layout.getWidget("exitapp").onClick = function ()
  43. {
  44. Atomic.engine.exit();
  45. };
  46. //hookup code on all the pages, thats how the javascript example rolls.
  47. var logger = layout.getWidget("LogText");
  48. var someview = layout.view;
  49. require("Components/code_table").init(layout, logger);
  50. require("Components/code_uiwidget").init(layout.getWidget("pageuiwidget"), logger);
  51. require("Components/code_uibargraph").init(layout.getWidget("pageuibargraph"), logger);
  52. require("Components/code_uibutton").init(layout.getWidget("pageuibutton"), logger);
  53. require("Components/code_uicheckbox").init(layout.getWidget("pageuicheckbox"), logger);
  54. require("Components/code_uiclicklabel").init(layout.getWidget("pageuiclicklabel"), logger);
  55. require("Components/code_uicolorwheel").init(layout.getWidget("pageuicolorwheel"), logger);
  56. require("Components/code_uicolorwidget").init(layout.getWidget("pageuicolorwidget"), logger);
  57. require("Components/code_uicontainer").init(layout.getWidget("pageuicontainer"), logger);
  58. require("Components/code_uieditfield").init(layout.getWidget("pageuieditfield"), logger);
  59. require("Components/code_uifinderwindow").init(layout.getWidget("pageuifinderwindow"), logger, someview);
  60. require("Components/code_uifontdescription").init(layout.getWidget("pageuifontdescription"), logger);
  61. require("Components/code_uiimagewidget").init(layout.getWidget("pageuiimagewidget"), logger);
  62. require("Components/code_uiinlineselect").init(layout.getWidget("pageuiinlineselect"), logger);
  63. require("Components/code_uilayoutparams").init(layout.getWidget("pageuilayoutparams"), logger);
  64. require("Components/code_uilayout").init(layout.getWidget("pageuilayout"), logger, someview);
  65. require("Components/code_uimenuitem").init(layout.getWidget("pageuimenuitem"), logger);
  66. require("Components/code_uimenuwindow").init(layout.getWidget("pageuimenuwindow"), logger);
  67. require("Components/code_uimessagewindow").init(layout.getWidget("pageuimessagewindow"), logger);
  68. require("Components/code_uipromptwindow").init(layout.getWidget("pageuipromptwindow"), logger, someview);
  69. require("Components/code_uipulldownmenu").init(layout.getWidget("pageuipulldownmenu"), logger);
  70. require("Components/code_uiradiobutton").init(layout.getWidget("pageuiradiobutton"), logger);
  71. require("Components/code_uisceneview").init(layout.getWidget("pageuisceneview"), logger);
  72. require("Components/code_uiscrollbar").init(layout.getWidget("pageuiscrollbar"), logger);
  73. require("Components/code_uiscrollcontainer").init(layout.getWidget("pageuiscrollcontainer"), logger);
  74. require("Components/code_uisection").init(layout.getWidget("pageuisection"), logger);
  75. require("Components/code_uiselectdropdown").init(layout.getWidget("pageuiselectdropdown"), logger);
  76. require("Components/code_uiselectitem").init(layout.getWidget("pageuiselectitem"), logger);
  77. require("Components/code_uiselectlist").init(layout.getWidget("pageuiselectlist"), logger);
  78. require("Components/code_uiseparator").init(layout.getWidget("pageuiseparator"), logger);
  79. require("Components/code_uiskinimage").init(layout.getWidget("pageuiskinimage"), logger);
  80. require("Components/code_uislider").init(layout.getWidget("pageuislider"), logger);
  81. require("Components/code_uitabcontainer").init(layout.getWidget("pageuitabcontainer"), logger);
  82. require("Components/code_uitextfield").init(layout.getWidget("pageuitextfield"), logger);
  83. require("Components/code_uitexturewidget").init(layout.getWidget("pageuitexturewidget"), logger);
  84. require("Components/code_uiwindow").init(layout.getWidget("pageuiwindow"), logger, someview);