#include <dali/public-api/animation/animation.h>
#include <dali/public-api/events/key-event.h>
#include <dali/public-api/object/type-registry.h>
+#include <dali/public-api/object/type-registry-helper.h>
+#include <dali/public-api/size-negotiation/relayout-container.h>
// INTERNAL INCLUDES
+#include <dali-toolkit/public-api/focus-manager/focus-manager.h>
#include <dali-toolkit/internal/controls/navigation-frame/navigation-tool-bar.h>
#include <dali-toolkit/internal/controls/navigation-frame/navigation-title-bar.h>
-#include <dali-toolkit/internal/controls/relayout-controller.h>
#include <dali-toolkit/public-api/focus-manager/focus-manager.h>
namespace Dali
namespace // to register type
{
-// Actions
-
-const char* const ACTION_PUSH = "push";
-const char* const ACTION_POP = "pop";
-
BaseHandle Create()
{
return Toolkit::NavigationControl::New();
}
-TypeRegistration mType( typeid( Toolkit::NavigationControl ), typeid( Toolkit::Control ), Create );
+// Setup properties, signals and actions using the type-registry.
+DALI_TYPE_REGISTRATION_BEGIN( Toolkit::NavigationControl, Toolkit::Control, Create )
+
+DALI_ACTION_REGISTRATION( NavigationControl, "push", ACTION_PUSH )
+DALI_ACTION_REGISTRATION( NavigationControl, "pop", ACTION_POP )
-TypeAction a1( mType, ACTION_PUSH, &NavigationControl::DoAction );
-TypeAction a2( mType, ACTION_POP, &NavigationControl::DoAction );
+DALI_TYPE_REGISTRATION_END()
}
return mBarLayer;
}
-void NavigationControl::OnRelayout( const Vector2& size, ActorSizeContainer& container )
+void NavigationControl::OnRelayout( const Vector2& size, RelayoutContainer& container )
{
const Vector2 setSize( size );
mCurrentItem.SetPosition( mItemPositionCoefficient * positionOffset);
Vector2 itemSize( setSize.x, setSize.y-sizeShrink );
- Relayout(mCurrentItem, itemSize, container);
+ container.Add( mCurrentItem, itemSize );
}
- container.push_back(ActorSizePair( mBarLayer, setSize ));
- container.push_back(ActorSizePair( mPopupLayer, setSize ));
+ container.Add( mBarLayer, setSize );
+ container.Add( mPopupLayer, setSize );
}
void NavigationControl::OnControlSizeSet( const Vector3& size )