usawa

Signed, immutable accounting.
Info | Log | Files | Refs | Submodules | LICENSE

commit 8f375d68adff936b5492be7dc17b2b9ea7f6d096
parent f2bd67a16c66b2be1865101ca8a3084abd06f478
Author: Carlosokumu <carlosokumu254@gmail.com>
Date:   Tue, 24 Feb 2026 19:31:05 +0300

remove all ledger initilization logic

Diffstat:
Mdummy/usawa/gui/main_window.py | 42+++++++++---------------------------------
1 file changed, 9 insertions(+), 33 deletions(-)

diff --git a/dummy/usawa/gui/main_window.py b/dummy/usawa/gui/main_window.py @@ -1,18 +1,11 @@ -import base64 import logging -from usawa.crypto import ACL from usawa.service import UnixClient from usawa.core.entry_service import EntryService -from usawa.ledger import Ledger from usawa.storage.ledger_repository import LedgerRepository -from usawa.store import LedgerStore from gi.repository import Adw, Gtk -from whee.valkey import ValkeyStore from usawa.gui.controllers.entry_controller import EntryController -from usawa.gui.models.entry_item import EntryItem from usawa.gui.views.entry_list_view import EntryListView -from usawa import Ledger, DemoWallet, load logg = logging.getLogger("gui.mainwindow") @@ -29,33 +22,12 @@ class UsawaMainWindow(Gtk.ApplicationWindow): main_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=0) self.set_child(main_box) - ledger_tree = load(ledger_path) - ledger = Ledger.from_tree(ledger_tree) - - - db = ValkeyStore('') self.client = UnixClient(path="") - - store = LedgerStore(db, ledger) - pk = store.get_key() - wallet = DemoWallet(privatekey=pk) - logg.debug("wallet pk: %s pubk: %s", wallet.privkey().hex(), wallet.pubkey().hex()) - ledger.set_wallet(wallet) - - - ledger.acl = ACL.from_wallet(wallet) - store.load(acl=ledger.acl) - - logg.debug("Ledger has %d entries", len(ledger.entries)) - - for serial, entry in ledger.entries.items(): - logg.debug("Entry serial: %s", serial) - - - repository = LedgerRepository(ledger_store=store,unix_client=self.client,wallet=wallet) + repository = LedgerRepository(ledger_path=ledger_path,unix_client=self.client) entry_service = EntryService(repository=repository,unixClient= self.client) self.entry_controller = EntryController(entry_service=entry_service) + self.entry_controller.add_entry_created_listener(self.refresh_entries) # Navigation view self.nav_view = Adw.NavigationView() @@ -70,9 +42,13 @@ class UsawaMainWindow(Gtk.ApplicationWindow): title="Ledger Entries", tag="entry-list" ) - - entry_list_view = EntryListView(nav_view=self.nav_view,entry_controller=self.entry_controller) - page.set_child(entry_list_view) + entries = [] + self.entry_list_view = EntryListView(nav_view=self.nav_view,entry_controller=self.entry_controller,entries=entries,refresh_callback=self.refresh_entries) + self.entry_list_view._load_entries() + page.set_child(self.entry_list_view) return page + def refresh_entries(self): + logg.info("MainWindow refreshing entries") + self.entry_list_view._load_entries()