* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+#include <dali/public-api/object/weak-handle.h>
#include <dali-toolkit/devel-api/layouting/layout-item-impl.h>
#include <dali-toolkit/devel-api/layouting/layout-controller.h>
#include <dali-toolkit/devel-api/layouting/layout-size.h>
+#include <dali-toolkit/internal/layouting/layout-transition-data-impl.h>
namespace Dali
{
{
namespace Internal
{
-class LayoutParent;
-
class LayoutItem::Impl
{
Impl();
public:
- BaseObject* mOwner; ///< Control or Visual that owns this layout. Raw pointer to prevent cyclic references
+ WeakHandle<Handle> mOwner; ///< Control or Visual that owns this layout. Weak pointer to prevent cyclic references
LayoutParent* mLayoutParent; ///< The containing layout parent.
MeasureSpec mOldWidthMeasureSpec;
static bool sUseZeroUnspecifiedMeasureSpec;
+ // Custom transitions
+ LayoutTransitionDataPtr mOnChildAddTransitionData;
+ LayoutTransitionDataPtr mOnChildRemoveTransitionData;
+ LayoutTransitionDataPtr mOnChildFocusTransitionData;
+ LayoutTransitionDataPtr mOnOwnerSetTransitionData;
+ LayoutTransitionDataPtr mOnLayoutChangeTransitionData;
+ // Default transition
+ LayoutTransitionDataPtr mDefaultTransitionData;
+
+ // To pass layout data during perform layout
+ static LayoutData* sLayoutData;
};
} // namespace Internal