Undo: keep frontend informed of changes to dive site count

Add a new signal to DiveListNotifier. Send signal if dives are
added or removed and therefore the dive count of a dive site
changes. The dive sites are collected and the signal is sent
at the end of the command.

Add code to update the table view.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2019-03-10 16:03:39 +01:00 committed by Dirk Hohndel
parent dd12bdaf94
commit 8dcc33d8ab
6 changed files with 37 additions and 2 deletions

View file

@ -23,6 +23,7 @@ int get_divesite_idx(const struct dive_site *ds, struct dive_site_table *ds_tabl
return -1;
}
// TODO: keep table sorted by UUID and do a binary search?
struct dive_site *get_dive_site_by_uuid(uint32_t uuid, struct dive_site_table *ds_table)
{
int i;

View file

@ -42,6 +42,9 @@ signals:
void divesDeselected(dive_trip *trip, const QVector<dive *> &dives);
void currentDiveChanged();
void selectionChanged();
// Dive site signals
void diveSiteDiveCountChanged(dive_site *ds);
public:
// Desktop uses the QTreeView class to present the list of dives. The layout
// of this class gives us a very fundamental problem, as we can not easily