tahoma2d/stuff/config/qss/Medium/less/layouts/mainwindow.less
Jeremy Bullock af90cdedbe
UI update and Icons from Konero (#126)
* add multi arc mockup

* implement mutli arc

* add join and smooth option

* reset multiarc and arc when deactivated

* create self loop if the last point is the same as the first

* make join option in multiarc consistent with tape tool

* fix a bug where thickness don't affect mutliarc in vector level

* remove join option in geometric tool

* stop mutliarc after closing shape

* double click can also end multi arc

* fix a bug where multiArc will produce buggy stroke

* fix a bug where geometric tools is not deactivated

* add multiArc shortcut

* rewrite multiArc

* revert changes to tvectorimage

* add undo data for multiArc

* Paste as Copy Command for XSheet

* Remove unneeded code

* Bug fix

* prevent guide lines from jumping around in MultiArc

* make stroke color consistent in MultiArc

* remove color in MultiArc's undo data

* make color consistent in MultiArc with previous version

* Fix single image raster levels

* fix compilation error

* fix a bug where multiArc might generate bugged stroke

* Remove ICONV dep (#3304)

* fix crash on saving studio palette

* Move to Paste Special Menu

* Don't Set Fixed Width if Docking a Floating Panel

* Update how_to_build_win.md

New draft of pr for requested changes to windows build instructions.

* fix geometric tool multiarc smooth option

* fix level saving failure

* fix wrong warning after saving palette

* fix a bug where moving a control point while holding alt has unintended result

* fix travis-install (#3389)

* Fix assert debug crash in flipconsole.cpp

Fix crash when using the viewer controls in the console (debug)

* Redraw Audio Waveform

Fills the waveform rather than outlines it.

* Update .gitignore

* fix undo data when drawing arc and mutliarc

* fix overwriting raster drawing palette (#3387)

* mode sensitive fx settings

* Create New Style Command Button (#3394)

* Create New Style Command Button

This PR creates a new button in the pallette editor that creates a new style.  Button is large and easy access for a faster and easier workflow.  Original code developed by Turtletooth for Tahoma.  Given permission to develop within Openoonz.

Co-Authored-By: Jeremy Bullock <turtletooth@users.noreply.github.com>

* Update paletteviewergui.cpp

Made changes to the PR per request by Shun.

* Fixed a space within the code that wasn't suppose to be there.

Co-authored-by: Jeremy Bullock <turtletooth@users.noreply.github.com>

* tahoma license (#3396)

* new style button optional

* fix loading pegbars (removing updateKeyframes)

* periodic random expression

* add fx in linear color space
this commit is based on source for the ComposeAdd plugin fx by DWANGO Co., Ltd.
in dwango_opentoonz_plugins and opentoonz_plugin_utility repositories.

* fractal noise iwa fx

* skip unnecessary icon invalidation

* fix frame range fill with tablet

* stop function editor to open by dbl clicking key

* Expanding the radius of the rotation handle.

This just changes when the cursor transforms into the rotation tool.

(cherry picked from commit 7722ae989bbdc6aa5cb48df7a4c08bae1fe6ea39)

* fix vector img patern stroke style

* Update Stylesheets

- Support the new icon sizes
- XSheet and Timeline significantly redesigned
- Lots of margin fixes and refactoring
- Remove deprecated icons, as some icons are moved into binary
- New Light theme

* New Icons

- Redesigns almost every icon as symbolic
- Adds icons for most commands

* Add Option for Icon Themes

- Adds option for icon themes
- Removes useless label from Preferences category list

* Update Icon Functions

- Adds themePath() boolean
- Adds function for recoloring black pixels in pixmaps to any color
- Rebuilds createQIcon to use fromTheme() and recolorPixmap()
- Removes createQIconOnOff as it seemed to be a rarely used duplicate of createQIcon
- Removes a grey horizontal line drawn above the console play bar in the viewer

* Set Default Icon Theme and Paths

- Sets search paths for icons for use with QIcon::fromTheme()
- Sets default start icon theme on first install
- Sets flag for displaying icons in menus, so we can selectively hide them

* Set Icons for Commands

- Sets icons for the commands
- Hides icons being displayed in menus as most icons are 20x20, they will look blurry when shrunk to 16x16
- Selectively allows icons to display for Tools in menus

* Change Icon Sizes, General Fixes and Stylesheet Additions

- Change icon sizes to new size
- Remove margin around FX Editor window
- Remove white line under color sliders in Style Editor
- Make keyframe icons uniform and color stylable in the stylesheets
- Removes deprecated stylesheet strings
- Redesign GUI for palette list view
- Make tree list header sort row stylable
- Remove black lines from scrollbars in New Project window
- Remove margin around combobox in Level Strip
- Alter how some lines are drawn in the Timeline to fix some alpha issues
- Make conditional fixed onion skin and normal onion skin dots contrast more against a light background area to make sure they have good visibility
- Make text always viewable in the FPS field in console bar
- Increase size of radio buttons in Cleanup Settings
- Increase size of switches in motion path nodes
- Remove unessesary "Layer" label in Timeline and other rects
- Various colors made stylable in the stylesheets; palette numpad and selection frame, cleanup settings border, scene cast folder path, schematic lines, ruler, xsheet lines, keyframes, cell input box and more
- Moves some external stylesheet icons into binary

* Make TPanelTitleBar Icon States Stylable

- Makes icon states for TPanelTitleBar buttons stylable in stylesheets

* Travis Fixes

* Swap Startup Popup Logos

They were in the wrong folders

* Revert "Swap Startup Popup Logos"

This reverts commit 815908a9f3e725f48507dab8a2270bdfa045649d.

* Fix Startup Popup Logo

It wasn't switching

* Feedback Changes

- Change render visualization to clapboard
- Fix text contrast on levels in XSheet

* Make Cell Selection More Clear

* Darken Light Theme and Tint Empty Cell Selection

* Fix missing icons

* Fix memo button

* Bring back colors

* Hide Motion Tab

* Fix Play Range Area (Light)

Make play range area more visible

* Vector Column Color

Co-authored-by: pojienie <pojienie@gmail.com>
Co-authored-by: rim <11380091+rozhuk-im@users.noreply.github.com>
Co-authored-by: shun-iwasawa <shun.iwasawa@ghibli.jp>
Co-authored-by: Rodney <rodney.baker@gmail.com>
Co-authored-by: DoctorRyan <65507211+DoctorRyan@users.noreply.github.com>
Co-authored-by: shun-iwasawa <shun-iwasawa@users.noreply.github.com>
Co-authored-by: Kite <konero@users.noreply.github.com>
Co-authored-by: Jeremy Bullock <turtletooth@users.noreply.github.com>
Co-authored-by: DoctorRyan <doctorryan1969.gmail.com>
2020-08-31 12:51:22 -06:00

668 lines
15 KiB
Text

/* -----------------------------------------------------------------------------
Main
----------------------------------------------------------------------------- */
QWidget {
background-color: @bg;
color: @text-color;
&:disabled {
color: @text-color-disabled;
}
}
QFrame {
border: 0;
margin: 0;
padding: 0;
}
QToolTip,
#helpToolTip {
background-color: @tooltip-bg-color;
border: 1 solid @tooltip-border-color;
color: @tooltip-text-color;
padding: 1 1;
}
#DockSeparator,
QMainWindow::separator,
QSplitter::handle {
background-color: @dock-bg-color;
height: 4;
width: 4;
}
#TDockPlaceholder {
background-color: @dock-placeholder-color;
}
TPanel {
background-color: @dock-bg-color;
}
/* -----------------------------------------------------------------------------
Topbar
----------------------------------------------------------------------------- */
#TopBar {
background: @topbar-bg-color;
border: 0;
border-bottom: 1 solid @topbar-border-color;
& #EditToolLockButton {
background: @topbar-bg-color;
spacing: 0;
&::indicator {
// inherits from #ToolOptions window
background: none;
border: none;
padding-left: 0;
padding-right: 0;
}
}
}
#TopBarTabContainer {
background-color: @topbar-bg-color;
margin-bottom: 1; // Required for #TopBar border-bottom to show
}
#StackedMenuBar {
border: 0;
margin: 0;
padding: 0;
}
QMenuBar {
background-color: @topbar-bg-color;
border: 0;
&::item {
background-color: @topbar-bg-color;
border-left: 1 solid @topbar-bg-color; // Helps to align with QMenu
margin: 0;
padding: 3 5 3 5;
&:selected {
.hl-color-secondary;
}
&:pressed {
.hl-color;
}
}
}
/* -----------------------------------------------------------------------------
Workspaces
----------------------------------------------------------------------------- */
#TopBarTab {
margin: 0;
padding: 0;
&::tab {
background-color: @rooms-tab-bg-color;
border-top: 1 solid @tab-border-color;
border-right: 1 solid @tab-border-color;
color: @rooms-tab-text-color;
margin: 0 0 -1 0;
padding: 2 8 3 8;
&:hover {
background-color: @rooms-tab-bg-color-hover;
color: @tab-text-color-hover;
}
&:selected {
background-color: @rooms-tab-bg-color-selected;
color: @rooms-tab-text-color-selected;
}
&:first {
border-left: 1 solid @accent;
}
&:last {
border-right: 1 solid @accent;
}
}
& QToolButton {
border-left: 2 solid @accent;
border-top: 1 solid @accent;
border-right: 1 solid @accent;
border-bottom: 0;
margin-left: -1;
margin-top: 0;
}
}
/* -----------------------------------------------------------------------------
Menu
----------------------------------------------------------------------------- */
QMenu {
background-color: @menu-bg-color;
border: 1 solid @menu-border-color;
color: @menu-text-color;
padding: 2 0;
&::item {
border: 0;
padding: 3 28;
&:selected {
background-color: @menu-item-bg-color-selected;
color: @menu-item-text-color-selected;
}
&:checked {
color: @menu-checkbox-text-color-selected;
&:selected {
background-color: @menu-item-bg-color-selected;
color: @menu-item-text-color-selected;
}
}
&:disabled {
background: none;
color: @text-color-disabled;
&:selected {
color: @text-color-disabled; /* fix for disabled indicator */
}
}
}
&::separator {
border-top: 1 solid @menu-separator-color;
height: 0;
margin: 2 0;
}
&::icon {
border-radius: 2;
position: absolute;
left: 5;
padding: 0;
margin: 0;
qproperty-icon: url('@{img-url}/none');
&:checked {
background-color: @menu-icon-checked-bg-color;
border: 1 solid @menu-icon-checked-border-color;
}
}
&::indicator {
&:non-exclusive {
&:extend(.CheckBox::indicator all);
}
&:exclusive {
&:extend(.RadioButton::indicator all);
}
margin-left: 7;
&:non-exclusive {
&:extend(.CheckBox::indicator all);
}
&:exclusive {
&:extend(.RadioButton::indicator all);
}
}
}
/* -----------------------------------------------------------------------------
Titlebars
----------------------------------------------------------------------------- */
TPanelTitleBar {
background-color: @title-bg-color;
border-bottom: @title-border-width solid @title-border-color;
height: 18;
min-height: 18;
qproperty-TitleColor: @title-text-color;
qproperty-ActiveTitleColor: @title-text-color-active;
// QSS only works when pixmaps are set to 'none'
qproperty-BorderPixmap: url('none');
qproperty-ActiveBorderPixmap: url('@{img-url}/@{title-active-border-pixmap}');
qproperty-FloatBorderPixmap: url('none');
qproperty-FloatActiveBorderPixmap: url('@{img-url}/@{title-active-border-pixmap}');
}
TPanelTitleBarButton {
qproperty-PressedColor: @title-button-pressed-color;
qproperty-FreezeColor: @title-button-freeze-color;
qproperty-PreviewColor: @title-button-preview-color;
qproperty-OverColor: @title-button-rollover-color;
}
/* -----------------------------------------------------------------------------
Scrollbars
----------------------------------------------------------------------------- */
QAbstractScrollArea::corner {
background-color: @scrollbar-bg-color;
}
QScrollBar {
background-color: @scrollbar-bg-color;
border: 0;
&:horizontal {
height: 15;
margin: 0;
}
&:vertical {
margin: 0;
width: 15;
}
&::handle {
border: @scrollbar-handle-border-size solid @scrollbar-handle-border-color;
border-radius: @scrollbar-handle-radius;
&:horizontal,
&:vertical {
&:hover {
background-color: @scrollbar-handle-bg-color-hover;
border-color: @scrollbar-handle-border-color-hover;
}
&:pressed {
background-color: @scrollbar-handle-bg-color-pressed;
border-color: @scrollbar-handle-border-color-pressed;
}
}
&:horizontal {
background-color: @scrollbar-handle-bg-color;
margin: @scrollbar-handle-margin 16;
min-width: 20;
}
&:vertical {
background-color: @scrollbar-handle-bg-color;
margin: 16 @scrollbar-handle-margin 16 @scrollbar-handle-margin;
min-height: 20;
}
}
&::add-line {
subcontrol-origin: margin;
border: 0;
&:horizontal { // right
subcontrol-position: right;
background-color: @scrollbar-bg-color;
margin: 0;
width: 16;
}
&:vertical { // down
subcontrol-position: bottom;
background-color: @scrollbar-bg-color;
margin: 0;
height: 16;
}
}
&::sub-line {
border: 0;
subcontrol-origin: margin;
&:horizontal { // left
subcontrol-position: left;
background-color: @scrollbar-bg-color;
margin: 0;
width: 16;
}
&:vertical { // up
subcontrol-position: top;
background-color: @scrollbar-bg-color;
margin: 0;
height: 16;
}
}
@arrow-pressed: 1 0 0 0; // press effect shortcut, nudge arrow down 1
&::up-arrow:vertical {
image: url('@{img-url}/scroll-up.svg');
image-position: center center;
&:pressed {
margin: @arrow-pressed;
}
}
&::down-arrow:vertical {
image: url('@{img-url}/scroll-down.svg');
image-position: center center;
&:pressed {
margin: @arrow-pressed;
}
}
&::left-arrow:horizontal {
image: url('@{img-url}/scroll-left.svg');
image-position: center center;
&:pressed {
margin: @arrow-pressed;
}
}
&::right-arrow:horizontal {
image: url('@{img-url}/scroll-right.svg');
image-position: center center;
&:pressed {
margin: @arrow-pressed;
}
}
&::sub-page,
&::add-page {
&:horizontal,
&:vertical {
background: none;
}
}
}
/* -----------------------------------------------------------------------------
QToolBar
----------------------------------------------------------------------------- */
/* This applies to QToolBar, this is not the #ToolBar window, although the
properties here also apply in the window, you should look in
[layouts/toolbar] if you want window control. */
QToolBar {
padding: 0;
&::separator {
&:horizontal {
border-left: 1 solid @accent;
margin: 0 1;
width: 0;
}
&:vertical {
border-top: 1 solid @accent;
height: 0;
margin: 1 0;
}
}
& QLabel {
margin-top: 1;
}
& QToolBar {
border: 0;
}
}
QToolButton {
&:extend(.button-tool all);
margin-left: 1;
margin-right: 1;
padding: 0;
&::menu-indicator {
image: none;
}
&::menu-button {
border-image: none;
}
&#qt_toolbar_ext_button {
padding: 0;
border: 0;
margin: 0;
qproperty-icon: url('@{img-url}/toolbar_extension_horizontal.png');
&:hover {
background-color: @button-bg-color-hover;
}
&:pressed {
background-color: @button-bg-color-checked;
}
}
}
.DvScrollWidget {
& QPushButton {
background-color: @button-bg-color;
border: 0 solid @accent;
border-radius: 0;
padding: 0;
max-width: 16;
&:hover {
background-color: @button-bg-color-hover;
}
&:pressed {
background-color: @button-bg-color-pressed;
}
}
}
DvScrollWidget {
/* Multiple classes can use the same style as DvScrollWidget, and
since the compiler can't handle extending to Qt names we place the
style in a mixin and extend the name to it instead. */
&:extend(.DvScrollWidget all);
}
#ScrollLeftButton,
#ScrollRightButton,
#ScrollUpButton,
#ScrollDownButton {
&:extend(.DvScrollWidget all);
margin: 0;
min-width: 16;
}
#ScrollLeftButton {
border-right: 1 solid @accent;
image: url('@{img-url}/scroll-left.svg');
}
#ScrollRightButton {
border-left: 1 solid @accent;
margin-left: 3;
image: url('@{img-url}/scroll-right.svg');
}
#ScrollUpButton {
image: url('@{img-url}/scroll-up.svg');
}
#ScrollDownButton {
image: url('@{img-url}/scroll-down.svg');
}
/* -------------------------------------------------------------------------- */
/* For the buttons to display a BG color we need to set a blank image, setting
an empty URL solves this. */
#keyFrameNavigator {
background: transparent;
margin: 0;
padding: 0;
#PreviousKey {
margin: 0 2;
padding-right: -1;
width: 20px;
height: 20px;
image: url('');
&:disabled {
image: url('');
}
}
#NextKey {
margin: 0 2;
padding-right: -1;
width: 20px;
height: 20px;
image: url('');
&:disabled {
image: url('');
}
}
#KeyNo,
#KeyPartial,
#KeyTotal {
margin: 0;
padding-right: -1;
width: 20px;
height: 20px;
image: url('');
&:disabled {
image: url('');
}
}
#KeyNo {
background-color: @keyframe-off-color;
border: 1 solid @keyframe-off-border-color;
image: url('');
&:disabled {
image: url('');
}
&:hover {
background-color: @keyframe-off-color-hover;
border-color: @keyframe-off-border-color-hover;
}
}
#KeyPartial {
background-color: @keyframe-partial-color;
border: 1 solid @keyframe-partial-border-color;
image: url('');
&:hover {
background-color: @keyframe-partial-color-hover;
border-color: @keyframe-partial-border-color-hover;
}
}
#KeyTotal {
background-color: @keyframe-total-color;
border: 1 solid @keyframe-total-border-color;
&:hover {
background-color: @keyframe-total-color-hover;
border-color: @keyframe-total-border-color-hover;
}
}
& QToolButton#qt_toolbar_ext_button {
// adjust for style
padding-bottom: 3;
border-radius: 2;
}
}
/* -----------------------------------------------------------------------------
Tab Containers
----------------------------------------------------------------------------- */
#TabBarContainer {
.tab-container;
}
QTabBar {
background-color: @tabbar-bg-color;
}
/* -----------------------------------------------------------------------------
Tabs
----------------------------------------------------------------------------- */
QTabBar {
&::tab {
&:extend(.tab-flat all);
}
& QToolButton {
/* Scroll buttons */
margin: 0;
background-color: @bg;
border-radius: 0;
border: 1 solid @accent;
border-top: 0;
padding: 3 2 2 2;
&:hover, &:pressed {
border-color: @accent;
}
&:disabled {
color: @text-color-disabled;
}
}
}
/* -----------------------------------------------------------------------------
Item Tree
----------------------------------------------------------------------------- */
.treeview {
background-color: @tree-bg-color;
alternate-background-color: @tree-bg-color-alt;
border: 0;
margin: 0;
outline: 0;
&::item {
&:selected {
.hl-color;
}
}
&::branch {
&:adjoins-item {
/* blank URL hides default Qt branch icons where it is not wanted */
border-image: url('');
}
&:has-siblings {
border-image: url('');
&:adjoins-item {
border-image: url('');
}
}
&:has-children {
&:closed {
background: url('@{img-url}/treebranch-closed.svg') no-repeat;
background-position: center center;
border-image: none;
image: none;
}
&:open {
background: url('@{img-url}/treebranch-open.svg') no-repeat;
background-position: center center;
image: none;
}
&:has-siblings {
&:closed {
background: url('@{img-url}/treebranch-closed.svg') no-repeat;
background-position: center center;
border-image: none;
image: none;
}
&:open {
background: url('@{img-url}/treebranch-open.svg') no-repeat;
background-position: center center;
border-image: none;
image: none;
}
}
}
}
}
QTreeWidget,
QTreeView {
&:extend(.treeview all);
}
QListView {
outline: 0; // hide focus border
background: @tree-bg-color;
alternate-background-color: @tree-bg-color-alt;
}
/* -----------------------------------------------------------------------------
Tool Options - Override DvScroll Widget
----------------------------------------------------------------------------- */
#toolOptionsPanel {
QPushButton {
background-color: @button-bg-color;
border: 1 solid @button-border-color;
border-radius: 2;
color: @button-text-color;
margin: 0;
padding: 0;
&:hover {
background-color: @button-bg-color-hover;
border-color: @button-border-color-hover;
color: @button-text-color-hover;
}
&:pressed {
background-color: @button-bg-color-pressed;
border-color: @button-border-color-pressed;
color: @button-text-color-pressed;
}
&:checked {
background-color: @button-bg-color-checked;
border-color: @button-border-color-checked;
color: @button-text-color-checked;
&:hover {
background-color: @button-bg-color-checked-hover;
&:pressed {
background: @button-bg-color-checked-hover-pressed;
}
}
}
&:disabled {
background-color: @button-bg-color-disabled;
border-color: @button-border-color-disabled;
color: @button-text-color-disabled;
}
}
}