You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by tv...@apache.org on 2012/06/06 00:20:49 UTC
svn commit: r1346628 - in
/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp: css/tomee.css
js/tomee/ApplicationController.js js/tomee/view/ApplicationView.js
js/tomee/view/components/Tree.js
Author: tveronezi
Date: Tue Jun 5 22:20:49 2012
New Revision: 1346628
URL: http://svn.apache.org/viewvc?rev=1346628&view=rev
Log:
https://issues.apache.org/jira/browse/TOMEE-205
working js tree
Modified:
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/css/tomee.css
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationView.js
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/components/Tree.js
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/css/tomee.css
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/css/tomee.css?rev=1346628&r1=1346627&r2=1346628&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/css/tomee.css (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/css/tomee.css Tue Jun 5 22:20:49 2012
@@ -24,6 +24,10 @@ body {
padding: 9px 0;
}
+.t-tree-link {
+
+}
+
ul.tree, ul.tree ul {
list-style-type: none;
margin: 0;
@@ -38,8 +42,6 @@ ul.tree li {
margin: 0;
padding: 0 20px;
line-height: 20px;
- color: #369;
- font-weight: bold;
}
ul.tree li.leaf {
@@ -72,3 +74,14 @@ h3.t-panel-title {
background-color: #d3d3d3;
padding-left: 5px
}
+
+div.t-action-btn {
+ border-left: 1px solid whiteSmoke;
+ border-right: 1px solid #E5E5E5;
+ background-color: #e6e6e6;
+ float: right;
+ position: relative;
+ width: 30px;
+ height: 30px
+}
+
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js?rev=1346628&r1=1346627&r2=1346628&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js Tue Jun 5 22:20:49 2012
@@ -32,15 +32,31 @@ TOMEE.ApplicationController = function (
});
view.loadJndi([
- { text:TOMEE.Sequence.next(), children:[] },
- { text:TOMEE.Sequence.next() },
- { text:TOMEE.Sequence.next() },
- { text:TOMEE.Sequence.next() },
- { text:TOMEE.Sequence.next() },
- { text:TOMEE.Sequence.next(), children:[] },
- { text:TOMEE.Sequence.next(), children:[] },
- { text:TOMEE.Sequence.next(), children:[] },
- { text:TOMEE.Sequence.next() }
+ { text:TOMEE.Sequence.next('a'), children:[] },
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a'), children:[
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a'), children:[
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a'), children:[
+ { text:TOMEE.Sequence.next('a') }
+ ] }
+ ] }
+ ] },
+ { text:TOMEE.Sequence.next('a'), children:[] },
+ { text:TOMEE.Sequence.next('a'), children:[] },
+ { text:TOMEE.Sequence.next('a'), children:[
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a'), children:[
+ { text:TOMEE.Sequence.next('a') },
+ { text:TOMEE.Sequence.next('a'), children:[
+ { text:TOMEE.Sequence.next('a') }
+ ] }
+ ] }
+ ] }
]);
view.loadSavedObjects([
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationView.js
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationView.js?rev=1346628&r1=1346627&r2=1346628&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationView.js (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationView.js Tue Jun 5 22:20:49 2012
@@ -60,7 +60,13 @@ TOMEE.ApplicationView = function (cfg) {
});
var tree = TOMEE.components.Tree({
- channel:channel
+ channel:channel,
+ getText: function (data) {
+ return data.text;
+ },
+ getChildren: function (data) {
+ return data.children;
+ }
});
var treeEl = tree.getEl();
@@ -71,11 +77,7 @@ TOMEE.ApplicationView = function (cfg) {
return jndi.getEl();
},
load: function(data) {
- tree.load(data, function (data) {
- return data.text;
- }, function (data) {
- return data.children;
- });
+ tree.load(data);
}
};
})();
@@ -117,8 +119,8 @@ TOMEE.ApplicationView = function (cfg) {
});
var el = console.getContentEl();
- el.append('<textarea style="height: 470px; width: 100%;border: 0px;padding: 0px;margin: 0px;"></textarea>');
- el.append('<div style="height: 30px; background-color: red;"><div style="float: right; position: relative; background-color: blue; width: 30px; height: 30px"></div><div style="float: right; position: relative; background-color: yellow; width: 30px; height: 30px"></div></div>');
+ el.append('<textarea style="height: 469px; width: 100%;border: 0px;padding: 0px;margin: 0px;"></textarea>');
+ el.append('<div style="background-color:#EEE; border-top: 1px solid #E5E5E5; height: 30px;"><div class="t-action-btn"></div><div class="t-action-btn"></div></div>');
return {
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/components/Tree.js
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/components/Tree.js?rev=1346628&r1=1346627&r2=1346628&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/components/Tree.js (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/components/Tree.js Tue Jun 5 22:20:49 2012
@@ -21,7 +21,12 @@ TOMEE.components.Tree = function (cfg) {
var channel = cfg.channel;
- var elements = (function() {
+ var currentData = null;
+
+ var getText = cfg.getText;
+ var getChildren = cfg.getChildren;
+
+ var elements = (function () {
var container = $('<div></div>');
var ul = $('<ul></ul>');
ul.addClass('tree');
@@ -29,32 +34,61 @@ TOMEE.components.Tree = function (cfg) {
container.append(ul);
return {
- container: container,
- ul: ul
+ container:container,
+ ul:ul
};
})();
- var load = function (parent, data, getText, getChildren) {
- if($.isArray(data)) {
- for(var i = 0; i < data.length; i++) {
- load(parent, data[i], getText, getChildren);
+ var loadTree = function (parent, data) {
+ if ($.isArray(data)) {
+
+ for (var i = 0; i < data.length; i++) {
+ loadTree(parent, data[i]);
}
return;
}
- var children = getChildren(data);
+ var span = $('<span class="t-tree-link"></span>');
+ span.append(getText(data));
var li = $('<li></li>');
- li.append(getText(data));
- if(children) {
+ li.append(span);
+
+ var children = getChildren(data);
+ if (children) {
li.addClass('closed');
+
+ span.bind('click', {
+ children:children,
+ li:li
+ }, function (event) {
+ if (event.data.li.hasClass("opened")) {
+ event.data.li.find('ul').empty();
+
+ event.data.li.removeClass('opened');
+ event.data.li.addClass('closed');
+ } else {
+ event.data.li.removeClass('closed');
+ event.data.li.addClass('opened');
+
+ var ul = li.find('ul').first();
+ if (ul.length === 0) {
+ ul = $('<ul></ul>');
+ event.data.li.append(ul);
+ }
+
+ loadTree(ul, event.data.children);
+ }
+ });
+
} else {
li.addClass('leaf');
}
+
+ //add LI to the parent UL
parent.append(li);
- var a = 0;
};
return {
@@ -62,14 +96,9 @@ TOMEE.components.Tree = function (cfg) {
return elements.container;
},
- load:function(data, getText, getChildren) {
- var loadData = data;
- if(!$.isArray(loadData)) {
- loadData = [loadData];
- }
-
- elements.ul.empty();
- load(elements.ul, loadData, getText, getChildren);
+ load:function (newData) {
+ currentData = TOMEE.utils.getArray(newData);
+ loadTree(elements.ul, currentData);
}
};
};
\ No newline at end of file