src/pyams_skin/resources/js/ext/tinymce/dev/classes/ui/Movable.js
changeset 566 a1707c607eec
parent 565 318533413200
child 567 bca1726b1d85
--- a/src/pyams_skin/resources/js/ext/tinymce/dev/classes/ui/Movable.js	Sun Jul 19 02:02:20 2020 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,200 +0,0 @@
-/**
- * Movable.js
- *
- * Copyright, Moxiecode Systems AB
- * Released under LGPL License.
- *
- * License: http://www.tinymce.com/license
- * Contributing: http://www.tinymce.com/contributing
- */
-
-/**
- * Movable mixin. Makes controls movable absolute and relative to other elements.
- *
- * @mixin tinymce.ui.Movable
- */
-define("tinymce/ui/Movable", [
-	"tinymce/ui/DomUtils"
-], function(DomUtils) {
-	"use strict";
-
-	function calculateRelativePosition(ctrl, targetElm, rel) {
-		var ctrlElm, pos, x, y, selfW, selfH, targetW, targetH, viewport, size;
-
-		viewport = DomUtils.getViewPort();
-
-		// Get pos of target
-		pos = DomUtils.getPos(targetElm);
-		x = pos.x;
-		y = pos.y;
-
-		if (ctrl._fixed && DomUtils.getRuntimeStyle(document.body, 'position') == 'static') {
-			x -= viewport.x;
-			y -= viewport.y;
-		}
-
-		// Get size of self
-		ctrlElm = ctrl.getEl();
-		size = DomUtils.getSize(ctrlElm);
-		selfW = size.width;
-		selfH = size.height;
-
-		// Get size of target
-		size = DomUtils.getSize(targetElm);
-		targetW = size.width;
-		targetH = size.height;
-
-		// Parse align string
-		rel = (rel || '').split('');
-
-		// Target corners
-		if (rel[0] === 'b') {
-			y += targetH;
-		}
-
-		if (rel[1] === 'r') {
-			x += targetW;
-		}
-
-		if (rel[0] === 'c') {
-			y += Math.round(targetH / 2);
-		}
-
-		if (rel[1] === 'c') {
-			x += Math.round(targetW / 2);
-		}
-
-		// Self corners
-		if (rel[3] === 'b') {
-			y -= selfH;
-		}
-
-		if (rel[4] === 'r') {
-			x -= selfW;
-		}
-
-		if (rel[3] === 'c') {
-			y -= Math.round(selfH / 2);
-		}
-
-		if (rel[4] === 'c') {
-			x -= Math.round(selfW / 2);
-		}
-
-		return {
-			x: x,
-			y: y,
-			w: selfW,
-			h: selfH
-		};
-	}
-
-	return {
-		/**
-		 * Tests various positions to get the most suitable one.
-		 *
-		 * @method testMoveRel
-		 * @param {DOMElement} elm Element to position against.
-		 * @param {Array} rels Array with relative positions.
-		 * @return {String} Best suitable relative position.
-		 */
-		testMoveRel: function(elm, rels) {
-			var viewPortRect = DomUtils.getViewPort();
-
-			for (var i = 0; i < rels.length; i++) {
-				var pos = calculateRelativePosition(this, elm, rels[i]);
-
-				if (this._fixed) {
-					if (pos.x > 0 && pos.x + pos.w < viewPortRect.w && pos.y > 0 && pos.y + pos.h < viewPortRect.h) {
-						return rels[i];
-					}
-				} else {
-					if (pos.x > viewPortRect.x && pos.x + pos.w < viewPortRect.w + viewPortRect.x &&
-						pos.y > viewPortRect.y && pos.y + pos.h < viewPortRect.h + viewPortRect.y) {
-						return rels[i];
-					}
-				}
-			}
-
-			return rels[0];
-		},
-
-		/**
-		 * Move relative to the specified element.
-		 *
-		 * @method moveRel
-		 * @param {Element} elm Element to move relative to.
-		 * @param {String} rel Relative mode. For example: br-tl.
-		 * @return {tinymce.ui.Control} Current control instance.
-		 */
-		moveRel: function(elm, rel) {
-			if (typeof rel != 'string') {
-				rel = this.testMoveRel(elm, rel);
-			}
-
-			var pos = calculateRelativePosition(this, elm, rel);
-			return this.moveTo(pos.x, pos.y);
-		},
-
-		/**
-		 * Move by a relative x, y values.
-		 *
-		 * @method moveBy
-		 * @param {Number} dx Relative x position.
-		 * @param {Number} dy Relative y position.
-		 * @return {tinymce.ui.Control} Current control instance.
-		 */
-		moveBy: function(dx, dy) {
-			var self = this, rect = self.layoutRect();
-
-			self.moveTo(rect.x + dx, rect.y + dy);
-
-			return self;
-		},
-
-		/**
-		 * Move to absolute position.
-		 *
-		 * @method moveTo
-		 * @param {Number} x Absolute x position.
-		 * @param {Number} y Absolute y position.
-		 * @return {tinymce.ui.Control} Current control instance.
-		 */
-		moveTo: function(x, y) {
-			var self = this;
-
-			// TODO: Move this to some global class
-			function contrain(value, max, size) {
-				if (value < 0) {
-					return 0;
-				}
-
-				if (value + size > max) {
-					value = max - size;
-					return value < 0 ? 0 : value;
-				}
-
-				return value;
-			}
-
-			if (self.settings.constrainToViewport) {
-				var viewPortRect = DomUtils.getViewPort(window);
-				var layoutRect = self.layoutRect();
-
-				x = contrain(x, viewPortRect.w + viewPortRect.x, layoutRect.w);
-				y = contrain(y, viewPortRect.h + viewPortRect.y, layoutRect.h);
-			}
-
-			if (self._rendered) {
-				self.layoutRect({x: x, y: y}).repaint();
-			} else {
-				self.settings.x = x;
-				self.settings.y = y;
-			}
-
-			self.fire('move', {x: x, y: y});
-
-			return self;
-		}
-	};
-});
\ No newline at end of file