|
virtual DataObjectSharedPtr | getRoot ()=0 |
| Retrieves the root object of the underlying data tree. More...
|
|
ModifiedSubscriptionToken | addModifiedNotificationHandler (ModifiedFunction callback) |
| Adds message handler, that can be used to monitor when the contents of the data source are modified. More...
|
|
void | removeModifiedNotificationHandler (ModifiedSubscriptionToken token) |
| Removes and stops monitoring the contents of the data source for given subscription. More...
|
|
virtual void | loadFromKZB (const KzuResourceLoaderThreadContext *threadContext, KzcInputStream *inputStream, const KzuBinaryFileInfo *file) KZ_OVERRIDE |
| Function for loading the resource from .KZB. More...
|
|
KzcMemoryManager * | getMemoryManager () const |
|
| Resource (Domain *domain, string_view name) |
|
virtual | ~Resource () |
|
virtual void | finishLoadingOverride (const KzuResourceLoaderThreadContext *threadContext) |
| Function for finishing the loading of the resource. More...
|
|
virtual void | unloadOverride () |
| Unload function for resource. More...
|
|
virtual kzUint | getCPUMemoryUsage () const |
| Function for getting the memory usage of a resource. More...
|
|
void | setKZB (const KzuBinaryDirectory *binaryDirectory, kzString path) |
|
void | setLoaded () |
|
kzString | getName () const |
| Accessor. More...
|
|
void | load () |
|
void | unload () |
|
bool | isLoaded () const |
|
void | kzuResourceLoad_private (const KzuResourceLoaderThreadContext *threadContext) |
| Private function for kzuResourceLoad() with specified thread context. More...
|
|
void | kzuResourceFinishLoading_private (const KzuResourceLoaderThreadContext *threadContext) |
| Private function for finishing the loading of the resource. More...
|
|
KzuResourceLoadingStrategy | getLoadingStrategy () const |
|
void | setLoadingStrategy (KzuResourceLoadingStrategy loadingStrategy) |
|
bool | getKeepAlive () const |
| Tells if the resource has keep alive flag set. More...
|
|
void | setKeepAlive (bool keepAlive) |
| Sets the keep alive flag. More...
|
|
| Object (Domain *domain) |
|
virtual | ~Object () |
|
Domain * | getDomain () const |
| Returns the domain the object belongs to. More...
|
|
KzuPropertyManager * | getPropertyManager () const |
| Returns the property manager of the object. More...
|
|
KzuTaskScheduler * | getTaskScheduler () const |
| Returns the task scheduler of the object. More...
|
|
KzuMessageDispatcher * | getMessageDispatcher () const |
| Returns the message dispatcher of the object. More...
|
|
ResourceManager * | getResourceManager () const |
| Returns the resource manager of the object. More...
|
|
virtual const Metaclass * | getDynamicMetaclass () const |
| Returns the metaclass of the dynamic type of the object. More...
|
|
bool | isTypeOf (const Metaclass *objectType) const |
| Determines if the type of this object is the given type or derived from it. More...
|
|
template<typename DataType > |
void | setProperty (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::DataType value) |
| Sets the local value of a property. More...
|
|
void | setProperty (const PropertyType< ResourceID > &propertyType, ResourceSharedPtr value) |
| Sets the local value of a resource id property with a resource pointer. More...
|
|
template<typename DataType > |
DataType | getProperty (const PropertyType< DataType > &propertyType) const |
| Returns the current value of a property. More...
|
|
template<typename DataType > |
bool | getProperty (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::DataType &value) const |
| Evaluates the property value in the same way as the overload above but does not default to the value in property metadata if there are no inputs to the property value. More...
|
|
template<typename DataType > |
void | setAbstractProperty (AbstractPropertyType abstractPropertyType, typename PropertyType< DataType >::DataType value) |
|
void | setAbstractProperty (AbstractPropertyType abstractPropertyType, ResourceSharedPtr value) |
|
template<typename DataType > |
DataType | getAbstractProperty (AbstractPropertyType abstractPropertyType) const |
|
template<typename DataType > |
bool | getAbstractProperty (AbstractPropertyType abstractPropertyType, typename PropertyType< DataType >::DataType &value) const |
|
bool | hasValue (AbstractPropertyType propertyType) const |
| Evaluates whether there are any inputs into the property value. More...
|
|
bool | hasLocalValue (AbstractPropertyType propertyType) const |
| Evaluates whether there is a local value set for the property. More...
|
|
void | removeLocalValue (AbstractPropertyType propertyType) |
| Removes the local value associated with the property. More...
|
|
void | copyLocalValues (const Object &other) |
| Copies all local values from another object. More...
|
|
virtual void | onPropertyChanged (AbstractPropertyType propertyType, KzuPropertyNotificationReason reason) |
| Virtual function to handle property change notifications. More...
|
|
AppliedStyleEntry * | applyObjectStyle (kanzi::StyleSharedPtr style) |
| Applies a style to an object. More...
|
|
void | unapplyObjectStyle (AppliedStyleEntry *appliedStyleEntry) |
|
void | applyObjectStyles () |
| Apply all styles for an object node. More...
|
|
void | unapplyObjectStyles () |
| Unapplies and removes all applied styles. More...
|
|
DataSource is the base class for data sources.
The objective is to provide a resource type that can be used to feed data from external source to UI.
The data source can be assigned to node by using Node.DataContext property. It should point the chosen data resource, which will define data for the node and it's subtree. Once the data is set through the property, it is then possible to utilize bindings to reference the data.
Data context property value should be either: 1) Uri that defines the resource 2) Resource id that defines the resource in resource dictionary 3) Path that allows to navigate further within the current data context (for example: $.car.cluster)
Standard data binding can be used to bind the data objects to the UI. The format of the binding is: {DataContext.path.to.data}. For example: {DataContext.car.cluster.speed}
Data context bindings support all standard kanzi binding features, like expressions.