def GDKWindow(parent=None, width=1, height=1, window_type=Gdk.WindowType.TOPLEVEL, event_mask=0, wclass=Gdk.WindowWindowClass.INPUT_OUTPUT, title=None, x=None, y=None, override_redirect=False, visual=None) -> Gdk.Window: attributes_mask = 0 attributes = Gdk.WindowAttr() if x is not None: attributes.x = x attributes_mask |= Gdk.WindowAttributesType.X if y is not None: attributes.y = y attributes_mask |= Gdk.WindowAttributesType.Y #attributes.type_hint = Gdk.WindowTypeHint.NORMAL #attributes_mask |= Gdk.WindowAttributesType.TYPE_HINT attributes.width = width attributes.height = height attributes.window_type = window_type if title: attributes.title = title attributes_mask |= Gdk.WindowAttributesType.TITLE if visual: attributes.visual = visual attributes_mask |= Gdk.WindowAttributesType.VISUAL #OR: attributes.override_redirect = override_redirect attributes_mask |= Gdk.WindowAttributesType.NOREDIR #events: attributes.event_mask = event_mask #wclass: attributes.wclass = wclass mask = Gdk.WindowAttributesType(attributes_mask) return Gdk.Window(parent, attributes, mask)