Fix bug with inline menus

Fixes #44
This commit is contained in:
James Westman 2022-02-21 14:08:42 -06:00
parent 8ce748e62b
commit 4b42016837
6 changed files with 24 additions and 2 deletions

View file

@ -19,12 +19,12 @@
from .attributes import BaseAttribute
from .gobject_object import ObjectContent
from .gobject_object import Object, ObjectContent
from .ui import UI
from .common import *
class Menu(AstNode):
class Menu(Object):
def emit_xml(self, xml: XmlEmitter):
xml.start_tag(self.tokens["tag"], id=self.tokens["id"])
for child in self.children:

View file

@ -0,0 +1,5 @@
using Gtk 4.0;
Button {
label: menu {};
}

View file

@ -0,0 +1 @@
4,3,15,Cannot assign Gio.MenuModel to string

View file

@ -0,0 +1,5 @@
using Gtk 4.0;
MenuButton {
menu-model: menu primary_menu {};
}

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"/>
<object class="GtkMenuButton">
<property name="menu-model">
<menu id="primary_menu"></menu>
</property>
</object>
</interface>

View file

@ -124,6 +124,7 @@ class TestSamples(unittest.TestCase):
self.assert_sample("file_filter")
self.assert_sample("flags")
self.assert_sample("id_prop")
self.assert_sample("inline_menu")
self.assert_sample("layout")
self.assert_sample("menu")
self.assert_sample("object_prop")
@ -146,6 +147,7 @@ class TestSamples(unittest.TestCase):
self.assert_sample_error("a11y_prop_dne")
self.assert_sample_error("a11y_prop_obj_dne")
self.assert_sample_error("a11y_prop_type")
self.assert_sample_error("assign_inline_menu")
self.assert_sample_error("action_widget_float_response")
self.assert_sample_error("action_widget_have_no_id")
self.assert_sample_error("action_widget_multiple_default")