76 virtual bool isValid(
const QString &
sql, QString &errorReason, QString &warningMsg ) = 0;
88 Argument(
const QString &nameIn = QString(),
const QString &typeIn = QString() )
117 explicit QgsSQLComposerDialog( QWidget *parent =
nullptr, Qt::WindowFlags fl = QgsGuiUtils::ModalDialogFlags );
139 void addTableNames(
const QStringList &list );
141 void addTableNames(
const QList<PairNameTitle> &listNameTitle );
143 void addColumnNames(
const QStringList &list,
const QString &tableName );
145 void addColumnNames(
const QList<PairNameType> &list,
const QString &tableName );
147 void addOperators(
const QStringList &list );
149 void addSpatialPredicates(
const QStringList &list );
151 void addSpatialPredicates(
const QList<Function> &list );
153 void addFunctions(
const QStringList &list );
155 void addFunctions(
const QList<Function> &list );
157 void addApis(
const QStringList &list );
160 void setSupportMultipleTables(
bool bMultipleTables,
const QString &mainTypename = QString() );
167 void setTableSelectedCallback( TableSelectedCallback *tableSelectedCallback );
173 void setSQLValidatorCallback( SQLValidatorCallback *sqlValidatorCallback );
176 bool eventFilter( QObject *obj, QEvent *event )
override;
179 void accept()
override;
181 void mTablesCombo_currentIndexChanged(
int );
182 void mColumnsCombo_currentIndexChanged(
int );
183 void mSpatialPredicatesCombo_currentIndexChanged(
int );
184 void mFunctionsCombo_currentIndexChanged(
int );
185 void mOperatorsCombo_currentIndexChanged(
int );
186 void mAddJoinButton_clicked();
187 void mRemoveJoinButton_clicked();
188 void mTableJoins_itemSelectionChanged();
191 void buildSQLFromFields();
192 void splitSQLIntoFields();
196 QStringList mApiList;
197 QSet<QString> mAlreadySelectedTables;
198 TableSelectedCallback *mTableSelectedCallback =
nullptr;
199 SQLValidatorCallback *mSQLValidatorCallback =
nullptr;
200 QObject *mFocusedObject =
nullptr;
201 bool mAlreadyModifyingFields =
false;
202 bool mDistinct =
false;
204 QMap<QString, QString> mapTableEntryTextToName;
205 QMap<QString, QString> mapColumnEntryTextToName;
206 QMap<QString, QString> mapSpatialPredicateEntryTextToName;
207 QMap<QString, QString> mapFunctionEntryTextToName;
208 QString lastSearchedText;
211 void loadTableColumns(
const QString &table );
212 void functionCurrentIndexChanged( QComboBox *combo,
const QMap<QString, QString> &mapEntryTextToName );
213 void getFunctionList(
const QList<Function> &list, QStringList &listApi, QStringList &listCombo, QMap<QString, QString> &mapEntryTextToName );