GlRenderValueBinding is a binding from shaders/materials into values in GlRenderState.
More...
#include <kanzi/core.ui/platform/graphics_backend/gl/gl_render_value_binding.hpp>
|
| void | addPropertyListener (Node *node, GlRenderState &renderState, PropertyDataType dataType, AbstractPropertyType propertyType, ShaderProgram::UniformTransformation transformation) |
| | Add a listener for given property. More...
|
| |
| void | applyBlendMode (GlRenderState &renderState, PropertyObject *object, Material &material) |
| | Applies the blend mode. More...
|
| |
| void | attach (Material &material, Node *node, bool readBlendModeFromNode, GlRenderState &renderState) |
| | Attaches to a material and a node. More...
|
| |
| void | attach (Material &material, Node *node, GlRenderState &renderState) |
| | Attaches to a material and a node. More...
|
| |
| optional< int > | getBlendModeOverride () const |
| | Gets the blend mode override. More...
|
| |
| optional< int > | getBlendModeValue (PropertyObject *object, Material &material) const |
| | Gets the blend mode value to apply. More...
|
| |
| bool | getOpaquenessHint () const |
| | Gets the opaqueness hint. More...
|
| |
| bool | getTranslucencyHint () const |
| | Gets the translucency hint. More...
|
| |
| void | invalidate () |
| | Invalidates the state of the notification handler. More...
|
| |
| void | setAllPropertiesDirty () |
| | Flag all properties as being dirty and needing an update. More...
|
| |
| void | setBlendModeOverride (optional< int > blendMode) |
| | Sets the blend mode override. More...
|
| |
| void | setOpaquenessHint (bool value) |
| | Sets the opaqueness hint. More...
|
| |
| void | setTranslucencyHint (bool value) |
| | Sets the translucency hint. More...
|
| |
| void | update (GlRenderState &renderState, PropertyObject *object, Material &material) |
| | Apply changes into render state. More...
|
| |
GlRenderValueBinding is a binding from shaders/materials into values in GlRenderState.
- Since
- Kanzi 3.9.7 removed applyBlendMode(). Use getBlendModeValue() instead.
-
Kanzi 3.9.9 removed setBlendModeFallback().
Add a listener for given property.
- Parameters
-
| node | Node on which to listen for property changes. |
| renderState | Render state to update when the property changes. |
| dataType | Data type of the render value. |
| propertyType | Property type to listen. |
| transformation | Shader transformation for uniform values. |
- Since
- Kanzi 3.9.7 added
dataType.
| void kanzi::GlRenderValueBinding::attach |
( |
Material & |
material, |
|
|
Node * |
node, |
|
|
bool |
readBlendModeFromNode, |
|
|
GlRenderState & |
renderState |
|
) |
| |
Attaches to a material and a node.
When used with 2D nodes, the blend mode control is not necessarily attached to the node. This is the case when the blend mode is determined manually.
- Parameters
-
| material | Material to use. |
| node | Node to listen property changes on or nullptr. |
| readBlendModeFromNode | If you want to read the blend mode from the node, set to true. |
| renderState | The render state to update on changes. |
- Since
- Kanzi 3.9.1
Attaches to a material and a node.
Reading the blend mode from the node is enabled.
- Parameters
-
| material | Material to use. |
| node | Node to listen property changes on or nullptr. |
| renderState | The render state to update on changes. |
Apply changes into render state.
- Parameters
-
| renderState | Render state to write changes to. |
| object | Fallback property object for property value. |
| material | Fallback material for property value. |
- Since
- Kanzi 3.9.1 data type of
object parameter changed from Object* to PropertyObject*.
| void kanzi::GlRenderValueBinding::invalidate |
( |
| ) |
|
Invalidates the state of the notification handler.
Use this function to invalidate a node that you destroyed before destroying the GlRenderValueBinding.
| void kanzi::GlRenderValueBinding::setAllPropertiesDirty |
( |
| ) |
|
Flag all properties as being dirty and needing an update.
| optional<int> kanzi::GlRenderValueBinding::getBlendModeValue |
( |
PropertyObject * |
object, |
|
|
Material & |
material |
|
) |
| const |
Gets the blend mode value to apply.
Kanzi uses this function internally by calling it in applyBlendMode(). You can use this function in tests.
- Parameters
-
| object | Object to use for acquiring the property. |
| material | Current material. |
- Since
- Kanzi 3.9.7
-
Kanzi 3.9.9 made the function const.
Applies the blend mode.
- Parameters
-
| renderState | The render state to which to write. |
| object | Object to use for acquiring the property. |
| material | Current material. |
- Since
- Kanzi 3.9.1
| void kanzi::GlRenderValueBinding::setBlendModeOverride |
( |
optional< int > |
blendMode | ) |
|
|
inline |
Sets the blend mode override.
This should be the blend mode as determined by the layout system, originally coming from node.
- Parameters
-
| blendMode | Blend mode override or nullopt to disable. |
- Since
- Kanzi 3.9.1
| optional<int> kanzi::GlRenderValueBinding::getBlendModeOverride |
( |
| ) |
const |
|
inline |
Gets the blend mode override.
This function is intended for tests.
- Returns
- Blend mode override.
- Since
- Kanzi 3.9.9
| void kanzi::GlRenderValueBinding::setTranslucencyHint |
( |
bool |
value | ) |
|
|
inline |
Sets the translucency hint.
Translucency hint should be set by the brush depending on the content requirements.
- Parameters
-
| value | Translucency hint value. |
- Since
- Kanzi 3.9.9
| bool kanzi::GlRenderValueBinding::getTranslucencyHint |
( |
| ) |
const |
|
inline |
Gets the translucency hint.
This function is intended for tests.
- Returns
- Translucency hint value.
- Since
- Kanzi 3.9.9
| void kanzi::GlRenderValueBinding::setOpaquenessHint |
( |
bool |
value | ) |
|
|
inline |
Sets the opaqueness hint.
Should be set if external factors allow for opaque rendering.
- Parameters
-
| value | Opaqueness hint value. |
- Since
- Kanzi 3.9.9
| bool kanzi::GlRenderValueBinding::getOpaquenessHint |
( |
| ) |
const |
|
inline |
Gets the opaqueness hint.
This function is intended for tests.
- Returns
- Opaqueness hint value.
- Since
- Kanzi 3.9.9
The documentation for this struct was generated from the following file: