diff options
Diffstat (limited to 'js/code-editor/ui/code-editor-view-options.reel/code-editor-view-options.js')
-rw-r--r-- | js/code-editor/ui/code-editor-view-options.reel/code-editor-view-options.js | 62 |
1 files changed, 51 insertions, 11 deletions
diff --git a/js/code-editor/ui/code-editor-view-options.reel/code-editor-view-options.js b/js/code-editor/ui/code-editor-view-options.reel/code-editor-view-options.js index 13c9a705..5a33909c 100644 --- a/js/code-editor/ui/code-editor-view-options.reel/code-editor-view-options.js +++ b/js/code-editor/ui/code-editor-view-options.reel/code-editor-view-options.js | |||
@@ -31,11 +31,27 @@ exports.CodeEditorViewOptions = Montage.create(Component, { | |||
31 | } else { | 31 | } else { |
32 | this.visible = true; | 32 | this.visible = true; |
33 | this.autocomplete = !this.codeCompletionSupport[this._currentDocument.model.file.extension]; | 33 | this.autocomplete = !this.codeCompletionSupport[this._currentDocument.model.file.extension]; |
34 | this._currentDocument.model.views.code.editor.automaticCodeHint = this.codeCompleteCheck.checked; | ||
34 | } | 35 | } |
35 | 36 | ||
36 | } | 37 | } |
37 | }, | 38 | }, |
38 | 39 | ||
40 | _codeEditorWrapper:{ | ||
41 | value: null | ||
42 | }, | ||
43 | |||
44 | codeEditorWrapper:{ | ||
45 | get : function() { | ||
46 | return this._codeEditorWrapper; | ||
47 | }, | ||
48 | set : function(value) { | ||
49 | if(this._codeEditorWrapper !== value){ | ||
50 | this._codeEditorWrapper = value; | ||
51 | } | ||
52 | } | ||
53 | }, | ||
54 | |||
39 | _visible: { | 55 | _visible: { |
40 | value: false | 56 | value: false |
41 | }, | 57 | }, |
@@ -97,6 +113,35 @@ exports.CodeEditorViewOptions = Montage.create(Component, { | |||
97 | serializable: true | 113 | serializable: true |
98 | }, | 114 | }, |
99 | 115 | ||
116 | _zoomFactor:{ | ||
117 | value: 100 | ||
118 | }, | ||
119 | |||
120 | zoomFactor:{ | ||
121 | get: function(){ | ||
122 | return this._zoomFactor; | ||
123 | }, | ||
124 | set: function(value){ | ||
125 | this._zoomFactor = value; | ||
126 | if(this.codeEditorWrapper){this.codeEditorWrapper.handleZoom(value)}; | ||
127 | } | ||
128 | }, | ||
129 | |||
130 | _automaticCodeHint:{ | ||
131 | value: false | ||
132 | }, | ||
133 | |||
134 | automaticCodeHint:{ | ||
135 | get: function(){ | ||
136 | return this._automaticCodeHint; | ||
137 | }, | ||
138 | set: function(value){ | ||
139 | this._automaticCodeHint = value; | ||
140 | //additing additional meta properties on the editor | ||
141 | this._currentDocument.model.views.code.editor.automaticCodeHint = value; | ||
142 | } | ||
143 | }, | ||
144 | |||
100 | themeSelect: { | 145 | themeSelect: { |
101 | value: null, | 146 | value: null, |
102 | serializable: true | 147 | serializable: true |
@@ -114,13 +159,6 @@ exports.CodeEditorViewOptions = Montage.create(Component, { | |||
114 | this.uncomment.addEventListener("click", this.handleUncomment.bind(this), false); | 159 | this.uncomment.addEventListener("click", this.handleUncomment.bind(this), false); |
115 | this.themeSelect.addEventListener("change", this.handleThemeSelection.bind(this), false); | 160 | this.themeSelect.addEventListener("change", this.handleThemeSelection.bind(this), false); |
116 | this.shortKeys.addEventListener("click", this.handleShortKeys.bind(this), false); | 161 | this.shortKeys.addEventListener("click", this.handleShortKeys.bind(this), false); |
117 | |||
118 | Object.defineBinding(this.zoomHottext , "value", { | ||
119 | boundObject: this.application.ninja.codeEditorController, | ||
120 | boundObjectPropertyPath: "zoomFactor", | ||
121 | oneway : false | ||
122 | }); | ||
123 | |||
124 | } | 162 | } |
125 | }, | 163 | }, |
126 | 164 | ||
@@ -155,20 +193,22 @@ exports.CodeEditorViewOptions = Montage.create(Component, { | |||
155 | 193 | ||
156 | handleComment:{ | 194 | handleComment:{ |
157 | value: function(evt){ | 195 | value: function(evt){ |
158 | this.application.ninja.codeEditorController.commentSelection(true); | 196 | if(this.codeEditorWrapper){this.codeEditorWrapper.commentSelection(true)}; |
159 | } | 197 | } |
160 | }, | 198 | }, |
161 | 199 | ||
162 | handleUncomment:{ | 200 | handleUncomment:{ |
163 | value: function(evt){ | 201 | value: function(evt){ |
164 | this.application.ninja.codeEditorController.commentSelection(false); | 202 | if(this.codeEditorWrapper){this.codeEditorWrapper.commentSelection(false)}; |
165 | } | 203 | } |
166 | }, | 204 | }, |
167 | 205 | ||
168 | handleThemeSelection:{ | 206 | handleThemeSelection:{ |
169 | value: function(evt){ | 207 | value: function(evt){ |
170 | this.application.ninja.codeEditorController.editorTheme = this.themeSelect.options[this.themeSelect.selectedIndex].value; | 208 | if(this.codeEditorWrapper){ |
171 | this.application.ninja.codeEditorController.handleThemeSelection(); | 209 | this.codeEditorWrapper.editorTheme = this.themeSelect.options[this.themeSelect.selectedIndex].value; |
210 | this.codeEditorWrapper.handleThemeSelection(); | ||
211 | } | ||
172 | } | 212 | } |
173 | }, | 213 | }, |
174 | 214 | ||