aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xcss/ninja.css14
-rw-r--r--images/cursors/binding.pngbin0 -> 1359 bytes
-rw-r--r--images/panels/horizontal-resize.pngbin0 -> 1031 bytes
-rw-r--r--images/tools/binding.pngbin0 -> 1140 bytes
-rw-r--r--js/components/hintable.reel/hintable.js7
-rwxr-xr-xjs/components/layout/tools-list.reel/tools-list.html4
-rwxr-xr-xjs/components/layout/tools-properties.reel/tools-properties.html10
-rwxr-xr-xjs/components/tools-properties/binding-properties.reel/binding-properties.css17
-rwxr-xr-xjs/components/tools-properties/binding-properties.reel/binding-properties.html35
-rwxr-xr-xjs/components/tools-properties/binding-properties.reel/binding-properties.js25
-rw-r--r--js/controllers/objects-controller.js195
-rw-r--r--js/data/panels-data.js37
-rwxr-xr-xjs/data/tools-data.js15
-rw-r--r--js/document/templates/app/main.js1
-rwxr-xr-xjs/document/templates/html/index.html5
-rwxr-xr-xjs/document/views/design.js3
-rwxr-xr-xjs/ninja.reel/ninja.html8
-rwxr-xr-xjs/ninja.reel/ninja.js23
-rwxr-xr-xjs/panels/Panel.reel/Panel.js10
-rwxr-xr-xjs/panels/PanelContainer.reel/PanelContainer.html20
-rwxr-xr-xjs/panels/PanelContainer.reel/PanelContainer.js29
-rw-r--r--js/panels/binding-panel.reel/binding-panel.css22
-rw-r--r--js/panels/binding-panel.reel/binding-panel.html80
-rw-r--r--js/panels/binding-panel.reel/binding-panel.js78
-rw-r--r--js/panels/binding/binding-item.reel/binding-item.css80
-rw-r--r--js/panels/binding/binding-item.reel/binding-item.html101
-rw-r--r--js/panels/binding/binding-item.reel/binding-item.js130
-rw-r--r--js/panels/binding/edit-binding-view.reel/edit-binding-view.css47
-rw-r--r--js/panels/binding/edit-binding-view.reel/edit-binding-view.html180
-rw-r--r--js/panels/binding/edit-binding-view.reel/edit-binding-view.js211
-rw-r--r--js/panels/objects/object.reel/object.css28
-rw-r--r--js/panels/objects/object.reel/object.html47
-rw-r--r--js/panels/objects/object.reel/object.js79
-rw-r--r--js/panels/objects/objects-panel.reel/objects-panel.css37
-rw-r--r--js/panels/objects/objects-panel.reel/objects-panel.html70
-rw-r--r--js/panels/objects/objects-panel.reel/objects-panel.js53
-rwxr-xr-xjs/stage/binding-view.reel/binding-hud-option.reel/binding-hud-option.css5
-rwxr-xr-xjs/stage/binding-view.reel/binding-hud-option.reel/binding-hud-option.html39
-rwxr-xr-xjs/stage/binding-view.reel/binding-hud-option.reel/binding-hud-option.js69
-rwxr-xr-xjs/stage/binding-view.reel/binding-hud.reel/binding-hud.css66
-rwxr-xr-xjs/stage/binding-view.reel/binding-hud.reel/binding-hud.html52
-rwxr-xr-xjs/stage/binding-view.reel/binding-hud.reel/binding-hud.js89
-rwxr-xr-xjs/stage/binding-view.reel/binding-view.css26
-rwxr-xr-xjs/stage/binding-view.reel/binding-view.html92
-rwxr-xr-xjs/stage/binding-view.reel/binding-view.js229
-rwxr-xr-xjs/stage/binding-view.reel/non-visual-component.reel/non-visual-component.css5
-rwxr-xr-xjs/stage/binding-view.reel/non-visual-component.reel/non-visual-component.html27
-rwxr-xr-xjs/stage/binding-view.reel/non-visual-component.reel/non-visual-component.js18
-rwxr-xr-xjs/stage/stage.reel/stage.html12
-rw-r--r--js/tools/bindingTool.js89
-rwxr-xr-xnode_modules/montage/core/event/binding.js24
-rwxr-xr-xnode_modules/montage/core/serializer.js4
-rwxr-xr-xnode_modules/montage/ui/application.js3
-rw-r--r--node_modules/montage/ui/native-control.js2
-rwxr-xr-xscss/imports/scss/_MainWindow.scss4
-rwxr-xr-xscss/imports/scss/_Workspace.scss25
-rwxr-xr-xscss/imports/scss/_toolbar.scss3
-rwxr-xr-xscss/ninja.scss1
58 files changed, 2558 insertions, 27 deletions
diff --git a/css/ninja.css b/css/ninja.css
index e3d560ab..d1cf44c6 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
@@ -869,6 +869,8 @@ input[type="radio"]:disabled { opacity: .3; background: #282828; border-width: 1
869 869
870.InkBottleTool { background-image: url("../images/tools/Tool-FillColor.png"); } 870.InkBottleTool { background-image: url("../images/tools/Tool-FillColor.png"); }
871 871
872.bindingTool { background-image: url("../images/tools/binding.png"); }
873
872.blueDiv { background: blue; opacity: 0.2; } 874.blueDiv { background: blue; opacity: 0.2; }
873 875
874::-webkit-scrollbar { width: 11px; height: 11px; } 876::-webkit-scrollbar { width: 11px; height: 11px; }
@@ -931,4 +933,12 @@ input[type="radio"]:disabled { opacity: .3; background: #282828; border-width: 1
931 933
932.montage-invisible { display: none; } 934.montage-invisible { display: none; }
933 935
936.panels .panel { display: none; }
937
938.panels .panel.ws-binding { display: none; -webkit-box-flex-group: 2; }
939
940body.ws-binding .panel.ws-binding { display: -webkit-box; }
941
942body.ws-default .panel.default { display: -webkit-box; -webkit-box-flex-group: 1; }
943
934/*77*/ 944/*77*/
diff --git a/images/cursors/binding.png b/images/cursors/binding.png
new file mode 100644
index 00000000..16e84574
--- /dev/null
+++ b/images/cursors/binding.png
Binary files differ
diff --git a/images/panels/horizontal-resize.png b/images/panels/horizontal-resize.png
new file mode 100644
index 00000000..7b2cf8a5
--- /dev/null
+++ b/images/panels/horizontal-resize.png
Binary files differ
diff --git a/images/tools/binding.png b/images/tools/binding.png
new file mode 100644
index 00000000..33545ee1
--- /dev/null
+++ b/images/tools/binding.png
Binary files differ
diff --git a/js/components/hintable.reel/hintable.js b/js/components/hintable.reel/hintable.js
index 803770db..e16c5f8a 100644
--- a/js/components/hintable.reel/hintable.js
+++ b/js/components/hintable.reel/hintable.js
@@ -185,12 +185,12 @@ exports.Hintable = Montage.create(Editable, {
185 handleInput : { 185 handleInput : {
186 value : function handleInput(e) { 186 value : function handleInput(e) {
187 this._super(arguments); 187 this._super(arguments);
188 188
189 var val = this.value, 189 var val = this.value,
190 matches, hint; 190 matches, hint;
191 //console.log('val = "' + val + '"'); 191 //console.log('val = "' + val + '"');
192 //// Handle auto-suggest if configured 192 //// Handle auto-suggest if configured
193 if(this.hints instanceof Array) { 193 if(this.hints && this.hints.length) {
194 194
195 if(val.length > 0) { // content is not empty 195 if(val.length > 0) { // content is not empty
196 196
@@ -305,7 +305,8 @@ exports.Hintable = Montage.create(Editable, {
305 305
306 /* --------- CONFIG ---------- */ 306 /* --------- CONFIG ---------- */
307 hints : { 307 hints : {
308 value : ['Testing a hint.', 'Testing another hint.', 'Testing the last hint.'] 308 value : ['Testing a hint.', 'Testing another hint.', 'Testing the last hint.'],
309 distinct: true
309 }, 310 },
310 hintClass : { 311 hintClass : {
311 value : "hintable-hint" 312 value : "hintable-hint"
diff --git a/js/components/layout/tools-list.reel/tools-list.html b/js/components/layout/tools-list.reel/tools-list.html
index 4e5b85ee..89901426 100755
--- a/js/components/layout/tools-list.reel/tools-list.html
+++ b/js/components/layout/tools-list.reel/tools-list.html
@@ -95,6 +95,9 @@
95 "ZoomTool1": { 95 "ZoomTool1": {
96 "prototype": "js/tools/ZoomTool" 96 "prototype": "js/tools/ZoomTool"
97 }, 97 },
98 "BindingTool1": {
99 "prototype": "js/tools/BindingTool"
100 },
98 101
99 "disable": { 102 "disable": {
100 "prototype": "montage/ui/condition.reel", 103 "prototype": "montage/ui/condition.reel",
@@ -127,6 +130,7 @@
127 "RotateStageTool3D": {"@": "RotateStageTool3D1"}, 130 "RotateStageTool3D": {"@": "RotateStageTool3D1"},
128 "PanTool": {"@": "PanTool1"}, 131 "PanTool": {"@": "PanTool1"},
129 "ZoomTool": {"@": "ZoomTool1"}, 132 "ZoomTool": {"@": "ZoomTool1"},
133 "bindingTool": {"@": "BindingTool1"},
130 "components": [ 134 "components": [
131 {"@": "repetition1"} 135 {"@": "repetition1"}
132 ] 136 ]
diff --git a/js/components/layout/tools-properties.reel/tools-properties.html b/js/components/layout/tools-properties.reel/tools-properties.html
index e7d1ac8b..ffaa0fca 100755
--- a/js/components/layout/tools-properties.reel/tools-properties.html
+++ b/js/components/layout/tools-properties.reel/tools-properties.html
@@ -102,6 +102,12 @@
102 "element": {"#": "zoomProperties"} 102 "element": {"#": "zoomProperties"}
103 } 103 }
104 }, 104 },
105 "bindingProperties1": {
106 "prototype": "js/components/tools-properties/binding-properties.reel",
107 "properties": {
108 "element": {"#": "bindingProperties"}
109 }
110 },
105