Index: chrome/browser/resources/print_preview/margins_ui_pair.js |
diff --git a/chrome/browser/resources/print_preview/margins_ui_pair.js b/chrome/browser/resources/print_preview/margins_ui_pair.js |
deleted file mode 100644 |
index e35e9f242ac9b9ab28f3eae843754a2896f42ead..0000000000000000000000000000000000000000 |
--- a/chrome/browser/resources/print_preview/margins_ui_pair.js |
+++ /dev/null |
@@ -1,296 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-cr.define('print_preview', function() { |
- 'use strict'; |
- |
- /** |
- * @constructor |
- * This class represents a margin line and a textbox corresponding to that |
- * margin. |
- */ |
- function MarginsUIPair(groupName) { |
- var marginsUIPair = document.createElement('div'); |
- marginsUIPair.__proto__ = MarginsUIPair.prototype; |
- marginsUIPair.className = MarginsUIPair.CSS_CLASS; |
- // @type {string} Specifies which margin this line refers to. |
- marginsUIPair.marginGroup = groupName; |
- marginsUIPair.classList.add(groupName); |
- |
- // @type {print_preview.Rect} A rectangle describing the dimensions of |
- // the draggable area. |
- marginsUIPair.rectangle = null; |
- // @type {print_preview.Rect} A rectangle describing the four margins. |
- marginsUIPair.marginsRectangle = null; |
- // @type {HTMLDivElement} The line representing the margin. |
- marginsUIPair.line_ = document.createElement('div'); |
- marginsUIPair.line_.className = 'margin-line'; |
- // @type {print_preview.MarginTextbox} The textbox corresponding to this |
- // margin. |
- marginsUIPair.box_ = new print_preview.MarginTextbox(groupName); |
- // @type {{x: number, y: number}} The point where mousedown occured within |
- // the draggable area with respect the top-left corner of |this|. |
- marginsUIPair.mousePointerOffset = null; |
- // @type {{x: number, y:number}} The position of the origin before any |
- // dragging in progress occured. |
- marginsUIPair.originBeforeDragging = null; |
- |
- marginsUIPair.appendChild(marginsUIPair.line_); |
- marginsUIPair.appendChild(marginsUIPair.box_); |
- |
- marginsUIPair.addEventListeners_(); |
- return marginsUIPair; |
- } |
- |
- MarginsUIPair.CSS_CLASS = 'margins-ui-pair'; |
- // Width of the clickable region around each margin line in screen pixels. |
- MarginsUIPair.CLICKABLE_REGION = 20; |
- |
- MarginsUIPair.prototype = { |
- __proto__: HTMLDivElement.prototype, |
- |
- /** |
- * Updates the state. |
- */ |
- update: function(marginsRectangle, value, valueLimit, keepDisplayedValue, |
- valueLimitInPercent) { |
- this.marginsRectangle = marginsRectangle; |
- this.valueLimitInPercent = valueLimitInPercent; |
- this.rectangle = this.getCoordinates_(this.marginsRectangle); |
- this.box_.update(value, valueLimit, keepDisplayedValue); |
- }, |
- |
- /** |
- * Draws |this| based on the state. |
- */ |
- draw: function() { |
- this.drawDraggableArea_(); |
- this.box_.draw(); |
- }, |
- |
- /** |
- * Draws the area that can be clicked in order to start dragging. |
- * @private |
- */ |
- drawDraggableArea_: function() { |
- var width = previewArea.pdfPlugin_.offsetWidth; |
- var height = previewArea.pdfPlugin_.offsetHeight; |
- |
- this.style.left = Math.round(this.rectangle.x * width) + 'px'; |
- this.style.top = Math.round(this.rectangle.y * height) + 'px'; |
- this.style.width = Math.round(this.rectangle.width * width) + 'px'; |
- this.style.height = Math.round(this.rectangle.height * height) + 'px'; |
- }, |
- |
- /** |
- * Calculates the coordinates and size of |this|. |
- * @param {print_preview.Rect} marginsRectangle A rectangle describing the |
- * selected margins values in percentages. |
- * @private |
- */ |
- getCoordinates_: function(marginsRectangle) { |
- var pageLocation = previewArea.pageLocationNormalized; |
- var totalWidth = previewArea.pdfPlugin_.offsetWidth; |
- var totalHeight = previewArea.pdfPlugin_.offsetHeight; |
- var offsetY = (MarginsUIPair.CLICKABLE_REGION / 2) / totalHeight; |
- var offsetX = (MarginsUIPair.CLICKABLE_REGION / 2) / totalWidth; |
- |
- if (this.isTop_()) { |
- var lineCoordinates = new print_preview.Rect( |
- pageLocation.x, |
- marginsRectangle.y - offsetY, |
- pageLocation.width, |
- MarginsUIPair.CLICKABLE_REGION / totalHeight); |
- } else if (this.isBottom_()) { |
- var lineCoordinates = new print_preview.Rect( |
- pageLocation.x, |
- marginsRectangle.bottom - offsetY, |
- pageLocation.width, |
- MarginsUIPair.CLICKABLE_REGION / totalHeight); |
- } else if (this.isRight_()) { |
- var lineCoordinates = new print_preview.Rect( |
- marginsRectangle.right - offsetX, |
- pageLocation.y, |
- MarginsUIPair.CLICKABLE_REGION / totalWidth, |
- pageLocation.height); |
- } else if (this.isLeft_()) { |
- var lineCoordinates = new print_preview.Rect( |
- marginsRectangle.x - offsetX, |
- pageLocation.y, |
- MarginsUIPair.CLICKABLE_REGION / totalWidth, |
- pageLocation.height); |
- } |
- return lineCoordinates; |
- }, |
- |
- /** |
- * @return {boolean} True if |this| refers to the top margin. |
- * @private |
- */ |
- isTop_: function() { |
- return this.marginGroup == print_preview.MarginSettings.TOP_GROUP; |
- }, |
- |
- /** |
- * @return {boolean} True if |this| refers to the bottom margin. |
- * @private |
- */ |
- isBottom_: function() { |
- return this.marginGroup == print_preview.MarginSettings.BOTTOM_GROUP; |
- }, |
- |
- /** |
- * @return {boolean} True if |this| refers to the left margin. |
- * @private |
- */ |
- isLeft_: function() { |
- return this.marginGroup == print_preview.MarginSettings.LEFT_GROUP; |
- }, |
- |
- /** |
- * @return {boolean} True if |this| refers to the bottom margin. |
- * @private |
- */ |
- isRight_: function() { |
- return this.marginGroup == print_preview.MarginSettings.RIGHT_GROUP; |
- }, |
- |
- /** |
- * Adds event listeners for events related to dragging. |
- */ |
- addEventListeners_: function() { |
- this.onmousedown = this.onMouseDown_.bind(this); |
- }, |
- |
- /** |
- * Executes whenever a mousedown event occurs on |this| or its child nodes. |
- * @param {MouseEvent} e The event that occured. |
- */ |
- onMouseDown_: function(e) { |
- if (e.button != 0) |
- return; |
- if (e.target != this) |
- return; |
- var point = print_preview.MarginsUI.convert({x: e.x, y: e.y}); |
- this.originBeforeDragging = { x: this.offsetLeft, y: this.offsetTop }; |
- this.mousePointerOffset = |
- { x: point.x - this.offsetLeft, y: point.y - this.offsetTop }; |
- cr.dispatchSimpleEvent(this, customEvents.MARGIN_LINE_MOUSE_DOWN); |
- }, |
- |
- /** |
- * Executes whenever a mouseup event occurs while |this| is dragged. |
- */ |
- onMouseUp: function() { |
- this.box_.onTextValueMayHaveChanged(); |
- }, |
- |
- /** |
- * Moves |this| including all its children to |point|. |
- * @param {{x: number, y: number}} point The point where |this| should be |
- * moved. |
- */ |
- moveTo: function(point) { |
- if (this.isTop_() || this.isBottom_()) |
- this.style.top = point.y - this.mousePointerOffset.y + 'px'; |
- else |
- this.style.left = point.x - this.mousePointerOffset.x + 'px'; |
- }, |
- |
- /** |
- * @param {{x: number, y: number}} rhs The point to compare with. |
- * @return {number} The horizontal or vertical displacement in pixels |
- * between |this.originBeforeDragging| and |rhs|. Note: Bottom margin |
- * grows upwards, right margin grows when going to the left. |
- */ |
- getDragDisplacementFrom: function(rhs) { |
- var dragDisplacement = 0; |
- if (this.isTop_() || this.isBottom_()) { |
- dragDisplacement = (rhs.y - this.originBeforeDragging.y - |
- this.mousePointerOffset.y) / previewArea.height; |
- } else { |
- dragDisplacement = (rhs.x - this.originBeforeDragging.x - |
- this.mousePointerOffset.x) / previewArea.width; |
- } |
- |
- if (this.isBottom_() || this.isRight_()) |
- dragDisplacement *= -1; |
- return dragDisplacement; |
- }, |
- |
- /** |
- * Updates |this| while dragging is in progress. Takes care of rejecting |
- * invalid margin values. |
- * @param {number} dragDeltaInPoints The difference in points between the |
- * currently applied margin and the margin indicated by |
- * |destinationPoint|. |
- * @param {{x: number, y: number}} destinationPoint The point where the |
- * margin line should be drawn if |dragDeltaInPoints| is applied. |
- */ |
- updateWhileDragging: function(dragDeltaInPoints, destinationPoint) { |
- this.box_.updateWhileDragging(dragDeltaInPoints); |
- var validity = this.box_.validateDelta(dragDeltaInPoints); |
- if (validity == print_preview.marginValidationStates.WITHIN_RANGE) |
- this.moveTo(destinationPoint); |
- else if (validity == print_preview.marginValidationStates.TOO_SMALL) |
- this.snapToMinValue_(); |
- else if (validity == print_preview.marginValidationStates.TOO_BIG) |
- this.snapToMaxValue_(); |
- }, |
- |
- /** |
- * Snaps |this| to the minimum allowed margin value (0). Happens whenever |
- * the user drags the margin line to a smaller value than the minimum |
- * allowed. |
- * @private |
- */ |
- snapToMinValue_: function() { |
- var pageInformation = previewArea.pageLocationNormalized; |
- var newMarginsRectangle = this.marginsRectangle.clone(); |
- if (this.isTop_()) { |
- newMarginsRectangle.y = pageInformation.y; |
- } else if (this.isLeft_()) { |
- newMarginsRectangle.x = pageInformation.x; |
- } else if (this.isRight_()) { |
- newMarginsRectangle.x = pageInformation.x; |
- newMarginsRectangle.width = pageInformation.width; |
- } else if (this.isBottom_()) { |
- newMarginsRectangle.y = pageInformation.y; |
- newMarginsRectangle.height = pageInformation.height; |
- } |
- |
- this.rectangle = this.getCoordinates_(newMarginsRectangle); |
- this.drawDraggableArea_(); |
- }, |
- |
- /** |
- * Snaps |this| to the maximum allowed margin value. Happens whenever |
- * the user drags the margin line to a larger value than the maximum |
- * allowed. |
- * @private |
- */ |
- snapToMaxValue_: function() { |
- var newMarginsRectangle = this.marginsRectangle.clone(); |
- |
- if (this.isTop_()) { |
- newMarginsRectangle.y = this.valueLimitInPercent; |
- } else if (this.isLeft_()) { |
- newMarginsRectangle.x = this.valueLimitInPercent; |
- } else if (this.isRight_()) { |
- newMarginsRectangle.x = 0; |
- newMarginsRectangle.width = this.valueLimitInPercent; |
- } else if (this.isBottom_()) { |
- newMarginsRectangle.y = 0; |
- newMarginsRectangle.height = this.valueLimitInPercent; |
- } |
- |
- this.rectangle = this.getCoordinates_(newMarginsRectangle); |
- this.drawDraggableArea_(); |
- } |
- }; |
- |
- return { |
- MarginsUIPair: MarginsUIPair |
- }; |
-}); |