text: //////////////////////////////////////////////////////////////////////////////////////
  //
  //  Copyright (c) 2014-present, Egret Technology.
  //  All rights reserved.
  //  Redistribution and use in source and binary forms, with or without
  //  modification, are permitted provided that the following conditions are met:
  //
  //     * Redistributions of source code must retain the above copyright
  //       notice, this list of conditions and the following disclaimer.
  //     * Redistributions in binary form must reproduce the above copyright
  //       notice, this list of conditions and the following disclaimer in the
  //       documentation and/or other materials provided with the distribution.
  //     * Neither the name of the Egret nor the
  //       names of its contributors may be used to endorse or promote products
  //       derived from this software without specific prior written permission.
  //
  //  THIS SOFTWARE IS PROVIDED BY EGRET AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
  //  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  //  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  //  IN NO EVENT SHALL EGRET AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
  //  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  //  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA,
  //  OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  //  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  //  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
  //  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  //
  //////////////////////////////////////////////////////////////////////////////////////
  var Main = (function (_super) {
      __extends(Main, _super);
      function Main() {
          _super.apply(this, arguments);
          this.isThemeLoadEnd = false;
          this.isResourceLoadEnd = false;
      }
      var d = __define,c=Main,p=c.prototype;
      p.createChildren = function () {
          _super.prototype.createChildren.call(this);
          //inject the custom material parser
          //注入自定义的素材解析器
          var assetAdapter = new AssetAdapter();
          egret.registerImplementation("eui.IAssetAdapter", assetAdapter);
          egret.registerImplementation("eui.IThemeAdapter", new ThemeAdapter());
          //Config loading process interface
          //设置加载进度界面
          this.loadingView = new LoadingUI();
          this.stage.addChild(this.loadingView);
          // initialize the Resource loading library
          //初始化Resource资源加载库
          RES.addEventListener(RES.ResourceEvent.CONFIG_COMPLETE, this.onConfigComplete, this);
          RES.loadConfig("resource/default.res.json", "resource/");
      };
      /**
       * 配置文件加载完成,开始预加载皮肤主题资源和preload资源组。
       * Loading of configuration file is complete, start to pre-load the theme configuration file and the preload resource group
       */
      p.onConfigComplete = function (event) {
          RES.removeEventListener(RES.ResourceEvent.CONFIG_COMPLETE, this.onConfigComplete, this);
          // load skin theme configuration file, you can manually modify the file. And replace the default skin.
          //加载皮肤主题配置文件,可以手动修改这个文件。替换默认皮肤。
          var theme = new eui.Theme("resource/default.thm.json", this.stage);
          theme.addEventListener(eui.UIEvent.COMPLETE, this.onThemeLoadComplete, this);
          RES.addEventListener(RES.ResourceEvent.GROUP_COMPLETE, this.onResourceLoadComplete, this);
          RES.addEventListener(RES.ResourceEvent.GROUP_LOAD_ERROR, this.onResourceLoadError, this);
          RES.addEventListener(RES.ResourceEvent.GROUP_PROGRESS, this.onResourceProgress, this);
          RES.addEventListener(RES.ResourceEvent.ITEM_LOAD_ERROR, this.onItemLoadError, this);
          RES.loadGroup("preload");
      };
      /**
       * 主题文件加载完成,开始预加载
       * Loading of theme configuration file is complete, start to pre-load the
       */
      p.onThemeLoadComplete = function () {
          this.isThemeLoadEnd = true;
          this.createScene();
      };
      /**
       * preload资源组加载完成
       * preload resource group is loaded
       */
      p.onResourceLoadComplete = function (event) {
          if (event.groupName == "preload") {
              this.stage.removeChild(this.loadingView);
              RES.removeEventListener(RES.ResourceEvent.GROUP_COMPLETE, this.onResourceLoadComplete, this);
              RES.removeEventListener(RES.ResourceEvent.GROUP_LOAD_ERROR, this.onResourceLoadError, this);
              RES.removeEventListener(RES.ResourceEvent.GROUP_PROGRESS, this.onResourceProgress, this);
              RES.removeEventListener(RES.ResourceEvent.ITEM_LOAD_ERROR, this.onItemLoadError, this);
              this.isResourceLoadEnd = true;
              this.createScene();
          }
      };
      p.createScene = function () {
          if (this.isThemeLoadEnd && this.isResourceLoadEnd) {
              this.startCreateScene();
          }
      };
      /**
       * 资源组加载出错
       *  The resource group loading failed
       */
      p.onItemLoadError = function (event) {
          console.warn("Url:" + event.resItem.url + " has failed to load");
      };
      /**
       * 资源组加载出错
       * Resource group loading failed
       */
      p.onResourceLoadError = function (event) {
          //TODO
          console.warn("Group:" + event.groupName + " has failed to load");
          //忽略加载失败的项目
          //ignore loading failed projects
          this.onResourceLoadComplete(event);
      };
      /**
       * preload资源组加载进度
       * loading process of preload resource
       */
      p.onResourceProgress = function (event) {
          if (event.groupName == "preload") {
              this.loadingView.setProgress(event.itemsLoaded, event.itemsTotal);
          }
      };
      /**
       * 创建场景界面
       * Create scene interface
       */
      p.startCreateScene = function () {
          //创建一个基本的按钮
          var button = new eui.Button();
          button.skinName = "resource/eui_skins/ButtonSkin.exml";
          // button.label = "Click!";
          button.horizontalCenter = 0;
          button.verticalCenter = 0;
          button.iconDisplay.source = "resource/assets/egret_icon.png";
          this.addChild(button);
      };
      /**
       * 根据name关键字创建一个Bitmap对象。name属性请参考resources/resource.json配置文件的内容。
       * Create a Bitmap object according to name keyword.As for the property of name please refer to the configuration file of resources/resource.json.
       */
      p.createBitmapByName = function (name) {
          var result = new egret.Bitmap();
          var texture = RES.getRes(name);
          result.texture = texture;
          return result;
      };
      return Main;
  }(eui.UILayer));
  egret.registerClass(Main,'Main');
  //# sourceMappingURL=Main.js.map