PHP Classes

File: WITheme/WICMS/admin/js/plugins/textEditor/tinymce_4.2.6_dev/tinymce/js/tinymce/classes/ui/Slider.js

Recommend this page to a friend!
  Classes of Jules Warner   WICMS   WITheme/WICMS/admin/js/plugins/textEditor/tinymce_4.2.6_dev/tinymce/js/tinymce/classes/ui/Slider.js   Download  
File: WITheme/WICMS/admin/js/plugins/textEditor/tinymce_4.2.6_dev/tinymce/js/tinymce/classes/ui/Slider.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: WICMS
Database driven content management system with PDO
Author: By
Last change:
Date: 7 years ago
Size: 3,964 bytes
 

Contents

Class file image Download
/** * Slider.js * * Released under LGPL License. * Copyright (c) 1999-2015 Ephox Corp. All rights reserved * * License: http://www.tinymce.com/license * Contributing: http://www.tinymce.com/contributing */ /** * Slider control. * * @-x-less Slider.less * @class tinymce.ui.Slider * @extends tinymce.ui.Widget */ define("tinymce/ui/Slider", [ "tinymce/ui/Widget", "tinymce/ui/DragHelper", "tinymce/ui/DomUtils" ], function(Widget, DragHelper, DomUtils) { "use strict"; function constrain(value, minVal, maxVal) { if (value < minVal) { value = minVal; } if (value > maxVal) { value = maxVal; } return value; } function updateSliderHandle(ctrl, value) { var maxHandlePos, shortSizeName, sizeName, stylePosName, styleValue; if (ctrl.settings.orientation == "v") { stylePosName = "top"; sizeName = "height"; shortSizeName = "h"; } else { stylePosName = "left"; sizeName = "width"; shortSizeName = "w"; } maxHandlePos = (ctrl.layoutRect()[shortSizeName] || 100) - DomUtils.getSize(ctrl.getEl('handle'))[sizeName]; styleValue = (maxHandlePos * ((value - ctrl._minValue) / (ctrl._maxValue - ctrl._minValue))) + 'px'; ctrl.getEl('handle').style[stylePosName] = styleValue; ctrl.getEl('handle').style.height = ctrl.layoutRect().h + 'px'; } return Widget.extend({ init: function(settings) { var self = this; if (!settings.previewFilter) { settings.previewFilter = function(value) { return Math.round(value * 100) / 100.0; }; } self._super(settings); self.classes.add('slider'); if (settings.orientation == "v") { self.classes.add('vertical'); } self._minValue = settings.minValue || 0; self._maxValue = settings.maxValue || 100; self._initValue = self.state.get('value'); }, renderHtml: function() { var self = this, id = self._id, prefix = self.classPrefix; return ( '<div id="' + id + '" class="' + self.classes + '">' + '<div id="' + id + '-handle" class="' + prefix + 'slider-handle"></div>' + '</div>' ); }, reset: function() { this.value(this._initValue).repaint(); }, postRender: function() { var self = this, startPos, startHandlePos, handlePos = 0, value, minValue, maxValue, maxHandlePos; var screenCordName, stylePosName, sizeName, shortSizeName; minValue = self._minValue; maxValue = self._maxValue; value = self.value(); if (self.settings.orientation == "v") { screenCordName = "screenY"; stylePosName = "top"; sizeName = "height"; shortSizeName = "h"; } else { screenCordName = "screenX"; stylePosName = "left"; sizeName = "width"; shortSizeName = "w"; } self._super(); self._dragHelper = new DragHelper(self._id, { handle: self._id + "-handle", start: function(e) { startPos = e[screenCordName]; startHandlePos = parseInt(self.getEl('handle').style[stylePosName], 10); maxHandlePos = (self.layoutRect()[shortSizeName] || 100) - DomUtils.getSize(self.getEl('handle'))[sizeName]; self.fire('dragstart', {value: value}); }, drag: function(e) { var delta = e[screenCordName] - startPos, handleEl = self.getEl('handle'); handlePos = constrain(startHandlePos + delta, 0, maxHandlePos); handleEl.style[stylePosName] = handlePos + 'px'; value = minValue + (handlePos / maxHandlePos) * (maxValue - minValue); self.value(value); self.tooltip().text('' + self.settings.previewFilter(value)).show().moveRel(handleEl, 'bc tc'); self.fire('drag', {value: value}); }, stop: function() { self.tooltip().hide(); self.fire('dragend', {value: value}); } }); }, repaint: function() { this._super(); updateSliderHandle(this, this.value()); }, bindStates: function() { var self = this; self.state.on('change:value', function(e) { updateSliderHandle(self, e.value); }); return self._super(); } }); });