Ext JS4的Desktop的改造
?
将它们修改为:?? ???? ?
? ?
?
这是因为用到了原有项目用到了将js打包到了classes.js中,无法进行进一步修改,这里只是调整了一下js载入的顺序,并使用ext-debug.js(最终生产环境可以换成ext.js)。?
经测试发现,App.js必须放到中间那一长段代码的后面才能其作用。?
4,修改App.js ,往桌面上添加快捷方式,修改桌面背景(代码基本上未动,只用添加的地方加粗了,可以参照Notepad.js的写法自己写)。?
? ??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', 'MyDesktop.LyqTest1' ], 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(), new MyDesktop.LyqTest1() ]; }, 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'}, { name: 'Java学习', iconCls: 'java-shortcut', module: 'lyqtest1' } ] }), wallpaper: 'wallpapers/Wood-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(); }});?