UI.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. var view = Atomic.game.uiView;
  2. var window = new Atomic.UIWindow();
  3. window.load("UI/Test.ui.txt");
  4. window.text = "Turbo Badger";
  5. window.setSize(250, 630);
  6. window.setPosition(10, 50);
  7. view.addChild(window);
  8. var edit = new Atomic.UIWindow();
  9. edit.load("UI/EditWindow.ui.txt");
  10. edit.text = "Edit Window";
  11. edit.setSize(450, 630);
  12. edit.setPosition(280, 50);
  13. view.addChild(edit);
  14. window.getWidget("test-image").onClick = function() {
  15. var testImage = new Atomic.UIWindow();
  16. testImage.load("UI/TestImageWidget.ui.txt");
  17. testImage.text = "Image Widget";
  18. testImage.setSize(350, 500);
  19. view.addChild(testImage);
  20. testImage.center();
  21. testImage.onEvent = function(evt) {
  22. if (evt.target && evt.target.id == "remove") {
  23. var image = evt.target.parent;
  24. image.parent.removeChild(image);
  25. }
  26. }
  27. }
  28. window.getWidget("test-layout").onClick = function() {
  29. var testLayout = new Atomic.UIWindow();
  30. testLayout.load("UI/TestRadioCheckbox.ui.txt");
  31. testLayout.text = "Radio & Checkbox";
  32. var rect = testLayout.getResizeToFitContentRect();
  33. testLayout.setSize(rect.width, rect.height);
  34. view.addChild(testLayout);
  35. testLayout.center();
  36. }
  37. var editfield = edit.getWidget("editfield");
  38. var menubutton = edit.getWidget("menu");
  39. edit.getWidget("clear").onClick = function() {
  40. editfield.text = "";
  41. }
  42. menubutton.onClick = function() {
  43. menubutton.popup({
  44. "Toggle wrapping" : "toggle wrapping",
  45. "-" : "",
  46. "Align selected left" : "align left",
  47. "Align selected center" : "align center",
  48. "Align selected right" : "align right"
  49. }, function(id) {
  50. switch(id) {
  51. case "align right":
  52. editfield.textAlign = Atomic.TEXT_ALIGN_RIGHT;
  53. break;
  54. case "align center":
  55. editfield.textAlign = Atomic.TEXT_ALIGN_CENTER;
  56. break;
  57. case "align left":
  58. editfield.textAlign = Atomic.TEXT_ALIGN_LEFT;
  59. break;
  60. case "toggle wrapping":
  61. editfield.wrapping = !editfield.wrapping;
  62. break;
  63. }
  64. });
  65. }
  66. function start() {
  67. }
  68. function update(timeStep) {
  69. }