Add lambda expressions

This commit is contained in:
James Westman 2022-01-29 22:37:00 -06:00
parent 012bdf6843
commit fc497ac9e6
No known key found for this signature in database
GPG key ID: CE2DBA0ADB654EA6
18 changed files with 247 additions and 80 deletions

View file

@ -1 +1 @@
3,29,13,Namespace Gtk does not contain a class called NotARealClass
3,29,13,Namespace Gtk does not contain a type called NotARealClass

9
tests/samples/lambda.blp Normal file
View file

@ -0,0 +1,9 @@
using Gtk 4.0;
Gtk.BoolFilter filter {
expression: (Gtk.Label object) => object.visible;
}
Gtk.BoolFilter {
expression: (Gtk.Label object) => filter.invert;
}

16
tests/samples/lambda.ui Normal file
View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"/>
<object class="GtkBoolFilter" id="filter">
<property name="expression">
<lookup name="visible" type="GtkLabel"/>
</property>
</object>
<object class="GtkBoolFilter">
<property name="expression">
<lookup name="invert">
<constant>filter</constant>
</lookup>
</property>
</object>
</interface>

View file

@ -0,0 +1,3 @@
using Gtk 4.0;
template MyWidget : .MyBaseWidget {}

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"/>
<template class="MyWidget" parent="MyBaseWidget"></template>
</interface>

View file

@ -141,6 +141,7 @@ class TestSamples(unittest.TestCase):
self.assert_sample("flags")
self.assert_sample("id_prop")
self.assert_sample("inline_menu")
self.assert_sample("lambda")
self.assert_sample("layout")
self.assert_sample("menu")
self.assert_sample("numbers")
@ -153,6 +154,7 @@ class TestSamples(unittest.TestCase):
self.assert_sample("strings")
self.assert_sample("style")
self.assert_sample("template")
self.assert_sample("template_custom_parent")
self.assert_sample("template_no_parent")
self.assert_sample("translated")
self.assert_sample("uint")