Commit e9d09e1
committed
feat: Add image resize, usage UI & save-wipe logic
Introduce image resizing and improve usage reporting/UI across the app. Key changes:
- LibLpSharp: add MetadataBuilder.ResizeBlockDevice with validation for existing extents; minor formatting/comment cleanup. MetadataWriter removes redundant comments and pads geometry as before.
- PartitionToolSharp.Desktop: add fields to MetadataChangedMessage (UsagePercentage, UsageText, ImageSize) to propagate usage and image size to UI.
- PartitionEntry: simplify FileSystemSizeText, add unit-aware DisplaySize/UI selection (Units, SelectedSizeUnit), notify DisplaySize on size changes.
- DashboardViewModel: consume new message fields, format device/usage strings consistently, move GroupInfo type to bottom of file.
- PartitionManagerViewModel: add ImageSize handling, UI-friendly DisplayImageSize and units, track removed extents (_extentsToWipe) for wiping on save, provide GetUpdatedBuilder helper, ResizeImageCommand to apply image resize via builder, update save flow to physically resize file, wipe data for deleted extents, clear extents list, and call RefreshProbeAsync; send richer MetadataChangedMessage when metadata updates; minor refactors and status messages.
- Views (.axaml): overhaul Dashboard, Flasher and PartitionManager layouts/templates (cards, borders, typed DataTemplates, new controls for image resize, Refresh/Resize buttons, data-binding adjustments) to present usage, recent files, and image/partition editing more clearly.
- Project: change TrimMode from "link" to "partial" in Desktop csproj.
Overall this commit implements image resizing end-to-end (UI, model builder, save-time file resize and wiping), improves usage reporting, and refreshes several UI components for clearer display and unit editing.1 parent 34e3ac2 commit e9d09e1
10 files changed
Lines changed: 374 additions & 147 deletions
File tree
- LibLpSharp
- PartitionToolSharp.Desktop
- Models
- ViewModels
- Views
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
| 78 | + | |
79 | 79 | | |
80 | 80 | | |
81 | | - | |
82 | 81 | | |
83 | 82 | | |
84 | 83 | | |
| |||
151 | 150 | | |
152 | 151 | | |
153 | 152 | | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
154 | 184 | | |
155 | 185 | | |
156 | 186 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
13 | 12 | | |
14 | 13 | | |
15 | 14 | | |
| |||
34 | 33 | | |
35 | 34 | | |
36 | 35 | | |
37 | | - | |
38 | 36 | | |
39 | 37 | | |
40 | 38 | | |
| |||
Lines changed: 3 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
9 | 12 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
73 | 62 | | |
74 | 63 | | |
75 | 64 | | |
76 | | - | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
77 | 70 | | |
78 | 71 | | |
79 | 72 | | |
80 | 73 | | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
81 | 99 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
| 13 | + | |
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| |||
Lines changed: 26 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
65 | 80 | | |
66 | 81 | | |
67 | 82 | | |
| |||
70 | 85 | | |
71 | 86 | | |
72 | 87 | | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | 88 | | |
81 | 89 | | |
82 | 90 | | |
| |||
96 | 104 | | |
97 | 105 | | |
98 | 106 | | |
99 | | - | |
| 107 | + | |
| 108 | + | |
100 | 109 | | |
101 | 110 | | |
102 | 111 | | |
103 | | - | |
104 | 112 | | |
105 | 113 | | |
106 | 114 | | |
| |||
111 | 119 | | |
112 | 120 | | |
113 | 121 | | |
| 122 | + | |
114 | 123 | | |
115 | | - | |
| 124 | + | |
116 | 125 | | |
117 | 126 | | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
0 commit comments