[widget-viewer-dali] Change the license as Flora
[platform/core/uifw/widget-viewer-dali.git] / internal / widget_view / widget_view_impl.cpp
index 7c7f930..5c7159b 100644 (file)
@@ -1,18 +1,18 @@
 /*
+ * Samsung API
  * Copyright (c) 2016 Samsung Electronics Co., Ltd.
  *
- * Licensed under the Apache License, Version 2.0 (the "License");
+ * Licensed under the Flora License, Version 1.1 (the License);
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://floralicense.org/license/
  *
  * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
+ * distributed under the License is distributed on an AS IS BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- *
  */
 
 // CLASS HEADER
@@ -114,6 +114,34 @@ WidgetView::~WidgetView()
   }
 }
 
+bool WidgetView::PauseWidget()
+{
+  int ret = widget_instance_pause( mWidgetId.c_str(), mInstanceId.c_str() );
+  if( ret < 0 )
+  {
+    DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::PauseWidget: Fail to pause widget(%s, %s) [%d]\n", mWidgetId.c_str(), mInstanceId.c_str(), ret );
+    return false;
+  }
+
+  DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::PauseWidget: Widget is paused (%s, %s)\n", mWidgetId.c_str(), mInstanceId.c_str() );
+
+  return true;
+}
+
+bool WidgetView::ResumeWidget()
+{
+  int ret = widget_instance_resume( mWidgetId.c_str(), mInstanceId.c_str() );
+  if( ret < 0 )
+  {
+    DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::ResumeWidget: Fail to resume widget(%s, %s) [%d]\n", mWidgetId.c_str(), mInstanceId.c_str(), ret );
+    return false;
+  }
+
+  DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::ResumeWidget: Widget is resumed (%s, %s)\n", mWidgetId.c_str(), mInstanceId.c_str() );
+
+  return true;
+}
+
 const std::string& WidgetView::GetWidgetId() const
 {
   return mWidgetId;
@@ -266,6 +294,11 @@ void WidgetView::ActivateFaultedWidget()
     if( mPid < 0)
     {
       DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::ActivateFaultedWidget: widget_instance_launch is failed. [%s]\n", mWidgetId.c_str() );
+
+      // Emit signal
+      Dali::WidgetView::WidgetView handle( GetOwner() );
+      mWidgetCreationAbortedSignal.Emit( handle );
+
       return;
     }
 
@@ -361,6 +394,11 @@ void WidgetView::SendWidgetEvent( int event )
       mWidgetExtraInfoUpdatedSignal.Emit( handle );
       break;
     }
+    case WIDGET_INSTANCE_EVENT_FAULT:
+    {
+      mWidgetFaultedSignal.Emit( handle );
+      break;
+    }
     default:
     {
       break;
@@ -378,31 +416,36 @@ Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetDeletedSig
   return mWidgetDeletedSignal;
 }
 
-Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetAbortedSignal()
+Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetCreationAbortedSignal()
 {
-  return mWidgetAbortedSignal;
+  return mWidgetCreationAbortedSignal;
 }
 
-Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetResized()
+Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetResizedSignal()
 {
   return mWidgetResizedSignal;
 }
 
-Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetContentUpdated()
+Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetContentUpdatedSignal()
 {
   return mWidgetContentUpdatedSignal;
 }
 
-Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetExtraInfoUpdated()
+Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetExtraInfoUpdatedSignal()
 {
   return mWidgetExtraInfoUpdatedSignal;
 }
 
-Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetUpdatePeriodChanged()
+Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetUpdatePeriodChangedSignal()
 {
   return mWidgetUpdatePeriodChangedSignal;
 }
 
+Dali::WidgetView::WidgetView::WidgetViewSignalType& WidgetView::WidgetFaultedSignal()
+{
+  return mWidgetFaultedSignal;
+}
+
 void WidgetView::OnInitialize()
 {
   char* instanceId = NULL;
@@ -488,7 +531,7 @@ void WidgetView::OnInitialize()
 
     // Emit signal
     Dali::WidgetView::WidgetView handle( GetOwner() );
-    mWidgetAbortedSignal.Emit( handle );
+    mWidgetCreationAbortedSignal.Emit( handle );
 
     return;
   }
@@ -496,6 +539,14 @@ void WidgetView::OnInitialize()
   DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::OnInitialize: widget_instance_launch is called. [%s, mPid = %d]\n", mWidgetId.c_str(), mPid );
 }
 
+void WidgetView::OnSizeSet( const Vector3& targetSize )
+{
+  if( mObjectView )
+  {
+    mObjectView.SetSize( targetSize );
+  }
+}
+
 } // namespace Internal
 
 } // namespace WidgetView