/*
- * Copyright (c) 2015 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-toolkit/devel-api/controls/buttons/button-devel.h>
#include <dali-toolkit/devel-api/controls/popup/popup.h>
#include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
const char* const POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS_ID = "POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS";
const char* const POPUP_BUTTON_FIXED_SIZE_ID = "POPUP_BUTTON_FIXED_SIZE_ID";
const char* const POPUP_BUTTON_COMPLEX_ID = "POPUP_BUTTON_COMPLEX";
+const char* const POPUP_BUTTON_CUSTOM_STYLE = "POPUP_BUTTON_CUSTOM_STYLE";
// Names to give Popup PushButton controls.
const char* const POPUP_CONTROL_OK_NAME = "controlOk";
{ POPUP_BUTTON_CONTENT_TEXT_ID, "Content Text" },
{ POPUP_BUTTON_CONTENT_IMAGE_ID, "Content Image" },
{ POPUP_BUTTON_TITLE_CONTENT_TEXT_ID, "Title + Content" },
- { POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS_ID, "Title + Large Content + Buttons" }
+ { POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS_ID, "Title + Large Content + Buttons" },
+ { POPUP_BUTTON_CUSTOM_STYLE, "Custom Styled Popup" }
};
const int POPUP_BUTTON_ITEMS_COUNT = sizeof( POPUP_BUTTON_ITEMS ) / sizeof( POPUP_BUTTON_ITEMS[0] );
+const char * const CUSTOM_POPUP_STYLE_NAME = "CustomPopupStyle"; ///< Custom popup style name
} // anonymous namespace
// Create animation button.
mAnimationButton = Toolkit::PushButton::New();
- mAnimationButton.SetUnselectedImage( ANIMATION_FADE_ICON_IMAGE );
- mAnimationButton.SetSelectedImage( ANIMATION_ZOOM_ICON_IMAGE );
- mAnimationButton.SetTogglableButton( true );
+ mAnimationButton.SetProperty( Toolkit::DevelButton::Property::UNSELECTED_BACKGROUND_VISUAL, ANIMATION_FADE_ICON_IMAGE );
+ mAnimationButton.SetProperty( Toolkit::DevelButton::Property::SELECTED_BACKGROUND_VISUAL, ANIMATION_ZOOM_ICON_IMAGE );
+ mAnimationButton.SetProperty( Toolkit::Button::Property::TOGGLABLE, true );
mAnimationButton.ClickedSignal().Connect( this, &PopupExample::OnAnimationClicked );
mToolBar.AddControl( mAnimationButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
// Create context button.
mContextButton = Toolkit::PushButton::New();
- mContextButton.SetUnselectedImage( CONTEXT_DISABLED_ICON_IMAGE );
- mContextButton.SetSelectedImage( CONTEXT_ENABLED_ICON_IMAGE );
- mContextButton.SetTogglableButton( true );
+ mContextButton.SetProperty( Toolkit::DevelButton::Property::UNSELECTED_BACKGROUND_VISUAL, CONTEXT_DISABLED_ICON_IMAGE );
+ mContextButton.SetProperty( Toolkit::DevelButton::Property::SELECTED_BACKGROUND_VISUAL, CONTEXT_ENABLED_ICON_IMAGE );
+ mContextButton.SetProperty( Toolkit::Button::Property::TOGGLABLE, true );
mContextButton.ClickedSignal().Connect( this, &PopupExample::OnContextClicked );
mToolBar.AddControl( mContextButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
bool OnContextClicked( Toolkit::Button button )
{
- mContextual = button.IsSelected();
+ mContextual = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
return true;
}
bool OnAnimationClicked( Toolkit::Button button )
{
- mAnimationFade = !button.IsSelected();
+ mAnimationFade = ! ( button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>() );
return true;
}
// Set up the container's layout.
footer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
footer.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
- footer.SetSize( 0.0f, 80.0f );
+ footer.SetSize( 0.0f, 130.0f );
footer.SetAnchorPoint( AnchorPoint::CENTER );
footer.SetParentOrigin( ParentOrigin::CENTER );
{
Toolkit::PushButton okayButton = Toolkit::PushButton::New();
okayButton.SetName( POPUP_CONTROL_OK_NAME );
- okayButton.SetLabelText( "OK!" );
+ okayButton.SetProperty( Toolkit::Button::Property::LABEL, "OK!" );
okayButton.ClickedSignal().Connect( this, &PopupExample::OnPopupButtonClicked );
{
Toolkit::PushButton cancelButton = Toolkit::PushButton::New();
cancelButton.SetName( POPUP_CONTROL_CANCEL_NAME );
- cancelButton.SetLabelText( "Cancel" );
+ cancelButton.SetProperty( Toolkit::Button::Property::LABEL, "Cancel" );
cancelButton.ClickedSignal().Connect( this, &PopupExample::OnPopupButtonClicked );
SetupPopup( mPopup, button );
}
+ else if( button.GetName() == POPUP_BUTTON_CUSTOM_STYLE )
+ {
+ mPopup = CreateConfirmationPopup( 2 );
+
+ Toolkit::TextLabel titleActor = Toolkit::TextLabel::New( "Styled Popup" );
+ titleActor.SetName( "titleActor" );
+ titleActor.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::RED );
+ titleActor.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+ titleActor.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+ mPopup.SetTitle( titleActor );
+
+ SetupPopup( mPopup, button );
+
+ mPopup.SetStyleName( CUSTOM_POPUP_STYLE_NAME );
+ }
return true;
}
{
Toolkit::PushButton popupButton = Toolkit::PushButton::New();
popupButton.SetName( POPUP_BUTTON_ITEMS[ itemId ].name );
- popupButton.SetLabelText( POPUP_BUTTON_ITEMS[ itemId ].text );
+ popupButton.SetProperty( Toolkit::Button::Property::LABEL, POPUP_BUTTON_ITEMS[ itemId ].text );
popupButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
popupButton.ClickedSignal().Connect( this, &PopupExample::OnButtonClicked );