UniqueValueRenderer constructor
- {List<
String> fieldNames = const [], - List<
UniqueValue> uniqueValues = const [], - String defaultLabel = '',
- ArcGISSymbol? defaultSymbol}
Creates a new unique value renderer object.
Parameters:
fieldNames
— A collection of the field names/attribute keys that the unique values apply to.uniqueValues
— A collection of unique values used by the renderer to select a symbol.defaultLabel
— The label used for the default symbol.defaultSymbol
— The default symbol for values that don't match any of the unique values.
Implementation
factory UniqueValueRenderer(
{List<String> fieldNames = const [],
List<UniqueValue> uniqueValues = const [],
String defaultLabel = '',
ArcGISSymbol? defaultSymbol}) {
_initializeArcGISEnvironmentIfNeeded();
final coreFieldNames =
fieldNames.toMutableArray(valueType: _ElementType.string);
final coreUniqueValues =
uniqueValues.toMutableArray(valueType: _ElementType.uniqueValue);
final coreDefaultLabel = _CString(defaultLabel);
final handle = _withThrowingErrorHandler((errorHandler) {
return runtimecore.RT_UniqueValueRenderer_createWith(
coreFieldNames._handle,
coreUniqueValues._handle,
coreDefaultLabel.bytes,
defaultSymbol?._handle ?? ffi.nullptr,
errorHandler);
});
final UniqueValueRenderer object =
Renderer._instanceCache.instanceWith(handle);
object._fieldNames.value.setCache(fieldNames);
object._uniqueValues.value.setCache(uniqueValues);
object._defaultSymbol.cache(defaultSymbol);
return object;
}