diff options
author | Armen Kesablyan | 2012-05-11 15:03:10 -0700 |
---|---|---|
committer | Armen Kesablyan | 2012-05-11 15:03:22 -0700 |
commit | c80e7df1702dff09b5cc8447ab0619747fed2024 (patch) | |
tree | ed45ae752fd1427e03e39d8174df44de00a45f83 /js | |
parent | e3efa52c409ef05c28bfc5f1f25a750b5132c3bd (diff) | |
download | ninja-c80e7df1702dff09b5cc8447ab0619747fed2024.tar.gz |
created the initial environment requirements for workspace to be manipulated.
Signed-off-by: Armen Kesablyan <armen@motorola.com>
Diffstat (limited to 'js')
-rw-r--r-- | js/data/panels-data.js | 26 | ||||
-rwxr-xr-x | js/ninja.reel/ninja.js | 18 | ||||
-rwxr-xr-x | js/panels/Panel.reel/Panel.js | 10 | ||||
-rwxr-xr-x | js/panels/PanelContainer.reel/PanelContainer.html | 20 | ||||
-rwxr-xr-x | js/panels/PanelContainer.reel/PanelContainer.js | 16 | ||||
-rw-r--r-- | js/panels/binding.reel/binding.css | 0 | ||||
-rw-r--r-- | js/panels/binding.reel/binding.html | 27 | ||||
-rw-r--r-- | js/panels/binding.reel/binding.js | 11 | ||||
-rw-r--r-- | js/panels/objects.reel/objects.css | 0 | ||||
-rw-r--r-- | js/panels/objects.reel/objects.html | 27 | ||||
-rw-r--r-- | js/panels/objects.reel/objects.js | 7 | ||||
-rw-r--r-- | js/tools/bindingTool.js | 23 |
12 files changed, 182 insertions, 3 deletions
diff --git a/js/data/panels-data.js b/js/data/panels-data.js index f613a3be..7fa22995 100644 --- a/js/data/panels-data.js +++ b/js/data/panels-data.js | |||
@@ -105,6 +105,32 @@ exports.PanelsData = Montage.create(Montage, { | |||
105 | open: true, | 105 | open: true, |
106 | modulePath: "js/panels/history-panel/history.reel", | 106 | modulePath: "js/panels/history-panel/history.reel", |
107 | moduleName: "History" | 107 | moduleName: "History" |
108 | }, | ||
109 | { | ||
110 | name: "Binding", | ||
111 | groups: ["ws-binding"], | ||
112 | minHeight: 100, | ||
113 | height: 100, | ||
114 | maxHeight: null, | ||
115 | flexible: true, | ||
116 | collapsed: true, | ||
117 | scrollable: true, | ||
118 | open: true, | ||
119 | modulePath: "js/panels/binding.reel", | ||
120 | moduleName: "BindingPanel" | ||
121 | }, | ||
122 | { | ||
123 | name: "Objects", | ||
124 | groups: ["ws-binding"], | ||
125 | minHeight: 100, | ||
126 | height: 100, | ||
127 | maxHeight: null, | ||
128 | flexible: true, | ||
129 | collapsed: true, | ||
130 | scrollable: true, | ||
131 | open: true, | ||
132 | modulePath: "js/panels/objects.reel", | ||
133 | moduleName: "ObjectsPanel" | ||
108 | } | 134 | } |
109 | ] | 135 | ] |
110 | } | 136 | } |
diff --git a/js/ninja.reel/ninja.js b/js/ninja.reel/ninja.js index edc1efa4..7ab8e52c 100755 --- a/js/ninja.reel/ninja.js +++ b/js/ninja.reel/ninja.js | |||
@@ -18,6 +18,24 @@ exports.Ninja = Montage.create(Component, { | |||
18 | value: null | 18 | value: null |
19 | }, | 19 | }, |
20 | 20 | ||
21 | _workspaceMode: { | ||
22 | value: null | ||
23 | }, | ||
24 | |||
25 | workspaceMode: { | ||
26 | get: function() { | ||
27 | return this.workspaceMode; | ||
28 | }, | ||
29 | set: function(val) { | ||
30 | if( this._workspaceMode === val ) { | ||
31 | if(this._workspaceMode !== null) { | ||
32 | document.body.classList.remove("ws-" + val); | ||
33 | } | ||
34 | document.body.classList.add("ws-" + val); | ||
35 | } | ||
36 | } | ||
37 | }, | ||
38 | |||
21 | toolsData: { value: null }, | 39 | toolsData: { value: null }, |
22 | appData: { value: AppData }, | 40 | appData: { value: AppData }, |
23 | 41 | ||
diff --git a/js/panels/Panel.reel/Panel.js b/js/panels/Panel.reel/Panel.js index 613bef4b..bd9b4e2f 100755 --- a/js/panels/Panel.reel/Panel.js +++ b/js/panels/Panel.reel/Panel.js | |||
@@ -13,6 +13,10 @@ exports.Panel = Montage.create(Component, { | |||
13 | value: "Panel" | 13 | value: "Panel" |
14 | }, | 14 | }, |
15 | 15 | ||
16 | groups: { | ||
17 | value: [] | ||
18 | }, | ||
19 | |||
16 | _collapsed: { | 20 | _collapsed: { |
17 | value: false | 21 | value: false |
18 | }, | 22 | }, |
@@ -119,6 +123,12 @@ exports.Panel = Montage.create(Component, { | |||
119 | this.application.ninja.colorController.colorView = this.application.ninja.colorController.colorPanelBase.create(); | 123 | this.application.ninja.colorController.colorView = this.application.ninja.colorController.colorPanelBase.create(); |
120 | } | 124 | } |
121 | 125 | ||
126 | if(this.groups) { | ||
127 | this.groups.forEach(function(className) { | ||
128 | this.element.classList.add(className); | ||
129 | }.bind(this)); | ||
130 | } | ||
131 | |||
122 | if(this.modulePath && this.moduleName) { | 132 | if(this.modulePath && this.moduleName) { |
123 | // Load the slot content | 133 | // Load the slot content |
124 | var that = this; | 134 | var that = this; |
diff --git a/js/panels/PanelContainer.reel/PanelContainer.html b/js/panels/PanelContainer.reel/PanelContainer.html index ccefd3ae..f1d1a855 100755 --- a/js/panels/PanelContainer.reel/PanelContainer.html +++ b/js/panels/PanelContainer.reel/PanelContainer.html | |||
@@ -62,6 +62,20 @@ | |||
62 | } | 62 | } |
63 | }, | 63 | }, |
64 | 64 | ||
65 | "panel_7": { | ||
66 | "prototype": "js/panels/Panel.reel", | ||
67 | "properties": { | ||
68 | "element": {"#": "panel_7"} | ||
69 | } | ||
70 | }, | ||
71 | |||
72 | "panel_8": { | ||
73 | "prototype": "js/panels/Panel.reel", | ||
74 | "properties": { | ||
75 | "element": {"#": "panel_8"} | ||
76 | } | ||
77 | }, | ||
78 | |||
65 | "owner": { | 79 | "owner": { |
66 | "prototype": "js/panels/PanelContainer.reel", | 80 | "prototype": "js/panels/PanelContainer.reel", |
67 | "properties": { | 81 | "properties": { |
@@ -73,7 +87,9 @@ | |||
73 | "panel_3": {"@": "panel_3"}, | 87 | "panel_3": {"@": "panel_3"}, |
74 | "panel_4": {"@": "panel_4"}, | 88 | "panel_4": {"@": "panel_4"}, |
75 | "panel_5": {"@": "panel_5"}, | 89 | "panel_5": {"@": "panel_5"}, |
76 | "panel_6": {"@": "panel_6"} | 90 | "panel_6": {"@": "panel_6"}, |
91 | "panel_7": {"@": "panel_7"}, | ||
92 | "panel_8": {"@": "panel_8"} | ||
77 | }, | 93 | }, |
78 | "listeners": [ | 94 | "listeners": [ |
79 | { | 95 | { |
@@ -104,6 +120,8 @@ | |||
104 | <article data-montage-id="panel_4"></article> | 120 | <article data-montage-id="panel_4"></article> |
105 | <article data-montage-id="panel_5"></article> | 121 | <article data-montage-id="panel_5"></article> |
106 | <article data-montage-id="panel_6"></article> | 122 | <article data-montage-id="panel_6"></article> |
123 | <article data-montage-id="panel_7"></article> | ||
124 | <article data-montage-id="panel_8"></article> | ||
107 | </article> | 125 | </article> |
108 | </section> | 126 | </section> |
109 | </body> | 127 | </body> |
diff --git a/js/panels/PanelContainer.reel/PanelContainer.js b/js/panels/PanelContainer.reel/PanelContainer.js index 8d1d6a5e..044fd598 100755 --- a/js/panels/PanelContainer.reel/PanelContainer.js +++ b/js/panels/PanelContainer.reel/PanelContainer.js | |||
@@ -21,6 +21,18 @@ exports.PanelContainer = Montage.create(Component, { | |||
21 | value: [] | 21 | value: [] |
22 | }, | 22 | }, |
23 | 23 | ||
24 | panelsAvailable: { | ||
25 | value: function() { | ||
26 | var pAvail = []; | ||
27 | this.panels.forEach(function(obj) { | ||
28 | if (window.getComputedStyle(obj.element).display !== "none") { | ||
29 | pAvail.push(obj); | ||
30 | } | ||
31 | }); | ||
32 | return pAvail; | ||
33 | } | ||
34 | }, | ||
35 | |||
24 | currentPanelState: { | 36 | currentPanelState: { |
25 | value: {} | 37 | value: {} |
26 | }, | 38 | }, |
@@ -49,6 +61,8 @@ exports.PanelContainer = Montage.create(Component, { | |||
49 | this['panel_'+i].modulePath = p.modulePath; | 61 | this['panel_'+i].modulePath = p.modulePath; |
50 | this['panel_'+i].moduleName = p.moduleName; | 62 | this['panel_'+i].moduleName = p.moduleName; |
51 | this['panel_'+i].disabled = true; | 63 | this['panel_'+i].disabled = true; |
64 | this['panel_'+i].groups = p.groups; | ||
65 | |||
52 | 66 | ||
53 | this.currentPanelState[p.name] = {}; | 67 | this.currentPanelState[p.name] = {}; |
54 | this.currentPanelState.version = "1.0"; | 68 | this.currentPanelState.version = "1.0"; |
@@ -144,6 +158,7 @@ exports.PanelContainer = Montage.create(Component, { | |||
144 | 158 | ||
145 | _setPanelsSizes: { | 159 | _setPanelsSizes: { |
146 | value: function(panelActivated) { | 160 | value: function(panelActivated) { |
161 | this.panelsAvailable(); | ||
147 | var len = this.panels.length, setLocked = true; | 162 | var len = this.panels.length, setLocked = true; |
148 | 163 | ||
149 | for(var i = 0; i < len; i++) { | 164 | for(var i = 0; i < len; i++) { |
@@ -160,6 +175,7 @@ exports.PanelContainer = Montage.create(Component, { | |||
160 | _redrawPanels: { | 175 | _redrawPanels: { |
161 | value: function(panelActivated, unlockPanels) { | 176 | value: function(panelActivated, unlockPanels) { |
162 | var maxHeight = this.element.offsetHeight, setLocked = true; | 177 | var maxHeight = this.element.offsetHeight, setLocked = true; |
178 | var availablePanels = this.panelsAvailable(); | ||
163 | var len = this.panels.length; | 179 | var len = this.panels.length; |
164 | 180 | ||
165 | if(unlockPanels === true) { | 181 | if(unlockPanels === true) { |
diff --git a/js/panels/binding.reel/binding.css b/js/panels/binding.reel/binding.css new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/js/panels/binding.reel/binding.css | |||
diff --git a/js/panels/binding.reel/binding.html b/js/panels/binding.reel/binding.html new file mode 100644 index 00000000..50e839ab --- /dev/null +++ b/js/panels/binding.reel/binding.html | |||
@@ -0,0 +1,27 @@ | |||
1 | <!DOCTYPE html> | ||
2 | <!-- <copyright> | ||
3 | This file contains proprietary software owned by Motorola Mobility, Inc.<br/> | ||
4 | No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/&g |