| 17 | |
| 18 | |
| 19 | class LangObject(GObject.Object): |
| 20 | __gtype_name__ = "LangObject" |
| 21 | |
| 22 | code: str = GObject.Property(type=str) # type: ignore |
| 23 | name: str = GObject.Property(type=str) # type: ignore |
| 24 | selected: bool = GObject.Property(type=bool, default=False) # type: ignore |
| 25 | |
| 26 | def __init__(self, code: str, name: str, selected=False): |
| 27 | super().__init__() |
| 28 | |
| 29 | self.code = code |
| 30 | self.name = name |
| 31 | self.selected = selected |
| 32 | |
| 33 | def __str__(self) -> str: |
| 34 | return self.code |
| 35 | |
| 36 | |
| 37 | class LanguagesListModel(GObject.GObject, Gio.ListModel): |