Updating of detail tabs besides list of tables works correctly again.

Had stopped working because the catalog now behaves a little different,
returning nullptr instead of an invalid element.
This commit is contained in:
eelke 2018-11-18 20:24:27 +01:00
parent fcb191f2cc
commit 52011a9842
12 changed files with 114 additions and 92 deletions

View file

@ -5,6 +5,7 @@
#include "PgClass.h"
#include "PgIndex.h"
#include <memory>
#include <optional>
#include <vector>
@ -36,7 +37,7 @@ public:
// comment
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
void setData(std::shared_ptr<const PgDatabaseCatalog> cat, const PgClass &table);
void setData(std::shared_ptr<const PgDatabaseCatalog> cat, const std::optional<PgClass> &table);
// Basic functionality:
@ -52,7 +53,7 @@ protected:
private:
std::shared_ptr<const PgDatabaseCatalog> m_catalog;
PgClass m_table;
std::optional<PgClass> m_table;
using t_Indexes = std::vector<PgIndex>;
t_Indexes m_indexes;