Upgrade to ExtJS 3.0.0 - Released 07/06/2009
[extjs.git] / docs / source / site.html
diff --git a/docs/source/site.html b/docs/source/site.html
new file mode 100644 (file)
index 0000000..32858c5
--- /dev/null
@@ -0,0 +1,105 @@
+<html>\r
+<head>\r
+  <title>The source code</title>\r
+    <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />\r
+    <script type="text/javascript" src="../resources/prettify/prettify.js"></script>\r
+</head>\r
+<body  onload="prettyPrint();">\r
+    <pre class="prettyprint lang-js">Ext.onReady(function(){\r
+\r
+       var activeMenu;\r
+\r
+       function createMenu(name){\r
+               var el = Ext.get(name+'-link');\r
+               var tid = 0, menu, doc = Ext.getDoc();\r
+\r
+               var handleOver = function(e, t){\r
+                       if(t != el.dom && t != menu.dom && !e.within(el) && !e.within(menu)){\r
+                               hideMenu();\r
+                       }\r
+               };\r
+\r
+               var hideMenu = function(){\r
+                       if(menu){\r
+                               menu.hide();\r
+                               el.setStyle('text-decoration', '');\r
+                               doc.un('mouseover', handleOver);\r
+                               doc.un('mousedown', handleDown);\r
+                       }\r
+               };\r
+\r
+               var handleDown = function(e){\r
+                       if(!e.within(menu)){\r
+                               hideMenu();\r
+                       }\r
+               };\r
+\r
+               var showMenu = function(){\r
+                       clearTimeout(tid);\r
+                       tid = 0;\r
+\r
+                       if (!menu) {\r
+                               menu = new Ext.Layer({shadow:'sides',hideMode: 'display'}, name+'-menu');\r
+                       }\r
+                       menu.hideMenu = hideMenu;\r
+\r
+                       menu.el = el;\r
+                       if(activeMenu && menu != activeMenu){\r
+                               activeMenu.hideMenu();\r
+                       }\r
+                       activeMenu = menu;\r
+\r
+                       if (!menu.isVisible()) {\r
+                               menu.show();\r
+                               menu.alignTo(el, 'tl-bl?');\r
+                               menu.sync();\r
+                               el.setStyle('text-decoration', 'underline');\r
+\r
+                               doc.on('mouseover', handleOver, null, {buffer:150});\r
+                               doc.on('mousedown', handleDown);\r
+                       }\r
+               };\r
+\r
+               el.on('mouseover', function(e){\r
+                       if(!tid){\r
+                               tid = showMenu.defer(150);\r
+                       }\r
+               });\r
+\r
+               el.on('mouseout', function(e){\r
+                       if(tid && !e.within(el, true)){\r
+                               clearTimeout(tid);\r
+                               tid = 0;\r
+                       }\r
+               });\r
+       }\r
+\r
+       createMenu('products');\r
+       createMenu('support');\r
+       createMenu('store');\r
+\r
+       // expanders\r
+       Ext.getBody().on('click', function(e, t){\r
+               t = Ext.get(t);\r
+               e.stopEvent();\r
+\r
+               var bd = t.next('div.expandable-body');\r
+               bd.enableDisplayMode();\r
+               var bdi = bd.first();\r
+               var expanded = bd.isVisible();\r
+\r
+               if(expanded){\r
+                       bd.hide();\r
+               }else{\r
+                       bdi.hide();\r
+                       bd.show();\r
+                       bdi.slideIn('l', {duration:0.2, stopFx: true, easing:'easeOut'});\r
+               }\r
+\r
+               t.update(!expanded ? 'Hide details' : 'Show details');\r
+\r
+       }, null, {delegate:'a.expander'});\r
+});\r
+</pre>    \r
+</body>\r
+</html>
\ No newline at end of file