- initModules : function(ms){
- for(var i = 0, len = ms.length; i < len; i++){
- var m = ms[i];
- this.launcher.add(m.launcher);
- m.app = this;
- }
+ getModules: Ext.emptyFn,
+
+ /**
+ * This method returns the configuration object for the Start Button. A derived
+ * class can override this method, call the base version to build the config and
+ * then modify the returned object before returning it.
+ */
+ getStartConfig: function () {
+ var me = this, cfg = {
+ app: me,
+ menu: []
+ };
+
+ Ext.apply(cfg, me.startConfig);
+
+ Ext.each(me.modules, function (module) {
+ if (module.launcher) {
+ cfg.menu.push(module.launcher);
+ }
+ });
+
+ return cfg;
+ },
+
+ /**
+ * This method returns the configuration object for the TaskBar. A derived class
+ * can override this method, call the base version to build the config and then
+ * modify the returned object before returning it.
+ */
+ getTaskbarConfig: function () {
+ var me = this, cfg = {
+ app: me,
+ startConfig: me.getStartConfig()
+ };
+
+ Ext.apply(cfg, me.taskbarConfig);
+ return cfg;