To duplicate an exercise set, 'MFTSet copy' suffices.

Commit
4a36099532015d3d758559052c357f2a14ebcfca
Author
Marius Peter <marius.peter@tutanota.com>
Author date
Committer
Marius Peter <marius.peter@tutanota.com>
Committer date
src/MyFitnessTracker/MFTExerciseDialog.class.st
index cc30cb14..9e848ff9 100644..100644
@@ -99,21 +99,26 @@
99 99 html outlineButton
100 100 beSecondary;
101 101 beSmall;
102 Removed: callback: [
103 Removed: sets add: (MFTSet reps: set reps weight: set weight rpe: set rpe) afterIndex: i ];
102 Added: callback: [ sets add: set copy afterIndex: i ];
104 103 with: 'Duplicate' ] ].
105 104 html tableData: [
106 105 html numberInput formControl
107 106 value: set reps;
108 Removed: callback: [ :value | set reps: value ] ].
107 Added: callback: [ :value | set reps: value asInteger ] ].
109 108 html tableData: [
110 109 html numberInput formControl
111 110 value: set weight;
112 Removed: callback: [ :value | set weight: value ] ].
111 Added: callback: [ :value |
112 Added: value
113 Added: ifNotEmpty: [ set weight: value asNumber ]
114 Added: ifEmpty: [ set weight: nil ] ] ].
113 115 html tableData: [
114 116 html numberInput formControl
115 117 value: set rpe;
116 Removed: callback: [ :value | set rpe: value ] ] ] ]
118 Added: callback: [ :value |
119 Added: value
120 Added: ifNotEmpty: [ set rpe: value asInteger ]
121 Added: ifEmpty: [ set rpe: nil ] ] ] ] ]
117 122 ]
118 123
119 124 { #category : #rendering }
@@ -141,7 +146,7 @@
141 146 html formButton
142 147 beSubmit;
143 148 beSecondary;
144 Removed: callback: [ self answer: nil ];
149 Added: callback: [ self answer: MFTExercise new ];
145 150 with: (completion ifNil: [ 'Cancel' ] ifNotNil: [ 'Skip' ]) ]
146 151 ]
147 152