mirror of
https://gitlab.gnome.org/jwestman/blueprint-compiler.git
synced 2025-05-04 15:59:08 -04:00
Fix templates in bind-property
This commit is contained in:
parent
b5eca8b0b3
commit
3ebe5c72c1
4 changed files with 23 additions and 1 deletions
|
@ -141,7 +141,16 @@ class XmlOutput(OutputFormat):
|
||||||
if value.bidirectional:
|
if value.bidirectional:
|
||||||
bind_flags.append("bidirectional")
|
bind_flags.append("bidirectional")
|
||||||
|
|
||||||
props["bind-source"] = value.source
|
if (
|
||||||
|
value.source == "template"
|
||||||
|
and value.context[ScopeCtx].template is not None
|
||||||
|
):
|
||||||
|
props["bind-source"] = value.context[
|
||||||
|
ScopeCtx
|
||||||
|
].template.gir_class.glib_type_name
|
||||||
|
else:
|
||||||
|
props["bind-source"] = value.source
|
||||||
|
|
||||||
props["bind-property"] = value.property_name
|
props["bind-property"] = value.property_name
|
||||||
props["bind-flags"] = "|".join(bind_flags) or None
|
props["bind-flags"] = "|".join(bind_flags) or None
|
||||||
xml.put_self_closing("property", **props)
|
xml.put_self_closing("property", **props)
|
||||||
|
|
5
tests/samples/template_bind_property.blp
Normal file
5
tests/samples/template_bind_property.blp
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
using Gtk 4.0;
|
||||||
|
|
||||||
|
template $MyTemplate {
|
||||||
|
object: bind-property template.object2;
|
||||||
|
}
|
7
tests/samples/template_bind_property.ui
Normal file
7
tests/samples/template_bind_property.ui
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<interface>
|
||||||
|
<requires lib="gtk" version="4.0"/>
|
||||||
|
<template class="MyTemplate">
|
||||||
|
<property name="object" bind-source="MyTemplate" bind-property="object2" bind-flags="sync-create"/>
|
||||||
|
</template>
|
||||||
|
</interface>
|
|
@ -177,6 +177,7 @@ class TestSamples(unittest.TestCase):
|
||||||
"template",
|
"template",
|
||||||
"template_binding",
|
"template_binding",
|
||||||
"template_binding_extern",
|
"template_binding_extern",
|
||||||
|
"template_bind_property",
|
||||||
"template_id",
|
"template_id",
|
||||||
"template_no_parent",
|
"template_no_parent",
|
||||||
"template_simple_binding",
|
"template_simple_binding",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue