From 6137e4bec5fd7f34c66162b32424343a30b3c5f2 Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Sun, 22 Feb 2026 08:49:25 +0000 Subject: task-085: formats bucket cells --- schist_desktop_gui/src/gui/components/transactions_view.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'schist_desktop_gui/src/gui/components/transactions_view.rs') diff --git a/schist_desktop_gui/src/gui/components/transactions_view.rs b/schist_desktop_gui/src/gui/components/transactions_view.rs index 491049d..11249a1 100644 --- a/schist_desktop_gui/src/gui/components/transactions_view.rs +++ b/schist_desktop_gui/src/gui/components/transactions_view.rs @@ -3,7 +3,7 @@ mod view_transactions_view; use std::collections::HashMap; use itertools::Itertools; -use schist_models::{Account, Transaction}; +use schist_models::{Account, Bucket, Transaction}; use crate::{ gui::components::{navigation, AccountNavigationEntry, Navigation}, @@ -12,6 +12,7 @@ use crate::{ #[derive(Clone, Debug)] pub struct TransactionsView { + buckets: Vec, navigation: Navigation, transactions_by_account_id: HashMap>, } @@ -22,6 +23,7 @@ pub enum Message { SelectNextAccount, SelectPrevAccount, SetAccounts(Vec), + SetBuckets(Vec), SetTransactions(Vec), } @@ -30,7 +32,7 @@ pub enum Action { } impl TransactionsView { - pub fn new(accounts: &[Account], transactions: &[Transaction]) -> Self { + pub fn new(accounts: &[Account], buckets: &[Bucket], transactions: &[Transaction]) -> Self { let account_navigation_entries: Vec = accounts .iter() .cloned() @@ -41,6 +43,7 @@ impl TransactionsView { account_navigation_entries, ); Self { + buckets: buckets.to_vec(), navigation: navigation, transactions_by_account_id: transactions .into_iter() @@ -63,6 +66,11 @@ impl<'a> Component<'a, Message, Action> for TransactionsView { self.update_navigation(navigation::Message::SetOptions(account_navigation_entries)) } + Message::SetBuckets(buckets) => { + self.buckets = buckets; + Action::None + } + Message::SetTransactions(transactions) => { self.transactions_by_account_id = transactions.into_iter().into_group_map_by(|t| t.account_id); -- cgit v1.2.3