Kanzi Graphics Engine
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
kzu_flow_layer.h File Reference

2D flow (layout) layer. More...

Functions

kzsError kzuFlowLayerCreate (const struct KzcMemoryManager *memoryManager, kzString name, struct KzuUIDomain *uiDomain, struct KzuFlowLayer **out_flowLayer)
 Creates a flow layer. More...
 
kzsError kzuFlowLayerRegisterToFactory (const struct KzuFactory *factory)
 Registers flow layer to the factory. More...
 
struct KzuFlowLayer * kzuFlowLayerFromLayer (const struct KzuLayer *layer)
 Converts KzuLayer to KzuFlowLayer. More...
 
struct KzuLayerkzuFlowLayerToLayer (const struct KzuFlowLayer *flowLayer)
 Converts KzuFlowLayer to KzuLayer. More...
 
enum KzuFlowLayoutDirection kzuFlowLayerGetPrimaryDirection (const struct KzuFlowLayer *flowLayer)
 Get the primary direction of the flow layout from the KZU_PROPERTY_TYPE_FLOW_LAYOUT_PRIMARY_DIRECTION property. More...
 
enum KzuFlowLayoutDirection kzuFlowLayerGetSecondaryDirection (const struct KzuFlowLayer *flowLayer)
 Get the secondary direction of the flow layout from the KZU_PROPERTY_TYPE_FLOW_LAYOUT_SECONDARY_DIRECTION property. More...
 

Variables

const KzuObjectType KZU_OBJECT_TYPE_FLOW_LAYER
 Object type for the flow layer. More...
 

Detailed Description

2D flow (layout) layer.

KzuFlowLayer lays out its children in the primary direction as long as there is space, and then moves to a new row in the secondary direction. Not unlike word wrapping in a word processor.

See Also
kzu_ui_flow_layout.h for a 3D version of this layer.

Flow Layer Messages

KzuFlowLayer does not send any messages.

Flow Layer Properties

KZU_PROPERTY_TYPE_FLOW_LAYOUT_PRIMARY_DIRECTION property specifies the primary layouting direction. Its value type is the enum KzuFlowLayoutDirection. Values KZU_FLOW_LAYOUT_DIRECTION_NEAR_TO_FAR and KZU_FLOW_LAYOUT_DIRECTION_FAR_TO_NEAR are not supported. The default value is KZU_FLOW_LAYOUT_DIRECTION_LEFT_TO_RIGHT.

KZU_PROPERTY_TYPE_FLOW_LAYOUT_SECONDARY_DIRECTION property specifies the secondary layouting direction. Its value type is the enum KzuFlowLayoutDirection. Values KZU_FLOW_LAYOUT_DIRECTION_NEAR_TO_FAR and KZU_FLOW_LAYOUT_DIRECTION_FAR_TO_NEAR are not supported. The default value is KZU_FLOW_LAYOUT_DIRECTION_TOP_TO_BOTTOM.

KZU_PROPERTY_TYPE_LAYOUT_WIDTH property specifies the extent of the left-to-right and right-to-left (X-axis) direction.

KZU_PROPERTY_TYPE_LAYOUT_HEIGHT property specifies the extent of the top-to-bottom and bottom-to-top (Y-axis) direction.

Copyright 2008-2019 by Rightware. All rights reserved.

Function Documentation

kzsError kzuFlowLayerCreate ( const struct KzcMemoryManager memoryManager,
kzString  name,
struct KzuUIDomain uiDomain,
struct KzuFlowLayer **  out_flowLayer 
)

Creates a flow layer.

Parameters
memoryManagerThe memory manager to use for memory allocations.
nameName of the flow layer.
uiDomainThe UI domain to use.
out_flowLayerPointer that is set to point to the new flow layer.
Returns
KZS_SUCCESS on success.
kzsError kzuFlowLayerRegisterToFactory ( const struct KzuFactory factory)

Registers flow layer to the factory.

struct KzuFlowLayer* kzuFlowLayerFromLayer ( const struct KzuLayer layer)

Converts KzuLayer to KzuFlowLayer.

struct KzuLayer* kzuFlowLayerToLayer ( const struct KzuFlowLayer *  flowLayer)

Converts KzuFlowLayer to KzuLayer.

enum KzuFlowLayoutDirection kzuFlowLayerGetPrimaryDirection ( const struct KzuFlowLayer *  flowLayer)

Get the primary direction of the flow layout from the KZU_PROPERTY_TYPE_FLOW_LAYOUT_PRIMARY_DIRECTION property.

enum KzuFlowLayoutDirection kzuFlowLayerGetSecondaryDirection ( const struct KzuFlowLayer *  flowLayer)

Get the secondary direction of the flow layout from the KZU_PROPERTY_TYPE_FLOW_LAYOUT_SECONDARY_DIRECTION property.

Variable Documentation

const KzuObjectType KZU_OBJECT_TYPE_FLOW_LAYER

Object type for the flow layer.