diff options
| author | salmonik <salmonik@tuta.io> | 2026-11-01 20:11:41 +0100 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-11-01 20:11:41 +0100 |
| commit | e920b20fafe375eec15b24eb8cde4b1455dd01af (patch) | |
| tree | 308d2f7999177a753528779f6ec7926f3fa50818 /gui/src/theme.rs | |
| parent | v4.1.0: add the egui workspace member and the roulette style spike (diff) | |
| download | zagan-bet-e920b20fafe375eec15b24eb8cde4b1455dd01af.tar.gz zagan-bet-e920b20fafe375eec15b24eb8cde4b1455dd01af.zip | |
v4.1.1: pointer-first betting and visible payouts in the GUI
The felt snaps the hover to the shared fine lattice: inner half of a cell is a straight, an edge a split, a crossing a corner. A translucent chip previews the target and the covered cells tint. Left click adds the selected chip, right or middle click takes one back through the new Bets::reduce; C or CLEAR empties the slip, and SPIN stays disabled with no chips.
The result now pays out: the wheel leaves the winning pocket under the pointer, the winning cell and pocket get a gold outline, and the sidebar reports the amount returned and the net for the round (NO WIN on a loss). Placing a chip after a result starts the next round without losing the wheel position.
The column row now spans the full width like a real table instead of hugging the left edge. Adds tests for lattice snapping, target naming and taking chips back.
Diffstat (limited to 'gui/src/theme.rs')
| -rw-r--r-- | gui/src/theme.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gui/src/theme.rs b/gui/src/theme.rs index 9270aa6..0e5a475 100644 --- a/gui/src/theme.rs +++ b/gui/src/theme.rs | |||
| @@ -120,6 +120,12 @@ pub fn money(amount: i64) -> String { | |||
| 120 | format!("{} Kr", group_digits(amount)) | 120 | format!("{} Kr", group_digits(amount)) |
| 121 | } | 121 | } |
| 122 | 122 | ||
| 123 | /// Net amount with an explicit sign: `"+800 Kr"`, `"-90 Kr"`. | ||
| 124 | pub fn signed_money(amount: i64) -> String { | ||
| 125 | let sign = if amount < 0 { "-" } else { "+" }; | ||
| 126 | format!("{sign}{} Kr", group_digits(amount.abs())) | ||
| 127 | } | ||
| 128 | |||
| 123 | // --------------------------------------------------------------------------- | 129 | // --------------------------------------------------------------------------- |
| 124 | // Installation | 130 | // Installation |
| 125 | // --------------------------------------------------------------------------- | 131 | // --------------------------------------------------------------------------- |
