/*
- * 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.
#include "shared/view.h"
#include <dali/dali.h>
#include <dali-toolkit/dali-toolkit.h>
-
+#include <dali/devel-api/adaptor-framework/performance-logger.h>
#include <sstream>
using namespace Dali;
-namespace
-{
-// Used to produce visually same dimensions on desktop and device builds
-float ScalePointSize( int pointSize )
-{
- Dali::Vector2 dpi = Dali::Stage::GetCurrent().GetDpi();
- float meanDpi = (dpi.height + dpi.width) * 0.5f;
- return pointSize * meanDpi / 220.0f;
-}
-
-} // namespace
-
// Define this so that it is interchangeable
// "DP" stands for Device independent Pixels
-#define DP(x) ScalePointSize(x)
+#define DP(x) x
//enum ButtonType
//{
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;
const Vector4 BACKGROUND_COLOUR( 1.0f, 1.0f, 1.0f, 0.15f );
-const char* const PUSHBUTTON_PRESS_IMAGE = DALI_IMAGE_DIR "button-down.9.png";
-const char* const PUSHBUTTON_BUTTON_IMAGE = DALI_IMAGE_DIR "button-up.9.png";
-const char* const PUSHBUTTON_DISABLED_IMAGE = DALI_IMAGE_DIR "button-disabled.9.png";
-
// Button IDs
const char* const LOGGER_1_RADIO_ID = "LOGGER_1_RADIO";
const char* const LOGGER_2_RADIO_ID = "LOGGER_2_RADIO";
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 );
TOOLBAR_IMAGE,
TOOLBAR_TITLE );
- Vector2 stageSize = Stage::GetCurrent().GetSize();
+ Toolkit::TableView contentTable = Toolkit::TableView::New( 6, 1 );
+ contentTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ contentTable.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ contentTable.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+ contentTable.SetParentOrigin( ParentOrigin::TOP_LEFT );
+ contentTable.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5f ) );
+
+ for( unsigned int i = 0; i < contentTable.GetRows(); ++i )
+ {
+ contentTable.SetFitHeight( i );
+ }
+
+ contentTable.SetPosition( 0.0f, TOP_MARGIN );
+
+ mContentLayer.Add( contentTable );
- int yPos = TOP_MARGIN + MARGIN_SIZE;
// Logger selector radio group
- Actor radioGroupBackground = Toolkit::CreateSolidColorActor( BACKGROUND_COLOUR );
- radioGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+ Toolkit::TableView radioGroupBackground = Toolkit::TableView::New( 2, 1 );
+ radioGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ radioGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ radioGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
radioGroupBackground.SetParentOrigin( ParentOrigin::TOP_LEFT );
- radioGroupBackground.SetPosition( DP(MARGIN_SIZE), DP(yPos) );
- radioGroupBackground.SetSize( stageSize.width - 2 * DP(MARGIN_SIZE), DP(LOGGER_RADIO_GROUP_HEIGHT) );
- mContentLayer.Add( radioGroupBackground );
+ radioGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+ radioGroupBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5f ) );
+
+ contentTable.Add( radioGroupBackground );
// Label
{
- Toolkit::TextView label = Toolkit::TextView::New( LOGGER_TEXT );
+ Toolkit::TextLabel label = Toolkit::TextLabel::New( LOGGER_TEXT );
label.SetParentOrigin( ParentOrigin::TOP_LEFT );
label.SetAnchorPoint( AnchorPoint::TOP_LEFT );
label.SetPosition( DP(MARGIN_SIZE), DP(MARGIN_SIZE) );
+ label.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
radioGroupBackground.Add( label );
+ radioGroupBackground.SetFitHeight( 0 );
}
// Radio group
- Actor radioButtonsGroup = Actor::New();
- radioButtonsGroup.SetParentOrigin( ParentOrigin::TOP_LEFT );
- radioButtonsGroup.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- radioButtonsGroup.SetPosition( DP(MARGIN_SIZE), 0 );
+ Toolkit::TableView radioButtonsGroup = Toolkit::TableView::New( 3, 1 );
+ radioButtonsGroup.SetCellPadding( Size( 0.0f, MARGIN_SIZE * 0.5f ) );
+ radioButtonsGroup.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+ for( unsigned int i = 0; i < radioButtonsGroup.GetRows(); ++i )
+ {
+ radioButtonsGroup.SetFitHeight( i );
+ }
+ radioButtonsGroup.SetFitWidth( 0 );
radioGroupBackground.Add( radioButtonsGroup );
+ radioGroupBackground.SetFitHeight( 1 );
int radioX = 0;
- int radioY = MARGIN_SIZE + 28;
+ int radioY = 0;
// Radio 1
{
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 );
}
// Create/delete/disable group
- yPos += LOGGER_RADIO_GROUP_HEIGHT + MARGIN_SIZE;
+ Toolkit::TableView createGroupBackground = Toolkit::TableView::New( 1, 2 );
+ createGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ createGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ createGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+ createGroupBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+ createGroupBackground.SetFitHeight( 0 );
- Actor createGroupBackground = Toolkit::CreateSolidColorActor( BACKGROUND_COLOUR );
- createGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- createGroupBackground.SetParentOrigin( ParentOrigin::TOP_LEFT );
- createGroupBackground.SetPosition( DP(MARGIN_SIZE), DP(yPos) );
- createGroupBackground.SetSize( stageSize.width - 2 * DP(MARGIN_SIZE), DP(LOGGER_GROUP_HEIGHT) );
- mContentLayer.Add( createGroupBackground );
-
- int buttonXDP = DP(MARGIN_SIZE);
- int buttonWidthDP = (createGroupBackground.GetSize().width - DP(MARGIN_SIZE) * 3) / 2;
+ contentTable.Add( createGroupBackground );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( CREATE_BUTTON_ID );
- button.SetLabel( CREATE_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
createGroupBackground.Add( button );
}
{
- buttonXDP += DP(MARGIN_SIZE) + buttonWidthDP;
-
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( DELETE_BUTTON_ID );
- button.SetLabel( DELETE_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
createGroupBackground.Add( button );
}
// Start/stop group
- yPos += LOGGER_GROUP_HEIGHT + MARGIN_SIZE;
- Actor timingGroupBackground = Toolkit::CreateSolidColorActor( BACKGROUND_COLOUR );
- timingGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- timingGroupBackground.SetParentOrigin( ParentOrigin::TOP_LEFT );
- timingGroupBackground.SetPosition( DP(MARGIN_SIZE), DP(yPos) );
- timingGroupBackground.SetSize( stageSize.width - 2 * DP(MARGIN_SIZE), DP(LOGGER_GROUP_HEIGHT) );
- mContentLayer.Add( timingGroupBackground );
+ Toolkit::TableView timingGroupBackground = Toolkit::TableView::New( 1, 2 );
+ timingGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ timingGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ timingGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+ timingGroupBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+ timingGroupBackground.SetFitHeight( 0 );
- buttonXDP = DP(MARGIN_SIZE);
- buttonWidthDP = (timingGroupBackground.GetSize().width - DP(MARGIN_SIZE) * 3) / 2;
+ contentTable.Add( timingGroupBackground );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( START_BUTTON_ID );
- button.SetLabel( START_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
timingGroupBackground.Add( button );
}
{
- buttonXDP += DP(MARGIN_SIZE) + buttonWidthDP;
-
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( STOP_BUTTON_ID );
- button.SetLabel( STOP_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
timingGroupBackground.Add( button );
}
// Enable/disable group
- yPos += LOGGER_GROUP_HEIGHT + MARGIN_SIZE;
-
- Actor enableGroupBackground = Toolkit::CreateSolidColorActor( BACKGROUND_COLOUR );
- enableGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- enableGroupBackground.SetParentOrigin( ParentOrigin::TOP_LEFT );
- enableGroupBackground.SetPosition( DP(MARGIN_SIZE), DP(yPos) );
- enableGroupBackground.SetSize( stageSize.width - 2 * DP(MARGIN_SIZE), DP(LOGGER_GROUP_HEIGHT) );
- mContentLayer.Add( enableGroupBackground );
+ Toolkit::TableView enableGroupBackground = Toolkit::TableView::New( 1, 2 );
+ enableGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ enableGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ enableGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+ enableGroupBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+ enableGroupBackground.SetFitHeight( 0 );
- buttonXDP = DP(MARGIN_SIZE);
- buttonWidthDP = (enableGroupBackground.GetSize().width - DP(MARGIN_SIZE) * 3) / 2;
+ contentTable.Add( enableGroupBackground );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( ENABLE_BUTTON_ID );
- button.SetLabel( ENABLE_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
enableGroupBackground.Add( button );
}
{
- buttonXDP += DP(MARGIN_SIZE) + buttonWidthDP;
-
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( DISABLE_BUTTON_ID );
- button.SetLabel( DISABLE_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
enableGroupBackground.Add( button );
}
- yPos += LOGGER_GROUP_HEIGHT + MARGIN_SIZE;
-
// Logger selector radio group
- unsigned int groupHeight = LOGGER_GROUP_HEIGHT + 30;
+ Toolkit::TableView frequencyRadioGroupBackground = Toolkit::TableView::New( 2, 1 );
+ frequencyRadioGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ frequencyRadioGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ frequencyRadioGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+ frequencyRadioGroupBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5f ) );
+ frequencyRadioGroupBackground.SetFitHeight( 0 );
+ frequencyRadioGroupBackground.SetFitHeight( 1 );
- Actor frequencyRadioGroupBackground = Toolkit::CreateSolidColorActor( BACKGROUND_COLOUR );
- frequencyRadioGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- frequencyRadioGroupBackground.SetParentOrigin( ParentOrigin::TOP_LEFT );
- frequencyRadioGroupBackground.SetPosition( DP(MARGIN_SIZE), DP(yPos) );
- frequencyRadioGroupBackground.SetSize( stageSize.width - 2 * DP(MARGIN_SIZE), DP(groupHeight) );
- mContentLayer.Add( frequencyRadioGroupBackground );
+ contentTable.Add( frequencyRadioGroupBackground );
// Label
{
- Toolkit::TextView label = Toolkit::TextView::New( FREQUENCY_TEXT );
- label.SetParentOrigin( ParentOrigin::TOP_LEFT );
- label.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- label.SetPosition( DP(MARGIN_SIZE), DP(MARGIN_SIZE) );
+ Toolkit::TextLabel label = Toolkit::TextLabel::New( FREQUENCY_TEXT );
frequencyRadioGroupBackground.Add( label );
}
// Radio group
- Actor frequencyRadioButtonsGroup = Actor::New();
- frequencyRadioButtonsGroup.SetParentOrigin( ParentOrigin::TOP_LEFT );
- frequencyRadioButtonsGroup.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- frequencyRadioButtonsGroup.SetPosition( DP(MARGIN_SIZE), DP(40) );
+ Toolkit::TableView frequencyRadioButtonsGroup = Toolkit::TableView::New( 1, 3 );
+ frequencyRadioButtonsGroup.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ frequencyRadioButtonsGroup.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ frequencyRadioButtonsGroup.SetFitHeight( 0 );
+ frequencyRadioButtonsGroup.SetPadding( Padding( 0.0f, 0.0f, MARGIN_SIZE, 0.0f ) );
frequencyRadioGroupBackground.Add( frequencyRadioButtonsGroup );
- radioX = 0;
- radioY = 0;
- const int frequencyRadioWidth = 100;
-
// Radio 1
{
Toolkit::RadioButton radioButton = Toolkit::RadioButton::New( FREQUENCY_1_RADIO_TEXT );
radioButton.SetName( FREQUENCY_1_RADIO_ID );
- radioButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
- radioButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- radioButton.SetPosition( DP(radioX), DP(radioY) );
radioButton.StateChangedSignal().Connect( this, &LoggingController::FrequencyRadioSelect );
// Radio 2
{
- radioX += frequencyRadioWidth;
-
Toolkit::RadioButton radioButton = Toolkit::RadioButton::New( FREQUENCY_2_RADIO_TEXT );
radioButton.SetName( FREQUENCY_2_RADIO_ID );
- 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::FrequencyRadioSelect );
// Radio 3
{
- radioX += frequencyRadioWidth;
-
Toolkit::RadioButton radioButton = Toolkit::RadioButton::New( FREQUENCY_3_RADIO_TEXT );
radioButton.SetName( FREQUENCY_3_RADIO_ID );
- radioButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
- radioButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- radioButton.SetPosition( DP(radioX), DP(radioY) );
radioButton.StateChangedSignal().Connect( this, &LoggingController::FrequencyRadioSelect );
}
// Vsync group
- yPos += groupHeight + MARGIN_SIZE;
+ Toolkit::TableView vsyncGroupBackground = Toolkit::TableView::New( 1, 1 );
+ vsyncGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ vsyncGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ vsyncGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+ vsyncGroupBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+ vsyncGroupBackground.SetFitHeight( 0 );
- Actor vsyncGroupBackground = Toolkit::CreateSolidColorActor( BACKGROUND_COLOUR );
- vsyncGroupBackground.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- vsyncGroupBackground.SetParentOrigin( ParentOrigin::TOP_LEFT );
- vsyncGroupBackground.SetPosition( DP(MARGIN_SIZE), DP(yPos) );
- vsyncGroupBackground.SetSize( stageSize.width - 2 * DP(MARGIN_SIZE), DP(LOGGER_GROUP_HEIGHT) );
- mContentLayer.Add( vsyncGroupBackground );
-
- buttonXDP = DP(MARGIN_SIZE);
- buttonWidthDP = vsyncGroupBackground.GetSize().width - DP(MARGIN_SIZE) * 2;
+ contentTable.Add( vsyncGroupBackground );
{
Toolkit::PushButton button = Toolkit::PushButton::New();
button.SetName( VSYNC_BUTTON_ID );
- button.SetLabel( VSYNC_BUTTON_TEXT );
- button.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- button.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- button.SetPosition( buttonXDP, 0 );
- button.SetSize( buttonWidthDP, DP(BUTTON_HEIGHT) );
-
- button.SetSelectedImage( Dali::ResourceImage::New( PUSHBUTTON_PRESS_IMAGE ) );
- button.SetButtonImage( Dali::ResourceImage::New( PUSHBUTTON_BUTTON_IMAGE ) );
- button.SetDisabledImage( Dali::ResourceImage::New( PUSHBUTTON_DISABLED_IMAGE ) );
-
+ 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 );
vsyncGroupBackground.Add( button );
<< ", " << ((mLoggerStates[i].isTiming) ? "Started" : "Stopped")
<< ", " << ((mLoggerStates[i].isEnabled) ? "Enabled" : "Disabled");
- Dali::TextStyle textStyle;
- textStyle.SetFontName( "HelveticaNue" );
- textStyle.SetFontStyle( "Regular" );
- textStyle.SetFontPointSize( Dali::PointSize( DemoHelper::ScalePointSize( 7.0f ) ) );
- textStyle.SetWeight( Dali::TextStyle::REGULAR );
-
- Toolkit::TextView textView = Toolkit::TextView::New( ss.str() );
- textView.SetStyleToCurrentText( textStyle );
-
- mLogRadioButtons[i].SetLabel( textView );
+ 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;
}
- private:
+private:
struct LoggerState
{
};
Application& mApplication;
- Toolkit::View mView; ///< The View instance.
+ Toolkit::Control mView; ///< The View instance.
Toolkit::ToolBar mToolBar; ///< The View's Toolbar.
Layer mContentLayer; ///< Content layer
+ Animation mAnimation;
+
typedef std::vector< std::string > Strings;
Strings mPerformanceLoggerNames;
application.MainLoop();
}
-// Entry point for Linux & SLP applications
+// 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 );
+ Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
RunTest( application );