Commit Graph

1585 Commits

Author SHA1 Message Date
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