23using namespace Qt::StringLiterals;
29 setFlags(
flags() | QgsFieldFormatter::CanProvideAvailableValues );
41 QString valueInternalText;
45 valueInternalText = value.toString();
47 const QVariant v = config.value( u
"map"_s );
48 const QVariantList list = v.toList();
51 for (
const QVariant &item : list )
53 const QVariantMap map = item.toMap();
55 for (
auto it = map.constBegin(); it != map.constEnd(); ++it )
57 if ( it.value().toString() == valueInternalText )
66 const QVariantMap map = v.toMap();
67 return map.key( valueInternalText, QVariant( u
"(%1)"_s.arg( layer->
fields().
at( fieldIndex ).
displayString( value ) ) ).toString() );
81 const QList<QVariant> valueList = config.value( u
"map"_s ).toList();
82 for (
const QVariant &item : valueList )
84 values.append( item.toMap().constBegin().value() );
85 if ( values.count() == countLimit )
A context for field formatter containing information like the project.
QString displayString(const QVariant &v) const
Formats string for display.
QgsField at(int i) const
Returns the field at particular index (must be in range 0..N-1).
static bool isNull(const QVariant &variant, bool silenceNullWarnings=false)
Returns true if the specified variant should be considered a NULL value.
Represents a vector layer which manages a vector based dataset.