OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 cr.define('print_preview', function() { | 5 cr.define('print_preview', function() { |
6 'strict'; | 6 'strict'; |
7 | 7 |
8 function MarginsUI() { | 8 function MarginsUI() { |
9 var marginsUI = document.createElement('div'); | 9 var marginsUI = document.createElement('div'); |
10 marginsUI.__proto__ = MarginsUI.prototype; | 10 marginsUI.__proto__ = MarginsUI.prototype; |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 MarginsUI.convert = function(point) { | 51 MarginsUI.convert = function(point) { |
52 var mainview = $('mainview'); | 52 var mainview = $('mainview'); |
53 return { x: point.x - mainview.offsetLeft, | 53 return { x: point.x - mainview.offsetLeft, |
54 y: point.y - mainview.offsetTop }; | 54 y: point.y - mainview.offsetTop }; |
55 } | 55 } |
56 | 56 |
57 MarginsUI.prototype = { | 57 MarginsUI.prototype = { |
58 __proto__: HTMLDivElement.prototype, | 58 __proto__: HTMLDivElement.prototype, |
59 | 59 |
60 /** | 60 /** |
61 * Adds an observer for |MarginsMayHaveChanged| event. | 61 * Adds an observer for |customEvents.MARGINS_MAY_HAVE_CHANGED| event. |
62 * @param {function} func A callback function to be called when | 62 * @param {function} func A callback function to be called when |
63 * |MarginsMayHaveChanged| event occurs. | 63 * |customEvents.MARGINS_MAY_HAVE_CHANGED| event occurs. |
64 */ | 64 */ |
65 addObserver: function(func) { | 65 addObserver: function(func) { |
66 var uiPairs = this.pairsAsList; | 66 var uiPairs = this.pairsAsList; |
67 for (var i = 0; i < uiPairs.length; i++) | 67 for (var i = 0; i < uiPairs.length; i++) { |
68 uiPairs[i].box_.addEventListener('MarginsMayHaveChanged', func); | 68 uiPairs[i].box_.addEventListener( |
| 69 customEvents.MARGINS_MAY_HAVE_CHANGED, func); |
| 70 } |
69 }, | 71 }, |
70 | 72 |
71 /** | 73 /** |
72 * @return {array} An array including all |MarginUIPair| objects. | 74 * @return {array} An array including all |MarginUIPair| objects. |
73 */ | 75 */ |
74 get pairsAsList() { | 76 get pairsAsList() { |
75 return [this.topPair_, this.leftPair_, this.rightPair_, this.bottomPair_]; | 77 return [this.topPair_, this.leftPair_, this.rightPair_, this.bottomPair_]; |
76 }, | 78 }, |
77 | 79 |
78 /** | 80 /** |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 this.style.clip = "rect(0, " + right + "px, " + bottom + "px, 0)"; | 132 this.style.clip = "rect(0, " + right + "px, " + bottom + "px, 0)"; |
131 }, | 133 }, |
132 | 134 |
133 /** | 135 /** |
134 * Adds event listeners for various events. | 136 * Adds event listeners for various events. |
135 * @private | 137 * @private |
136 */ | 138 */ |
137 addEventListeners_: function() { | 139 addEventListeners_: function() { |
138 var uiPairs = this.pairsAsList; | 140 var uiPairs = this.pairsAsList; |
139 for (var i = 0; i < uiPairs.length; i++) { | 141 for (var i = 0; i < uiPairs.length; i++) { |
140 uiPairs[i].addEventListener('MarginsLineMouseDown', | 142 uiPairs[i].addEventListener(customEvents.MARGIN_LINE_MOUSE_DOWN, |
141 this.onMarginLineMouseDown.bind(this)); | 143 this.onMarginLineMouseDown.bind(this)); |
142 } | 144 } |
143 // After snapping to min/max the MarginUIPair might not receive the | 145 // After snapping to min/max the MarginUIPair might not receive the |
144 // mouseup event since it is not under the mouse pointer, so it is handled | 146 // mouseup event since it is not under the mouse pointer, so it is handled |
145 // here. | 147 // here. |
146 window.document.addEventListener('mouseup', | 148 window.document.addEventListener('mouseup', |
147 this.onMarginLineMouseUp.bind(this)); | 149 this.onMarginLineMouseUp.bind(this)); |
148 }, | 150 }, |
149 | 151 |
150 /** | 152 /** |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 uiPair.classList.add('dragging'); | 186 uiPair.classList.add('dragging'); |
185 }, | 187 }, |
186 | 188 |
187 /** | 189 /** |
188 * Executes when a mousemove event occurs. | 190 * Executes when a mousemove event occurs. |
189 * @param {MouseEvent} e The event that triggered this listener. | 191 * @param {MouseEvent} e The event that triggered this listener. |
190 */ | 192 */ |
191 onMouseMove_: function(e) { | 193 onMouseMove_: function(e) { |
192 var point = MarginsUI.convert({ x: e.x, y: e.y }); | 194 var point = MarginsUI.convert({ x: e.x, y: e.y }); |
193 | 195 |
194 var dragEvent = new cr.Event('DragEvent'); | 196 var dragEvent = new cr.Event(customEvents.MARGIN_LINE_DRAG); |
195 dragEvent.dragDelta = | 197 dragEvent.dragDelta = |
196 this.lastClickedMarginsUIPair.getDragDisplacementFrom(point); | 198 this.lastClickedMarginsUIPair.getDragDisplacementFrom(point); |
197 dragEvent.destinationPoint = point; | 199 dragEvent.destinationPoint = point; |
198 this.dispatchEvent(dragEvent); | 200 this.dispatchEvent(dragEvent); |
199 }, | 201 }, |
200 }; | 202 }; |
201 | 203 |
202 return { | 204 return { |
203 MarginsUI: MarginsUI | 205 MarginsUI: MarginsUI |
204 }; | 206 }; |
205 }); | 207 }); |
OLD | NEW |