Commit graph

30 commits

Author SHA1 Message Date
James Westman
52f7d790bd
tests: Test custom types in lookup expressions 2022-05-05 00:54:39 -05:00
James Westman
c7c32cbb4a
expressions: Validate lookup expressions 2022-05-05 00:54:22 -05:00
James Westman
3f7688a563
expressions: Add closure expressions 2022-05-05 00:54:22 -05:00
James Westman
207255897b
expressions: Add casts
These are sometimes necessary. In the future the compiler should be able
to detect when they will be necessary so we don't have to find out at
runtime.
2022-05-05 00:49:41 -05:00
James Westman
fc497ac9e6
Add lambda expressions 2022-05-05 00:49:36 -05:00
James Westman
012bdf6843
Add lookup expressions 2022-04-30 16:41:46 -05:00
James Westman
0da0c9399f
xml: Convert GirType to type name automatically
Makes some of the emit_xml code a bit simpler.
2022-04-30 16:41:45 -05:00
James Westman
99e428d93c validation: Disallow instantiating abstract classes 2022-04-28 23:35:34 -05:00
James Westman
f78478bea1 validation: Writable/construct-only properties
Add two new errors, one for non-writable properties and another for
binding construct-only properties.
2022-04-28 22:52:30 -05:00
James Westman
417f163a5a
Fix crash in flags value for unchecked classes 2022-04-18 15:42:55 -05:00
James Westman
3f8b38d219
Fix crash in action widget syntax 2022-04-18 15:35:19 -05:00
James Westman
4cf966eafa tests: Add GTK directive error tests 2022-03-28 14:38:05 -05:00
James Westman
a4ffdd944f language: a11y: Fix property names
Blueprint uses underscores in property/state/relation names, but
GtkBuilder expects dashes because it uses the glib names from the
GtkAccessible* enums.
2022-03-28 14:38:05 -05:00
James Westman
3f37380c25
tests: Test that docs & completions don't crash 2022-03-19 18:16:25 -05:00
James Westman
e6ad51c682
Show docs for flag values 2022-03-04 15:06:13 -06:00
James Westman
8ea06e8a78
Add validation for flag values 2022-03-02 14:06:57 -06:00
James Westman
bebe784d1d
Fix type check for flags when only one is present
When only one flag is specified, it's parsed as an IdentValue rather
than a FlagsValue, so IdentValue needs to be able to type check flags
(aka bitfields) properly.

Fixes #47
2022-03-02 13:57:30 -06:00
James Westman
4b42016837 Fix bug with inline menus
Fixes #44
2022-02-21 14:12:56 -06:00
Gleb Smirnov
cfa7278568
perf: cache action widgets to don't recalculate it 2022-02-19 12:59:42 +03:00
Gleb Smirnov
bb3f87ae51
fix: use cached_property instead of cache and property 2022-02-19 12:52:34 +03:00
Gleb Smirnov
4103ad3e71
fix: allow adding action widgets to GtkInfoBar 2022-02-19 12:51:34 +03:00
Gleb Smirnov
736681a841
feat: add syntax for GtkDialog's action widgets 2022-02-18 19:03:41 +03:00
James Westman
9873a2072b Add warning for sync-create 2022-02-09 15:39:02 -06:00
James Westman
32d4769f65 Change sync-create to no-sync-create
Fixes #31
2022-02-09 15:39:02 -06:00
James Westman
bac008296a
fix imports 2022-01-29 21:08:55 -06:00
James Westman
cb35acad17 Fix mypy issues 2022-01-28 14:07:29 -06:00
James Westman
1150ae1a09 reorganization: Move decompilers 2022-01-26 22:55:27 -06:00
James Westman
ee5f32622f reorganization: Finish moving parsing and AST 2022-01-26 22:37:51 -06:00
James Westman
8f9de81e24 reorganization: Move hooks to common.py
This allows them to be referenced before they are filled, helping avoid
circular dependencies.
2022-01-26 14:50:36 -06:00
James Westman
34f525beaa reorganization: Rename extensions -> language
I want all language elements to be defined in the same folder, rather
than having the "core" language split by parsing/AST/completions and the rest
split by language element.
2022-01-26 14:10:39 -06:00