diff --git a/blueprintcompiler/language/gtkbuilder_template.py b/blueprintcompiler/language/gtkbuilder_template.py
index ffee11c..6ab6c5a 100644
--- a/blueprintcompiler/language/gtkbuilder_template.py
+++ b/blueprintcompiler/language/gtkbuilder_template.py
@@ -26,7 +26,7 @@ from .types import ClassName
class Template(Object):
grammar = [
"template",
- UseIdent("name").expected("template class name"),
+ UseIdent("id").expected("template class name"),
Optional([
Match(":"),
to_parse_node(ClassName).expected("parent class"),
@@ -40,7 +40,7 @@ class Template(Object):
if len(self.children[ClassName]):
return self.children[ClassName][0].gir_type
- @validate("name")
+ @validate("id")
def unique_in_parent(self):
self.validate_unique_in_parent(f"Only one template may be defined per file, but this file contains {len(self.parent.children[Template])}",)
@@ -52,7 +52,7 @@ class Template(Object):
xml.start_tag(
"template",
- **{"class": self.tokens["name"]},
+ **{"class": self.tokens["id"]},
parent=parent
)
diff --git a/tests/samples/template.blp b/tests/samples/template.blp
index 570dca7..7773e25 100644
--- a/tests/samples/template.blp
+++ b/tests/samples/template.blp
@@ -4,3 +4,7 @@ template TestTemplate : ApplicationWindow {
test-property: "Hello, world";
test-signal => on_test_signal();
}
+
+Dialog {
+ transient-for: TestTemplate;
+}
\ No newline at end of file
diff --git a/tests/samples/template.ui b/tests/samples/template.ui
index 095fbd8..aebec5e 100644
--- a/tests/samples/template.ui
+++ b/tests/samples/template.ui
@@ -5,4 +5,7 @@
Hello, world
+