diff options
-rwxr-xr-x | css/ninja.css | 10 | ||||
-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 | ||||
-rwxr-xr-x | scss/imports/scss/_MainWindow.scss | 4 | ||||
-rwxr-xr-x | scss/imports/scss/_Workspace.scss | 19 | ||||
-rwxr-xr-x | scss/ninja.scss | 1 |
16 files changed, 212 insertions, 7 deletions
diff --git a/css/ninja.css b/css/ninja.css index 1531b76c..ebf16395 100755 --- a/css/ninja.css +++ b/css/ninja.css | |||
@@ -118,9 +118,9 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co | |||
118 | 118 | ||
119 | #sceneBar { height: 70px; background-color: #474747; } | 119 | #sceneBar { height: 70px; background-color: #474747; } |
120 | 120 | ||
121 | #mainContainer .rulerTop { display: none; background: gray url("../images/temp/ruler-top.png"); height: 15px; margin-bottom: 0px; border-right: 11px solid black; } | 121 | #mainContainer .rulerTop { display: none; background: gray url("../images/temp/ruler-top.png"); height: 15px; margin-bottom: 0px; } |
122 | 122 | ||
123 | .rulerLeft { display: none; background: gray url("../images/temp/ruler-left.png"); width: 16px; border-bottom: 11px solid black; } | 123 | .rulerLeft { display: none; background: gray url("../images/temp/ruler-left.png"); width: 16px; } |
124 | 124 | ||
125 | #stateBar { height: 20px; background-color: #282828; margin-bottom: 0px; } | 125 | #stateBar { height: 20px; background-color: #282828; margin-bottom: 0px; } |
126 | 126 | ||
@@ -997,4 +997,10 @@ input[type="radio"]:disabled { opacity: .3; background: #282828; border-width: 1 | |||
997 | 997 | ||
998 | .montage-invisible { display: none; } | 998 | .montage-invisible { display: none; } |
999 | 999 | ||
1000 | body .panel.ws-binding { display: none; } | ||
1001 | |||
1002 | body.ws-binding .rightPanelContent .panel { display: none; } | ||
1003 | |||
1004 | body.ws-binding .rightPanelContent .panel.ws-binding { display: block; } | ||
1005 | |||
1000 | /*77*/ | 1006 | /*77*/ |
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; |