Author: tveronezi
Date: Wed Jun 13 14:30:27 2012
New Revision: 1349872
URL: http://svn.apache.org/viewvc?rev=1349872&view=rev
Log:
https://issues.apache.org/jira/browse/TOMEE-224
* preparing panel drag feature
Modified:
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/application/js/view/components/Panel.js
Modified:
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/application/js/view/components/Panel.js
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/application/js/view/components/Panel.js?rev=1349872&r1=1349871&r2=1349872&view=diff
==============================================================================
---
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/application/js/view/components/Panel.js
(original)
+++
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/application/js/view/components/Panel.js
Wed Jun 13 14:30:27 2012
@@ -29,6 +29,17 @@ TOMEE.components.Panel = function (cfg)
parentEl = $(window);
}
+ var dragPanel = false;
+ var isFloatingPanel = false;
+ var panelX = 0;
+ var panelY = 0;
+
+ var map = null;
+ var createMap = function () {
+ map = null;
+ map = TOMEE.el.getElMap(myBodyCfg);
+ };
+
var myBodyCfg = {
elName:'main',
tag:'div',
@@ -44,7 +55,35 @@ TOMEE.components.Panel = function (cfg)
tag:'h3',
html:TOMEE.utils.getSafe(cfg.title, '-')
}
- ]
+ ],
+ listeners:{
+ 'mousedown':function () {
+ dragPanel = true;
+ },
+ 'mouseup':function () {
+ dragPanel = false;
+ },
+ 'mouseout':function () {
+ dragPanel = false;
+ },
+ 'mousemove':function (event) {
+ //TODO fix me
+ return;
+
+ if (!isFloatingPanel || !dragPanel) {
+ //nothing to do
+ return;
+ }
+
+ var main = map.main;
+
+ panelX = panelX - event.offsetY;
+ panelY = panelY - event.offsetX;
+
+ main.css('left', panelX + 'px');
+ main.css('top', panelY + 'px');
+ }
+ }
},
{
elName:'myBody',
@@ -105,11 +144,7 @@ TOMEE.components.Panel = function (cfg)
})();
}
- var map = null;
- var createMap = function () {
- map = null;
- map = TOMEE.el.getElMap(myBodyCfg);
- };
+ //create the initial map
createMap();
var extraStyles = cfg.extraStyles;
@@ -173,6 +208,8 @@ TOMEE.components.Panel = function (cfg)
throw 'missing parameters';
}
+ isFloatingPanel = true;
+
var main = map.main;
main.css('position', 'absolute');
@@ -180,15 +217,18 @@ TOMEE.components.Panel = function (cfg)
myBody.append(main);
if (config.left || config.top) {
- main.css('left', TOMEE.el.getLocationValue(config.left));
- main.css('top', TOMEE.el.getLocationValue(config.top));
+ panelX = config.left;
+ panelY = config.top;
} else {
var center = getCenter();
- main.css('left', center.left + 'px');
- main.css('top', center.top + 'px');
+ panelX = center.left;
+ panelY = center.top;
}
+ main.css('left', panelX + 'px');
+ main.css('top', panelY + 'px');
+
if (config.modal) {
//TODO: add the modal feature
}