From 1805aeb3740a9b90cff321219f0e60c4a1ccd3a6 Mon Sep 17 00:00:00 2001 From: Craig Raw Date: Tue, 28 Jan 2025 10:32:57 +0200 Subject: [PATCH] add wallet table to store layout settings --- .../drongo/wallet/TableType.java | 5 +++ .../sparrowwallet/drongo/wallet/Wallet.java | 9 +++++ .../drongo/wallet/WalletTable.java | 36 +++++++++++++++++++ 3 files changed, 50 insertions(+) create mode 100644 src/main/java/com/sparrowwallet/drongo/wallet/TableType.java create mode 100644 src/main/java/com/sparrowwallet/drongo/wallet/WalletTable.java diff --git a/src/main/java/com/sparrowwallet/drongo/wallet/TableType.java b/src/main/java/com/sparrowwallet/drongo/wallet/TableType.java new file mode 100644 index 0000000..4b0acac --- /dev/null +++ b/src/main/java/com/sparrowwallet/drongo/wallet/TableType.java @@ -0,0 +1,5 @@ +package com.sparrowwallet.drongo.wallet; + +public enum TableType { + TRANSACTIONS, UTXOS, RECEIVE_ADDRESSES, CHANGE_ADDRESSES, SEARCH_WALLET, WALLET_SUMMARY +} diff --git a/src/main/java/com/sparrowwallet/drongo/wallet/Wallet.java b/src/main/java/com/sparrowwallet/drongo/wallet/Wallet.java index 7b28c9e..ee61aec 100644 --- a/src/main/java/com/sparrowwallet/drongo/wallet/Wallet.java +++ b/src/main/java/com/sparrowwallet/drongo/wallet/Wallet.java @@ -41,6 +41,7 @@ public class Wallet extends Persistable implements Comparable { private final Map transactions = new HashMap<>(); private final Map detachedLabels = new HashMap<>(); private WalletConfig walletConfig; + private final Map walletTables = new HashMap<>(); private MixConfig mixConfig; private final Map utxoMixes = new HashMap<>(); private Integer storedBlockHeight; @@ -466,6 +467,14 @@ public class Wallet extends Persistable implements Comparable { this.walletConfig = walletConfig; } + public Map getWalletTables() { + return walletTables; + } + + public WalletTable getWalletTable(TableType tableType) { + return walletTables.get(tableType); + } + public MixConfig getMixConfig() { return mixConfig; } diff --git a/src/main/java/com/sparrowwallet/drongo/wallet/WalletTable.java b/src/main/java/com/sparrowwallet/drongo/wallet/WalletTable.java new file mode 100644 index 0000000..68afc2c --- /dev/null +++ b/src/main/java/com/sparrowwallet/drongo/wallet/WalletTable.java @@ -0,0 +1,36 @@ +package com.sparrowwallet.drongo.wallet; + +public class WalletTable extends Persistable { + private final TableType tableType; + private final Double[] widths; + + public WalletTable(TableType tableType, Double[] widths) { + this.tableType = tableType; + this.widths = widths; + } + + public TableType getTableType() { + return tableType; + } + + public Double[] getWidths() { + return widths; + } + + @Override + public final boolean equals(Object o) { + if(this == o) { + return true; + } + if(!(o instanceof WalletTable that)) { + return false; + } + + return tableType == that.tableType; + } + + @Override + public int hashCode() { + return tableType.hashCode(); + } +}