[mobile] Remove old common.
This commit is contained in:
parent
bfe6d0e0a5
commit
cb49944b8c
|
@ -1,88 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.component.PlanarSpinner', {
|
||||
extend: 'Ext.field.Spinner',
|
||||
xtype: 'planarspinnerfield',
|
||||
|
||||
config: {
|
||||
|
||||
},
|
||||
|
||||
constructor: function() {
|
||||
var me = this;
|
||||
me.callParent(arguments);
|
||||
me.addCls('planar-spinner');
|
||||
},
|
||||
|
||||
updateComponent: function(newComponent) {
|
||||
this.callParent(arguments);
|
||||
|
||||
var innerElement = this.innerElement,
|
||||
cls = this.getCls();
|
||||
|
||||
if (newComponent) {
|
||||
this.spinDownButton = Ext.widget('button', {
|
||||
cls : 'x-button x-button-base ' + cls + '-button ' + cls + '-button-down',
|
||||
iconCls : 'spinner-down'
|
||||
});
|
||||
|
||||
this.spinUpButton = Ext.widget('button', {
|
||||
cls : 'x-button x-button-base ' + cls + '-button ' + cls + '-button-up',
|
||||
iconCls : 'spinner-up'
|
||||
});
|
||||
|
||||
this.downRepeater = this.createRepeater(this.spinDownButton.element, this.onSpinDown);
|
||||
this.upRepeater = this.createRepeater(this.spinUpButton.element, this.onSpinUp);
|
||||
}
|
||||
},
|
||||
|
||||
updateGroupButtons: function(newGroupButtons, oldGroupButtons) {
|
||||
var me = this,
|
||||
innerElement = me.innerElement,
|
||||
cls = me.getBaseCls() + '-grouped-buttons';
|
||||
|
||||
me.getComponent();
|
||||
|
||||
if (newGroupButtons != oldGroupButtons) {
|
||||
if (newGroupButtons) {
|
||||
this.addCls(cls);
|
||||
innerElement.insertFirst(me.spinDownButton.element);
|
||||
innerElement.appendChild(me.spinUpButton.element);
|
||||
} else {
|
||||
this.removeCls(cls);
|
||||
innerElement.insertFirst(me.spinDownButton.element);
|
||||
innerElement.appendChild(me.spinUpButton.element);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
|
@ -1,96 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.component.RepeatableButton', {
|
||||
extend: 'Ext.Button',
|
||||
xtype: 'repeatablebutton',
|
||||
requires: ['Ext.util.TapRepeater'],
|
||||
|
||||
initialize: function() {
|
||||
this.callParent(arguments);
|
||||
|
||||
this.repeater = this.createRepeater(this.element, this.onRepeatTap);
|
||||
},
|
||||
|
||||
// @private
|
||||
destroy: function() {
|
||||
var me = this;
|
||||
Ext.destroy(me.repeater);
|
||||
|
||||
me.callParent(arguments);
|
||||
},
|
||||
|
||||
// @private
|
||||
createRepeater: function(el, fn) {
|
||||
var me = this,
|
||||
repeater = Ext.create('Ext.util.TapRepeater', {
|
||||
el : el,
|
||||
accelerate : true,
|
||||
delay : 500
|
||||
});
|
||||
|
||||
repeater.on({
|
||||
tap : fn,
|
||||
touchstart : 'onTouchStart',
|
||||
touchend : 'onTouchEnd',
|
||||
scope : me
|
||||
});
|
||||
|
||||
return repeater;
|
||||
},
|
||||
|
||||
// @private
|
||||
onRepeatTap: function(e) {
|
||||
this.fireAction('tap', [this, e, true], 'doTap');
|
||||
},
|
||||
|
||||
// @private
|
||||
doTap: function(me, e, handle) {
|
||||
if (Ext.isBoolean(handle) && handle) {
|
||||
this.callParent(arguments);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
|
||||
// @private
|
||||
onTouchStart: function(repeater) {
|
||||
if (!this.getDisabled()) {
|
||||
this.element.addCls(Ext.baseCSSPrefix + 'button-pressing');
|
||||
}
|
||||
},
|
||||
|
||||
// @private
|
||||
onTouchEnd: function(repeater) {
|
||||
this.element.removeCls(Ext.baseCSSPrefix + 'button-pressing');
|
||||
}
|
||||
});
|
|
@ -1,67 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.component.SettingsList', {
|
||||
extend: 'Ext.List',
|
||||
alias: 'widget.settingslist',
|
||||
|
||||
config: {
|
||||
disableSelection: true,
|
||||
pinHeaders : false,
|
||||
grouped : true,
|
||||
cls : 'settings',
|
||||
ui : 'round',
|
||||
itemTpl : Ext.create('Ext.XTemplate',
|
||||
'<tpl for=".">',
|
||||
'<tpl if="this.hasIcon(icon)">',
|
||||
'<span class="list-icon {icon}"></span>',
|
||||
'</tpl>',
|
||||
'<tpl if="this.hasIcon(icon)">',
|
||||
'<strong class="icon-offset">{setting}</strong>',
|
||||
'<tpl else>',
|
||||
'<strong>{setting}</strong>',
|
||||
'</tpl>',
|
||||
'<tpl if="this.hasChild(child)">',
|
||||
'<span class="list-icon disclosure"></span>',
|
||||
'</tpl>',
|
||||
'</tpl>',
|
||||
{
|
||||
hasIcon: function(icon){
|
||||
return !Ext.isEmpty(icon);
|
||||
},
|
||||
hasChild: function(child){
|
||||
return !Ext.isEmpty(child);
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
});
|
|
@ -1,211 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
|
||||
Ext.define('Common.component.slider.Vertical', {
|
||||
extend: 'Ext.slider.Slider',
|
||||
xtype: 'verticalslider',
|
||||
|
||||
config: {
|
||||
baseCls: 'x-slider-vertical',
|
||||
|
||||
// cls: 'vertical',
|
||||
|
||||
thumbConfig: {
|
||||
draggable: {
|
||||
direction: 'vertical'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
refreshOffsetValueRatio: function() {
|
||||
var valueRange = this.getMaxValue() - this.getMinValue(),
|
||||
trackHeight = this.elementHeight - this.thumbHeight;
|
||||
|
||||
this.offsetValueRatio = trackHeight / valueRange;
|
||||
},
|
||||
|
||||
refreshElementHeight: function() {
|
||||
this.elementHeight = this.element.dom.offsetHeight;
|
||||
var thumb = this.getThumb(0);
|
||||
if (thumb) {
|
||||
this.thumbHeight = thumb.getElementWidth();
|
||||
}
|
||||
},
|
||||
|
||||
refresh: function() {
|
||||
this.refreshElementHeight();
|
||||
this.refreshValue();
|
||||
},
|
||||
|
||||
onThumbDragStart: function(thumb, e) {
|
||||
if (e.absDeltaY <= e.absDeltaX) {
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
e.stopPropagation();
|
||||
}
|
||||
|
||||
if (this.getAllowThumbsOverlapping()) {
|
||||
this.setActiveThumb(thumb);
|
||||
}
|
||||
|
||||
this.dragStartValue = this.getValue()[this.getThumbIndex(thumb)];
|
||||
this.fireEvent('dragstart', this, thumb, this.dragStartValue, e);
|
||||
},
|
||||
|
||||
onThumbDrag: function(thumb, e, offsetX, offsetY) {
|
||||
var index = this.getThumbIndex(thumb),
|
||||
offsetValueRatio = this.offsetValueRatio,
|
||||
constrainedValue = this.constrainValue(offsetY / offsetValueRatio);
|
||||
|
||||
e.stopPropagation();
|
||||
|
||||
this.setIndexValue(index, constrainedValue);
|
||||
|
||||
this.fireEvent('drag', this, thumb, this.getValue(), e);
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
setIndexValue: function(index, value, animation) {
|
||||
var thumb = this.getThumb(index),
|
||||
values = this.getValue(),
|
||||
offsetValueRatio = this.offsetValueRatio,
|
||||
draggable = thumb.getDraggable();
|
||||
|
||||
draggable.setOffset(null, value * offsetValueRatio, animation);
|
||||
|
||||
values[index] = this.constrainValue(draggable.getOffset().y / offsetValueRatio);
|
||||
},
|
||||
|
||||
updateValue: function(newValue, oldValue) {
|
||||
var thumbs = this.getThumbs(),
|
||||
ln = newValue.length,
|
||||
i;
|
||||
|
||||
this.setThumbsCount(ln);
|
||||
|
||||
for (i = 0; i < ln; i++) {
|
||||
thumbs[i].getDraggable().setExtraConstraint(null)
|
||||
.setOffset(0, newValue[i] * this.offsetValueRatio);
|
||||
}
|
||||
|
||||
for (i = 0; i < ln; i++) {
|
||||
this.refreshThumbConstraints(thumbs[i]);
|
||||
}
|
||||
},
|
||||
|
||||
refreshThumbConstraints: function(thumb) {
|
||||
var allowThumbsOverlapping = this.getAllowThumbsOverlapping(),
|
||||
offsetY = thumb.getDraggable().getOffset().y,
|
||||
thumbs = this.getThumbs(),
|
||||
index = this.getThumbIndex(thumb),
|
||||
previousThumb = thumbs[index - 1],
|
||||
nextThumb = thumbs[index + 1],
|
||||
thumbHeight = this.thumbHeight;
|
||||
|
||||
if (previousThumb) {
|
||||
previousThumb.getDraggable().addExtraConstraint({
|
||||
max: {
|
||||
y: offsetY - ((allowThumbsOverlapping) ? 0 : thumbHeight)
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (nextThumb) {
|
||||
nextThumb.getDraggable().addExtraConstraint({
|
||||
min: {
|
||||
y: offsetY + ((allowThumbsOverlapping) ? 0 : thumbHeight)
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
// @private
|
||||
onTap: function(e) {
|
||||
if (this.isDisabled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
var targetElement = Ext.get(e.target);
|
||||
|
||||
if (!targetElement || targetElement.hasCls('x-thumb')) {
|
||||
return;
|
||||
}
|
||||
|
||||
var touchPointY = e.touch.point.y,
|
||||
element = this.element,
|
||||
elementY = element.getY(),
|
||||
offset = touchPointY - elementY - (this.thumbHeight / 2),
|
||||
value = this.constrainValue(offset / this.offsetValueRatio),
|
||||
values = this.getValue(),
|
||||
minDistance = Infinity,
|
||||
ln = values.length,
|
||||
i, absDistance, testValue, closestIndex, oldValue, thumb;
|
||||
|
||||
if (ln === 1) {
|
||||
closestIndex = 0;
|
||||
}
|
||||
else {
|
||||
for (i = 0; i < ln; i++) {
|
||||
testValue = values[i];
|
||||
absDistance = Math.abs(testValue - value);
|
||||
|
||||
if (absDistance < minDistance) {
|
||||
minDistance = absDistance;
|
||||
closestIndex = i;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
oldValue = values[closestIndex];
|
||||
thumb = this.getThumb(closestIndex);
|
||||
|
||||
this.setIndexValue(closestIndex, value, this.getAnimation());
|
||||
this.refreshThumbConstraints(thumb);
|
||||
|
||||
if (oldValue !== value) {
|
||||
this.fireEvent('change', this, thumb, value, oldValue);
|
||||
}
|
||||
}
|
||||
|
||||
}, function() {
|
||||
//<deprecated product=touch since=2.0>
|
||||
/**
|
||||
* @cfg {Boolean} animationDuration
|
||||
* Animation duration in ms.
|
||||
* @removed 2.0.0 Use the duration property on the animation config instead.
|
||||
*/
|
||||
Ext.deprecateProperty(this, 'animationDuration', null, "Ext.slider.Slider.animationDuration has been removed");
|
||||
//</deprecated>
|
||||
});
|
|
@ -1,104 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.controller.PopClip', {
|
||||
extend: 'Ext.app.Controller',
|
||||
|
||||
config: {
|
||||
refs: {
|
||||
popClip : 'popclip',
|
||||
cutButton : '#id-btn-popclip-cut',
|
||||
copyButton : '#id-btn-popclip-copy',
|
||||
pasteButton : '#id-btn-popclip-paste'
|
||||
},
|
||||
|
||||
control: {
|
||||
cutButton : {
|
||||
tap : 'onTapCutButton'
|
||||
},
|
||||
copyButton : {
|
||||
tap : 'onTapCopyButton'
|
||||
},
|
||||
pasteButton : {
|
||||
tap : 'onTapPasteButton'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
init: function() {
|
||||
},
|
||||
|
||||
launch: function() {
|
||||
},
|
||||
|
||||
setApi: function(o) {
|
||||
this.api = o;
|
||||
},
|
||||
|
||||
setMode: function(mode){
|
||||
var cutButton = this.getCutButton(),
|
||||
copyButton = this.getCopyButton(),
|
||||
pasteButton = this.getPasteButton(),
|
||||
popclip = this.getPopClip();
|
||||
|
||||
if (mode === 'view') {
|
||||
cutButton && cutButton.hide();
|
||||
pasteButton && pasteButton.hide();
|
||||
popclip && popclip.hide();
|
||||
} else {
|
||||
cutButton && cutButton.show();
|
||||
pasteButton && pasteButton.show();
|
||||
popclip && popclip.hide();
|
||||
}
|
||||
},
|
||||
|
||||
onTapCutButton: function() {
|
||||
this.api && this.api.Cut();
|
||||
|
||||
var popclip = this.getPopClip();
|
||||
popclip && popclip.hide();
|
||||
},
|
||||
|
||||
onTapCopyButton: function() {
|
||||
this.api && this.api.Copy();
|
||||
|
||||
var popclip = this.getPopClip();
|
||||
popclip && popclip.hide();
|
||||
},
|
||||
|
||||
onTapPasteButton: function() {
|
||||
this.api && this.api.Paste();
|
||||
|
||||
var popclip = this.getPopClip();
|
||||
popclip && popclip.hide();
|
||||
}
|
||||
});
|
|
@ -1,44 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.model.SettingItem', {
|
||||
extend: 'Ext.data.Model',
|
||||
config: {
|
||||
fields: [
|
||||
'id',
|
||||
'setting',
|
||||
'icon',
|
||||
'child',
|
||||
'group'
|
||||
]
|
||||
}
|
||||
});
|
|
@ -1,46 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.store.SettingsList', {
|
||||
extend: 'Ext.data.Store',
|
||||
config: {
|
||||
model: 'Common.model.SettingItem',
|
||||
grouper: {
|
||||
groupFn : function(record) {
|
||||
return record.get('group');
|
||||
},
|
||||
sorterFn : function(){
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
|
@ -1,142 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.view.PopClip', {
|
||||
extend: 'Ext.Container',
|
||||
alias: 'widget.popclip',
|
||||
|
||||
requires: ([
|
||||
'Ext.Panel',
|
||||
'Ext.SegmentedButton'
|
||||
]),
|
||||
|
||||
config: {
|
||||
style : 'position: absolute; z-index: 9090; background-color: transparent; width: 2px; height: 2px;'
|
||||
},
|
||||
|
||||
initialize: function() {
|
||||
var me = this;
|
||||
|
||||
me.popClipCmp = me.add({
|
||||
xtype : 'panel',
|
||||
layout : 'fit',
|
||||
ui : 'settings',
|
||||
style : 'padding: 1px;',
|
||||
hidden : true,
|
||||
items : [
|
||||
{
|
||||
xtype : 'container',
|
||||
items : [
|
||||
{
|
||||
xtype : 'segmentedbutton',
|
||||
style : 'margin: 0',
|
||||
ui : 'base',
|
||||
allowToggle: false,
|
||||
items : [
|
||||
{
|
||||
id : 'id-btn-popclip-cut',
|
||||
ui : 'base',
|
||||
style : 'font-size: 0.7em; border: 0; box-shadow: none;',
|
||||
cls : 'text-offset-12',
|
||||
text : this.cutButtonText
|
||||
},
|
||||
{
|
||||
id : 'id-btn-popclip-copy',
|
||||
ui : 'base',
|
||||
style : 'font-size: 0.7em; border: 0; box-shadow: none;',
|
||||
cls : 'text-offset-12',
|
||||
text : this.copyButtonText
|
||||
},
|
||||
{
|
||||
id : 'id-btn-popclip-paste',
|
||||
ui : 'base',
|
||||
style : 'font-size: 0.7em; border: 0; box-shadow: none;',
|
||||
cls : 'text-offset-12',
|
||||
text : this.pasteButtonText
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
this.callParent(arguments);
|
||||
},
|
||||
|
||||
show: function(animation) {
|
||||
if (Ext.isDefined(this.isAnim))
|
||||
return;
|
||||
|
||||
this.callParent(arguments);
|
||||
|
||||
var popClip = this.popClipCmp;
|
||||
popClip.showBy(this, 'bc-tc?');
|
||||
popClip.hide();
|
||||
|
||||
popClip.show();
|
||||
popClip.alignTo(this, 'bc-tc?');
|
||||
|
||||
this.isAnim = true;
|
||||
|
||||
Ext.Anim.run(popClip, 'pop', {
|
||||
out : false,
|
||||
duration : 250,
|
||||
easing : 'ease-out',
|
||||
autoClear : false
|
||||
});
|
||||
|
||||
popClip.element.on('transitionend', function(){
|
||||
Ext.isDefined(this.isAnim) && delete this.isAnim;
|
||||
}, this, {single: true});
|
||||
},
|
||||
|
||||
hide: function(animation) {
|
||||
var me = this;
|
||||
|
||||
var safeHide = function(arguments) {
|
||||
if (Ext.isDefined(me.isAnim)) {
|
||||
Ext.defer(safeHide, 50, me, arguments);
|
||||
} else {
|
||||
Ext.bind(me.callParent, me, arguments);
|
||||
me.popClipCmp.hide();
|
||||
}
|
||||
};
|
||||
|
||||
safeHide(arguments);
|
||||
},
|
||||
|
||||
cutButtonText : 'Cut',
|
||||
copyButtonText : 'Copy',
|
||||
pasteButtonText : 'Paste'
|
||||
|
||||
});
|
|
@ -1,50 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.define('Common.view.PopoverPanel', {
|
||||
extend: 'Ext.Panel',
|
||||
alias: 'widget.commonpopoverpanel',
|
||||
|
||||
config: {
|
||||
showAnimation : {
|
||||
type : 'fadeIn',
|
||||
duration: 100
|
||||
},
|
||||
hideAnimation : {
|
||||
type : 'fadeOut',
|
||||
duration: 100
|
||||
},
|
||||
modal : {
|
||||
cls : 'transparent'
|
||||
}
|
||||
}
|
||||
});
|
|
@ -1,40 +0,0 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
Ext.Loader.setConfig({
|
||||
enabled: true,
|
||||
disableCaching : false,
|
||||
|
||||
paths: {
|
||||
'Common': '../../common/mobile/lib'
|
||||
}
|
||||
});
|
Binary file not shown.
|
@ -1,16 +0,0 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>
|
||||
This is a custom SVG font generated by IcoMoon.
|
||||
<iconset grid="16"></iconset>
|
||||
</metadata>
|
||||
<defs>
|
||||
<font id="icomoon" horiz-adv-x="512" >
|
||||
<font-face units-per-em="512" ascent="480" descent="-32" />
|
||||
<missing-glyph horiz-adv-x="512" />
|
||||
<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
|
||||
<glyph unicode="!" d="M 236.48-16.76L 175.652,48.016L 357.208,223.24L 175.652,406.38L 236.48,463.236L 476.48,223.24 z" />
|
||||
<glyph unicode=""" d="M 203.884,223.992L 410.68,21.364L 357.32-32L 101.32,223.992L 357.32,480L 409.596,427.74 z" />
|
||||
<glyph unicode=" " horiz-adv-x="256" />
|
||||
</font></defs></svg>
|
Before Width: | Height: | Size: 826 B |
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 40 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Generated by IcoMoon</metadata>
|
||||
<defs>
|
||||
<font id="icomoon" horiz-adv-x="1024">
|
||||
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
||||
<missing-glyph horiz-adv-x="1024" />
|
||||
<glyph unicode=" " d="" horiz-adv-x="512" />
|
||||
<glyph unicode="a" d="M877.714 256v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714zM877.714 548.571v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714zM877.714 841.143v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
|
||||
<glyph unicode="b" d="M731.429 475.429v73.143q0 14.857-10.857 25.714t-25.714 10.857h-286.857l108 108q10.857 10.857 10.857 25.714t-10.857 25.714l-52 52q-10.286 10.286-25.714 10.286t-25.714-10.286l-258.857-258.857q-10.286-10.286-10.286-25.714t10.286-25.714l258.857-258.857q10.286-10.286 25.714-10.286t25.714 10.286l52 52q10.286 10.286 10.286 25.714t-10.286 25.714l-108 108h286.857q14.857 0 25.714 10.857t10.857 25.714zM877.714 512q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
|
||||
<glyph unicode="c" d="M409.714 226.857l259.429 259.429q10.857 10.857 10.857 25.714t-10.857 25.714l-259.429 259.429q-10.857 10.857-25.714 10.857t-25.714-10.857l-58.286-58.286q-10.857-10.857-10.857-25.714t10.857-25.714l175.429-175.429-175.429-175.429q-10.857-10.857-10.857-25.714t10.857-25.714l58.286-58.286q10.857-10.857 25.714-10.857t25.714 10.857zM877.714 512q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
|
||||
</font></defs></svg>
|
Before Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
Binary file not shown.
|
@ -1,131 +0,0 @@
|
|||
@mixin common-toolbar-button($bg-color, $type){
|
||||
&, .x-toolbar & {
|
||||
border: 1px solid darken($bg-color, 22%);
|
||||
border-top-color: darken($bg-color, 15%);
|
||||
min-height: 29px;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
|
||||
@include border-radius(2px);
|
||||
@include box-shadow(rgba(#fff, .35) 0 1px 0);
|
||||
|
||||
@include color-by-background($bg-color);
|
||||
|
||||
.x-button-icon {
|
||||
width: $icons-default-size;
|
||||
height: $icons-default-size;
|
||||
}
|
||||
|
||||
// Fix Back/Forward buttons
|
||||
&.x-button-forward, &.x-button-back {
|
||||
&:before, &:after {
|
||||
$mask-height: $button-height;
|
||||
$mask-width: $mask-height/2.23;
|
||||
|
||||
-webkit-mask-size: $mask-width $mask-height - .05em;
|
||||
}
|
||||
}
|
||||
|
||||
& .x-button-label {
|
||||
@if $type == normal {
|
||||
color: darken($bg-color, 60%);
|
||||
text-shadow: lighten($bg-color, 50%) 0 .09em 0;
|
||||
} @else {
|
||||
color: lighten($bg-color, 80%);
|
||||
text-shadow: darken($bg-color, 22%) 0 -.09em 0;
|
||||
}
|
||||
}
|
||||
|
||||
&.x-button-back:before, &.x-button-forward:before {
|
||||
background: darken($bg-color, 20%);
|
||||
}
|
||||
|
||||
&, &.x-button-back:after, &.x-button-forward:after {
|
||||
@include background-gradient($bg-color, color_stops(lighten($bg-color, 100%), lighten($bg-color, 13%) 3%, $bg-color));
|
||||
}
|
||||
|
||||
&.x-button-pressing, &.x-button-pressed, &.x-button-active {
|
||||
&, &:after {
|
||||
@if $type == normal {
|
||||
@include background-gradient(darken($bg-color, 40%), 'recessed');
|
||||
} @else {
|
||||
@include background-gradient(darken($bg-color, 10%), 'recessed');
|
||||
}
|
||||
}
|
||||
|
||||
& .x-button-label {
|
||||
@if $type == normal {
|
||||
color: lighten($bg-color, 80%);
|
||||
text-shadow: darken($bg-color, 50%) 0 .09em 0;
|
||||
} @else {
|
||||
text-shadow: darken($bg-color, 22%) 0 .09em 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@mixin common-button-ui($ui-label, $color, $type: 'normal') {
|
||||
|
||||
// Buttons
|
||||
|
||||
.x-button.x-button-#{$ui-label}{
|
||||
padding: .3em 8px;
|
||||
|
||||
@include common-toolbar-button($color, $type);
|
||||
|
||||
@if $ui-label == back {
|
||||
&, .x-toolbar & {
|
||||
@include border-radius(4px);
|
||||
@include border-top-left-radius(6px);
|
||||
@include border-bottom-left-radius(6px);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// SegmentedButtons
|
||||
.x-segmentedbutton-base {
|
||||
&:not(.divided) {
|
||||
margin: 0 .2em;
|
||||
|
||||
.x-button-#{$ui-label} {
|
||||
margin: 0;
|
||||
|
||||
@include border-radius(0 !important);
|
||||
|
||||
&:not(.x-first) {
|
||||
border-left: 0 !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.divided {
|
||||
.x-button-#{$ui-label} {
|
||||
&:not(.x-first) {
|
||||
border-left: 1px solid darken($color, 22%);
|
||||
}
|
||||
|
||||
&:not(.x-last) {
|
||||
margin-right: 7px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.x-button-#{$ui-label} {
|
||||
&.x-first {
|
||||
@include border-left-radius(2px !important);
|
||||
}
|
||||
&.x-last {
|
||||
@include border-right-radius(2px !important);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Additional button styles
|
||||
|
||||
.x-button.border-radius-10 {
|
||||
@include border-radius(10px !important);
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
/*
|
||||
* Color palette
|
||||
*/
|
||||
|
||||
.x-dataview {
|
||||
&.color {
|
||||
.x-dataview-inner.x-scroll-scroller {
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
@include border-radius($panel-border-radius);
|
||||
|
||||
.x-dataview-container {
|
||||
margin-top: 12px;
|
||||
margin-left: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.x-dataview-item {
|
||||
display: inline-block;
|
||||
|
||||
&.x-item-selected .item-inner{
|
||||
@include box-shadow(adjust-hue(saturate($active-color, 100%), -14deg) 0 0 0 4px);
|
||||
}
|
||||
|
||||
.item-inner {
|
||||
display: inline-block;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
border: 1px solid lighten($base-color, 5%);
|
||||
margin: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
|
||||
.x-msgbox {
|
||||
@include background-gradient($base-color, color_stops(darken($base-color, 20%), darken($base-color, 40%) 10%, darken($base-color, 40%)));
|
||||
|
||||
.x-toolbar {
|
||||
&.x-docked-bottom .x-button .x-button-label {
|
||||
font-size: .9em;
|
||||
line-height: 2em;
|
||||
}
|
||||
}
|
||||
|
||||
.x-title {
|
||||
font-size: 1em;
|
||||
line-height: 1.4em;
|
||||
color: #ffffff;
|
||||
@include bevel-by-background($sheet-bg-color);
|
||||
}
|
||||
}
|
|
@ -1,65 +0,0 @@
|
|||
@mixin common-planar-spinner {
|
||||
.x-spinner.planar-spinner {
|
||||
&.x-field-grouped-buttons {
|
||||
background: transparent;
|
||||
|
||||
&.x-field {
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
.x-form-label {
|
||||
background: transparent;
|
||||
|
||||
span {
|
||||
font-size: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
.x-button {
|
||||
margin-top: 9px;
|
||||
margin-bottom: 9px;
|
||||
padding: 0 8px !important;
|
||||
}
|
||||
|
||||
.x-form-label {
|
||||
padding: 0.16em;
|
||||
}
|
||||
|
||||
.x-field-input {
|
||||
@include box-shadow(darken($base-color, 10%) 0 3px 4px -2px inset);
|
||||
background: lighten($base-color, 100%);
|
||||
min-width: 2.3em;
|
||||
|
||||
.x-input-el{
|
||||
text-align: center;
|
||||
@include border-radius(0);
|
||||
//position: absolute;
|
||||
//bottom: 0;
|
||||
//top: 0;
|
||||
//padding: 0;
|
||||
padding: 3px 0 4px; //TODO: refactor it
|
||||
min-height: 0;
|
||||
border-top: 1px solid darken($base-color, 26%);
|
||||
border-bottom: 1px solid darken($base-color, 26%);
|
||||
}
|
||||
}
|
||||
|
||||
.x-spinner-button {
|
||||
width: auto;
|
||||
border: 1px solid darken($base-color, 22%) !important;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.x-spinner-button-down {
|
||||
margin-right: 0;
|
||||
@include border-top-right-radius(0);
|
||||
@include border-bottom-right-radius(0);
|
||||
}
|
||||
|
||||
.x-spinner-button-up {
|
||||
@include border-top-left-radius(0);
|
||||
@include border-bottom-left-radius(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,141 +0,0 @@
|
|||
.x-list.settings {
|
||||
$icon-size: 24px;
|
||||
@include border-radius($panel-border-radius);
|
||||
|
||||
&.x-list-round .x-scroll-view {
|
||||
@include border-radius($panel-border-radius);
|
||||
}
|
||||
|
||||
&.x-list-round.x-list-grouped {
|
||||
.x-list-footer-wrap.x-list-item-tpl {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
.x-list-header-wrap {
|
||||
.x-dock-horizontal {
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
.x-list-header {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.x-list-footer-wrap {
|
||||
&.x-list-item-last {
|
||||
.x-dock-horizontal {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.x-list-item {
|
||||
.x-dock-horizontal {
|
||||
border: 1px solid darken($base-color, 6%);
|
||||
border-width: 1px 1px 0 1px;
|
||||
background: lighten($base-color, 100%);
|
||||
|
||||
.x-innerhtml {
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
}
|
||||
|
||||
&.x-item-pressed {
|
||||
.x-dock-horizontal {
|
||||
//@include background-gradient($list-active-color, $list-active-gradient);
|
||||
@include background-image(linear-gradient(top, color_stops(lighten($list-active-color, 5%), darken($list-active-color, 10%))));
|
||||
@include color-by-background($list-active-color);
|
||||
//@include bevel-by-background($list-active-color);
|
||||
|
||||
.disclosure {
|
||||
background-position: -1 * $settinglist-icon-size 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.x-item-selected {
|
||||
.x-dock-horizontal {
|
||||
color: inherit;
|
||||
|
||||
.x-list-item-body {
|
||||
padding-right: 1.2em;
|
||||
}
|
||||
|
||||
&:after {
|
||||
content: "";
|
||||
width: $settinglist-icon-size;
|
||||
height: $settinglist-icon-size;
|
||||
position: absolute;
|
||||
top: ($global-list-height - $settinglist-icon-size) / 2;
|
||||
right: ($global-list-height - $settinglist-icon-size) / 2;
|
||||
background-image: url($icons-setting-list-image);
|
||||
background-size: $settinglist-image-width $settinglist-image-height;
|
||||
background-position: 0 -1 * $settinglist-icon-size;
|
||||
}
|
||||
}
|
||||
|
||||
&.x-item-pressed {
|
||||
.x-dock-horizontal {
|
||||
color: lighten($base-color, 100%);
|
||||
|
||||
&:after {
|
||||
background-position: -1 * $settinglist-icon-size -1 * $settinglist-icon-size;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.list-icon {
|
||||
width: $icon-size;
|
||||
height: $icon-size;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
// offset text from icom
|
||||
.icon-offset {
|
||||
margin-left: $icon-size + 6px;
|
||||
}
|
||||
|
||||
.disclosure {
|
||||
right: $icon-size / 2;
|
||||
background-image: url($icons-setting-list-image);
|
||||
background-size: $settinglist-image-width $settinglist-image-height;
|
||||
background-position: 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
.x-list-header-wrap.x-list-footer-wrap {
|
||||
.x-dock-body {
|
||||
@include border-radius($form-fieldset-radius);
|
||||
}
|
||||
}
|
||||
|
||||
.x-list-footer-wrap {
|
||||
.x-dock-horizontal {
|
||||
border: none;
|
||||
background: transparent;
|
||||
padding-bottom: $global-list-height * .3;
|
||||
|
||||
> .x-dock-body {
|
||||
border: 1px solid darken($base-color, 6%);
|
||||
background: lighten($base-color, 100%);
|
||||
}
|
||||
}
|
||||
|
||||
&.x-item-pressed {
|
||||
.x-dock-horizontal {
|
||||
background: transparent;
|
||||
> .x-dock-body {
|
||||
@include border-bottom-radius($form-fieldset-radius);
|
||||
//@include background-gradient($list-active-color, $list-active-gradient);
|
||||
@include background-image(linear-gradient(top, color_stops(lighten($list-active-color, 5%), darken($list-active-color, 10%))));
|
||||
@include color-by-background($list-active-color);
|
||||
//@include bevel-by-background($list-active-color);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,122 +0,0 @@
|
|||
@mixin common-settings-panel {
|
||||
.x-panel.x-panel-settings {
|
||||
@include background-gradient($base-color, color_stops(lighten($base-color, 13%), $base-color));
|
||||
@include box-shadow(lighten($base-color, 100%) 0 1px 0 inset, rgba(0, 0, 0, .3) 0 .2em .6em);
|
||||
border: 1px solid darken($base-color, 32%);
|
||||
|
||||
.x-anchor-top {
|
||||
$anchor-height: .7em;
|
||||
$anchor-width: $anchor-height * 2.33;
|
||||
|
||||
background-color: darken($base-color, 32%);
|
||||
margin-top: -$anchor-height + 0.02em + 0.06em;
|
||||
@include box-shadow(lighten($base-color, 100%) 0 -1px 0 0 inset);
|
||||
|
||||
&:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: $anchor-width;
|
||||
height: $anchor-height;
|
||||
//-webkit-mask: 0 0 theme_image($theme-name, "tip_top.png") no-repeat;
|
||||
-webkit-mask-size: $anchor-width $anchor-height;
|
||||
@include background-gradient($base-color, color_stops(lighten($base-color, 15%), lighten($base-color, 13%)));
|
||||
top: 1px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.x-anchor-bottom {
|
||||
$anchor-height: .7em;
|
||||
$anchor-width: $anchor-height * 2.33;
|
||||
|
||||
height: $anchor-height + .1em;
|
||||
background-color: darken($base-color, 32%);
|
||||
margin-top: -0.15em;
|
||||
@include box-shadow(lighten($base-color, 100%) 0 -1px 0 0 inset);
|
||||
|
||||
&:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: $anchor-width;
|
||||
height: $anchor-height + .1em;
|
||||
//-webkit-mask: 0 0 theme_image($theme-name, "tip_bottom.png") no-repeat;
|
||||
-webkit-mask-size: $anchor-width $anchor-height;
|
||||
@include background-gradient($base-color, color_stops($base-color, darken($base-color, 5%)));
|
||||
top: -1px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.x-panel-inner {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.x-navigation-bar {
|
||||
border-bottom: none;
|
||||
margin-top: -6px;
|
||||
background: transparent;
|
||||
overflow: hidden;
|
||||
|
||||
.x-title {
|
||||
color: darken($base-color, 60%);
|
||||
text-shadow: lighten($base-color, 50%) 0 .08em 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.x-navigationview.plain {
|
||||
.x-navigationview-inner {
|
||||
background: transparent;
|
||||
@include border-radius(0);
|
||||
&:after {
|
||||
content: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.x-navigationview-inner {
|
||||
background-color: lighten($base-color, 14%);
|
||||
@include border-radius($panel-border-radius);
|
||||
&:after {
|
||||
@include insertion(100%, 100%);
|
||||
pointer-events: none;
|
||||
@include border-radius($panel-border-radius);
|
||||
@include single-box-shadow(darken($base-color, 1%), 0, 1px, 2px, 2px, inset);
|
||||
border: 1px solid darken($base-color, 32%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.x-label.info .x-innerhtml {
|
||||
color: darken($base-color, 30%);
|
||||
text-shadow: 0 1px 0 lighten($base-color, 50%);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.btn-input-image input[type="file"] {
|
||||
opacity: 0;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
// custom mask
|
||||
.x-mask.transparent {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.round {
|
||||
@include border-radius($form-fieldset-radius);
|
||||
}
|
||||
|
||||
// Hide group header
|
||||
.x-list-header-wrap {
|
||||
@include border-top-radius($form-fieldset-radius !important);
|
||||
|
||||
.x-innerhtml {
|
||||
@include border-top-radius($form-fieldset-radius !important);
|
||||
}
|
||||
}
|
||||
|
||||
.x-list-header {
|
||||
display: none;
|
||||
}
|
||||
}
|
|
@ -1,106 +0,0 @@
|
|||
$shadow-width: .065em; // Space between tip and its shadow
|
||||
|
||||
/**
|
||||
* // SCSS
|
||||
* @include application-toolbar-ui('edit', $base-color);
|
||||
*/
|
||||
@mixin common-toolbar-ui($ui-label, $color) {
|
||||
|
||||
$toolbar-border-color: darken($color, 50%);
|
||||
$toolbar-button-color: darken($color, 5%);
|
||||
|
||||
.x-toolbar {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.x-toolbar-#{$ui-label} {
|
||||
@if $ui-label == search {
|
||||
@include background-gradient($color, color_stops($color, lighten($color, 11%) 20%, lighten($color, 11%)));
|
||||
}
|
||||
@else {
|
||||
@include background-gradient($color, color_stops(lighten($color, 100%), lighten($color, 13%) 3%, $color));
|
||||
}
|
||||
border-color: $toolbar-border-color;
|
||||
|
||||
.x-title {
|
||||
@include color-by-background($color);
|
||||
@include bevel-by-background($color);
|
||||
}
|
||||
|
||||
&.x-docked-top {
|
||||
border-bottom: 1px solid darken($color, 22%);
|
||||
}
|
||||
|
||||
.x-button,
|
||||
.x-field-select .x-component-outer,
|
||||
.x-field-select .x-component-outer:before {
|
||||
@include toolbar-button($toolbar-button-color, matte);
|
||||
}
|
||||
|
||||
.x-label,
|
||||
.x-form-label {
|
||||
font-weight: normal;
|
||||
color: darken($color, 50%);
|
||||
text-shadow: 0 1px 0 lighten($color, 100%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin common-shadow-iconmask($name, $url) {
|
||||
.x-tab .x-button-icon.#{$name},
|
||||
.x-button .x-button-icon.x-icon-mask.#{$name},
|
||||
.x-list-item .x-icon-mask.#{$name} {
|
||||
background-image: none;
|
||||
background-color: transparent;
|
||||
|
||||
&:before, &:after {
|
||||
-webkit-mask-image: inline-image($url);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* // SCSS
|
||||
* @include application-toolbar-iconmask('code3', '../../img/toolbar/code3.png');
|
||||
*/
|
||||
@mixin common-toolbar-iconmask($name) {
|
||||
.x-tab .x-button-icon.#{$name},
|
||||
.x-button .x-button-icon.x-icon-mask.#{$name} {
|
||||
//background-image: none;
|
||||
//background-color: transparent;
|
||||
$default-mask-offset: 0.15em;
|
||||
|
||||
&:before, &:after {
|
||||
@include insertion($toolbar-icon-size, $toolbar-icon-size, $button-stroke-weight, auto);
|
||||
z-index: 2;
|
||||
//-webkit-mask: 0 0 inline-image($url) no-repeat;
|
||||
-webkit-mask-size: $toolbar-icon-size;
|
||||
};
|
||||
|
||||
&:before {
|
||||
top: $default-mask-offset + $shadow-width;
|
||||
}
|
||||
&:after {
|
||||
top: $default-mask-offset;
|
||||
}
|
||||
}
|
||||
|
||||
.x-tab .x-button-icon.#{$name},
|
||||
.x-button .x-button-icon.x-icon-mask.#{$name} {
|
||||
&:before {
|
||||
@include background-image(linear-gradient(color_stops(#ffffff, #f3f3f3)));
|
||||
}
|
||||
&:after {
|
||||
@include background-image(linear-gradient(color_stops(#292929, #646464)));
|
||||
}
|
||||
}
|
||||
|
||||
.x-button.x-button-pressing .x-button-icon.x-icon-mask.#{$name} {
|
||||
&:before {
|
||||
@include background-image(linear-gradient(color-stops(black, black)));
|
||||
}
|
||||
&:after {
|
||||
@include background-image(linear-gradient(color-stops(white, white)));
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue