2163 Commits

Author SHA1 Message Date
Uwe Rathmann
8318ff757b update issues with gradients fixed 2022-12-10 16:08:32 +01:00
Uwe Rathmann
a48943e68f initial implementation for the playground/gradients added. This demo is
intended to compare how gradients are rendered with the different QSkinny
backends to the raster paint engine
2022-12-09 12:07:46 +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
740101b9a2 Qt5 compiler error fixed 2022-12-05 13:56:15 +01:00
Uwe Rathmann
296b2f368a code simplified/harmonized 2022-12-05 13:05:13 +01:00
Uwe Rathmann
71321578a6 missing include ( Qt5 ) added 2022-12-05 13:04:46 +01:00
Uwe Rathmann
125fe1e9f4 QskBoxNode renamed to QskBoxRectangleNode, QskShadedBoxNode renamed to QskBoxNode 2022-12-05 12:34:08 +01:00
Uwe Rathmann
c1e194b464 hide QskScrollView::Panel 2022-12-05 12:06:49 +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
ac73161e33 compiler warning fixed 2022-12-03 17:24:25 +01:00
Uwe Rathmann
fad8d8a616 alternative qml implementation added ( can be started with shapes -qml ) 2022-12-03 17:19:07 +01:00
Uwe Rathmann
b7434939ec more metatype information 2022-12-03 17:17:54 +01:00
Uwe Rathmann
cf9d203e48 exposing more methods to QML 2022-12-03 17:17:21 +01:00
Uwe Rathmann
1e7dde8f53 minor fixes 2022-12-03 10:38:42 +01:00
Uwe Rathmann
2fce815925 working towards an API, that works for QML 2022-12-02 16:30:01 +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
57c25294c4 replace qmlRegister methods by setting the registration info manually.
Hopefully this allows better finetuning and validating of what is possible in QML
for the various Qt versions.

In the long run we might want to qualify the class definitions with
QML_ELEMENT and friends to have better tool support ( qmlcachegen ??? )
See https://www.qt.io/blog/qml-type-registration-in-qt-5.15
2022-11-29 17:24:40 +01:00
Uwe Rathmann
bbfc16c609 improving Qml support or QskGradient 2022-11-29 10:59:09 +01:00
Uwe Rathmann
47fad1be18 png files removed 2022-11-24 11:54:05 +01:00
Uwe Rathmann
8132c8a416 render bug fixed 2022-11-24 11:31:49 +01:00
Uwe Rathmann
86cb02466c Merge branch 'master' of https://github.com/uwerat/qskinny 2022-11-24 09:10:49 +01:00
Uwe Rathmann
8435c60b03 using c++ auto 2022-11-24 09:08:53 +01:00
Uwe Rathmann
bfdecc0413 using qvg files to get rid of the qsvg dependency 2022-11-24 09:06:39 +01:00