2016-07-11 18:05:46 +00:00
|
|
|
/*
|
|
|
|
This file is part of Telegram Desktop,
|
|
|
|
the official desktop version of Telegram messaging app, see https://telegram.org
|
|
|
|
|
|
|
|
Telegram Desktop is free software: you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
|
|
|
|
It is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU General Public License for more details.
|
|
|
|
|
|
|
|
In addition, as a special exception, the copyright holders give permission
|
|
|
|
to link the code of portions of this program with the OpenSSL library.
|
|
|
|
|
|
|
|
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
|
|
|
Copyright (c) 2014-2016 John Preston, https://desktop.telegram.org
|
|
|
|
*/
|
|
|
|
|
|
|
|
using "basic.style";
|
|
|
|
|
|
|
|
LabelSimple {
|
|
|
|
font: font;
|
|
|
|
maxWidth: pixels;
|
|
|
|
textFg: color;
|
|
|
|
}
|
|
|
|
|
2016-10-27 14:10:28 +00:00
|
|
|
IconButton {
|
|
|
|
width: pixels;
|
|
|
|
height: pixels;
|
|
|
|
|
|
|
|
icon: icon;
|
2016-11-01 12:46:34 +00:00
|
|
|
iconOver: icon;
|
|
|
|
|
2016-10-27 14:10:28 +00:00
|
|
|
iconPosition: point;
|
2016-11-01 12:46:34 +00:00
|
|
|
iconPositionDown: point;
|
2016-10-27 14:10:28 +00:00
|
|
|
|
|
|
|
duration: int;
|
2016-07-11 18:05:46 +00:00
|
|
|
}
|
2016-08-22 17:16:21 +00:00
|
|
|
|
2016-10-31 12:29:26 +00:00
|
|
|
MaskButton {
|
|
|
|
width: pixels;
|
|
|
|
height: pixels;
|
|
|
|
|
|
|
|
bg: color;
|
|
|
|
icon: icon;
|
|
|
|
|
|
|
|
iconBg: color;
|
|
|
|
iconBgOver: color;
|
|
|
|
|
|
|
|
iconPosition: point;
|
2016-11-01 12:46:34 +00:00
|
|
|
iconPositionDown: point;
|
2016-10-31 12:29:26 +00:00
|
|
|
|
|
|
|
duration: int;
|
|
|
|
}
|
|
|
|
|
2016-09-23 16:04:26 +00:00
|
|
|
MediaSlider {
|
|
|
|
width: pixels;
|
|
|
|
activeFg: color;
|
|
|
|
inactiveFg: color;
|
2016-11-01 12:46:34 +00:00
|
|
|
activeFgOver: color;
|
|
|
|
inactiveFgOver: color;
|
|
|
|
activeFgDisabled: color;
|
|
|
|
inactiveFgDisabled: color;
|
2016-09-23 16:04:26 +00:00
|
|
|
seekSize: size;
|
|
|
|
duration: int;
|
|
|
|
}
|
|
|
|
|
2016-10-12 19:34:25 +00:00
|
|
|
FilledSlider {
|
|
|
|
fullWidth: pixels;
|
|
|
|
lineWidth: pixels;
|
|
|
|
activeFg: color;
|
|
|
|
inactiveFg: color;
|
2016-10-13 09:12:12 +00:00
|
|
|
disabledFg: color;
|
2016-10-12 19:34:25 +00:00
|
|
|
duration: int;
|
|
|
|
}
|
|
|
|
|
2016-10-20 11:34:48 +00:00
|
|
|
RoundImageCheckbox {
|
|
|
|
imageRadius: pixels;
|
|
|
|
imageSmallRadius: pixels;
|
|
|
|
selectWidth: pixels;
|
|
|
|
selectFg: color;
|
|
|
|
selectDuration: int;
|
|
|
|
checkBorder: color;
|
|
|
|
checkBg: color;
|
|
|
|
checkRadius: pixels;
|
|
|
|
checkSmallRadius: pixels;
|
|
|
|
checkIcon: icon;
|
|
|
|
}
|
|
|
|
|
2016-10-21 12:28:26 +00:00
|
|
|
MultiSelectItem {
|
|
|
|
padding: margins;
|
|
|
|
maxWidth: pixels;
|
|
|
|
height: pixels;
|
|
|
|
font: font;
|
|
|
|
textBg: color;
|
|
|
|
textFg: color;
|
|
|
|
textActiveBg: color;
|
|
|
|
textActiveFg: color;
|
|
|
|
deleteFg: color;
|
|
|
|
deleteLeft: pixels;
|
|
|
|
deleteStroke: pixels;
|
|
|
|
duration: int;
|
|
|
|
minScale: double;
|
|
|
|
}
|
|
|
|
|
2016-10-20 19:48:35 +00:00
|
|
|
MultiSelect {
|
2016-10-31 12:29:26 +00:00
|
|
|
bg: color;
|
2016-10-21 12:28:26 +00:00
|
|
|
padding: margins;
|
2016-10-20 19:48:35 +00:00
|
|
|
maxHeight: pixels;
|
2016-10-21 12:28:26 +00:00
|
|
|
scroll: flatScroll;
|
|
|
|
|
|
|
|
item: MultiSelectItem;
|
|
|
|
itemSkip: pixels;
|
|
|
|
|
|
|
|
field: InputField;
|
2016-10-22 13:03:20 +00:00
|
|
|
fieldMinWidth: pixels;
|
2016-10-21 12:28:26 +00:00
|
|
|
fieldIcon: icon;
|
|
|
|
fieldIconSkip: pixels;
|
2016-10-31 12:29:26 +00:00
|
|
|
fieldCancel: MaskButton;
|
2016-10-21 12:28:26 +00:00
|
|
|
fieldCancelSkip: pixels;
|
2016-10-20 19:48:35 +00:00
|
|
|
}
|
|
|
|
|
2016-10-26 16:43:13 +00:00
|
|
|
Menu {
|
|
|
|
skip: pixels;
|
|
|
|
|
|
|
|
itemBg: color;
|
|
|
|
itemBgOver: color;
|
|
|
|
itemFg: color;
|
|
|
|
itemFgOver: color;
|
|
|
|
itemFgDisabled: color;
|
|
|
|
itemFgShortcut: color;
|
|
|
|
itemFgShortcutOver: color;
|
|
|
|
itemFgShortcutDisabled: color;
|
|
|
|
itemPadding: margins;
|
|
|
|
itemIconPosition: point;
|
|
|
|
itemFont: font;
|
|
|
|
|
|
|
|
separatorPadding: margins;
|
|
|
|
separatorWidth: pixels;
|
|
|
|
separatorFg: color;
|
|
|
|
|
|
|
|
arrow: icon;
|
|
|
|
|
|
|
|
widthMin: pixels;
|
|
|
|
widthMax: pixels;
|
|
|
|
}
|
|
|
|
|
|
|
|
PopupMenu {
|
|
|
|
shadow: icon;
|
|
|
|
shadowShift: pixels;
|
|
|
|
|
|
|
|
menu: Menu;
|
|
|
|
|
|
|
|
duration: int;
|
|
|
|
}
|
|
|
|
|
|
|
|
InnerDropdown {
|
|
|
|
padding: margins;
|
|
|
|
shadow: icon;
|
|
|
|
shadowShift: pixels;
|
|
|
|
|
|
|
|
duration: int;
|
|
|
|
width: pixels;
|
|
|
|
|
|
|
|
scroll: flatScroll;
|
|
|
|
scrollMargin: margins;
|
|
|
|
scrollPadding: margins;
|
|
|
|
}
|
|
|
|
|
|
|
|
DropdownMenu {
|
|
|
|
wrap: InnerDropdown;
|
|
|
|
menu: Menu;
|
|
|
|
}
|
|
|
|
|
2016-10-27 14:10:28 +00:00
|
|
|
defaultLabelSimple: LabelSimple {
|
|
|
|
font: normalFont;
|
|
|
|
maxWidth: 0px;
|
|
|
|
textFg: windowTextFg;
|
|
|
|
}
|
|
|
|
|
2016-10-31 12:29:26 +00:00
|
|
|
defaultMaskButton: MaskButton {
|
|
|
|
iconPosition: point(-1px, -1px);
|
2016-11-01 12:46:34 +00:00
|
|
|
iconPositionDown: point(-1px, -1px);
|
2016-10-31 12:29:26 +00:00
|
|
|
duration: 150;
|
|
|
|
}
|
|
|
|
|
2016-08-22 17:16:21 +00:00
|
|
|
widgetSlideDuration: 200;
|
2016-10-26 10:06:00 +00:00
|
|
|
widgetFadeDuration: 200;
|
2016-10-05 18:37:48 +00:00
|
|
|
|
2016-11-04 11:14:47 +00:00
|
|
|
fieldSearchIcon: icon {{ "box_search", #aaaaaa, point(9px, 8px) }};
|
|
|
|
boxFieldSearchIcon: icon {{ "box_search", #aaaaaa, point(10px, 9px) }};
|
|
|
|
|
2016-10-05 18:37:48 +00:00
|
|
|
discreteSliderHeight: 39px;
|
|
|
|
discreteSliderTop: 5px;
|
|
|
|
discreteSliderSkip: 3px;
|
|
|
|
discreteSliderThickness: 3px;
|
|
|
|
discreteSliderActiveFg: #4bb5e7;
|
|
|
|
discreteSliderInactiveFg: #e1eaef;
|
|
|
|
discreteSliderLabelTop: 17px;
|
|
|
|
discreteSliderLabelFont: normalFont;
|
|
|
|
discreteSliderLabelFg: #1485c2;
|
|
|
|
discreteSliderDuration: 200;
|
2016-10-26 16:43:13 +00:00
|
|
|
|
|
|
|
defaultMenuArrow: icon {{ "dropdown_submenu_arrow", #373737 }};
|
|
|
|
defaultMenu: Menu {
|
2016-11-07 16:08:24 +00:00
|
|
|
skip: 8px;
|
2016-10-26 16:43:13 +00:00
|
|
|
|
2016-10-31 12:29:26 +00:00
|
|
|
itemBg: windowBg;
|
2016-10-28 12:44:28 +00:00
|
|
|
itemBgOver: windowOverBg;
|
2016-10-31 12:29:26 +00:00
|
|
|
itemFg: windowTextFg;
|
|
|
|
itemFgOver: windowTextFg;
|
2016-10-28 09:20:24 +00:00
|
|
|
itemFgDisabled: #cccccc;
|
|
|
|
itemFgShortcut: #999999;
|
2016-10-26 16:43:13 +00:00
|
|
|
itemFgShortcutOver: #7c99b2;
|
2016-10-28 09:20:24 +00:00
|
|
|
itemFgShortcutDisabled: #cccccc;
|
2016-10-26 16:43:13 +00:00
|
|
|
itemIconPosition: point(0px, 0px);
|
|
|
|
itemPadding: margins(17px, 8px, 17px, 7px);
|
|
|
|
itemFont: normalFont;
|
|
|
|
|
|
|
|
separatorPadding: margins(0px, 5px, 0px, 5px);
|
|
|
|
separatorWidth: 1px;
|
|
|
|
separatorFg: #f1f1f1;
|
|
|
|
|
|
|
|
arrow: defaultMenuArrow;
|
|
|
|
|
|
|
|
widthMin: 180px;
|
|
|
|
widthMax: 300px;
|
|
|
|
}
|
|
|
|
defaultPopupMenu: PopupMenu {
|
|
|
|
shadow: defaultDropdownShadow;
|
|
|
|
shadowShift: defaultDropdownShadowShift;
|
|
|
|
|
|
|
|
menu: defaultMenu;
|
|
|
|
|
|
|
|
duration: 120;
|
|
|
|
}
|
|
|
|
defaultInnerDropdown: InnerDropdown {
|
|
|
|
padding: margins(10px, 10px, 10px, 10px);
|
|
|
|
shadow: defaultDropdownShadow;
|
|
|
|
shadowShift: defaultDropdownShadowShift;
|
|
|
|
|
|
|
|
duration: 150;
|
|
|
|
|
|
|
|
scroll: solidScroll;
|
|
|
|
}
|
|
|
|
defaultDropdownMenu: DropdownMenu {
|
|
|
|
wrap: defaultInnerDropdown;
|
|
|
|
menu: defaultMenu;
|
|
|
|
}
|