aboutsummaryrefslogtreecommitdiff
path: root/js/components
diff options
context:
space:
mode:
Diffstat (limited to 'js/components')
-rw-r--r--js/components/focus-manager.reel/focus-manager.js49
-rwxr-xr-xjs/components/ui/property-control.reel/property-control.js2
-rwxr-xr-xjs/components/ui/tree-basic/treeItem.reel/treeItem.js35
3 files changed, 82 insertions, 4 deletions
diff --git a/js/components/focus-manager.reel/focus-manager.js b/js/components/focus-manager.reel/focus-manager.js
new file mode 100644
index 00000000..65a84bc1
--- /dev/null
+++ b/js/components/focus-manager.reel/focus-manager.js
@@ -0,0 +1,49 @@
1/* <copyright>
2 This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
3 No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
4 (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5 </copyright> */
6
7var Montage = require("montage/core/core").Montage,
8 Component = require("montage/ui/component").Component;
9
10exports.FocusManager = Montage.create(Component, {
11
12 hasTemplate: {
13 value: false
14 },
15
16 element: {
17 serializable: true,
18 enumerable: true,
19 get: function() {
20 return this._element;
21 },
22 set: function(value) {
23 // call super set
24 Object.getPropertyDescriptor(Component, "element").set.call(this, value);
25 }
26 },
27
28 hiddenInput: {
29 value: null
30 },
31
32 prepareForDraw: {
33 value: function() {
34 this.hiddenInput = document.createElement("input");
35 this.hiddenInput.type = "text";
36
37 this.element.appendChild(this.hiddenInput);
38
39 }
40 },
41
42 setFocus: {
43 value: function() {
44 this.hiddenInput.focus();
45 }
46 }
47
48});
49
diff --git a/js/components/ui/property-control.reel/property-control.js b/js/components/ui/property-control.reel/property-control.js
index 58b1be9f..cd59c02c 100755
--- a/js/components/ui/property-control.reel/property-control.js
+++ b/js/components/ui/property-control.reel/property-control.js
@@ -9,7 +9,7 @@ var Montage = require("montage/core/core").Montage,
9 HotText = require("js/components/hottext.reel").HotText, 9 HotText = require("js/components/hottext.reel").HotText,
10 HotTextUnit = require("js/components/hottextunit.reel").HotTextUnit, 10 HotTextUnit = require("js/components/hottextunit.reel").HotTextUnit,
11 Slider = require("js/components/slider.reel").Slider, 11 Slider = require("js/components/slider.reel").Slider,
12 Button = require("js/components/button.reel").Button, 12 Button = require("montage/ui/button.reel").Button,
13 Checkbox = require("js/components/checkbox.reel").Checkbox, 13 Checkbox = require("js/components/checkbox.reel").Checkbox,
14 Combobox = require("js/components/combobox.reel").Combobox, 14 Combobox = require("js/components/combobox.reel").Combobox,
15 TextField = require("js/components/TextField.reel").TextField, 15 TextField = require("js/components/TextField.reel").TextField,
diff --git a/js/components/ui/tree-basic/treeItem.reel/treeItem.js b/js/components/ui/tree-basic/treeItem.reel/treeItem.js
index a67dad43..13e278e9 100755
--- a/js/components/ui/tree-basic/treeItem.reel/treeItem.js
+++ b/js/components/ui/tree-basic/treeItem.reel/treeItem.js
@@ -107,8 +107,8 @@ exports.TreeItem = Montage.create(Component, {
107 //icon or text click sends selection event 107 //icon or text click sends selection event
108 var contentEls = this.element.querySelectorAll(".atreeItemContent"); 108 var contentEls = this.element.querySelectorAll(".atreeItemContent");
109 for(var i=0;i<contentEls.length;i++){ 109 for(var i=0;i<contentEls.length;i++){
110 contentEls[i].addEventListener("click", function(evt){that.handleTreeItemContentClick(evt);}, false); 110 contentEls[i].addEventListener("click", function(evt){that.handleTreeItemContentClick(evt);}, true);
111 contentEls[i].addEventListener("dblclick", function(evt){that.handleTreeItemContentDblclick(evt);}, false); 111 contentEls[i].addEventListener("dblclick", function(evt){that.handleTreeItemContentDblclick(evt);}, true);
112 } 112 }
113 113
114 this.element.addEventListener("mouseover", function(evt){that.handleTreeItemMouseover(evt);}, false); 114 this.element.addEventListener("mouseover", function(evt){that.handleTreeItemMouseover(evt);}, false);
@@ -123,7 +123,7 @@ exports.TreeItem = Montage.create(Component, {
123 if(this.treeItemData.modifiedDate){this.metadata = this.metadata + "<br />" + "Modified date: "+ this.formatTimestamp(this.treeItemData.modifiedDate);} 123 if(this.treeItemData.modifiedDate){this.metadata = this.metadata + "<br />" + "Modified date: "+ this.formatTimestamp(this.treeItemData.modifiedDate);}
124 124
125 if((this.treeItemData.type === "directory") && (this.expandAfterDraw === true)){ 125 if((this.treeItemData.type === "directory") && (this.expandAfterDraw === true)){
126 this.toggleContent(this.treeArrow); 126 this.expand(this.treeArrow);
127 } 127 }
128 if(this.treeItemData.uri === this.highlightedUri){ 128 if(this.treeItemData.uri === this.highlightedUri){
129 this.itemName.classList.add("selected"); 129 this.itemName.classList.add("selected");
@@ -171,6 +171,35 @@ exports.TreeItem = Montage.create(Component, {
171 } 171 }
172 }, 172 },
173 173
174 expand:{
175 writable:false,
176 enumerable:true,
177 value:function(el){
178 //if children already drawn then just hide/show
179 if(this.element.getElementsByTagName("ul").length > 0){
180 var theParent = this.element.getElementsByTagName("ul")[0].parentNode;
181 if(theParent.classList.contains("hideTree")){//collapsed
182 theParent.classList.remove("hideTree");//expand
183 el.innerHTML = "&#9660;";
184 }
185 }
186 //else send event to draw the children
187 else{
188 var treeClickEvent = document.createEvent("Events");
189 treeClickEvent.initEvent("drawTree", false, false);
190 treeClickEvent.uri = this.treeItemData.uri;
191 treeClickEvent.uriType = this.treeItemData.type;
192 var divEl = document.createElement("div");
193 this.element.appendChild(divEl);
194 treeClickEvent.subTreeContainer = divEl;
195 this.element.dispatchEvent(treeClickEvent);
196
197 el.innerHTML = "&#9660;";
198 }
199 }
200 },
201
202
174 /** 203 /**
175 * Event Listeners 204 * Event Listeners
176 */ 205 */