/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 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.
#include <iostream>
#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
-#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
-#include <dali-toolkit/devel-api/visuals/text-visual-properties.h>
using namespace Dali;
using Dali::Toolkit::TextLabel;
// Respond to a click anywhere on the stage.
stage.GetRootLayer().TouchSignal().Connect( this, &HomescreenBenchmark::OnTouch );
+
+ // Respond to key events
+ stage.KeyEventSignal().Connect( this, &HomescreenBenchmark::OnKeyEvent );
}
bool OnTouch( Actor actor, const TouchData& touch )
Actor AddPage()
{
// Create root page actor.
- Actor pageActor;
+ Toolkit::Control pageActor;
if( mConfig.mTableViewEnabled )
{
- Toolkit::TableView tableView = Toolkit::TableView::New( mConfig.mRows, mConfig.mCols );
-
- // Create geometry batcher for table view.
- tableView.SetBackgroundColor( Vector4( 0.0f, 0.0f, 0.0f, 0.5f ) );
- pageActor = tableView;
+ pageActor = Toolkit::TableView::New( mConfig.mRows, mConfig.mCols );
}
else
{
pageActor = Toolkit::Control::New();
- pageActor.SetProperty( Toolkit::Control::Property::BACKGROUND_COLOR, Vector4( 0.0f, 0.0f, 0.0f, 0.5f ) );
}
+ pageActor.SetBackgroundColor( Vector4( 0.0f, 0.0f, 0.0f, 0.5f ) );
pageActor.SetParentOrigin( ParentOrigin::CENTER );
pageActor.SetAnchorPoint( AnchorPoint::CENTER );
pageActor.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
else
{
Property::Map map;
- map.Add( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT ).
+ map.Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT ).
Add( Toolkit::TextVisual::Property::TEXT, DEMO_APPS_NAMES[currentIconIndex] ).
Add( Toolkit::TextVisual::Property::TEXT_COLOR, Color::WHITE ).
Add( Toolkit::TextVisual::Property::POINT_SIZE, ( ( static_cast<float>( ROW_HEIGHT * LABEL_AREA ) * 72.0f ) / dpi.y ) * 0.25f ).
}
}
+ void OnKeyEvent( const KeyEvent& event )
+ {
+ if( event.state == KeyEvent::Down )
+ {
+ if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+ {
+ mApplication.Quit();
+ }
+ }
+ }
+
private:
Application& mApplication;
int mCurrentPage;
};
-void RunTest( Application& application, const HomescreenBenchmark::Config& config, bool printHelpAndExit )
-{
- HomescreenBenchmark test( application, config );
-
- if( printHelpAndExit )
- {
- PrintHelp( "c<num>", " Number of columns" );
- PrintHelp( "r<num>", " Number of rows" );
- PrintHelp( "p<num>", " Number of pages ( must be greater than 1 )" );
- PrintHelp( "-disable-tableview", " Disables the use of TableView for layouting" );
- PrintHelp( "-disable-icon-labels", " Disables labels for each icon" );
- PrintHelp( "-use-checkbox", " Uses checkboxes for icons" );
- PrintHelp( "-use-text-label", " Uses TextLabel instead of a TextVisual" );
- return;
- }
-
- application.MainLoop();
-}
-
-// Entry point for Linux & Tizen applications.
int DALI_EXPORT_API main( int argc, char **argv )
{
// Default settings.
}
Application application = Application::New( &argc, &argv );
+ HomescreenBenchmark test( application, config );
- RunTest( application, config, printHelpAndExit );
+ if( printHelpAndExit )
+ {
+ PrintHelp( "c<num>", " Number of columns" );
+ PrintHelp( "r<num>", " Number of rows" );
+ PrintHelp( "p<num>", " Number of pages ( must be greater than 1 )" );
+ PrintHelp( "-disable-tableview", " Disables the use of TableView for layouting" );
+ PrintHelp( "-disable-icon-labels", " Disables labels for each icon" );
+ PrintHelp( "-use-checkbox", " Uses checkboxes for icons" );
+ PrintHelp( "-use-text-label", " Uses TextLabel instead of a TextVisual" );
+ return 0;
+ }
+
+ application.MainLoop();
return 0;
}