aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/controls/qquickdefaulttheme.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Create and init QQuickTheme from QtQuickControls2PluginJ-P Nurmi2018-05-221-6/+4
| | | | | | | | | | | | | | | Instead of creating and setting the QQuickTheme instance from each style plugin (e.g. QtQuickControls2MaterialStylePlugin), create the QQuickTheme instance in QtQuickControls2Plugin when the style is being resolved, and just pass the instance to be initialized by the style plugin(s). This avoids the problem that QQuickTheme API was virtual, and sub-classes created from plugins would have vtables destroyed before the QQuickTheme was destroyed. Task-number: QTBUG-67062 Task-number: QTBUG-68087 Change-Id: I19e9ced5296b708c2668c30163389cb3da6be7cf Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickTheme: add setters to make getters non-virtualJ-P Nurmi2018-05-221-8/+4
| | | | | | | | | | This allows us to add more themable attributes (on the side of fonts and palettes) after the QQuickTheme API has been made public, because it won't require adding virtuals. Only the resolve() method is virtual. Task-number: QTBUG-67062 Change-Id: I6a5cc8d15aeaa5a9a0fe9b6d2591077f8822daac Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add QQuickTheme::ScopeJ-P Nurmi2018-03-151-2/+2
| | | | | | | | | | | Replace the old enums that were originally copied from QPlatformTheme, including irrelevant entries for DockWidget, MdiSubWindow, MessageBox, with a unified enum that will be matched to cover everything needed for theming fonts and palettes for Qt Quick Controls 2. Task-number: QTBUG-67062 Change-Id: Ia99d092f28c00210c0c7f24d4241eb5a5d9ceb5b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Cleanup unnecessary explicit references to QPlatformThemeJ-P Nurmi2018-02-151-1/+1
| | | | | | | | | QQuickTheme is being separated from QPlatformTheme. Reduce references to QPlatformTheme to make the transition to QQuickTheme smoother. Task-number: QTBUG-51921 Change-Id: I6dbbe39bf0b465df16a88bcc26e2b2a32cc42c93 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Read :/qtquickcontrols2.conf in QQuickStylePluginJ-P Nurmi2018-02-151-2/+5
| | | | | | | | | | | | | | | | | QQuickTheme is going to be promoted from libQQC2 to libQQT2 so that it can provide dark and light palettes (and later, icons). The first step is to refactor out the :/qtquickcontrols2.conf reading code, which cannot be in style-agnostic libQQT2. Read the conf file in QQuickStyle Plugin instead. The additional benefit is that we don't need duplicate name() methods for styles and their themes. Even though QQuickStyle Plugin's name handling is case-insensitive, QSetting is case-sensitive. Therefore all QQuickStylePlugin::name() overrides have been updated to use capital first letter. This name is used to lookup the correct section in :/qtquickcontrols2.conf. Task-number: QTBUG-63331 Change-Id: I07b1269d9dbc2c9568e6f22f2da75951fde7b669 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: palette-based placeholder text color for editorsJ-P Nurmi2017-09-281-1/+1
| | | | | | | | | | | A half-translucent placeholder text color is also used in widgets. Tweak the default disabled text color a little bit to make placeholder text visible in disabled state, so that we can use the same approach that has been proven to work. ;) Task-number: QTBUG-63369 Change-Id: I9a3f0bf18fdfa4a25ef169b8fd9571c9c899ab26 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: make MenuBar & MenuBarItem use palettesJ-P Nurmi2017-09-271-0/+2
| | | | | | Task-number: QTBUG-63369 Change-Id: I61cc75166df05933782c24109e845411ef2aff0b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: make Check/RadioIndicator use palettesJ-P Nurmi2017-09-271-2/+4
| | | | | | Task-number: QTBUG-63369 Change-Id: Iced34279af95caa62f097694c94c2ec34285f748 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: choose TextField background from the paletteJ-P Nurmi2017-09-261-0/+3
| | | | | | Task-number: QTBUG-63369 Change-Id: I371fbcdfe0cbea9e668d82912d6d7b5ed554542b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: make panes and frames use palettesJ-P Nurmi2017-09-261-0/+2
| | | | | | Task-number: QTBUG-63369 Change-Id: I14cdbef627c4c689d6e0009de1d5dc04515c9c17 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: make popups and windows use palettesJ-P Nurmi2017-09-261-0/+4
| | | | | | Task-number: QTBUG-63369 Change-Id: Iabdb22852f319c1c7370b724f806523fcb1f1b91 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: make ProgressBar use palettesJ-P Nurmi2017-09-221-0/+2
| | | | | | Task-number: QTBUG-63369 Change-Id: Icf2204f9395798ccdca2448a26e0a2c9c4826a33 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: make ToolTip use palettesJ-P Nurmi2017-09-221-0/+5
| | | | | | Task-number: QTBUG-63331 Change-Id: I42232ab2dc270b5a68bcf967517b2a00d3aad666 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: pick selection & selected text color from the paletteJ-P Nurmi2017-09-221-0/+2
| | | | | | Task-number: QTBUG-63331 Change-Id: I14c2b05bbf7654b298a69cdc72fc4d8756a340d0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: palette-based Label.linkColorJ-P Nurmi2017-09-221-0/+2
| | | | | | Task-number: QTBUG-63331 Change-Id: Iad940e2260b96f81282779e5029a498895a2da44 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: choose Button foreground from the paletteJ-P Nurmi2017-09-221-0/+9
| | | | | | Task-number: QTBUG-63331 Change-Id: I413a1c0297ba4cd6040a6c2974b7eec352ca5857 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: use palette.windowTextJ-P Nurmi2017-09-221-0/+4
| | | | | | | | | Make use of the "windowText" color role for those controls that draw text against the window background. Task-number: QTBUG-63331 Change-Id: If4ea4176caf9dab79dd3a6997f3edbcaed7e789b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Default: use palette.textJ-P Nurmi2017-09-221-0/+9
| | | | | | | | | | Make editors and delegates use the "text" color role from palettes. This color role is normally used as a foreground color for the "base" background color. Task-number: QTBUG-63331 Change-Id: Ic08463f54c1b04a4eccf791a576ae792f75bf89b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add support for configurable fontsJ-P Nurmi2017-05-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | A style's default font is specified in qtquickcontrols2.conf in a "Font" group under the style's section. QSettings supports the following two alternative syntaxes: [Default] Font\Family=Open Sans Font\PixelSize=20 or [Default\Font] Family=Open Sans PixelSize=20 [ChangeLog][Controls] Added support for specifying the default font for different styles in qtquickcontrols2.conf. Change-Id: I54e1efb79a2913eab35174dbf09b6956fe740e28 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add QQuickDefaultThemeJ-P Nurmi2017-05-291-0/+46
The Default style will be changed to use palettes, and it will be also possible to define the default fonts and palettes for any style in the qqc2.conf file, so the Default style needs its own proxy theme. Change-Id: I0262f7a1f783daa62ca4afbdf3c8fe29d989ca36 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>