Implements @radial-gradient(circle, ...)

Only the circle is implemented so far.

Part of #263
This commit is contained in:
Olivier Goffart 2022-05-19 12:43:20 +02:00 committed by Olivier Goffart
parent 7a1e5bef93
commit b4ebd88d35
21 changed files with 418 additions and 56 deletions

View file

@ -0,0 +1,28 @@
// Copyright © SixtyFPS GmbH <info@slint-ui.com>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-commercial
X := Rectangle {
property<brush> g1: @radial-gradient();
// ^error{Expected 'circle': currently, only @radial-gradient\(circle, ...\) are supported}
property<brush> g2: @radial-gradient(circle at 100%, #333, #333 50%, #eee 75%, #333 75%);
// ^error{'at' in @radial-gradient is not yet supported}
property<brush> g3: @radial_gradient(circle, blue, red);
property<brush> g4: @radial_gradient(circle, blue 45%, red red);
// ^error{Cannot convert color to float}
property<brush> g5: @radial-gradient(ellipse at top, #e66465, transparent);
// ^error{Expected 'circle': currently, only @radial-gradient\(circle, ...\) are supported}
property<brush> g6: @radial-gradient(circle, blue 45%, red 88%);
property<brush> g7: @radial-gradient(circle, 42 45%, red 0.3);
// ^error{Cannot convert float to color}
property<brush> g8: @radial-gradient(90px, blue, red ,green);
// ^error{Expected 'circle': currently, only @radial-gradient\(circle, ...\) are supported}
property<brush> g9: @radial-gradient(circle blue, blue, red);
// ^error{'circle' must be followed by a comma}
property<brush> g10: @radial-gradient(circle, blue 10% red 20%, yellow);
// ^error{Expected comma}
property<brush> g11: @radial-gradient(circle,);
property<brush> g12: @radial-gradient(circle);
}