fix app title.

merge subject classes.

modify obsevers callback

ensure sunvalley theme loaded only once.

minor version bump
This commit is contained in:
onyx-and-iris
2022-06-20 00:09:27 +01:00
parent 60e55fd7f9
commit fd30a5ef0d
8 changed files with 59 additions and 70 deletions

View File

@@ -1,35 +1,36 @@
class Subject:
"""Adds support for observers"""
def __init__(self):
"""list of current observers"""
self._observables = []
self._observers = list()
def notify(self, modifier=None):
"""run callbacks on update"""
for observer in self._observables:
observer.on_update()
[o.on_update(modifier) for o in self._observers]
def add(self, observer):
"""adds an observer to observables"""
if observer not in self._observables:
self._observables.append(observer)
if observer not in self._observers:
self._observers.append(observer)
def remove(self, observer):
"""removes an observer from observables"""
try:
self._observables.remove(observer)
self._observers.remove(observer)
except ValueError:
pass
def get(self) -> list:
"""returns the current observables"""
return self._observables
return self._observers
def clear(self):
"""clears the observables list"""
self._observables.clear()
self._observers.clear()