UniqueValue constructor
- String description = '',
- String label = '',
- ArcGISSymbol? symbol,
- List<
Object> values = const [],
Creates a new unique value (or unique combination of values) and a symbol used to display elements with this value in an UniqueValueRenderer.
Parameters:
description
— A description of the unique value. "Parcels zoned for residential use", for example.label
— A label for the unique value. "Residential", for example.symbol
— A symbol used to represent elements with this unique value.values
— A List containingdynamic
types that define a unique value or unique combination of values.
Implementation
factory UniqueValue({
String description = '',
String label = '',
ArcGISSymbol? symbol,
List<Object> values = const [],
}) {
_initializeArcGISEnvironmentIfNeeded();
final coreDescription = _CString(description);
final coreLabel = _CString(label);
final coreValues = values.toMutableArray(
valueType: _ElementType.variant,
);
final handle = _withThrowingErrorHandler((errorHandler) {
return runtimecore.RT_UniqueValue_createWith(
coreDescription.bytes,
coreLabel.bytes,
symbol?._handle ?? ffi.nullptr,
coreValues._handle,
errorHandler,
);
});
final UniqueValue object = UniqueValue._instanceCache.instanceWith(handle);
object._symbol.cache(symbol);
object._values.value.setCache(values);
return object;
}