mirror of
https://github.com/slint-ui/slint.git
synced 2025-12-23 09:19:32 +00:00
67 lines
1.9 KiB
Text
67 lines
1.9 KiB
Text
// Copyright © SixtyFPS GmbH <info@slint.dev>
|
|
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.1 OR LicenseRef-Slint-commercial
|
|
|
|
TestCase := Rectangle {
|
|
property<int> a;
|
|
property<int> t1: 4 + 3 * 2 + 2 - 50 - 2;
|
|
property<int> t2: 500 / 2 * 30 - 1;
|
|
property<int> t3: a - (3 + ++2 * (a + 2));
|
|
property<int> t4: 3 + - +5 - 8 - -9 * --- 120;
|
|
|
|
property <length> len: 50px / 2;
|
|
|
|
callback foo;
|
|
foo => {
|
|
a += +8;
|
|
a *= 10;
|
|
a /= 2;
|
|
a -= 3;
|
|
|
|
len += 1px;
|
|
len /= 2;
|
|
len -= 3px;
|
|
len *= 3;
|
|
}
|
|
}
|
|
/*
|
|
```cpp
|
|
auto handle = TestCase::create();
|
|
const TestCase &instance = *handle;
|
|
assert_eq(instance.get_t1(), 4 + 3 * 2 + 2 - 50 - 2);
|
|
assert_eq(instance.get_t2(), 500 / 2 * 30 - 1);
|
|
instance.set_a(42);
|
|
assert_eq(instance.get_t3(), 42 - (3 + 2 * (42 + 2)));
|
|
assert_eq(instance.get_t4(), 3 + - 5 - 8 - -9 * - - - 120);
|
|
instance.invoke_foo();
|
|
assert_eq(instance.get_a(), (((42 + 8) * 10) / 2) - 3);
|
|
|
|
assert_eq(instance.get_len(), ((25.+1.)/2. - 3.) * 3.);
|
|
```
|
|
|
|
|
|
```rust
|
|
let instance = TestCase::new().unwrap();
|
|
assert_eq!(instance.get_t1(), 4 + 3 * 2 + 2 - 50 - 2);
|
|
assert_eq!(instance.get_t2(), 500 / 2 * 30 - 1);
|
|
instance.set_a(42);
|
|
assert_eq!(instance.get_t3(), 42 - (3 + 2 * (42 + 2)));
|
|
assert_eq!(instance.get_t4(), 3 + - 5 - 8 - -9 * --- 120);
|
|
instance.invoke_foo();
|
|
assert_eq!(instance.get_a(), (((42 + 8) * 10) / 2) - 3);
|
|
|
|
assert_eq!(instance.get_len(), ((25.+1.)/2. - 3.) * 3.);
|
|
```
|
|
|
|
```js
|
|
var instance = new slint.TestCase({});
|
|
assert.equal(instance.t1, 4 + 3 * 2 + 2 - 50 - 2);
|
|
assert.equal(instance.t2, 500 / 2 * 30 - 1);
|
|
instance.a = 42;
|
|
assert.equal(instance.t3, 42 - (3 + 2 * (42 + 2)));
|
|
assert.equal(instance.t4, 3 + - 5 - 8 - -9 * - - - 120);
|
|
instance.foo();
|
|
assert.equal(instance.a, (((42 + 8) * 10) / 2) - 3);
|
|
|
|
assert.equal(instance.len, ((25.+1.)/2. - 3.) * 3.);
|
|
```
|
|
*/
|