This pseudocode relates to the list of databases visible near the top of the right-hand panel, for a particular selected project. Follows from #7 and provides more detail for coding. Duplicates and extends this issue found on upstream repo.
- Read-only checkbox is visible for all rows in the database list (done)
- On open, read settings file entries to determine checked state (default=read-only)
- On click:
a. Send signal. Slot/method design described below for 2 possible state changes
b. Change checked state
Setting a database read-only = true:
- Find open activities relating to the checked db in the activity_cache
- Call appropriate method to set their tables/rows/cells to read-only and set the Read-Only checkbox to greyed-out (as described in separate upcoming issue by @AnjeKnottnerus )
- Activities inventory context menu: Options for “Edit activity” and “New activity” become greyed out (make this change here or on right-click?)
- Top-right toolbar buttons: Options for “Edit activity” and “New activity” become greyed out (make this change here or on right-click?)
- Insert or update entry in ab_settings file
- Checkbox -> checked
Setting a database read-only = false.
- Find open activities relating to the checked db in the activity_cache
- Set read-only checkbox of open panels to active (not greyed out)
- Activities inventory list: Options for “Edit activity” and “New activity” become active again (as above, may be handled on right-click)
- Top-right toolbar buttons: Options for “Edit activity” and “New activity” become active again (as above, editability of currently selected activity would determine whether these are active)
- Update settings file entry to read-only = false
- Checkbox -> unchecked
This pseudocode relates to the list of databases visible near the top of the right-hand panel, for a particular selected project. Follows from #7 and provides more detail for coding. Duplicates and extends this issue found on upstream repo.
a. Send signal. Slot/method design described below for 2 possible state changes
b. Change checked state
Setting a database read-only = true:
Setting a database read-only = false.