25 #include <QStringListModel> 30 , mComboBox( nullptr )
31 , mListWidget( nullptr )
32 , mLineEdit( nullptr )
67 for (
int i = 0; i < mListWidget->
count(); ++i )
81 if ( i.second == mLineEdit->
text() )
119 if ( exp == nullValue )
135 if (
config(
"AllowMulti" ).toBool() )
139 else if (
config(
"UseCompleter" ).toBool() )
153 mComboBox = qobject_cast<
QComboBox*>( editor );
154 mListWidget = qobject_cast<
QListWidget*>( editor );
155 mLineEdit = qobject_cast<
QLineEdit*>( editor );
160 if (
config(
"AllowNull" ).toBool() )
167 mComboBox->
addItem( element.second, element.first );
172 else if ( mListWidget )
178 item->
setData( Qt::UserRole, element.first );
180 mListWidget->addItem( item );
184 else if ( mLineEdit )
195 mLineEdit->setCompleter( completer );
void setCaseSensitivity(Qt::CaseSensitivity caseSensitivity)
QString & append(QChar ch)
static QString quotedColumnRef(QString name)
Returns a quoted column reference (in double quotes)
QgsFields fields() const
Returns the list of fields of this layer.
QString & prepend(QChar ch)
QString join(const QString &separator) const
QString tr(const char *sourceText, const char *disambiguation, int n)
void addItem(const QString &text, const QVariant &userData)
QString name() const
Gets the name of the field.
Lineedit with builtin clear button.
const QgsField & at(int i) const
Get field at particular index (must be in range 0..N-1)
QVariant itemData(int index, int role) const
QString & replace(int position, int n, QChar after)
QVariant value(const QString &key, const QVariant &defaultValue) const
bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
Represents a vector layer which manages a vector based data sets.
QString arg(qlonglong a, int fieldWidth, int base, const QChar &fillChar) const