aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/controls/imagine
Commit message (Collapse)AuthorAgeFilesLines
* Update plugins.qmltypes for stylesJ-P Nurmi2017-12-131-0/+21
| | | | | | Change-Id: I19202b23a3027c7a24e15be2b929e9fc02aed044 Reviewed-by: Marco Benelli <marco.benelli@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: round Slider handle position to avoid artefactsMitch Curtis2017-11-021-2/+2
| | | | | | | | | | | | | | | The handle can be positioned "between" pixels, leading to unpleasant results: https://imgur.com/a/GKItw Round the position to avoid this. Doesn't seem to be an issue for other styles that use Qt Quick primitives rather than images. Change-Id: Iddb21e37ff777de433b3fa2a68e640db9a4b369a Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Imagine: enable caching for image lookupsv5.10.0-beta3J-P Nurmi2017-10-261-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | File system lookups are somewhat expensive, so cache the results to avoid repetitive lookups. The default cache size of 500 is a rough estimate based on that the default assets have 300+ images per scale factor. Caching image lookups gives an average of 20% performance improvement in qmlbench: control before after improvement ---------------------------------------------- busyindicator 29 32 1.10344827586207 button 53 60 1.13207547169811 checkbox 51 60 1.17647058823529 combobox 39 44 1.12820512820513 dial 110 147 1.33636363636364 itemdelegate 54 61 1.12962962962963 label 143 152 1.06293706293706 menuitem 26 34 1.30769230769231 progressbar 13 15 1.15384615384615 radiobutton 52 59 1.13461538461538 scrollbar 37 62 1.67567567567568 scrollview 78 121 1.55128205128205 slider 31 40 1.29032258064516 spinbox 75 85 1.13333333333333 switch 35 43 1.22857142857143 textarea 80 88 1.1 textfield 56 63 1.125 tumbler 126 128 1.01587301587302 ---------------------------------------------- average 1.2102967624703 Caching can be disabled by setting an environment variable: QT_QUICK_CONTROLS_IMAGINE_CACHE=0 but this is not advertised in the docs for the time being. It is there to help debugging, should anything go wrong with caching. Change-Id: I1119f3d8186bc9a51cc174b06fed02ed9e1fb70c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* 9-patch export plugin for SketchJ-P Nurmi2017-10-182-0/+43
| | | | | | | | This plugin crops upscaled 9-patch PNG assets when exported from Sketch, to ensure that 9-patch borders remain 1px wide when upscaled. Change-Id: Iad46d75f37b76eecf64ac32fa38d2b9e9db8b34d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: replace generated assets with exported assetsJ-P Nurmi2017-10-181264-0/+0
| | | | | | | From now on, the assets are maintained via imagine.sketch. ;) Change-Id: Icee606115cb149f3c99b8d9b768ccb080ad909be Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Update imagine.sketchJ-P Nurmi2017-10-181-0/+0
| | | | | | | | | | | | | | | | | | | | | - remove @1x from - applicationwindow-overlay-modal - menuitem-arrow-disabled - rename - button-background-disabled-checked -> button-background-checked-disabled - add missing - combobox-background-editable-focused - combobox-background-focused - dial-handle-hovered - delaybutton-background-focused - drawer-overlay - drawer-overlay-modal - remove checkable states for button Now the exported assets match with the files generated by imaginator. Change-Id: Icc73cd526227150b344512d08027f772a53acac2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: add support for file selectorsJ-P Nurmi2017-10-171-1/+2
| | | | | | | | | | | | | | For example: assets/ |__ button-background.9.png |__ +custom/ |__ button-background.9.png $ QT_FILE_SELECTORS=custom ./myapp Change-Id: I26f0b82885aa1a8e62fb4e3e58c7d8b19012406e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: add "qt.quick.controls.imagine" logging categoryJ-P Nurmi2017-10-172-0/+8
| | | | | | | | | | The output helps to debug image asset selection. For example: qt.quick.controls.imagine: "button-background" () -> "path/to/button-background.9.png" qt.quick.controls.imagine: "button-background" ("hovered") -> "path/to/button-background-hovered.9.png" Change-Id: I3aee85d357d9b9436341bfb06486e5b3089ce86f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: remove bogus assetsv5.10.0-beta2J-P Nurmi2017-10-1664-0/+0
| | | | | | | | | | | | | | - flat buttons don't need checkable assets (checkable-checked vs. checked, and checkable-highlighted vs. highlighted look identical) - delegates don't need a checked background, because the checked state is visualized by the indicator - text editors have no pressed state - mirrored page-indicator is unnecessary because it looks identical (if a mirrored version was needed, then we would need to provide mirrored versions of all states including pressed, current...) Change-Id: I909f639bdcf9d9653c56b8ce2eda49b3219bdf77 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Refactor imagine.sketchJ-P Nurmi2017-10-111-0/+0
| | | | | | | | | | - split to page per control - define a palette and used shared styles - use shared symbols for 9-patches, indicators, handles, etc. - minor geometrical fixes here and there Change-Id: Ib6992f5ce2f57193ac893684bed43f039f22a815 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickImageSelector: fix clazy-qvariant-template-instantiationJ-P Nurmi2017-10-101-2/+2
| | | | | Change-Id: I61f56c8806f02da2cab2ecf8452598431d921ca6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: set icon properties as we do for ButtonMitch Curtis2017-10-061-1/+9
| | | | | Change-Id: Iac93ca277883984ef99ffc34acade32f7b4ce434 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix imagine.sketchJ-P Nurmi2017-10-061-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: - fix content padding for delegates - fix switch indicator size - fix combobox content padding - fix groupbox content padding - fix progressbar - fix delaybutton radius - fix popup overlay - fix dial background - fix tooltip content padding - fix combobox - fix popups - fix appwindow background - fix itemdelegate-background colors - fix radiodelegate-background - fix pane padding - fix radiodelegate-indicator-pressed color - fix pageindicator - fix sliders and range sliders - fix scrollbar & indicator - fix slider progress color - fix spinbox - fix switch - fix tabs - fix textfield padding - fix toolbar, button, separator - fix drawer - fix partially checked checkbox indicator - fix checkbox pressed indicator color - fix checkbox & delegate checkmark - fix dial handle size - fix dialogbuttonbox padding Change-Id: Idbbed7c7f80c754b3852b49e0720a02fbecfca49 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: remove bogus spinbox assetsMitch Curtis2017-10-058-0/+0
| | | | | | | These were incorrectly generated and are not used. Change-Id: Iec5fbdbaccce96722fa9ff1adefd43ecbcc4aebb Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* imagine.sketch: fix button-backgroundJ-P Nurmi2017-10-031-0/+0
| | | | | | | | | Vertical content padding was off by one, and some flat buttons had wrong gray shade. Now buttons look identical when toggling between default and exported assets. Change-Id: I7d9bddb479292c18f500b0044a38a5ae420e6e59 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* imagine.sketch: remove white solid backgroundJ-P Nurmi2017-10-031-0/+0
| | | | | | | | | | | Most of the assets, exluding some handles and indicators, had a solid white background (for the entire image). In general, nothing should have a solid background, but the areas around button corners, slider track and so on should be transparent. This patch simply selected all exportable assets and unchecked "Background color". Change-Id: Idebc0811290e8617f1a8cf5c3ebef665f02b8b62 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* imagine.sketch: fix menuseparator-backgroundJ-P Nurmi2017-10-021-0/+0
| | | | | | | | Remove the solid white background, and make the 1px dots rectangles instead of lines. Change-Id: If31059bdbe10e04bcf9ff5b060c390761c0b4921 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* imagine.sketch: fix frame-backgroundJ-P Nurmi2017-10-021-0/+0
| | | | | | | | Sketch has known issues with 1px line elements. Use rectangles instead of lines for marking the content area. Change-Id: Idd3d1380637f0baeea206c0971f8fef3b1387cd2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: add Sketch fileMitch Curtis2017-09-291-0/+0
| | | | | | | | This contains the default assets for the Imagine style in Sketch's file format. Change-Id: If9658b8674a7c456fdfe7ddcd5bb83ba464a82bb Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Imagine: fix MenuItem arrowMitch Curtis2017-09-2216-0/+0
| | | | | | | | | | | It was white because menu previously had a dark background. The new assets have been optimized with: optipng -o7 -strip all *.png Change-Id: Ie59828612ae145b79f1e15d9f1f1db6a469b1020 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Imagine: fix SpinBox assetsMitch Curtis2017-09-2180-0/+0
| | | | | | | | | | | Some assets were not flipped correctly. The new assets have been optimized with: optipng -o7 -strip all spinbox*.png Change-Id: I411e89d5b000b0afd71421428f9754b3c6b13259 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Imagine: fix QRC pathsMitch Curtis2017-09-1447-93/+118
| | | | | | | | | | | | | | | | | | | | | Using ApplicationWindow as an example, its NinePatchImage url is assigned like so: source: Imagine.path + "applicationwindow-background" If Imagine.path is set to ":/images" by the user, then the final URL would be: QUrl("file:///home/user/qt/qtbase/qml/QtQuick/Controls.2/Imagine/:/images/applicationwindow-background") We could use a QUrl for QQuickImagineStyle::path, but we don't want to support anything other than local paths. Instead, we add a private "url" property that returns a URL that we construct correctly in C++ ourselves, and then the Imagine QML controls files use that property. Change-Id: Ic4d1910bbc7f7b6f80f257496ae6131777a19401 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Bump QtQuick 2.9 imports to 2.10Mitch Curtis2017-09-0646-46/+46
| | | | | Change-Id: I274146911cd8a204fcbf439da9259b0a38c8092e Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix build when OpenGL is disabledJake Petroules2017-08-071-1/+1
| | | | | | | | This fixes a regression from 846a908. Task-number: QTBUG-62289 Change-Id: Ia8eabf67a1d71d3d45a7574103d8dafddbfb9367 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Add Imagine styleJ-P Nurmi2017-07-311306-0/+6342
The Imagine style is based on image assets. The style comes with a default set of images, but the images can be easily changed by providing a directory with images using a predefined naming convention. [ChangeLog][Controls] Added the Imagine style, which is based on image assets that can be provided using a predefined naming convention. Task-number: QTPM-517 Change-Id: I550d7dac9a9686d60bec15655ac92dea9f36149c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>