| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 | 
							- <!DOCTYPE html>
 
- <html>
 
- <head>
 
-   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 
-   <title>The source code</title>
 
-   <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
 
-   <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
 
-   <style type="text/css">
 
-     .highlight { display: block; background-color: #ddd; }
 
-   </style>
 
-   <script type="text/javascript">
 
-     function highlight() {
 
-       document.getElementById(location.hash.replace(/#/, "")).className = "highlight";
 
-     }
 
-   </script>
 
- </head>
 
- <body onload="prettyPrint(); highlight();">
 
-   <pre class="prettyprint lang-js"><span id='Ext-panel-DD'>/**
 
- </span> * DD implementation for Panels.
 
-  * @private
 
-  */
 
- Ext.define('Ext.panel.DD', {
 
-     extend: 'Ext.dd.DragSource',
 
-     requires: ['Ext.panel.Proxy'],
 
-     constructor : function(panel, cfg){
 
-         var me = this;
 
-         
 
-         me.panel = panel;
 
-         me.dragData = {panel: panel};
 
-         me.panelProxy = new Ext.panel.Proxy(panel, cfg);
 
-         me.proxy = me.panelProxy.proxy;
 
-         me.callParent([panel.el, cfg]);
 
-         me.setupEl(panel);
 
-     },
 
-     
 
-     setupEl: function(panel){
 
-         var me = this,
 
-             header = panel.header,
 
-             el = panel.body;
 
-             
 
-         if (header) {
 
-             me.setHandleElId(header.id);
 
-             el = header.el;
 
-         }
 
-         if (el) {
 
-             el.setStyle('cursor', 'move');
 
-             me.scroll = false;
 
-         } else {
 
-             // boxready fires after first layout, so we'll definitely be rendered
 
-             panel.on('boxready', me.setupEl, me, {single: true});
 
-         }
 
-     },
 
-     showFrame: Ext.emptyFn,
 
-     startDrag: Ext.emptyFn,
 
-     
 
-     b4StartDrag: function(x, y) {
 
-         this.panelProxy.show();
 
-     },
 
-     
 
-     b4MouseDown: function(e) {
 
-         var x = e.getPageX(),
 
-             y = e.getPageY();
 
-             
 
-         this.autoOffset(x, y);
 
-     },
 
-     
 
-     onInitDrag : function(x, y){
 
-         this.onStartDrag(x, y);
 
-         return true;
 
-     },
 
-     
 
-     createFrame : Ext.emptyFn,
 
-     
 
-     getDragEl : function(e){
 
-         return this.panelProxy.ghost.el.dom;
 
-     },
 
-     
 
-     endDrag : function(e){
 
-         this.panelProxy.hide();
 
-         this.panel.saveState();
 
-     },
 
-     autoOffset : function(x, y) {
 
-         x -= this.startPageX;
 
-         y -= this.startPageY;
 
-         this.setDelta(x, y);
 
-     },
 
-     
 
-     // Override this, we don't want to repair on an "invalid" drop, the panel
 
-     // should main it's position
 
-     onInvalidDrop: function(target, e, id) {
 
-         var me = this;
 
-         
 
-         me.beforeInvalidDrop(target, e, id);
 
-         if (me.cachedTarget) {
 
-             if(me.cachedTarget.isNotifyTarget){
 
-                 me.cachedTarget.notifyOut(me, e, me.dragData);
 
-             }
 
-             me.cacheTarget = null;
 
-         }
 
-         if (me.afterInvalidDrop) {
 
- <span id='Ext-panel-DD-method-afterInvalidDrop'>            /**
 
- </span>             * An empty function by default, but provided so that you can perform a custom action
 
-              * after an invalid drop has occurred by providing an implementation.
 
-              * @param {Event} e The event object
 
-              * @param {String} id The id of the dropped element
 
-              * @method afterInvalidDrop
 
-              */
 
-             me.afterInvalidDrop(e, id);
 
-         }
 
-     }
 
- });</pre>
 
- </body>
 
- </html>
 
 
  |