+rng.modules.rng = function(sandbox) {\r
+\r
+ function addTab(title, view) {\r
+ sandbox.getModule('tabsModule').addTab(title, view);\r
+ }\r
+ \r
+ /* Events handling */\r
+ \r
+ eventHandlers = {};\r
+ \r
+ eventHandlers.skelton = {\r
+ ready: function() {\r
+ sandbox.getModule('tabsManager').start();\r
+ }\r
+ };\r
+ \r
+ eventHandlers.tabsManager = {\r
+ ready: function() {\r
+ sandbox.getModule('skelton').setMainView(sandbox.getModule('tabsManager').getView());\r
+ _.each(['sourceEditor', 'visualEditor'], function(moduleName) {\r
+ sandbox.getModule(moduleName).start();\r
+ });\r
+ }\r
+ };\r
+ \r
+ eventHandlers.sourceEditor = {\r
+ ready: function() {\r
+ addTab('Source', sandbox.getModule('sourceEditor').getView());\r
+ }\r
+ };\r
+ \r
+ \r
+ /* api */\r
+ \r
+ return {\r
+ start: function() {\r
+ sandbox.getModule('skelton').start();\r
+ },\r
+ handleEvent: function(moduleName, eventName, args) {\r
+ if(eventHandlers[moduleName] && eventHandlers[moduleName][eventName]) {\r
+ eventHandlers[moduleName][eventName].apply(eventHandlers, args);\r
+ }\r
+ }\r
+ }\r
+};
\ No newline at end of file