From 7fb0afda29625ce9166468165ec296213ba2588f Mon Sep 17 00:00:00 2001 From: billyeatcookies Date: Sun, 7 Nov 2021 06:04:29 -0600 Subject: [PATCH] Add Resources Holder, Loader --- src/lib/res/__init__.py | 19 +++++++++++++++++++ src/lib/res/loadres.py | 10 ++++++++++ src/lib/root.py | 2 +- src/lib/settings/__init__.py | 7 ++++--- 4 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 src/lib/res/__init__.py create mode 100644 src/lib/res/loadres.py diff --git a/src/lib/res/__init__.py b/src/lib/res/__init__.py new file mode 100644 index 00000000..472d93e4 --- /dev/null +++ b/src/lib/res/__init__.py @@ -0,0 +1,19 @@ +import json +import tkinter as tk + +from .loadres import ResourcesLoader + +class Resources: + logo: tk.PhotoImage + + # TODO: more resources + # ... + + def __init__(self, master): + self.base = master.base + + self.loader = ResourcesLoader(self) + self.load_data() + + def load_data(self): + self.logo = self.loader.load_image("logo.png") diff --git a/src/lib/res/loadres.py b/src/lib/res/loadres.py new file mode 100644 index 00000000..c1e7c631 --- /dev/null +++ b/src/lib/res/loadres.py @@ -0,0 +1,10 @@ +import json, os +import tkinter as tk + + +class ResourcesLoader: + def __init__(self, master): + self.base = master.base + + def load_image(self, resource): + return tk.PhotoImage(file=self.base.get_res_path(resource)) diff --git a/src/lib/root.py b/src/lib/root.py index 46bddd01..7937e269 100644 --- a/src/lib/root.py +++ b/src/lib/root.py @@ -19,7 +19,7 @@ def __init__(self, path, dir=None, *args, **kwargs): self.base = Base(root=self) - # temp + # temp, move to a class, command palette menus = [("Test 1", lambda e=None: print("Test 1")), ("Test 2", lambda e=None: print("Test 2")), ("Test 3", lambda e=None: print("Test 3")), ("Test 4", lambda e=None: print("Test 4"))] diff --git a/src/lib/settings/__init__.py b/src/lib/settings/__init__.py index c460bc4b..e9e6cc24 100644 --- a/src/lib/settings/__init__.py +++ b/src/lib/settings/__init__.py @@ -2,19 +2,20 @@ import tkinter.font as Font from .. import config +from .. import res class Settings: - + font: Font config: config.Config bindings: config.Bindings - - font: Font theme: config.Theme + resources: res.Resources def __init__(self, base): self.base = base self.config = config.Config(self) + self.resources = res.Resources(self) self.setup_properties() def setup_properties(self):