158 lines
3.9 KiB
Markdown
158 lines
3.9 KiB
Markdown
# User Interface
|
|
|
|
## Tabs
|
|
|
|
Each tab is a root of its own navigation stack.
|
|
|
|
- Workouts
|
|
- 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
|
|
|