Commit Graph

1987 Commits

Author SHA1 Message Date
Uwe Rathmann d611af617d ucrustified 2023-03-09 18:05:09 +01:00
Peter Hartmann f56cf19fd5 virtual keyboard: Make layouts settable 2023-03-09 18:02:44 +01:00
Uwe Rathmann e36f81b297 QskComboBox using QskLabelData now 2023-03-09 17:59:54 +01:00
Uwe Rathmann f9f5de8eb0 QskIcon/QskLabelData introduced 2023-03-09 15:30:40 +01:00
Uwe Rathmann 484780a40e using "icon" instead of "graphic".
"icon" was not used to avoid confusing with QIcon,
but it is probably more confusing not to use the name that
is used by almost all toolkits.
2023-03-08 14:11:27 +01:00
Uwe Rathmann 907409f21b QskComboBox::indexInPopup ( a.k.a QComboBox::highlightedIndex ) added 2023-03-07 15:00:33 +01:00
Uwe Rathmann 69d43a2ffa Merge branch 'master' of https://github.com/uwerat/qskinny 2023-03-07 14:33:24 +01:00
Uwe Rathmann 82f9a72603 QskComboBox key searching added 2023-03-07 14:32:53 +01:00
Uwe Rathmann c288d9319b Qt5 build break fixed 2023-03-07 13:52:03 +01:00
Uwe Rathmann fa998a9496 QskComboBox is creating its menu only temporary now 2023-03-07 13:26:36 +01:00
Uwe Rathmann 69546707d2 API extended 2023-03-07 13:26:05 +01:00
Uwe Rathmann 48853d38ef index of the combo box changes on the final QskMenu::trigereed - not while
navigating in the menu
2023-03-06 17:37:32 +01:00
Uwe Rathmann afe3248a8b Unused splash subcontrol/node removed. As the code was simply copied from the
push button we can restore it easily once we have a sitution, where a
splash feedback is required
2023-03-06 17:00:44 +01:00
Uwe Rathmann 4f24a74057 missing initialisation for the ripple added 2023-03-06 16:54:30 +01:00
Uwe Rathmann 70aa95dee6 minor fixes, workarounds 2023-03-06 16:40:06 +01:00
Uwe Rathmann 406e6ad08e hiding the focus rectangle while fading 2023-03-06 16:37:28 +01:00
Uwe Rathmann de7233e120 Qt5/QVariant can't convert enums to ints, so we need to register flags
as ints ( a.k.a alignment hint were broken in Qt5 )
2023-03-06 13:12:34 +01:00
Uwe Rathmann 5cf30110ec version guard fixed 2023-03-06 12:45:17 +01:00
Uwe Rathmann 5246f618a7 qskIsButtonPressKey moved to QskEvent.h, Qt5 build break fixed 2023-03-06 12:26:38 +01:00
Uwe Rathmann dae0cd7b1b combobox input handling improved ( wheel, more keys ) 2023-03-06 10:44:00 +01:00
Uwe Rathmann 04c50fc301 respecting QPlatformTheme::ButtonPressKeys for Qt6 2023-03-06 10:37:57 +01:00
Uwe Rathmann f60fe75de4 making the internal menu being modal for the window 2023-03-06 07:47:49 +01:00
Uwe Rathmann 2a2793422f MouseUngrab added 2023-03-05 16:54:22 +01:00
Uwe Rathmann 73610cdb61 QskRadioBox updated. Adding a new subcontrol that corresponds to a
single button ( check indicator + text ), what allows better
configuration from the skin
2023-03-05 16:31:55 +01:00
Uwe Rathmann 4f244c8f76 pixel scaling algo moved from M3 to QskPlatform.h 2023-03-05 11:52:42 +01:00
Peter Hartmann 689f45f710 push buttons: Fix layouting for eliding and wrapping texts 2023-03-05 11:01:29 +01:00
Uwe Rathmann 83a18a83c2 QskTextInput having the same default size policy as QLineEdit (
Expanding/Fixed )
2023-03-04 11:04:37 +01:00
Peter Hartmann 6d329e1e39 Material 3: Style virtual keyboard 2023-03-04 10:51:20 +01:00
Peter Hartmann 45df0a8807 virtual keyboard: Align at bottom and leave at the same size 2023-03-04 10:51:20 +01:00
Uwe Rathmann ed1a211e96 label renamed to placeholderText ( taken from QComboBox ), minor
adjustments
2023-03-03 19:01:40 +01:00
Uwe Rathmann 69aa0903c5 QskSkin::symbol removed - using symbolHints instead 2023-03-03 18:11:57 +01:00
Uwe Rathmann e3b62e0896 QskSegmentedBar fixed for Squiek, loading the checkmark as symbolHint 2023-03-03 14:51:22 +01:00
Uwe Rathmann f45946726f code simplified 2023-03-03 13:01:07 +01:00
Uwe Rathmann 68d02006f4 QskRadioBox development continued - work in progress 2023-03-03 12:49:22 +01:00
Uwe Rathmann a612ec7f17 preferredSize != minimumSize ( f.e we could do something useful with
eliding )
2023-03-03 12:47:59 +01:00
Uwe Rathmann b0df60a7a7 missing moc include 2023-03-02 15:13:19 +01:00
Uwe Rathmann c587263592 symbolHints introduced, several skinlets changed to make use of them 2023-03-02 14:56:30 +01:00
Uwe Rathmann a32204cd8c QskAspect::Flag replaced by QskAspect::NoType. Flag was a leftover from
the very early stages of this project and its semantics had become wrong
in the meantime
2023-03-02 12:19:32 +01:00
Uwe Rathmann 99eb5c3695 using graphics for the spin box button indicators 2023-03-02 09:16:55 +01:00
Uwe Rathmann 396289cfa4 triangle symbols added 2023-03-02 09:09:48 +01:00
Uwe Rathmann f3b516c81d implementation of accelerating/tracking postponed 2023-03-01 17:46:48 +01:00
Uwe Rathmann 99079a666e disable QskSpinBox buttons when reaching minimum/maximum 2023-03-01 16:09:17 +01:00
Uwe Rathmann a4b2bcde16 mouse handling completed 2023-03-01 14:22:40 +01:00
Uwe Rathmann 55d6aa6d5e QskSpinBox bugs fixed, QskSpinBox::wrapping mode implemented 2023-03-01 13:58:10 +01:00
Uwe Rathmann 28432446e6 Material is using the term "Ripple" for 2 different type of effects - Flutter
calls them "Splash" and "Highlight". We are using Splash too.
2023-03-01 10:51:46 +01:00
Peter Hartmann caf75721d4 tickmarks: support alignment 2023-02-28 16:11:27 +01:00
Uwe Rathmann 8a4f644034 avoid using deprecated methods 2023-02-28 15:55:13 +01:00
Uwe Rathmann a6bf60c9b4 upgraded to uncrustify 0.76.0 - still not happy with the C++ beautifier
situation, that requires way too much manual post processing
2023-02-28 15:49:42 +01:00
Uwe Rathmann 9b2c2a8f12 Squiek settings for the spin box added 2023-02-27 15:21:09 +01:00
Uwe Rathmann a67d23420f QskMenu::Overlay settings fixed ( working for Squiek again ) 2023-02-27 14:06:57 +01:00
Uwe Rathmann 5d16d86e0d Merge branch 'master' of https://github.com/uwerat/qskinny 2023-02-27 09:57:22 +01:00
Uwe Rathmann 0b4de9afe7 spin box improvements 2023-02-27 09:56:41 +01:00
Uwe Rathmann 2e667f3ff2 formal adjustments 2023-02-26 17:04:47 +01:00
Uwe Rathmann c4efbf65f0 compiler warning fixed 2023-02-26 15:45:57 +01:00
Uwe Rathmann 5bbd304b94 Merge branch 'RadioBox' of https://github.com/clemensmanert/qskinny into clemensmanert-RadioBox 2023-02-26 15:42:15 +01:00
Uwe Rathmann 6618c91479 QskColorFilter::mask 2023-02-26 15:07:08 +01:00
Uwe Rathmann 90fec17a60 QskRgb::RGBAMask added 2023-02-26 15:03:44 +01:00
Peter Hartmann f4531c149c color filter: Add option to substitute alpha value
Resolves #253
2023-02-26 14:04:23 +01:00
Clemens Manert c3a4472587
Code cleanup 2023-02-25 23:39:33 +01:00
Clemens Manert 4310ee3c34
Remove unused imports 2023-02-25 23:36:02 +01:00
Clemens Manert 72190aee91
Fix alighnment if sizes of symbol and button differ 2023-02-25 23:36:02 +01:00
Clemens Manert 6beabfcbb1
Return empty Rect if item is empty 2023-02-25 23:36:02 +01:00
Uwe Rathmann a3e749157f QskSpinBox API improved 2023-02-24 08:24:32 +01:00
Uwe Rathmann 06ba85605b QskSpinBox work in progress 2023-02-23 14:37:49 +01:00
Uwe Rathmann 06704511d2 QskBoundedInput::incrementForKeys added 2023-02-23 14:33:35 +01:00
Peter Hartmann 7f24cbb95b push buttons: Fix ripple effect
This way it looks like the original
2023-02-23 10:19:42 +01:00
Peter Hartmann 1d57d87332 Gallery: Add buttons with different emphasis and style for M3 2023-02-23 10:19:42 +01:00
Clemens Manert 4d0a26d762
Fix missing moc include 2023-02-20 22:13:14 +01:00
Clemens Manert aee27768cd
Code cleanup 2023-02-20 21:56:34 +01:00
Clemens Manert e4a07909ac
Add Squiek theme 2023-02-20 21:56:33 +01:00
Clemens Manert 49cd540ce0
Add disabled support 2023-02-20 21:56:33 +01:00
Clemens Manert fc4a389201
Code cleanup 2023-02-20 21:56:33 +01:00
Clemens Manert f5c7f7f2b4
Add animation support for the Ripple, remove focusedItem 2023-02-20 21:56:33 +01:00
Clemens Manert bfc172c04f
Respect focused and pressed state in the skinlet 2023-02-20 21:56:33 +01:00
Clemens Manert d510570943
Return empty Rect if nothing to paint 2023-02-20 21:56:33 +01:00
Clemens Manert ffa150a5fd
Fix text position in mirrored layouts 2023-02-20 21:56:33 +01:00
Clemens Manert 4c1f60eb1c
Fix Ribble in mirrored layouts 2023-02-20 21:56:33 +01:00
Clemens Manert 84d662979d
Fix user state positions 2023-02-20 21:56:32 +01:00
Clemens Manert a7dc136dcd
Make unified control name 2023-02-20 21:56:32 +01:00
Clemens Manert 92ba2385db
Rename radio to button 2023-02-20 21:56:32 +01:00
Clemens Manert 8c0a54e54a
Add QskRadioBox 2023-02-20 21:56:26 +01:00
Uwe c9b83ff689 emphasis added 2023-02-20 10:30:24 +01:00
Uwe Rathmann 0c2bc32abd focus handling removed ( spin boxes do not have an internal focus chain
), formal adjustments
2023-02-19 14:24:09 +01:00
Uwe Rathmann 26661dcbb6 compiler errors/warnings fixed 2023-02-19 11:29:13 +01:00
uwerat cf449f174f
Merge branch 'master' into qskspinbox 2023-02-19 10:25:04 +01:00
Vogel, Rick 767414fbc7 doxygen + sample count = 1 2023-02-17 17:46:52 +01:00
Peter Hartmann a89d3def3b Add new control QskComboBox
Resolves #102
2023-02-17 17:26:06 +01:00
Peter Hartmann cf2e17def5 QskMenu: Add own subcontrol Overlay
... so we can style it differently from the one of the QskPopup
2023-02-17 17:26:06 +01:00
Vogel, Rick 1faf2e091c clang-format + clang-tidy improvements 2023-02-17 15:22:40 +01:00
Vogel, Rick 890ae64652 using QskBoundedValueInput as base class 2023-02-17 14:57:33 +01:00
Vogel, Rick 13575678d6 increment or decrement on space key 2023-02-17 14:46:05 +01:00
Vogel, Rick 3d96541079 fixed focus chain 2023-02-17 14:37:10 +01:00
Vogel, Rick 55b8da0b7e fixed double inc/dec on key 2023-02-17 14:36:30 +01:00
Uwe Rathmann 8df1551701 formal adjustments 2023-02-17 14:05:05 +01:00
Uwe Rathmann eb5f3d3bcf Qt5 compiler issue fixed 2023-02-17 13:36:08 +01:00
Vogel, Rick ad7a20053c refactoring + focused state 2023-02-17 13:32:47 +01:00
Uwe Rathmann d06c2c6d8f gcc issues fixed 2023-02-17 13:32:27 +01:00
Vogel, Rick 8b2e39caae complete focus chain for all layouts 2023-02-17 13:28:44 +01:00
Vogel, Rick ba9ec8e783 initial commit of QskSpinBox 2023-02-17 13:28:44 +01:00
uwerat 6071ce74d2
Merge branch 'master' into qskspinbox 2023-02-17 13:22:39 +01:00
Vogel, Rick c615e429cf complete focus chain for all layouts 2023-02-17 12:37:53 +01:00
Uwe Rathmann 3262673e40 section bits added to the resolution matching algo. The switch in the
Header section of the gallery is working again
2023-02-17 12:02:05 +01:00
Vogel, Rick ac8a3dea9b initial commit of QskSpinBox 2023-02-17 12:01:56 +01:00
Uwe Rathmann 15b73d215c QskTextOption layout impacts added 2023-02-16 11:42:07 +01:00
Uwe Rathmann d71b972232 QskBoxShapeMetrics::ScalingMode: using better names, missing mode
reinserted
2023-02-16 11:30:31 +01:00
Uwe Rathmann 64fee0247e Floating section added 2023-02-16 08:23:45 +01:00
Uwe Rathmann a0dde1a4e0 Tiny/Small/Large/Huge variations introduced 2023-02-15 17:10:50 +01:00
Uwe Rathmann 66db409b71 QskAspect::Placement renamed to QskAspect::Variation so that we use the
corresponding bits for an emphasis too
2023-02-15 16:37:54 +01:00
Uwe Rathmann 454688361c orientation removed from the placement bits 2023-02-15 16:16:19 +01:00
Uwe Rathmann f89ab863f6 always inserting the connecting line between border and filling, when
using different strokers
2023-02-14 13:44:52 +01:00
Uwe Rathmann 126c276eac better decisions for the direction of filling gradient lines 2023-02-14 11:19:13 +01:00
Uwe Rathmann b8f198a97a irrelevant micro optimzation removed, that was using the wrong corner
iteration
2023-02-14 09:29:51 +01:00
Uwe Rathmann 31feeff9aa Complete support of linear gradients from the box renderer - only
expection are reflect/repeat spreading.
Code has been reimplemented or cleaned up significantly
2023-02-08 17:58:09 +01:00
Uwe Rathmann 67b10cca0a elliptic scaling fixed 2023-02-04 11:55:37 +01:00
Uwe Rathmann 1dcdca3489 faster isMonochrome calculations 2023-02-04 11:55:06 +01:00
Uwe Rathmann ca70fec579 caching some values for faster valueAt calculations 2023-02-04 11:53:54 +01:00
Uwe Rathmann 9d4c423591 color ramp calculation fixed for gradients with many stops 2023-02-04 11:53:23 +01:00
Uwe Rathmann 776468953d using Circular/Elliptic 2023-02-03 11:13:11 +01:00
Uwe Rathmann d4e746e7c5 elliposid != ellipse 2023-02-03 10:46:08 +01:00
Uwe Rathmann 1c4bcffc3f aspectRatioMode replaced by scalingMode 2023-02-03 10:38:17 +01:00
Uwe Rathmann e7c2cd0eba QskBoxShapeMetrics::toAbsolute reverted for the moment as the scaling of the buttons
is broken now. Only a temporary workaround as the other implementation
was actually correct
2023-02-02 18:44:08 +01:00
Peter Hartmann 5a78a365e3 segmented bar: Make API similar to QskMenu 2023-02-01 17:18:22 +01:00
Peter Hartmann afdfa7b24e segmented bar: Fix vertical orientation 2023-02-01 17:18:22 +01:00
Peter Hartmann c58593669d segmented bar: Add own checkmark
The checkmark is slightly different from the one used in the
check box.
2023-02-01 17:18:22 +01:00
Peter Hartmann d75c07cbcc segmented bar: Selected element always has the checkmark symbol
This is how Material 3 does it at least.
If we are ever going to implement the iOS style, we need to do it
differently; although there are no icons involved there at all.
2023-02-01 17:18:22 +01:00
Peter Hartmann 9d1b2568e5 segmented bar: Allow icon and text 2023-02-01 17:18:22 +01:00
Peter Hartmann 329531777a segmented bar: Always assume 0 spacing between elements
... as is in the nature of this control. Rather think of the spacing
as the space between the icon and the text, like we do with
QskPushButton.
2023-02-01 17:18:22 +01:00
Peter Hartmann f8983afa17 QskGraphic: Fix scale factors
We need to know the bounding rect of the graphic to know by how much
we can scale our shape, so we need to pass that to the scaling
methods.
E.g. when there are two shapes whose pen sizes overlap the path rect
left and right, we would calculate wrong scale factors without the
grapics' bounding rect.

Resolves #250
2023-01-30 17:11:28 +01:00
Uwe Rathmann f78416fc63 QskLinearDirection::valueAt fixed 2023-01-24 20:26:23 +01:00
Uwe Rathmann 910a8a730f corner -> corners 2023-01-24 19:49:15 +01:00
Uwe Rathmann 83ce3dbbf9 convenience setter added 2023-01-24 19:48:04 +01:00
Uwe Rathmann bd25e8ae23 explanation added 2023-01-24 19:47:37 +01:00
Uwe Rathmann c384fd608d QskLinearDirection::valueAt added 2023-01-24 19:40:41 +01:00
Peter Hartmann 03e24d5fea push button: Support more alignments of icon and text 2023-01-24 09:51:36 +01:00
Uwe Rathmann 84156b138e workaround for a Qt 6.5 regression ( see
https://bugreports.qt.io/browse/QTBUG-110493 )
2023-01-23 15:51:21 +01:00
Uwe Rathmann 7d1e394b43 multicell propagation fixed ( also avoids assertions of the iotdashboard with
Qt 6.2 in debug mode )
2023-01-23 13:02:29 +01:00
Uwe Rathmann 76a7e94358 default value for reset added 2023-01-23 11:00:03 +01:00
Uwe Rathmann ad09186229 QskGradientDirection::contais added 2023-01-23 10:59:34 +01:00
Uwe Rathmann fff0389262 wrong aspect ratio scaling fixed 2023-01-23 10:59:01 +01:00
Peter Hartmann 9882dc61ee push button: Fix size hint 2023-01-18 06:36:47 +01:00
Uwe Rathmann 6e2769edfa QskVertex::fillOrdered renamed to QskVertex::fillBox 2023-01-17 15:41:12 +01:00
Uwe Rathmann d7f1e22874 using QSizeF::grownBy 2023-01-17 15:37:53 +01:00
Peter Hartmann 3b45b90011 CheckBox: Add error state and style for material 2023-01-16 08:15:41 +01:00
Peter Hartmann 4352410128 check box: Add ripple effect and style for M3 2023-01-16 08:15:41 +01:00
Uwe Rathmann cd4a46cc11 de-template-ified: much better starting point for the fixes to come 2023-01-12 20:26:51 +01:00
Uwe Rathmann a916bd78c2 codemoved to QskRoundedRect.hpp/QskRoundedRect.h 2023-01-12 14:33:31 +01:00
Uwe Rathmann c670d23582 QskRoundedRectRenderer reorganized 2023-01-11 17:40:25 +01:00
Uwe Rathmann e66520294c minor API changes 2023-01-11 12:51:16 +01:00
Uwe Rathmann 5ba34eb11c method names cleaned up 2023-01-10 15:36:43 +01:00
Uwe Rathmann 4038f52cdf inverted gradient vectors for horizontal/vertical gradients supported 2023-01-10 12:17:56 +01:00
Uwe Rathmann d2c5413daa wrong check fixed 2023-01-10 12:09:53 +01:00
Uwe Rathmann e50fb269c3 minor adjustments 2023-01-10 10:20:30 +01:00
Uwe Rathmann 9afabe0e92 using Q_NAMESPACE_EXPORT 2023-01-09 15:19:39 +01:00
Uwe Rathmann a5ab93bba8 bad workaround removed ad fixing the bug instead. 2023-01-09 15:11:38 +01:00
Uwe Rathmann d80f9780fc iotdashboard crash fixed 2023-01-09 15:11:38 +01:00
Uwe Rathmann f4aaf4cc92 more variations of gradient vectors supported 2023-01-05 17:18:34 +01:00
Uwe Rathmann 21e1206b2d QskBoxRenderer improvements 2023-01-05 13:06:32 +01:00
Uwe Rathmann 1b85d3053e QskBoxRenderer fixes 2023-01-04 16:15:22 +01:00
Uwe Rathmann b449289509 convenience API added 2022-12-30 10:27:18 +01:00
Uwe Rathmann 14cee228e0 SimpleColorIterator added 2022-12-29 08:20:29 +01:00
Uwe Rathmann 8c6f0ffd60 full support of all linear gradient vectors by QskRectRenderer ( = not rounded rectangles ). 2022-12-28 19:39:08 +01:00
Uwe Rathmann 3ce2cea547 QLineF added for linear gradients 2022-12-28 19:23:42 +01:00
Uwe Rathmann fba8b97a74 monochrome gradients are rendered vertically 2022-12-24 12:22:42 +01:00
Uwe Rathmann d9eacd9eb3 setDirection fixed 2022-12-24 12:22:07 +01:00
Uwe Rathmann 76c8e41fcc radiusX/radiusY to allow ellipsoid and circular radial gradients 2022-12-23 14:57:46 +01:00
Uwe Rathmann f13026b544 conic gradients fixed 2022-12-22 20:27:49 +01:00
Uwe Rathmann a2a2c63678 qskEffectiveGradient fixed 2022-12-22 20:27:17 +01:00
Uwe Rathmann 82cb6e6811 QskGradient::effectiveGradient added 2022-12-22 20:13:45 +01:00
Uwe Rathmann 6ce73136ce reducing the memory used for QskGradient 2022-12-22 17:50:19 +01:00
Uwe Rathmann 4670e3b5d3 wrong vector size fixed 2022-12-22 17:49:02 +01:00
Uwe Rathmann 83556493d4 hash function fixed 2022-12-22 13:04:58 +01:00
Uwe Rathmann e551906849 QskGradient::StretchMode introduced 2022-12-22 12:38:44 +01:00
Uwe Rathmann 3de71d1bd5 QskGradient::Spread -> QskGradient::SpreadMode 2022-12-22 11:45:23 +01:00
Uwe Rathmann b98791c421 using QTransform 2022-12-21 13:26:23 +01:00
Uwe Rathmann 26e422ac07 convenience update method added 2022-12-20 16:29:51 +01:00
Uwe Rathmann 4ec304fe91 QGradient replaces when adding a stop at the same position, instaed of
appending it - like how it is with CSS or Qsk. As a workaround we
increase the positon by a small epsilon.
2022-12-20 15:49:09 +01:00
Uwe Rathmann 03d2dad7ca setting QGradient::CoordinateMode when converting into a QGradient 2022-12-20 15:47:26 +01:00
Uwe Rathmann c66c61de0c missing default seed value added 2022-12-20 15:42:36 +01:00
Peter Hartmann 5e8d03fe50 QskGraphic: Make sure the underlying texture is big enough
Otherwise the scale factors might be off considerably.

Resolves #233
2022-12-15 16:08:23 +01:00
Uwe Rathmann 8318ff757b update issues with gradients fixed 2022-12-10 16:08:32 +01:00
Uwe Rathmann fd5856cd50 class renamed 2022-12-09 12:03:46 +01:00
Uwe Rathmann 334254caf8 crash fixed for square rectangles with mutiple stops at 0.5 2022-12-09 11:54:42 +01:00
Uwe Rathmann b36521b0ed code moved to cpp file 2022-12-09 11:50:31 +01:00
Uwe Rathmann af1f5b8757 QGradint converters fixed 2022-12-09 11:23:32 +01:00
Uwe Rathmann 5f6ab6db42 code moved to QskBoxRenderer.cpp 2022-12-06 16:52:55 +01:00
Uwe Rathmann e1b65c6dd6 QskBoxRenderer::isGradientSupported also depends on the shape ( at least
in the future )
2022-12-06 16:37:18 +01:00
Uwe Rathmann 8551f4459d gardient check fixed 2022-12-06 16:32:27 +01:00
Uwe Rathmann 3bab38029d wrong update check fixed 2022-12-06 16:31:58 +01:00
Uwe Rathmann a2e29e0d16 code moved to QskVertex + hiding classes in QskVertex from public use 2022-12-06 13:20:18 +01:00
Uwe Rathmann 778ed1de9e QskBoxRectangleNode supports rounded rectangles now. 2022-12-06 12:12:54 +01:00
Uwe Rathmann 9ae7dc2f63 QskGradientNode renamed to QskRectangleNode 2022-12-06 09:58:46 +01:00
Uwe Rathmann 6d726eee0a QskGradientNode introduced for rectangles filled with any type of
gradient being supported by QskGradient. It is lighter than QskBoxNode,
that is a compositition of border/gradient/shadow. Used for the
background node now - what means, that background can have radial/conic
gradients now as well.
2022-12-05 17:10:13 +01:00
Uwe Rathmann c31d554d6b QskBoxRenderer::isGradientSupported introduced 2022-12-05 17:08:32 +01:00
Uwe Rathmann 9d409ab89b QskBoxRenderer with static methods 2022-12-05 17:06:55 +01:00
Uwe Rathmann 6ed417873e QskSGNode::resetGeometry added 2022-12-05 17:00:54 +01:00
Uwe Rathmann 296b2f368a code simplified/harmonized 2022-12-05 13:05:13 +01:00
Uwe Rathmann 125fe1e9f4 QskBoxNode renamed to QskBoxRectangleNode, QskShadedBoxNode renamed to QskBoxNode 2022-12-05 12:34:08 +01:00
Uwe Rathmann d82f3d08ff calculating vertexes manually instead of using the expensive painter
path triangulator
2022-12-05 11:39:09 +01:00
Uwe Rathmann 4888fcc5ba crash fixed 2022-12-05 11:18:35 +01:00
Uwe Rathmann 35a0d63b5a code specific for Qt < 5.15 removed 2022-12-05 07:51:41 +01:00
Uwe Rathmann f4275c5098 using the more efficient QVector< qreal > instead of QPainterPath 2022-12-04 21:13:14 +01:00
Uwe Rathmann 4dddb8abf5 unused method removed 2022-12-04 21:13:00 +01:00
Uwe Rathmann 2446bf34c5 bad index fixed 2022-12-04 21:11:36 +01:00
Uwe Rathmann 7abd90b2dd Finally all types of gradients can be set to boxes.
For radial/conic and tilted linear gradients shape/border metrics
will be translated into a QPainterPath to be fed into the triangulation.
However the borders remain being done by QskBoxRenderer.
2022-12-04 19:54:05 +01:00
Uwe Rathmann 38cbefac78 using QskGradient::firstColor 2022-12-04 19:53:25 +01:00
Uwe Rathmann 7eecc63571 QPainterPath support added 2022-12-04 19:52:07 +01:00
Uwe Rathmann ad8cfbb694 QskBoxBorderMetrics::adjustedRect added 2022-12-04 19:50:54 +01:00
Uwe Rathmann cf9d203e48 exposing more methods to QML 2022-12-03 17:17:21 +01:00
Uwe Rathmann 103746d719 more C++11 2022-12-01 14:23:13 +01:00
Uwe Rathmann 9ed4aafff5 Qt5 compiler error fixed 2022-12-01 13:45:32 +01:00
Uwe Rathmann ec0d21fb0c QskGradient <-> QGradient converter added 2022-12-01 13:03:57 +01:00
Uwe Rathmann 0925b40b7a QGradient::Spread -> QskGradient::Spread 2022-12-01 12:03:36 +01:00
Uwe Rathmann abf325dbde QJSValue converter for QskGradient added to be compatible with new Qt
6.5 features
2022-11-30 17:05:37 +01:00
Uwe Rathmann bbfc16c609 improving Qml support or QskGradient 2022-11-29 10:59:09 +01:00
Uwe Rathmann b52e54bb7e return invalid directions, when requeting with the wrong type 2022-11-24 07:58:47 +01:00
Uwe Rathmann ea8f426d67 QML registration using templates instead of macros. lower/uppercase
definitions for gadgets solved ( defining then twice to have the enums
with uppercase prefix )
2022-11-20 15:36:30 +01:00
Uwe Rathmann 2aaaa4ecb1 QskSizePolicy property names shortened 2022-11-20 15:27:08 +01:00
Uwe Rathmann b96b1acd20 missing boilerplate definitions added 2022-11-18 18:47:35 +01:00
Uwe Rathmann 912d768a61 QskControl::Background subcontrol introduced allowing to have a default setting for
all backgrounds ( color, padding ) without changing the overall fallback settings. This made
it possible to remove the confusing autoFillBackground property.
2022-11-18 13:20:21 +01:00
Uwe Rathmann c5ace32bf2 QskAspect::Control renamed to QskAspect::NoSubcontrol 2022-11-18 12:29:58 +01:00
Uwe Rathmann 19f01c0232 debug operator simplified 2022-11-18 12:15:20 +01:00
Uwe Rathmann 116b835906 metatype registrations moved to class implementations 2022-11-18 09:44:11 +01:00
Uwe Rathmann 5356f0ce88 Q_INVOKABLE for READ/WRITE property accessors removed. do not make sense
and lead to assertions, when Qt has been built in debug mode
2022-11-18 09:12:13 +01:00
Uwe Rathmann 974e7372dd code moved to QskColorRamp 2022-11-16 17:26:50 +01:00
Uwe Rathmann d327a68fc1 missing setStops versions added 2022-11-16 16:19:19 +01:00
Uwe Rathmann 0f028e4239 qsb files recreated 2022-11-16 16:00:36 +01:00
Uwe Rathmann ff0599686d unused parameters removed 2022-11-16 14:33:10 +01:00
Uwe Rathmann 18b0594cd6 internal API simplyfied 2022-11-16 14:23:47 +01:00
Uwe Rathmann 615e0016c2 working more with RGBA values instead of QColor 2022-11-16 13:46:37 +01:00
Uwe Rathmann 31577cab9b pointless reset operations removed 2022-11-16 13:25:17 +01:00
Uwe Rathmann 70f4d28285 using QRgb instead of QColor 2022-11-14 09:01:07 +01:00
Uwe Rathmann 688c7881b2 missing setter for Qt::GlobalColor added 2022-11-14 09:00:02 +01:00
Uwe Rathmann 33bb68d903 more APIs for working with QRgb 2022-11-14 08:56:30 +01:00
Uwe Rathmann b140d1b30a QskGradientDirection introduced - no more classes derived from
QskGradient
2022-11-13 17:22:09 +01:00
Uwe Rathmann a658a2a4e4 palette -> colorRamp 2022-11-13 11:05:53 +01:00
Uwe Rathmann 0fb4b25bba making QskGradient types acessible for QML ( mot 100% happy with using
lists )
2022-11-13 10:09:18 +01:00
Uwe Rathmann f988805f95 DefaultProperty added 2022-11-04 17:16:38 +01:00
Uwe Rathmann b64f92e695 properties changed 2022-11-04 17:16:12 +01:00
Uwe Rathmann f14036c124 using QskGrdient::Stops for separator hints 2022-10-31 18:02:35 +01:00
Uwe Rathmann fe8e696f40 debug operator fixed 2022-10-31 17:35:47 +01:00
Uwe Rathmann 4c73c1fd7b QskBoxBorderColors interpolation fixed 2022-10-31 17:35:13 +01:00
Uwe Rathmann ad67d035f3 new QskGradient 2022-10-31 14:42:08 +01:00
Uwe Rathmann 38bc3286cd QskGradient improved ( linear/radial/conic gradients ) 2022-10-31 14:22:20 +01:00
Uwe Rathmann bad4f90a16 if/else cascade reordered 2022-10-25 18:19:32 +02:00
Uwe Rathmann 506dd4f60c working towards introducing new type of gradients 2022-10-25 18:17:21 +02:00
Uwe Rathmann 5712873f21 missing Q_ENUM added 2022-10-25 11:02:10 +02:00
Uwe Rathmann e67b0b385a allowing gradient stops that do not start/end with 0.0/1.0 ( like
QGradient )
2022-10-24 17:29:39 +02:00
Uwe Rathmann 1f28eec9de working towards improved QskGradient 2022-10-24 17:08:48 +02:00
Uwe Rathmann 03ce740b29 towards improved QskGradient 2022-10-24 16:40:47 +02:00
Uwe Rathmann 99132276fc first adjustments for QskGradient improvements 2022-10-24 16:02:46 +02:00
Uwe Rathmann 4a04a27d0d making code more readable 2022-10-21 16:49:05 +02:00
Uwe Rathmann f0c9548b4c using QskGradient::isVisisble() instead of isValid() 2022-10-21 16:46:59 +02:00
Uwe Rathmann fdf0e1fdb9 pointless forward declaration removed 2022-10-21 16:44:31 +02:00
Uwe Rathmann d3f9e97301 unused private methods removed 2022-10-20 10:22:13 +02:00
Uwe Rathmann b1f63999c6 preparations for gradient updates 2022-10-20 09:29:20 +02:00
Uwe Rathmann d5ba7d9504 QskGradient::qtStops added 2022-10-20 09:22:11 +02:00
Uwe Rathmann 4ca794f7db linear shaders modified 2022-10-18 17:37:31 +02:00
Uwe Rathmann 0d49820cad bad memory allocation size fixed 2022-10-18 17:36:55 +02:00
Uwe Rathmann 4592ebfd3d Merge branch 'master' of https://github.com/uwerat/qskinny 2022-10-15 13:25:25 +02:00
Uwe Rathmann b6032f007c wrong check fixed 2022-10-15 13:24:58 +02:00
Uwe Rathmann 618a97235e auto keyword 2022-10-14 17:13:57 +02:00
Uwe Rathmann 6fef215310 using QskGradient::hash 2022-10-14 17:13:33 +02:00
Uwe Rathmann 51a7e4e589 Using our own gradient shaders ( no dependencies from quickshapes
anymore ). shapes/Gradient has not yet been merged into QskGradient
and we still have some stupid conversions to QGradient in the way.
2022-10-13 19:39:57 +02:00
Uwe Rathmann 929c02fa0e colorTable generation added 2022-10-13 19:39:24 +02:00
Uwe Rathmann 8da486a13f QskGradientStops moved from QskGradient.h to QskGradientStop.h 2022-10-13 19:37:49 +02:00
Uwe Rathmann 9d640d3f06 Qt5 fixes 2022-10-07 16:17:52 +02:00
Uwe Rathmann 1c98c90e8c radial gradints fixed 2022-10-07 14:32:20 +02:00
Uwe Rathmann 477a284cfa more expressive API 2022-10-05 09:38:35 +02:00
Uwe Rathmann 8052074c42 Conical->Conic ( following CSS naming ) 2022-10-04 12:46:17 +02:00
Uwe Rathmann f031e78a7b storing path and transformation to know when geometry updates are
necessary
2022-09-30 15:23:55 +02:00
Uwe Rathmann ee7dbb300a scaling of pens moved to QskStrokeNode 2022-09-30 15:09:52 +02:00
Uwe Rathmann cd19b047ab setting an initial material, so that the node can be inserted into the
scene grapf without rnning into Qt assertions
2022-09-30 15:08:19 +02:00
Uwe Rathmann 45e59d6c10 wip 2022-09-29 17:26:15 +02:00
Uwe Rathmann f798f2228c more details around shapes 2022-09-29 16:50:46 +02:00
Uwe Rathmann 634ca3bed3 smarter matrial updates 2022-09-29 12:40:22 +02:00
Uwe Rathmann b138d04053 shaders for gradients ( QGradient variations ) added 2022-09-28 20:14:10 +02:00
Uwe Rathmann a13dcf8428 QskShapeNode added 2022-09-26 17:51:07 +02:00
Uwe Rathmann 12e462e657 filling the vertex buffer fixed 2022-09-26 17:50:07 +02:00
Uwe Rathmann 60efe3649b QSK_EXPORT added 2022-09-26 17:49:47 +02:00
Uwe Rathmann 3ccaa113fd QskShapeNode introduced ( completely untestest, without gradients in the
first version )
2022-09-26 14:44:23 +02:00
Uwe Rathmann 96906e04ca code reorganized 2022-09-26 14:44:06 +02:00
Uwe Rathmann b2d7d77640 QskStrokeNode introduced ( untested so far ) 2022-09-23 17:49:49 +02:00
Uwe Rathmann ab34af0b03 include changed 2022-09-23 17:49:13 +02:00
Uwe Rathmann 9cb3bc6ab9 compare operation fixed 2022-09-23 12:39:34 +02:00
Uwe Rathmann 36e84e53b6 code simplified 2022-09-20 08:43:39 +02:00
Uwe Rathmann 3a0796e085 calculation of the cube animtor matrix aligned ( still some questions
left concerning non symmetric calculations )
2022-09-16 18:06:16 +02:00
Uwe Rathmann cb67a057d7 compiler error fixed 2022-09-13 13:05:47 +02:00
Uwe Rathmann 4f8a76234a index added for animator lookups to allow smooth transitions f.e when
selcting an cell in a list box
2022-09-13 12:40:44 +02:00
Uwe Rathmann 7ca1e2f261 uncrustified 2022-09-13 12:22:20 +02:00
Uwe Rathmann 1900adbabb Using a flat map ( sorted std::vector ) instead of a std:map for the
animators. Preperations for inntroducing aspect/index as lookup key.
2022-09-12 18:18:51 +02:00
Uwe Rathmann a4a6e28ecc unused member removed 2022-09-12 18:16:07 +02:00
Uwe Rathmann cb7acb6b92 QskDialogButton subcontrols removed. In case we need to make them
different from normal push buttons we should introduce a "dialog" section, where we can avoid having to duplicate all hint settings
2022-09-09 12:36:21 +02:00
Uwe Rathmann 4ca5e798c8 broken state changes fixed 2022-09-09 12:01:30 +02:00
Uwe Rathmann 996e849fc5 startHintTransitions added to be able to start transitions withot
changing the state
2022-09-09 11:29:47 +02:00
Uwe Rathmann 47df732f4a better seperation between state animators and those for skin changes 2022-09-09 10:25:46 +02:00
Uwe Rathmann 50ec41868d some APIs narrowed from QskAspect to QskAspect::Subcontrol 2022-09-09 09:30:15 +02:00
Uwe Rathmann beddc2569f early check for animators 2022-09-06 08:00:18 +02:00
Uwe Rathmann b926476e55 QskHintAnimatorTable::isEmpty added 2022-09-06 07:57:08 +02:00
Uwe Rathmann 8088664465 less operator added 2022-09-04 10:37:40 +02:00
Uwe Rathmann bfab362bbb Qt 6.4 compatibility fix 2022-08-29 17:44:57 +02:00
Uwe Rathmann c72f4be8d6 crashes fixed 2022-08-29 15:42:19 +02:00
Uwe Rathmann df5eb382f9 QskSubcontrolLayoutEngine improved 2022-08-29 15:02:43 +02:00
Uwe Rathmann 45e157c2c6 code moved to QskSubcontrolLayoutEngine 2022-08-29 14:17:13 +02:00
Uwe Rathmann 1cb0461829 debug print removed 2022-08-29 12:06:35 +02:00
Uwe Rathmann 4c190ffe49 unregisterFactories added 2022-08-29 10:28:13 +02:00
Uwe Rathmann 2479064f58 spacing added 2022-08-26 13:19:37 +02:00
Uwe Rathmann b84dfc8226 QskSubcontrolLayoutEngine introduced 2022-08-26 12:56:12 +02:00
Uwe Rathmann 896145ac11 QskTextOptions as skin hints 2022-08-25 09:39:33 +02:00
Uwe Rathmann 9daf934426 QskLayoutElement introduced 2022-08-06 15:41:32 +02:00
Uwe Rathmann bc5510f7ef temporary improvements for push buttons - until we have a general layout class
for graphic/text combinations
2022-08-03 18:28:53 +02:00
Uwe Rathmann be53343375 do not align to scene coordinates for transformations beyond
translations
2022-08-03 09:39:15 +02:00
Peter Hartmann 8bbc14b02b stack box: Add cube effect 2022-08-03 08:23:20 +02:00
Uwe Rathmann 83c9837e6a dead member definitions removed 2022-07-29 11:21:12 +02:00
Uwe Rathmann 6c778c4b07 qskAlignedRect overloads 2022-07-28 16:51:20 +02:00
Uwe Rathmann c67a594d07 whitespaces removed 2022-07-28 16:50:55 +02:00
Uwe Rathmann 2737bc0be3 sourceSize members replaced by strutSizeHints to make icons sizes
configurable in the skin
2022-07-28 11:37:14 +02:00
Uwe Rathmann 5db2f636f3 using radians isntead of degrees 2022-07-25 18:51:07 +02:00
Uwe Rathmann b6031f4703 some improvememts for stack box flipping 2022-07-25 18:42:18 +02:00
Uwe Rathmann 168b8be9d0 flipping QskStackBoxAnimator added 2022-07-19 16:50:40 +02:00
Uwe Rathmann cb6ec8437c QskPushButtonSkinlet::rippleRect simplified 2022-07-18 16:40:53 +02:00
Uwe Rathmann 55b2235d18 lineCount fixed ( clip nodes ended up with a final line with random
coordinates )
2022-07-18 16:27:22 +02:00
Uwe Rathmann d7d90a9dc8 using QskSGNode::ensureNode 2022-07-18 16:26:49 +02:00
Uwe Rathmann 9fdaf8aef6 clipping the ripple into the button panel 2022-07-18 09:11:45 +02:00
Uwe Rathmann 0390166783 using built in QskHintAnimators 2022-07-17 16:01:46 +02:00
Uwe Rathmann 0a6ed7deb1 aspect resolving of animated values fixed ( placement/section bits ) 2022-07-17 15:59:53 +02:00
Uwe Rathmann e6fb38d383 minor cleanups 2022-07-17 14:44:19 +02:00
Peter Hartmann 7eed06659b push button: Allow for animations when clicking
Which e.g. the Material 3 style does
2022-07-15 13:50:04 +02:00
Uwe Rathmann 4ef3fe3164 initial tabbar position as skin hint ( QskTabBar::Panel | QskAspect::Style ) 2022-07-15 10:44:32 +02:00
Peter Hartmann 07e3cf7fd6 Add top level application view 2022-07-15 07:55:13 +02:00
Peter Hartmann 48a902a660 scroll view: Allow styling via panel 2022-07-15 07:55:13 +02:00
Uwe Rathmann 209fbaef97 keep upper case letters for skin names 2022-07-14 13:55:35 +02:00
Uwe Rathmann 5f4a8aae6d Merge branch 'material-theme' of https://github.com/edelhirsch/qskinny into edelhirsch-material-theme 2022-07-07 08:42:59 +02:00
Uwe Rathmann d89adc4459 Qtcalculations only for Qt::MinimumSize 2022-07-07 08:39:29 +02:00
Peter Hartmann f6a4e8d2d6 QskSubWindow: Respect minimum size
E.g. Material 3 dialogs have a minimum size
2022-07-07 08:20:31 +02:00
Peter Hartmann 9ecafddc49 Slider: Add ripple and style it 2022-07-05 13:41:18 +02:00
Peter Hartmann 2129e235b7 remove leftover change in segmented bar 2022-07-05 09:52:03 +02:00
Peter Hartmann 53faf27d8f Merge branch 'uwerat-master' into material-theme
This means remove the outlined and text buttons for now
2022-07-05 09:33:43 +02:00
Uwe Rathmann f7cd259fb0 using QskSkin::symbol for the indicator 2022-07-01 12:40:52 +02:00
Uwe Rathmann 5545d124e8 CheckMark, CrossMark symbols introduced 2022-07-01 12:39:28 +02:00
Uwe Rathmann f06e47613a QskGraphic::fraomGraphic introduced 2022-07-01 12:37:58 +02:00
Uwe Rathmann 080fcdb69f Starting with a simpler version of QskCheckBox ( no tristate ), but with
having an optional text.
2022-07-01 11:10:59 +02:00
Uwe Rathmann 3c5b6f9f01 QskAbstractButton::Flat removed, using QskAspect::Header instead 2022-06-29 16:21:54 +02:00
Uwe Rathmann 05857418f1 Merge branch 'master' of https://github.com/uwerat/qskinny 2022-06-29 16:16:07 +02:00
Uwe Rathmann 62fcbc6c32 QskAspect::Section introduced 2022-06-29 16:15:38 +02:00
Uwe 6cbc0595e1 avoid pointless gcc11 stringop-overflow warnings 2022-06-28 09:20:22 +02:00
Peter Hartmann 6332a27764 fix build after merge 2022-06-27 14:50:54 +02:00
Peter Hartmann 212090f62a Merge branch 'uwerat-master' into material-theme 2022-06-27 14:00:13 +02:00
Uwe Rathmann 44e264d472 returning an empty rect for the separator behind the last segment 2022-06-27 13:44:44 +02:00
Peter Hartmann 8ee9e8ed22 segmented bar: Add separator subcontrol 2022-06-27 13:31:17 +02:00
Peter Hartmann e7d05b5c98 segmented bar: Respect padding hint for graphic 2022-06-27 13:31:17 +02:00