#define DALI_TOOLKIT_INTERNAL_VISUAL_BASE_DATA_IMPL_H
/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2022 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
void UpdatePropertyMap(const Property::Map& map);
/**
- * Register or set the uniform properties onto the renderer
+ * Register the uniform properties onto the renderer
*/
void RegisterUniforms(Renderer renderer, Toolkit::Direction::Type direction);
/**
+ * Set the uniform properties onto the renderer
+ */
+ void SetUniforms(Renderer renderer, Toolkit::Direction::Type direction);
+
+ /**
* Convert the control size and the transform attributes into the actual
* size of the visual.
*/
Vector4 mOffsetSizeMode;
Toolkit::Align::Type mOrigin;
Toolkit::Align::Type mAnchorPoint;
- Property::Index mOffsetIndex;
- Property::Index mSizeIndex;
+ Property::Index mOffsetIndex{Property::INVALID_INDEX};
+ Property::Index mSizeIndex{Property::INVALID_INDEX};
};
Renderer mRenderer;
Transform mTransform;
Vector4 mMixColor;
Size mControlSize;
+ float mBorderlineWidth;
+ Vector4 mBorderlineColor;
+ float mBorderlineOffset;
Vector4 mCornerRadius;
float mCornerRadiusPolicy;
int mDepthIndex;
Property::Index mMixColorIndex;
+ Property::Index mBorderlineWidthIndex;
+ Property::Index mBorderlineColorIndex;
+ Property::Index mBorderlineOffsetIndex;
Property::Index mCornerRadiusIndex;
- FittingMode mFittingMode; //< How the contents should fit the view
+ FittingMode mFittingMode; ///< How the contents should fit the view
int mFlags;
Toolkit::Visual::ResourceStatus mResourceStatus;
const Toolkit::Visual::Type mType;
- bool mNeedCornerRadius;
+ bool mAlwaysUsingBorderline : 1; ///< Whether we need the borderline in shader always.
+ bool mAlwaysUsingCornerRadius : 1; ///< Whether we need the corner radius in shader always.
};
} // namespace Visual