--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2014 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.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * 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.
+ *******************************************************************************/
+/**
+ * @file tbt-dali-widget-view.h
+ * @brief To test functionality of dali widget
+ *
+ * @author Jahangir Alam(ja.alam@samsung.com)
+ * @date December, 2016
+ * @credit
+ *
+ */
+
+
+#ifndef __TBT_MODULE_APP_DALI_WIDGET
+#define __TBT_MODULE_APP_DALI_WIDGET
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "utils/dali-ui-utils.h"
+// widget viewer_dali
+#include <widget_viewer_dali/widget_viewer_dali.h>
+
+class TBTDaliWidgetView: public UiUtils {
+
+private:
+
+ TableView mTableView;
+ TextLabel lblWidgetAdded;
+ TextLabel lblWidgetCreationAbortedSignal;
+ TextLabel lblWidgetContentUpdatedSignal;
+ TextLabel lblWidgetFaultedSignal;
+
+ PushButton btnActivate;
+ PushButton btnPause;
+ PushButton btnResume;
+ PushButton btnCancel;
+
+ WidgetView::WidgetViewManager mWidgetViewManager;
+ WidgetView::WidgetView mWidgetView;
+
+public:
+ TBTDaliWidgetView(Application& mApplication, app_control_h _control);
+
+ void onWidgetCreationAbortedSignal(WidgetView::WidgetView widgetView);
+ void onWidgetContentUpdatedSignal(WidgetView::WidgetView widgetView);
+ void onWidgetFaultedSignal(WidgetView::WidgetView widgetView);
+
+ bool OnButtonClicked( Button button );
+
+ void OnWidgetAdded( WidgetView::WidgetView widgetView );
+ void OnWidgetDeleted( WidgetView::WidgetView widgetView );
+};
+
+#endif // __TBT_MODULE_APP_DALI_WIDGET
+
mAccessibilityManager = AccessibilityManager::Get();
- mAccessibilityManager.FocusChangedSignal().Connect(this,&TBTDaliAccessibilityManagerView::onFocusChangedSignal);
- mAccessibilityManager.FocusOvershotSignal().Connect(this,&TBTDaliAccessibilityManagerView::onFocusOvershotSignal);
- mAccessibilityManager.FocusedActorActivatedSignal().Connect(this,&TBTDaliAccessibilityManagerView::onFocusedActorActivatedSignal);
- mAccessibilityManager.StatusChangedSignal().Connect(this,&TBTDaliAccessibilityManagerView::onStatusChangedSignal);
- mAccessibilityManager.ActionOverSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionOverSignal);
- mAccessibilityManager.ActionUpSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionUpSignal);
- mAccessibilityManager.ActionDownSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionDownSignal);
- mAccessibilityManager.ActionClearFocusSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionClearFocusSignal);
- mAccessibilityManager.ActionBackSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionBackSignal);
- mAccessibilityManager.ActionScrollSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionScrollSignal);
-
mTableView=TableView::New(15,1);
mTableView.SetAnchorPoint(AnchorPoint::TOP_LEFT);
mTableView.SetParentOrigin(ParentOrigin::TOP_LEFT);
ctl["lbl2"]=" Focus overshot signal not call";
ctl["lbl3"]=" Focused actor activated signal not call";
ctl["lbl4"]=" Accessibility Status changed signal not call";
- ctl["lbl5"]=" Action scroll signal not call";
+ ctl["lbl5"]=" Action scroll signal not call";
// ctl["lbl5"]=" Action over signal not call";
// ctl["lbl6"]=" Action up signal not call";
// ctl["lbl7"]=" Action down signal not call";
mAccessibilityManager.SetFocusOrder(lblFocusChangedSignal,1);
- mAccessibilityManager.SetFocusOrder(lblFocusOvershotSignal,mAccessibilityManager.GenerateNewFocusOrder());
- mAccessibilityManager.SetFocusOrder(lblFocusedActorActivatedSignal,mAccessibilityManager.GenerateNewFocusOrder());
- mAccessibilityManager.SetFocusOrder(lblStatusChangedSignal,mAccessibilityManager.GenerateNewFocusOrder());
- mAccessibilityManager.SetFocusOrder(lblActionScrollSignal,mAccessibilityManager.GenerateNewFocusOrder());
-// mAccessibilityManager.SetFocusOrder(lblActionOverSignal,5);
-// mAccessibilityManager.SetFocusOrder(lblActionUpSignal,6);
-// mAccessibilityManager.SetFocusOrder(lblActionDownSignal,7);
-// mAccessibilityManager.SetFocusOrder(lblActionClearFocusSignal,8);
-// mAccessibilityManager.SetFocusOrder(lblActionBackSignal,9);
+ mAccessibilityManager.SetFocusOrder(lblFocusOvershotSignal,2);
+ mAccessibilityManager.SetFocusOrder(lblFocusedActorActivatedSignal,3);
+ mAccessibilityManager.SetFocusOrder(lblStatusChangedSignal,4);
+ mAccessibilityManager.SetFocusOrder(lblActionScrollSignal,5);
+// mAccessibilityManager.SetFocusOrder(lblActionOverSignal,6);
+// mAccessibilityManager.SetFocusOrder(lblActionUpSignal,7);
+// mAccessibilityManager.SetFocusOrder(lblActionDownSignal,8);
+// mAccessibilityManager.SetFocusOrder(lblActionClearFocusSignal,9);
+// mAccessibilityManager.SetFocusOrder(lblActionBackSignal,10);
if(! mAccessibilityManager.SetCurrentFocusActor(lblFocusChangedSignal))
// mAccessibilityManager.SetFocusOrder( btnClear, mAccessibilityManager.GenerateNewFocusOrder());
//
// mTableView.AddChild(btnClear, TableView::CellPosition(13,0));
+
+ mAccessibilityManager.FocusChangedSignal().Connect(this,&TBTDaliAccessibilityManagerView::onFocusChangedSignal);
+ mAccessibilityManager.FocusOvershotSignal().Connect(this,&TBTDaliAccessibilityManagerView::onFocusOvershotSignal);
+ mAccessibilityManager.FocusedActorActivatedSignal().Connect(this,&TBTDaliAccessibilityManagerView::onFocusedActorActivatedSignal);
+ mAccessibilityManager.StatusChangedSignal().Connect(this,&TBTDaliAccessibilityManagerView::onStatusChangedSignal);
+ mAccessibilityManager.ActionOverSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionOverSignal);
+ mAccessibilityManager.ActionUpSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionUpSignal);
+ mAccessibilityManager.ActionDownSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionDownSignal);
+ mAccessibilityManager.ActionClearFocusSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionClearFocusSignal);
+ mAccessibilityManager.ActionBackSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionBackSignal);
+ mAccessibilityManager.ActionScrollSignal().Connect(this,&TBTDaliAccessibilityManagerView::onActionScrollSignal);
}
bool TBTDaliAccessibilityManagerView::OnClearClick(Button button)
--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2014 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.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * 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.
+ *******************************************************************************/
+/**
+ * @file tbt-dali-widget-view.cpp
+ * @brief To test functionality of dali widget
+ *
+ * @author Jahangir Alam(ja.alam@samsung.com)
+ * @date December, 2016
+ * @credit
+ *
+ */
+
+#include "view/tbt-dali-widget-view.h"
+
+TBTDaliWidgetView::TBTDaliWidgetView(Application& mApplication, app_control_h _control) :
+ UiUtils(mApplication, _control) {
+
+ Init("DALi widget");
+ mInfoText=std::string("")+
+ "\nTo perform the test:"
+ "\n1. Run DALi Widget View."
+ "\n2. Widget added signal will call after successfully launch widget on screen"
+ "\n3. Widget creation aborted signal will call if unable to launch widget"
+ "\n4. Active button for re launch the widget if aborted signal are emit."
+ "\n5. Pause/Resume button are perform widget pause/resume respectively."
+ "\n6. Cancel button un-set the widget touch event."
+ "\n7. If the corresponding event signals mgs "
+ "are changed then press <color value='green'><b>Pass</b></color>. "
+ "Otherwise, press <color value='red'><b>Fail</b></color>";
+
+ Stage stage = Stage::GetCurrent();
+
+ mTableView=TableView::New(16,4);
+ mTableView.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mTableView.SetParentOrigin(ParentOrigin::TOP_LEFT);
+ mTableView.SetSize(bodySize.width, bodySize.height-(3*TEXTLABEL_HEIGHT * bodySize.height + this->footerSize.height));
+ mTableView.SetPosition(0.0f, 0.0f);
+ this->ctlBody.Add(mTableView);
+
+ Property::Map ctl;
+ Property::Map size;
+
+ ctl["lbl1"]=" Widget added signal not call";
+ ctl["lbl2"]=" Widget creation aborted signal not call";
+// ctl["lbl3"]=" Widget content updated signal not call";
+// ctl["lbl4"]=" Widget faulted signal not call";
+
+ size["lbl1"]=Vector2(bodySize.width, TEXTLABEL_HEIGHT * bodySize.height);
+ size["lbl2"]=Vector2(bodySize.width, TEXTLABEL_HEIGHT * bodySize.height);
+// size["lbl3"]=Vector2(bodySize.width, TEXTLABEL_HEIGHT * bodySize.height);
+// size["lbl4"]=Vector2(bodySize.width, TEXTLABEL_HEIGHT * bodySize.height);
+
+ AddLabelToTable(mTableView, ctl, size);
+ //CreateLabelList(ctl,size);//create textlabel list
+
+ lblWidgetAdded=TextLabel::DownCast(mTableView.GetChildAt(0));
+ lblWidgetCreationAbortedSignal=TextLabel::DownCast(mTableView.GetChildAt(1));
+// lblWidgetContentUpdatedSignal=TextLabel::DownCast(mTableView.GetChildAt(2));
+// lblWidgetFaultedSignal=TextLabel::DownCast(mTableView.GetChildAt(3));
+
+ mTableView.SetFixedHeight(0, 0.9*TEXTLABEL_HEIGHT * bodySize.height);
+ mTableView.SetFixedHeight(1, 0.9*TEXTLABEL_HEIGHT * bodySize.height);
+// mTableView.SetFixedHeight(2, 0.9*TEXTLABEL_HEIGHT * bodySize.height);
+// mTableView.SetFixedHeight(3, 0.9*TEXTLABEL_HEIGHT * bodySize.height);
+
+ mWidgetViewManager = WidgetView::WidgetViewManager::New( mApplication, "org.tizen.tbtcoreapp-dali" );
+ if( !mWidgetViewManager )
+ {
+ DBG("Widget is not enabled!");
+ return;
+ }
+
+ //Add widget
+ mWidgetView = mWidgetViewManager.AddWidget("org.tizen.calendar.widget", "", bodySize.width, 0.9*bodySize.width, 2000.0 );
+ mWidgetView.SetParentOrigin( ParentOrigin::TOP_LEFT );
+ mWidgetView.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+ mWidgetView.SetBackgroundColor( Vector4(0.0f, 0.0f, 0.0f, 0.0f) );
+ mWidgetView.SetPosition( 0.0f, 0.0f );
+
+ mWidgetView.WidgetAddedSignal().Connect( this, &TBTDaliWidgetView::OnWidgetAdded );
+ mWidgetView.WidgetDeletedSignal().Connect( this, &TBTDaliWidgetView::OnWidgetDeleted );
+ mWidgetView.WidgetDeletedSignal().Connect( this, &TBTDaliWidgetView::onWidgetCreationAbortedSignal );
+ mWidgetView.WidgetDeletedSignal().Connect( this, &TBTDaliWidgetView::onWidgetContentUpdatedSignal );
+ mWidgetView.WidgetDeletedSignal().Connect( this, &TBTDaliWidgetView::onWidgetFaultedSignal );
+ //this->ctlBody.Add(mWidgetView);
+ mTableView.AddChild(mWidgetView, TableView::CellPosition(4,0));
+ mTableView.SetFixedHeight(4, 0.9*bodySize.width);
+
+ //
+ Vector2 buttonSize=Vector2(bodySize.width/4, BUTTON_HEIGHT*bodySize.height);
+ Vector2 position=Vector2(0.0f, 0.0f);
+
+ btnActivate=CreateButton(AnchorPoint::TOP_LEFT, position, "Activate", selectedColor, unSelectedColor, buttonSize);
+ btnActivate.ClickedSignal().Connect( this, &TBTDaliWidgetView::OnButtonClicked );
+ mTableView.AddChild(btnActivate,TableView::CellPosition(15,0));
+
+ btnPause=CreateButton(AnchorPoint::TOP_LEFT, position, "Pause", unSelectedColor, selectedColor , buttonSize);
+ btnPause.ClickedSignal().Connect( this, &TBTDaliWidgetView::OnButtonClicked );
+ mTableView.AddChild(btnPause,TableView::CellPosition(15,1));
+
+ btnResume=CreateButton(AnchorPoint::TOP_LEFT, position, "Resume", selectedColor, unSelectedColor, buttonSize);
+ btnResume.ClickedSignal().Connect( this, &TBTDaliWidgetView::OnButtonClicked );
+ mTableView.AddChild(btnResume,TableView::CellPosition(15,2));
+
+ btnCancel=CreateButton(AnchorPoint::TOP_LEFT, position, "Cancel", unSelectedColor, selectedColor, buttonSize);
+ btnCancel.ClickedSignal().Connect( this, &TBTDaliWidgetView::OnButtonClicked );
+ mTableView.AddChild(btnCancel,TableView::CellPosition(15,3));
+}
+void TBTDaliWidgetView::onWidgetCreationAbortedSignal(WidgetView::WidgetView widgetView)
+{
+ DBG("TBTDaliWidgetView::onWidgetCreationAbortedSignal");
+ this->lblWidgetCreationAbortedSignal.SetProperty( TextLabel::Property::TEXT, " Widget Creation Aborted Signal called" );
+ this->lblWidgetCreationAbortedSignal.SetProperty( TextLabel::Property::TEXT_COLOR, Color::GREEN);
+}
+void TBTDaliWidgetView::onWidgetContentUpdatedSignal(WidgetView::WidgetView widgetView)
+{
+ DBG("TBTDaliWidgetView::onWidgetContentUpdatedSignal");
+// this->lblWidgetContentUpdatedSignal.SetProperty( TextLabel::Property::TEXT, " Widget Content Updated Signal called" );
+// this->lblWidgetContentUpdatedSignal.SetProperty( TextLabel::Property::TEXT_COLOR, Color::GREEN);
+}
+void TBTDaliWidgetView::onWidgetFaultedSignal(WidgetView::WidgetView widgetView)
+{
+ DBG("TBTDaliWidgetView::onWidgetFaultedSignal");
+// this->lblWidgetFaultedSignal.SetProperty( TextLabel::Property::TEXT, " Widget Faulted Signal called" );
+// this->lblWidgetFaultedSignal.SetProperty( TextLabel::Property::TEXT_COLOR, Color::GREEN);
+}
+bool TBTDaliWidgetView::OnButtonClicked( Button button )
+{
+ DBG("TBTDaliWidgetView::OnButtonClicked");
+
+ if( button == btnPause )
+ {
+ if(! mWidgetView.PauseWidget())
+ DBG("Widget pause failed");
+ else
+ DBG("Widget paused");
+ }
+ else if( button == btnResume )
+ {
+ if(! mWidgetView.ResumeWidget())
+ DBG("Widget resume failed");
+ else {
+ DBG("Widget resume");
+ }
+ }
+ else if( button == btnCancel )
+ {
+ if(! mWidgetView.CancelTouchEvent())
+ DBG("Cancel touch event failed.");
+ else
+ DBG("Cancel touch event");
+ }
+ else if(btnActivate==button)
+ {
+ DBG("btnActivate click");
+ mWidgetView.ActivateFaultedWidget();
+ }
+
+ return true;
+}
+
+void TBTDaliWidgetView::OnWidgetAdded( WidgetView::WidgetView widgetView )
+{
+ DBG("TBTDaliWidgetView::OnWidgetAdded");
+ this->lblWidgetAdded.SetProperty( TextLabel::Property::TEXT, " Widget Added Signal called" );
+ this->lblWidgetAdded.SetProperty( TextLabel::Property::TEXT_COLOR, Color::GREEN);
+}
+
+void TBTDaliWidgetView::OnWidgetDeleted( WidgetView::WidgetView widgetView )
+{
+ DBG("TBTDaliWidgetView::OnWidgetDeleted");
+ //this->ctlBody.Remove( widgetView );
+ mTableView.RemoveChildAt(TableView::CellPosition(3,2));
+}
+