diff --git a/g13gui/g13gui/bitwidgets/button.py b/g13gui/g13gui/bitwidgets/button.py index 6893a1d..522a127 100644 --- a/g13gui/g13gui/bitwidgets/button.py +++ b/g13gui/g13gui/bitwidgets/button.py @@ -4,7 +4,7 @@ from builtins import property from g13gui.bitwidgets import DISPLAY_WIDTH from g13gui.bitwidgets import DISPLAY_HEIGHT from g13gui.bitwidgets.widget import Widget -from g13gui.observer import ChangeType +from g13gui.observer.subject import ChangeType GLYPH_WIDTH = 5 diff --git a/g13gui/g13gui/bitwidgets/display.py b/g13gui/g13gui/bitwidgets/display.py index 0ca4e8e..ffe29d4 100644 --- a/g13gui/g13gui/bitwidgets/display.py +++ b/g13gui/g13gui/bitwidgets/display.py @@ -1,7 +1,8 @@ import PIL.ImageDraw import PIL.PyAccess from PIL import Image -from g13gui.observer import Subject + +from g13gui.observer.subject import Subject class Display(Subject): diff --git a/g13gui/g13gui/bitwidgets/label.py b/g13gui/g13gui/bitwidgets/label.py index fc8a7c3..55496a0 100644 --- a/g13gui/g13gui/bitwidgets/label.py +++ b/g13gui/g13gui/bitwidgets/label.py @@ -4,7 +4,7 @@ from builtins import property from g13gui.bitwidgets.widget import Widget from g13gui.bitwidgets.fonts import Fonts from g13gui.bitwidgets.fonts import FontManager -from g13gui.observer import ChangeType +from g13gui.observer.subject import ChangeType class Alignment(enum.Enum): diff --git a/g13gui/g13gui/bitwidgets/widget.py b/g13gui/g13gui/bitwidgets/widget.py index 9cb035e..4baf036 100644 --- a/g13gui/g13gui/bitwidgets/widget.py +++ b/g13gui/g13gui/bitwidgets/widget.py @@ -1,7 +1,8 @@ from builtins import property -from g13gui.observer import Subject -from g13gui.observer import Observer -from g13gui.observer import ChangeType + +from g13gui.observer.subject import Subject +from g13gui.observer.subject import ChangeType +from g13gui.observer.observer import Observer class Widget(Subject, Observer): diff --git a/g13gui/g13gui/g13/manager_tests.py b/g13gui/g13gui/g13/manager_tests.py index 9536a21..f07b421 100644 --- a/g13gui/g13gui/g13/manager_tests.py +++ b/g13gui/g13gui/g13/manager_tests.py @@ -3,14 +3,14 @@ import unittest import time import usb.util -import g13gui.observer as observer +from g13gui.observer.observer import ObserverTestCase from g13gui.model.prefs import Preferences from g13gui.g13.manager import Manager from g13gui.g13.manager import LCD_BUFFER_SIZE -class G13ManagerTests(observer.ObserverTestCase): +class G13ManagerTests(ObserverTestCase): def setUp(self): prefs = Preferences() self.m = Manager(prefs) diff --git a/g13gui/g13gui/main.py b/g13gui/g13gui/main.py index c138091..db9ac02 100644 --- a/g13gui/g13gui/main.py +++ b/g13gui/g13gui/main.py @@ -1,20 +1,21 @@ #!/usr/bin/python import gi -import json import queue -import g13gui.model as model import g13gui.ui as ui -from g13gui.g13d import G13DWorker -from g13gui.common import PROFILES_CONFIG_PATH +from g13gui.model.prefsstore import PreferencesStore +from g13gui.g13.manager import Manager gi.require_version('Gtk', '3.0') from gi.repository import Gtk, GObject if __name__ == '__main__': - prefs = model.PreferencesStore.getPrefs() + prefs = PreferencesStore.getPrefs() + manager = Manager(prefs) + manager.start() + queue = queue.Queue() win = ui.MainWindow(queue, prefs) @@ -22,7 +23,4 @@ if __name__ == '__main__': indicator = ui.AppIndicator(prefs, win) - worker = G13DWorker(queue, win) - worker.start() - Gtk.main() diff --git a/g13gui/g13gui/model/bindingprofile.py b/g13gui/g13gui/model/bindingprofile.py index 89aa52a..b371742 100644 --- a/g13gui/g13gui/model/bindingprofile.py +++ b/g13gui/g13gui/model/bindingprofile.py @@ -1,7 +1,7 @@ from builtins import property -from g13gui.observer import Subject -from g13gui.observer import ChangeType +from g13gui.observer.subject import Subject +from g13gui.observer.subject import ChangeType import g13gui.model.bindings as bindings diff --git a/g13gui/g13gui/model/bindingprofile_tests.py b/g13gui/g13gui/model/bindingprofile_tests.py index d263f41..d9a93a4 100644 --- a/g13gui/g13gui/model/bindingprofile_tests.py +++ b/g13gui/g13gui/model/bindingprofile_tests.py @@ -4,8 +4,8 @@ import unittest import g13gui.model.bindings as bindings from g13gui.model.bindingprofile import BindingProfile -from g13gui.observer import ChangeType -from g13gui.observer import ObserverTestCase +from g13gui.observer.subject import ChangeType +from g13gui.observer.observer import ObserverTestCase class PrefsTestCase(ObserverTestCase): diff --git a/g13gui/g13gui/model/prefs.py b/g13gui/g13gui/model/prefs.py index b67d66d..d31b3c7 100644 --- a/g13gui/g13gui/model/prefs.py +++ b/g13gui/g13gui/model/prefs.py @@ -4,8 +4,8 @@ import traceback from g13gui.common import VERSION from g13gui.model.bindingprofile import BindingProfile -from g13gui.observer import Subject -from g13gui.observer import ChangeType +from g13gui.observer.subject import Subject +from g13gui.observer.subject import ChangeType DEFAULT_PROFILE_NAME = 'Default Profile' diff --git a/g13gui/g13gui/model/prefs_tests.py b/g13gui/g13gui/model/prefs_tests.py index 982e5e3..55f7c08 100644 --- a/g13gui/g13gui/model/prefs_tests.py +++ b/g13gui/g13gui/model/prefs_tests.py @@ -4,8 +4,8 @@ import unittest import g13gui.model.prefs as prefs from g13gui.common import VERSION -from g13gui.observer import ChangeType -from g13gui.observer import ObserverTestCase +from g13gui.observer.subject import ChangeType +from g13gui.observer.observer import ObserverTestCase class PrefsTestCase(ObserverTestCase): diff --git a/g13gui/g13gui/model/prefsstore.py b/g13gui/g13gui/model/prefsstore.py index 51e0f0b..6d8fb34 100644 --- a/g13gui/g13gui/model/prefsstore.py +++ b/g13gui/g13gui/model/prefsstore.py @@ -1,6 +1,6 @@ import json -import g13gui.model as model +from g13gui.model.prefs import Preferences from g13gui.common import PROFILES_CONFIG_PATH @@ -10,9 +10,11 @@ class PreferencesStore(object): with open(PROFILES_CONFIG_PATH, 'r') as f: data = f.read() prefsDict = json.loads(data) - return model.Preferences(prefsDict) - except: - return model.Preferences() + return Preferences(prefsDict) + except Exception as e: + print('Unable to load preferences from %s: %s' + % (PROFILES_CONFIG_PATH, e)) + return Preferences() def storePrefs(prefs): prefsDict = prefs.saveToDict() diff --git a/g13gui/g13gui/observer/__init__.py b/g13gui/g13gui/observer/__init__.py index bc2e7fc..e69de29 100644 --- a/g13gui/g13gui/observer/__init__.py +++ b/g13gui/g13gui/observer/__init__.py @@ -1,5 +0,0 @@ -from g13gui.observer.observer import Observer -from g13gui.observer.observer import Subject -from g13gui.observer.observer import ObserverTestCase -from g13gui.observer.observer import ChangeType -from g13gui.observer.gtkobserver import GtkObserver diff --git a/g13gui/g13gui/observer/gtkobserver.py b/g13gui/g13gui/observer/gtkobserver.py index ad95da3..a181424 100644 --- a/g13gui/g13gui/observer/gtkobserver.py +++ b/g13gui/g13gui/observer/gtkobserver.py @@ -1,7 +1,7 @@ import gi import queue -from g13gui.observer import Observer +from g13gui.observer.observer import Observer gi.require_version('Gtk', '3.0') from gi.repository import Gtk, GObject diff --git a/g13gui/g13gui/ui/appindicator.py b/g13gui/g13gui/ui/appindicator.py index 6bfa1e0..882f54b 100644 --- a/g13gui/g13gui/ui/appindicator.py +++ b/g13gui/g13gui/ui/appindicator.py @@ -1,8 +1,8 @@ import gi from g13gui.common import PROGNAME -from g13gui.observer import GtkObserver -from g13gui.observer import ChangeType +from g13gui.observer.gtkobserver import GtkObserver +from g13gui.observer.subject import ChangeType gi.require_version('Gtk', '3.0') gi.require_version('AppIndicator3', '0.1') diff --git a/g13gui/g13gui/ui/g13button.py b/g13gui/g13gui/ui/g13button.py index bf2f79b..7ff11da 100644 --- a/g13gui/g13gui/ui/g13button.py +++ b/g13gui/g13gui/ui/g13button.py @@ -1,8 +1,8 @@ import gi import g13gui.ui as ui -from g13gui.observer import GtkObserver -from g13gui.model.bindings import G13ToGDK +from g13gui.observer.gtkobserver import GtkObserver +from g13gui.model.bindings import BindsToKeynames gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') diff --git a/g13gui/g13gui/ui/mainwindow.py b/g13gui/g13gui/ui/mainwindow.py index 5c6627f..59e5753 100644 --- a/g13gui/g13gui/ui/mainwindow.py +++ b/g13gui/g13gui/ui/mainwindow.py @@ -4,9 +4,7 @@ import gi import g13gui.ui as ui -from g13gui.g13d import SaveTask -from g13gui.g13d import UploadTask -from g13gui.observer import GtkObserver +from g13gui.observer.gtkobserver import GtkObserver gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') @@ -46,8 +44,8 @@ class MainWindow(Gtk.Window, GtkObserver): self.setupG13ButtonGrid() def gtkSubjectChanged(self, subject, changeType, key, data=None): - self._doUpload() - self._doSave() + print('Subject changed! Need to save!') + pass def setupHeaderBar(self): self._headerBar = Gtk.HeaderBar() @@ -109,15 +107,6 @@ class MainWindow(Gtk.Window, GtkObserver): def _profileChanged(self, widget): self._doUpload() - def _doUpload(self): - config = self._prefs.selectedProfile().toCommandString() - task = UploadTask(config) - self._workerQueue.put(task) - - def _doSave(self): - task = SaveTask(self._prefs) - self._workerQueue.put(task) - def uploadClicked(self, widget): self._doUpload() self._doSave() diff --git a/g13gui/g13gui/ui/profilecombobox.py b/g13gui/g13gui/ui/profilecombobox.py index ef5657d..dea14ce 100644 --- a/g13gui/g13gui/ui/profilecombobox.py +++ b/g13gui/g13gui/ui/profilecombobox.py @@ -1,7 +1,7 @@ import gi -from g13gui.observer import GtkObserver -from g13gui.observer import ChangeType +from g13gui.observer.gtkobserver import GtkObserver +from g13gui.observer.subject import ChangeType gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') diff --git a/g13gui/g13gui/ui/profilepopover.py b/g13gui/g13gui/ui/profilepopover.py index f88032e..2bb6262 100644 --- a/g13gui/g13gui/ui/profilepopover.py +++ b/g13gui/g13gui/ui/profilepopover.py @@ -2,11 +2,8 @@ import gi import enum import g13gui.model.bindings as bindings -from g13gui.observer import GtkObserver -from g13gui.model import BindingProfile -from g13gui.model.bindings import G13ToGDK -from g13gui.model.bindings import GDKToG13 -from g13gui.model.bindings import G13DKeyIsModifier +from g13gui.observer.gtkobserver import GtkObserver +from g13gui.model.bindingprofile import BindingProfile from g13gui.model.bindings import StickMode from g13gui.model.bindings import ALL_STICK_MODES