mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 05:00:20 +00:00
Desktop UI: allow user defined cylinder as default
Currently, it was only possible to use a hard-coded default cylinder in the preferences. At the same time, the user is allowed to add own cylinders to a dive (by just typing in a new name and cylinder properties). These own cylinders could not be selected in the preferences, requiring the user to manually add this every dive. Not sure the reason for all this was intentional, or just an overlooked aspect in the implementation. It appeared that the selection list in the UI was constructed before any logbook was parsed, so at that moment, there are only hard-coded cylinders. The fix is simple. Refresh the UI of the preferences just before it is shown. While opening the logbook, a new list of cylinders, including the own cylinders is constructed, so the UI is refreshed to that. While a simple change, there is a use case that might be considered strange. Open a logbook, choose new logbook, and change the default cylinder preference to an own (from the previously opened logbook). Do not add a dive with the new (own) cylinder and save this logbook. Reopen this new logbook, and see that the default cylinder in the preferences is empty. This is logical, as the list of own possible cylinders is constructed from the (new) logbook, that has no dive with that specific own cylinder. I consider this acceptable behavior, as it can be also be used to copy own cylinders to a new logbook. Fixes: #821 Proposed-by: Davide DB <dbdavide@gmail.com> Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
This commit is contained in:
parent
32a7cde180
commit
c995069e14
1 changed files with 5 additions and 0 deletions
|
@ -774,6 +774,11 @@ void MainWindow::showProfile()
|
|||
|
||||
void MainWindow::on_actionPreferences_triggered()
|
||||
{
|
||||
// the refreshPages() is currently done for just one
|
||||
// reason. Allow the user to define a default cylinder that
|
||||
// is not hardcoded but coming from the logbook.
|
||||
PreferencesDialog::instance()->refreshPages();
|
||||
|
||||
PreferencesDialog::instance()->show();
|
||||
PreferencesDialog::instance()->raise();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue