/*
- * Copyright (c) 2016 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.
// EXTERNAL INCLUDES
#include <dali-toolkit/dali-toolkit.h>
-#include <iostream>
+#include <dali-toolkit/devel-api/controls/buttons/button-devel.h>
#include <sstream>
// INTERNAL INCLUDES
namespace
{
+const char * const THEME_PATH( DEMO_STYLE_DIR "text-editor-example-theme.json" ); ///< The theme used for this example
const Vector4 BACKGROUND_COLOR( 0.04f, 0.345f, 0.392f, 1.0f ); ///< The background color.
const char* TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png"; ///< The tool-bar image.
const float TOOLBAR_BUTTON_PERCENTAGE = 0.1f; ///< The button's space width as a percentage of the toolbar's width.
// Add border to highlight harder-to-see colors.
// We use a color rather than border visual as the container will always be behind the button.
Property::Map colorMap;
- colorMap.Insert( Visual::Property::TYPE, Visual::COLOR);
+ colorMap.Insert( Toolkit::Visual::Property::TYPE, Visual::COLOR);
colorMap.Insert( ColorVisual::Property::MIX_COLOR, Color::BLACK );
mColorContainer.SetProperty( Control::Property::BACKGROUND, colorMap );
mColorButtonOption.SetParentOrigin( ParentOrigin::CENTER );
mColorButtonOption.SetAnchorPoint( AnchorPoint::CENTER );
- mColorButtonOption.SetProperty( Button::Property::UNSELECTED_COLOR, Color::BLACK );
- mColorButtonOption.SetProperty( Button::Property::SELECTED_COLOR, Color::BLACK );
+ SetButtonColor( mColorButtonOption, Color::BLACK );
mColorButtonOption.ClickedSignal().Connect( this, &TextEditorExample::OnChangeColorButtonClicked );
mColorContainer.Add( mColorButtonOption );
mEditor.InputStyleChangedSignal().Connect( this, &TextEditorExample::OnTextInputStyleChanged );
contents.Add( mEditor );
+ StyleManager styleManager = StyleManager::Get();
+ styleManager.ApplyTheme( THEME_PATH );
}
void CreateButtonContainer()
s << "color" << index;
button.SetName( s.str() );
- button.SetProperty( Button::Property::UNSELECTED_COLOR, COLORS[index] );
- button.SetProperty( Button::Property::SELECTED_COLOR, COLORS[index] );
+ SetButtonColor( button, COLORS[index] );
button.ClickedSignal().Connect( this, &TextEditorExample::OnColorButtonClicked );
mEditor.SetProperty( TextEditor::Property::INPUT_COLOR, color );
}
- mColorButtonOption.SetProperty( Button::Property::UNSELECTED_COLOR, color );
- mColorButtonOption.SetProperty( Button::Property::SELECTED_COLOR, color );
+ SetButtonColor( mColorButtonOption, color );
mButtonContainer.SetVisible( false );
mButtonContainer.SetSensitive( false );
if( TextEditor::InputStyle::NONE != static_cast<TextEditor::InputStyle::Mask>( mask & TextEditor::InputStyle::COLOR ) )
{
const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get<Vector4>();
-
- mColorButtonOption.SetProperty( Button::Property::UNSELECTED_COLOR, color );
- mColorButtonOption.SetProperty( Button::Property::SELECTED_COLOR, color );
+ SetButtonColor( mColorButtonOption, color );
}
editor.Reset();
}
+ void SetButtonColor( Button& button, const Vector4& color )
+ {
+ Property::Map colorVisualMap;
+ colorVisualMap.Add( Toolkit::Visual::Property::TYPE, Visual::COLOR )
+ .Add( ColorVisual::Property::MIX_COLOR, color );
+
+ button.SetProperty( DevelButton::Property::UNSELECTED_BACKGROUND_VISUAL, colorVisualMap );
+ button.SetProperty( DevelButton::Property::SELECTED_BACKGROUND_VISUAL, colorVisualMap );
+ }
+
private:
Application& mApplication;