text: /*!
   * Ext JS Library 4.0
   * Copyright(c) 2006-2011 Sencha Inc.
   * licensing@sencha.com
   * http://www.sencha.com/license
   */
  
  // requires: [
  //     'MyDesktop.controller.Users',
  //     //'MyDesktop.controller.Ctrl2'
  // ],
  
  
  /*
   * This file is generated and updated by Sencha Cmd. You can edit this file as
   * needed for your application, but these edits will have to be merged by
   * Sencha Cmd when upgrading.
   */
  Ext.application({
      name: 'MyApp',
  
      extend: 'MyDesktop.App',
    controllers: [
          'Users'
      ],
      //mainView: 'MyDesktop.App'
  
      //-------------------------------------------------------------------------
      // Most customizations should be made to MyApp.Application. If you need to
      // customize this file, doing so below this section reduces the likelihood
      // of merge conflicts when upgrading to new versions of Sencha Cmd.
      //-------------------------------------------------------------------------
  });
  
  
  
  Ext.define('MyDesktop.App', {
      extend: 'Ext.ux.desktop.App',
   
      requires: [
          'Ext.window.MessageBox',
  
          'Ext.ux.desktop.ShortcutModel',
  
          'MyDesktop.SystemStatus',
          'MyDesktop.VideoWindow',
          'MyDesktop.GridWindow',
          'MyDesktop.TabWindow',
          'MyDesktop.AccordionWindow',
          'MyDesktop.Notepad',
          'MyDesktop.BogusMenuModule',
          'MyDesktop.BogusModule',
  
  //        'MyDesktop.Blockalanche',
          'MyDesktop.Settings'
      ],
  
      init: function() {
          // custom logic before getXYZ methods get called...
  
          this.callParent();
  
          // now ready...
      },
  
      getModules : function(){
          return [
              new MyDesktop.VideoWindow(),
              //new MyDesktop.Blockalanche(),
              new MyDesktop.SystemStatus(),
              new MyDesktop.GridWindow(),
              new MyDesktop.TabWindow(),
              new MyDesktop.AccordionWindow(),
              new MyDesktop.Notepad(),
              new MyDesktop.BogusMenuModule(),
              new MyDesktop.BogusModule()
          ];
      },
  
      getDesktopConfig: function () {
          var me = this, ret = me.callParent();
  
          return Ext.apply(ret, {
              //cls: 'ux-desktop-black',
  
              contextMenuItems: [
                  { text: 'Change Settings', handler: me.onSettings, scope: me }
              ],
  
              shortcuts: Ext.create('Ext.data.Store', {
                  model: 'Ext.ux.desktop.ShortcutModel',
                  data: [
                      { name: 'Grid Window', iconCls: 'grid-shortcut', module: 'grid-win' },
                      { name: 'Accordion Window', iconCls: 'accordion-shortcut', module: 'acc-win' },
                      { name: 'Notepad', iconCls: 'notepad-shortcut', module: 'notepad' },
                      { name: 'System Status', iconCls: 'cpu-shortcut', module: 'systemstatus'}
                  ]
              }),
  
              wallpaper: 'wallpapers/Blue-Sencha.jpg',
              wallpaperStretch: false
          });
      },
  
      // config for the start menu
      getStartConfig : function() {
          var me = this, ret = me.callParent();
  
          return Ext.apply(ret, {
              title: 'Don Griffin',
              iconCls: 'user',
              height: 300,
              toolConfig: {
                  width: 100,
                  items: [
                      {
                          text:'Settings',
                          iconCls:'settings',
                          handler: me.onSettings,
                          scope: me
                      },
                      '-',
                      {
                          text:'Logout',
                          iconCls:'logout',
                          handler: me.onLogout,
                          scope: me
                      }
                  ]
              }
          });
      },
  
      getTaskbarConfig: function () {
          var ret = this.callParent();
  
          return Ext.apply(ret, {
              quickStart: [
                  { name: 'Accordion Window', iconCls: 'accordion', module: 'acc-win' },
                  { name: 'Grid Window', iconCls: 'icon-grid', module: 'grid-win' }
              ],
              trayItems: [
                  { xtype: 'trayclock', flex: 1 }
              ]
          });
      },
  
      onLogout: function () {
          Ext.Msg.confirm('Logout', 'Are you sure you want to logout?');
      },
  
      onSettings: function () {
          var dlg = new MyDesktop.Settings({
              desktop: this.desktop
          });
          dlg.show();
      }
  });
  