Files
workouts/UI.md

158 lines
3.9 KiB
Markdown

# User Interface
## Tabs
Each tab is a root of its own navigation stack.
- Workout Log
- Reports
- Settings
## Workout Log
- toolbar
- left bar button: none
- title: Workout Log
- right bar button: Add Workout
- main view:
- List of WorkoutLog objects
- Grouped by date, in descending order
- Group header shows date and split name
- Each row shows:
- Time
- Exercise
- Sets
- Reps
- Weight
- When main view list has no entries, show a placeholder view with text "No workouts yet." and a button "Start Split"
### Start Split View
Start Split View slides on top of Workout Log View navigation stack.
- left bar button: default (back to Workout Log)
- title: Start Split
- right bar button: none
- main view:
- list of available splits
- button "Start [SplitName] Split" -> Workout Split
### Workout Split View
Workout Split View slides on top of Workout Log View navigation stack.
- left bar button: default (back to Start Split)
- title: [SplitName] Split
- right bar button: Add Exercise
- main view:
- list of exercises in the split
- actions:
- on row slide to left
- button "Edit"
- on row slide to right
- button "Completed"
- on row tap
- open Exercise View
### Exercise View
Exercise View slides on top of Workout Split View navigation stack.
- left bar button: default (back to Workout Split)
- title: [ExerciseName]
- right bar button: Edit (pencil icon)
- action: open Add/Edit Exercise Assignment View
- main view:
- form
sections:
- split
- split name
- exercise assignment (titled "Planned")
- exercise
- name
- setup
- description
- muscles
- weight
- sets (read only)
- reps (read only)
- weight (read only)
- workout log (titled "Actual")
- date (date/time picker)
- sets (integer picker)
- reps (integer picker)
- weight (integer picker)
- status
- Completed (checkbox)
- actions:
- swipe left
- open Exercise View for the previous ExerciseAssignment
- swipe right
- open Exercise View for the next ExerciseAssignment
### Add/Edit Exercise to Split View
This view should be opened as a sheet.
- left bar button: default (back to Workout Split)
- title: Add/Edit Exercise to Split
- right bar button: Save
- main view:
- before an exercise is selected
- list of available exercises
- button "Add [ExerciseName]"
- after an exercise is selected
- a form for model SplitExerciseAssignment
- sets
- reps
- weight
## Settings
- left bar button: none
- title: Settings
- right bar button: none
- main view:
- list
- Splits
- Exercises
- Muscle Groups
- Muscles
- Exercise Types
- actions:
- on row tap
- open corresponding list view (e.g. for "Splits" open "Splits List View")
### (Splits|Exercises|Muscle Groups|Muscles|Exercise Types) List View
- left bar button: default (back to Settings)
- title: [ListName]
- right bar button: Add (plus icon)
- action: open corresponding add/edit view (e.g. for "Splits" open "Splits Add/Edit View")
- main view:
- list of [ListName]
- actions:
- on row tap
- open corresponding add/edit view (e.g. for "Splits" open "Splits Add/Edit View")
### (Splits|Exercises|Muscle Groups|Muscles|Exercise Types) Add/Edit View
Add/Edit views typically open as sheets.
- left bar button: default (back to Settings)
- title: [Add/Edit] [ListName]
- right bar button: Save
- main view:
- form with editable fields