Imaginer/src/preferences.py
0xMRTT f818bd4b50
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
fix: rework provider loading mechanism and fix bug
2023-05-18 15:20:00 +02:00

30 lines
907 B
Python

from gi.repository import Gtk, Adw
from .provider import PROVIDERS
@Gtk.Template(resource_path="/page/codeberg/Imaginer/Imaginer/ui/preferences.ui")
class Preferences(Adw.PreferencesWindow):
__gtype_name__ = "Preferences"
provider_group = Gtk.Template.Child()
def __init__(self, application, **kwargs):
super().__init__(**kwargs)
self.app = application
self.settings = application.settings
self.setup_providers()
def setup_providers(self):
for provider in PROVIDERS.values():
if provider.slug in self.app.providers:
self.provider_group.add(
self.app.providers[provider.slug].preferences(win=self.app.win)
)
else:
self.provider_group.add(
provider(self.app.win, self.app).preferences(win=self.app.win)
)