namespace
{
+const char* const STATE_MESSAGE_LOADING = "loading";
+const char* const STATE_MESSAGE_RETRY = "Unable to load data. Tap to retry";
+
#if defined(DEBUG_ENABLED)
Integration::Log::Filter* gWidgetViewLogging = Integration::Log::Filter::New( Debug::Verbose, false, "LOG_WIDGET_VIEW" );
#endif
mPid( 0 ),
mUpdatePeriod( 0.0 ),
mPreviewVisible( true ),
- mStateTextVisible( true ),
+ mLoadingTextVisible( true ),
+ mTapTextVisible( true ),
mPermanentDelete( false ),
mWatcherHandle( NULL ),
mRemoteSurface( NULL )
mPid( 0 ),
mUpdatePeriod( updatePeriod ),
mPreviewVisible( true ),
- mStateTextVisible( true ),
+ mLoadingTextVisible( true ),
+ mTapTextVisible( true ),
mPermanentDelete( false ),
mWatcherHandle( NULL ),
mRemoteSurface( NULL )
return false;
}
-void WidgetView::ShowPreview( bool show )
+void WidgetView::SetPreviewVisible( bool visible )
{
- if( mPreviewImage && show != mPreviewVisible )
+ if( mPreviewImage && mPreviewVisible != visible )
{
- mPreviewVisible = show;
- mPreviewImage.SetVisible( show );
+ mPreviewVisible = visible;
+ mPreviewImage.SetVisible( visible );
}
}
return mPreviewVisible;
}
-void WidgetView::ShowStateText( bool show )
+void WidgetView::SetLoadingTextVisible( bool visible )
{
- if( mStateText && mStateTextVisible != show )
+ if( mStateText && mLoadingTextVisible != visible )
{
- mStateTextVisible = show;
- mStateText.SetVisible( show );
+ mLoadingTextVisible = visible;
+
+ if( visible )
+ {
+ mStateText.SetProperty( Toolkit::TextLabel::Property::TEXT, STATE_MESSAGE_LOADING );
+ }
+ mStateText.SetVisible( visible );
}
}
-bool WidgetView::IsStateTextVisible()
+bool WidgetView::IsLoadingTextVisible()
{
- return mStateTextVisible;
+ return mLoadingTextVisible;
}
void WidgetView::ActivateFaultedWidget()
{
if( mPid < 0 )
{
- // Esable preview and text
- if( mPreviewVisible )
- {
- mPreviewImage.SetVisible( true );
- }
-
- if( mStateTextVisible )
- {
- mStateText.SetVisible( true );
- }
+ // Enable preview and loading text
+ ShowTapWidgetState( false );
+ ShowLoadingState( true );
// launch widget again
mPid = widget_instance_launch( mInstanceId.c_str(), (char *)mContentInfo.c_str(), mWidth, mHeight );
{
DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::ActivateFaultedWidget: widget_instance_launch is failed. [%s]\n", mWidgetId.c_str() );
+ ShowLoadingState( false );
+ ShowTapWidgetState( true );
+
// Emit signal
Dali::WidgetView::WidgetView handle( GetOwner() );
mWidgetCreationAbortedSignal.Emit( handle );
+
return;
}
mWidgetImageView.SetProperty( Toolkit::ImageView::Property::PRE_MULTIPLIED_ALPHA, true );
// Disable preview and text
- if( mPreviewVisible )
- {
- mPreviewImage.SetVisible( false );
- }
-
- if( mStateTextVisible )
- {
- mStateText.SetVisible( false );
- }
+ ShowLoadingState( false );
// Emit signal
Dali::WidgetView::WidgetView handle( GetOwner() );
void WidgetView::RemoveWidgetImage()
{
+ ShowTapWidgetState( true );
+
// Emit signal
Dali::WidgetView::WidgetView handle( GetOwner() );
mWidgetDeletedSignal.Emit( handle );
+ mWidgetImageView.SetVisible( false );
mWidgetImageView.Reset();
DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::RemoveWidgetImage: Widget image is removed.\n" );
if( value.Get( previewEnabled ) )
{
- impl.ShowPreview( previewEnabled );
+ impl.SetPreviewVisible( previewEnabled );
}
break;
}
if( value.Get( textEnabled ) )
{
- impl.ShowStateText( textEnabled );
+ impl.SetLoadingTextVisible( textEnabled );
}
else if( value.Get( map ) )
{
}
case Dali::WidgetView::WidgetView::Property::LOADING_TEXT:
{
- value = impl.IsStateTextVisible();
+ value = impl.IsLoadingTextVisible();
break;
}
case Dali::WidgetView::WidgetView::Property::WIDGET_STATE_FAULTED:
// State text
// TODO: use po files
- mStateText = Toolkit::TextLabel::New( "Loading..." );
+ mStateText = Toolkit::TextLabel::New( STATE_MESSAGE_LOADING );
mStateText.SetParentOrigin( ParentOrigin::CENTER );
mStateText.SetAnchorPoint( AnchorPoint::CENTER );
mStateText.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
mPid = widget_instance_launch( instanceId, (char *)mContentInfo.c_str(), mWidth, mHeight );
if( mPid < 0)
{
+
+ ShowTapWidgetState( true );
+
DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::OnInitialize: widget_instance_launch is failed. [%s]\n", mWidgetId.c_str() );
// Emit signal
mRemoteSurface = NULL;
}
+void WidgetView::ShowLoadingState( bool show )
+{
+ if( mPreviewImage && mPreviewVisible )
+ {
+ mPreviewImage.SetVisible( show );
+ }
+
+ if( mStateText && mLoadingTextVisible )
+ {
+ mStateText.SetProperty( Toolkit::TextLabel::Property::TEXT, STATE_MESSAGE_LOADING );
+ mStateText.SetVisible( show );
+ }
+}
+
+void WidgetView::ShowTapWidgetState( bool show )
+{
+ if( mPreviewImage && mPreviewVisible )
+ {
+ mPreviewImage.SetVisible( false );
+ }
+
+ if( mStateText && mTapTextVisible )
+ {
+ mStateText.SetProperty( Toolkit::TextLabel::Property::TEXT, STATE_MESSAGE_RETRY );
+ mStateText.SetVisible( show );
+ }
+}
+
void WidgetView::SetLoadingTextPropertyMap( Property::Map map )
{
if( mStateText )