/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 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.
namespace
{
-const char* const BACKGROUND_IMAGE = DALI_IMAGE_DIR "background-gradient.jpg";
-const char* const TOOLBAR_IMAGE = DALI_IMAGE_DIR "top-bar.png";
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "background-gradient.jpg";
+const char* const TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";
const char* const TOOLBAR_TITLE = "Logging";
//const int TOOLBAR_HEIGHT = 62;
public:
LoggingController( Application& application )
- : mApplication( application )
+ : mApplication( application ),
+ mView(),
+ mToolBar(),
+ mContentLayer(),
+ mAnimation(),
+ mPerformanceLoggerNames(),
+ mPerformanceLoggers(),
+ mCurrentLogger( 0 ),
+ mLoggerStates(),
+ mLogRadioButtons(),
+ mFrequencyRadioButtons()
{
// Connect to the Application's Init signal
mApplication.InitSignal().Connect( this, &LoggingController::Create );
contentTable.SetAnchorPoint( AnchorPoint::TOP_LEFT );
contentTable.SetParentOrigin( ParentOrigin::TOP_LEFT );
contentTable.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5f ) );
-// contentTable.TouchedSignal().Connect( this, &LoggingController::OnTouchEvent );
for( unsigned int i = 0; i < contentTable.GetRows(); ++i )
{
radioButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
radioButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
radioButton.SetPosition( DP(radioX), DP(radioY) );
- radioButton.SetSelected( true );
+ radioButton.SetProperty( Toolkit::Button::Property::SELECTED, true );
radioButton.StateChangedSignal().Connect( this, &LoggingController::LoggingRadioSelect );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( CREATE_BUTTON_ID );
- button.SetLabelText( CREATE_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, CREATE_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( DELETE_BUTTON_ID );
- button.SetLabelText( DELETE_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, DELETE_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( START_BUTTON_ID );
- button.SetLabelText( START_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, START_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( STOP_BUTTON_ID );
- button.SetLabelText( STOP_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, STOP_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( ENABLE_BUTTON_ID );
- button.SetLabelText( ENABLE_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, ENABLE_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( DISABLE_BUTTON_ID );
- button.SetLabelText( DISABLE_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, DISABLE_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
Toolkit::RadioButton radioButton = Toolkit::RadioButton::New( FREQUENCY_2_RADIO_TEXT );
radioButton.SetName( FREQUENCY_2_RADIO_ID );
- radioButton.SetSelected( true );
+ radioButton.SetProperty( Toolkit::Button::Property::SELECTED, true );
radioButton.StateChangedSignal().Connect( this, &LoggingController::FrequencyRadioSelect );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( VSYNC_BUTTON_ID );
- button.SetLabelText( VSYNC_BUTTON_TEXT );
+ button.SetProperty( Toolkit::Button::Property::LABEL, VSYNC_BUTTON_TEXT);
button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
button.ClickedSignal().Connect( this, &LoggingController::OnButtonClicked );
<< ", " << ((mLoggerStates[i].isTiming) ? "Started" : "Stopped")
<< ", " << ((mLoggerStates[i].isEnabled) ? "Enabled" : "Disabled");
- mLogRadioButtons[i].SetLabelText( ss.str() );
+ mLogRadioButtons[i].SetProperty( Toolkit::Button::Property::LABEL, ss.str() );
}
}
bool LoggingRadioSelect( Toolkit::Button button )
{
- if( button.GetName() == LOGGER_1_RADIO_ID && button.IsSelected() == true )
+ bool isSelected = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+ if( !isSelected )
+ {
+ return true;
+ }
+
+ if( button.GetName() == LOGGER_1_RADIO_ID )
{
mCurrentLogger = 0;
}
- else if( button.GetName() == LOGGER_2_RADIO_ID && button.IsSelected() == true )
+ else if( button.GetName() == LOGGER_2_RADIO_ID )
{
mCurrentLogger = 1;
}
- else if( button.GetName() == LOGGER_3_RADIO_ID && button.IsSelected() == true )
+ else if( button.GetName() == LOGGER_3_RADIO_ID )
{
mCurrentLogger = 2;
}
const unsigned int frequency = mLoggerStates[mCurrentLogger].frequency;
if( frequency == HIGH_FREQUENCY )
{
- mFrequencyRadioButtons[0].SetSelected( true );
+ mFrequencyRadioButtons[0].SetProperty( Toolkit::Button::Property::SELECTED, true );
}
else if( frequency == MEDIUM_FREQUENCY )
{
- mFrequencyRadioButtons[1].SetSelected( true );
+ mFrequencyRadioButtons[1].SetProperty( Toolkit::Button::Property::SELECTED, true );
}
else if( frequency == LOW_FREQUENCY )
{
- mFrequencyRadioButtons[2].SetSelected( true );
+ mFrequencyRadioButtons[2].SetProperty( Toolkit::Button::Property::SELECTED, true );
}
}
bool FrequencyRadioSelect( Toolkit::Button button )
{
- if( button.GetName() == FREQUENCY_1_RADIO_ID && button.IsSelected() == true )
+ bool isSelected = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+ if( !isSelected )
+ {
+ return true;
+ }
+
+ if( button.GetName() == FREQUENCY_1_RADIO_ID )
{
if( mPerformanceLoggers[mCurrentLogger] )
{
mLoggerStates[mCurrentLogger].frequency = HIGH_FREQUENCY;
}
}
- else if( button.GetName() == FREQUENCY_2_RADIO_ID && button.IsSelected() == true )
+ else if( button.GetName() == FREQUENCY_2_RADIO_ID )
{
if( mPerformanceLoggers[mCurrentLogger] )
{
mLoggerStates[mCurrentLogger].frequency = MEDIUM_FREQUENCY;
}
}
- else if( button.GetName() == FREQUENCY_3_RADIO_ID && button.IsSelected() == true )
+ else if( button.GetName() == FREQUENCY_3_RADIO_ID )
{
if( mPerformanceLoggers[mCurrentLogger] )
{
return true;
}
- bool OnTouchEvent( Actor actor, const TouchEvent& event )
- {
- if( 1u == event.GetPointCount() )
- {
- const TouchPoint::State state = event.GetPoint(0u).state;
-
- // Clamp to integer values; this is to reduce flicking due to pixel misalignment
- const float localPoint = static_cast<float>( static_cast<int>( event.GetPoint( 0 ).local.y ) );
-
- if( TouchPoint::Down == state )
- {
- mLastPoint = localPoint;
- mAnimation = Animation::New( 0.25f );
- }
- else if( TouchPoint::Motion == state )
- {
- if( mAnimation )
- {
- mAnimation.AnimateBy( Property(actor, Actor::Property::POSITION), Vector3( 0.f, localPoint - mLastPoint, 0.f ), AlphaFunction::LINEAR );
- mAnimation.Play();
- mLastPoint = localPoint;
- }
- }
- }
-
- return true;
- }
-
- private:
+private:
struct LoggerState
{
Layer mContentLayer; ///< Content layer
Animation mAnimation;
- float mLastPoint;
typedef std::vector< std::string > Strings;
Strings mPerformanceLoggerNames;
// Entry point for Linux & Tizen applications
//
-int main( int argc, char **argv )
+int DALI_EXPORT_API main( int argc, char **argv )
{
- Application application = Application::New( &argc, &argv, DALI_DEMO_THEME_PATH );
+ Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
RunTest( application );