FOSSredder 0.5.0
Loading...
Searching...
No Matches
WorkspaceSelectors.h
Go to the documentation of this file.
1
5
6#pragma once
7
8#include <QObject>
9#include <QString>
10#include <QStringList>
11#include <QVariantList>
12#include <QVariantMap>
13
15
16namespace ui {
17
21class WorkspaceSelectors : public QObject {
22 Q_OBJECT
23
24public:
30 explicit WorkspaceSelectors(WorkspaceStore& store, QObject* parent = nullptr);
31
36 int dataRevision() const noexcept;
37
42 QVariantList actorRows() const;
47 QVariantList propertyRows() const;
52 QVariantList contractRows() const;
57 QVariantList analysisRows() const;
62 QVariantList annualRows() const;
67 QVariantList statementRows() const;
72 QVariantList statementRowsWithTransactions() const;
78 QVariantList statementTransactionRows(const QString& statementId) const;
84 QVariantMap transactionRowById(const QString& id) const;
91 QVariantMap
92 transactionFormWithCatalogSelection(const QVariantMap& transaction,
93 const QVariantMap& changes) const;
98 QVariantList actorDropdownRows() const;
103 QVariantList propertyDropdownRows() const;
108 QVariantList contractDropdownRows() const;
113 QVariantList importLogRows() const;
118 QVariantList exportLogRows() const;
123 QStringList attachedImportDraftIds() const;
129 QString exportLogTargetPath(const QString& id) const;
130
136 QString actorIdByName(const QString& name) const;
142 QString propertyIdByName(const QString& name) const;
151 QString contractIdBySignature(const QString& name, const QString& type,
152 const QStringList& actorIds,
153 const QStringList& propertyIds) const;
158 QString nextContractName() const;
159
162 bool hasActorId(const QString& id) const;
165 bool hasPropertyId(const QString& id) const;
168 bool hasContractId(const QString& id) const;
171 bool hasStatementId(const QString& id) const;
174 bool hasTransactionId(const QString& id) const;
177 bool hasAnalysisId(const QString& id) const;
180 bool hasAnnualId(const QString& id) const;
181
182private:
188 QString contractTypeForId(const QString& contractId) const;
189
190 WorkspaceStore& store_;
191};
192
193} // namespace ui
Declares the UI workspace snapshot store.
bool hasActorId(const QString &id) const
Checks whether an actor id exists.
QVariantList importLogRows() const
Returns import log rows for the import sidebar.
bool hasAnnualId(const QString &id) const
Checks whether an annual id exists.
QVariantList propertyDropdownRows() const
Returns property dropdown rows.
QString nextContractName() const
Returns the next generated contract name.
QString propertyIdByName(const QString &name) const
Looks up a property id by display name.
bool hasContractId(const QString &id) const
Checks whether a contract id exists.
QString exportLogTargetPath(const QString &id) const
Resolves an export log target path.
QVariantList analysisRows() const
Returns analysis rows for QML views.
int dataRevision() const noexcept
Returns the current workspace data revision.
QVariantList contractDropdownRows() const
Returns contract dropdown rows including the empty option.
QVariantList annualRows() const
Returns annual rows for QML views.
QVariantList actorDropdownRows() const
Returns actor dropdown rows including the empty option.
WorkspaceSelectors(WorkspaceStore &store, QObject *parent=nullptr)
Creates selectors for a workspace store.
QVariantList statementRows() const
Returns statement rows without embedded transactions.
bool hasAnalysisId(const QString &id) const
Checks whether an analysis id exists.
bool hasStatementId(const QString &id) const
Checks whether a statement id exists.
QVariantList propertyRows() const
Returns property rows for QML tables and dropdowns.
QVariantMap transactionRowById(const QString &id) const
Looks up a transaction row by id.
QVariantList contractRows() const
Returns contract rows for QML tables and dropdowns.
QVariantList actorRows() const
Returns actor rows for QML tables and dropdowns.
QString contractIdBySignature(const QString &name, const QString &type, const QStringList &actorIds, const QStringList &propertyIds) const
Looks up a contract id by unique signature.
QStringList attachedImportDraftIds() const
Returns ids of import logs that have attached statement drafts.
QVariantList statementRowsWithTransactions() const
Returns statement rows with their transaction rows embedded.
QString actorIdByName(const QString &name) const
Looks up an actor id by display name.
bool hasPropertyId(const QString &id) const
Checks whether a property id exists.
QVariantMap transactionFormWithCatalogSelection(const QVariantMap &transaction, const QVariantMap &changes) const
Applies catalog-dependent transaction form selection changes.
QVariantList statementTransactionRows(const QString &statementId) const
Returns transactions belonging to a statement.
QVariantList exportLogRows() const
Returns export log rows for the export sidebar.
bool hasTransactionId(const QString &id) const
Checks whether a transaction id exists.
Owns the current UI-side workspace snapshot and revision lifecycle.