X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=shared%2Fview.h;h=1ef05ce882d9773cea043ae02623d42c7b2a9d22;hb=8ecebe1aa6ffae1de829c9cf65946c5898f1496f;hp=f5fa893e499466d53b6c800399daf4758995c754;hpb=82ce98f2392846c669be20560d0697f502f47599;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/shared/view.h b/shared/view.h index f5fa893..1ef05ce 100644 --- a/shared/view.h +++ b/shared/view.h @@ -1,8 +1,8 @@ -#ifndef __DALI_DEMO_HELPER_VIEW_H__ -#define __DALI_DEMO_HELPER_VIEW_H__ +#ifndef DALI_DEMO_HELPER_VIEW_H +#define DALI_DEMO_HELPER_VIEW_H /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 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. @@ -19,6 +19,8 @@ */ #include +#include + namespace DemoHelper { @@ -44,72 +46,49 @@ struct ViewStyle const ViewStyle DEFAULT_VIEW_STYLE( 0.1f, 0.7f, 80.f, 4.f ); const char* DEFAULT_TEXT_STYLE_FONT_FAMILY("HelveticaNue"); -const char* DEFAULT_TEXT_STYLE_FONT_STYLE("Regular"); const float DEFAULT_TEXT_STYLE_POINT_SIZE( 8.0f ); -const Dali::Vector4 DEFAULT_TEXT_STYLE_COLOR(0.0f, 0.0f, 0.0f, 1.0f); const Dali::Toolkit::Alignment::Padding DEFAULT_PLAY_PADDING(12.0f, 12.0f, 12.0f, 12.0f); const Dali::Toolkit::Alignment::Padding DEFAULT_MODE_SWITCH_PADDING(8.0f, 8.0f, 8.0f, 8.0f); -void RequestThemeChange() -{ - // Provide the stylesheet - Dali::Toolkit::StyleManager styleManager = Dali::Toolkit::StyleManager::Get(); - styleManager.RequestThemeChange( DALI_DEMO_THEME_PATH ); -} - -float ScalePointSize(int pointSize) -{ - Dali::Vector2 dpi = Dali::Stage::GetCurrent().GetDpi(); - float meanDpi = (dpi.height + dpi.width) * 0.5f; - return pointSize * 220.0f / meanDpi; // 220 is the default horizontal DPI defined in adaptor Application -} - Dali::Layer CreateToolbar( Dali::Toolkit::ToolBar& toolBar, const std::string& toolbarImagePath, const std::string& title, const ViewStyle& style ) { - Dali::Stage stage = Dali::Stage::GetCurrent(); - Dali::Layer toolBarLayer = Dali::Layer::New(); - toolBarLayer.SetName( "TOOLBAR_LAYER" ); - toolBarLayer.SetAnchorPoint( Dali::AnchorPoint::TOP_CENTER ); - toolBarLayer.SetParentOrigin( Dali::ParentOrigin::TOP_CENTER ); - toolBarLayer.SetSize( 0.0f, style.mToolBarHeight ); + toolBarLayer.SetProperty( Dali::Actor::Property::NAME, "TOOLBAR_LAYER" ); + toolBarLayer.SetProperty( Dali::Actor::Property::ANCHOR_POINT, Dali::AnchorPoint::TOP_CENTER ); + toolBarLayer.SetProperty( Dali::Actor::Property::PARENT_ORIGIN, Dali::ParentOrigin::TOP_CENTER ); toolBarLayer.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::WIDTH ); + toolBarLayer.SetProperty( Dali::Actor::Property::SIZE, Dali::Vector2( 0.0f, style.mToolBarHeight ) ); // Raise tool bar layer to the top. toolBarLayer.RaiseToTop(); // Tool bar - Dali::Image image = Dali::ResourceImage::New( toolbarImagePath ); - Dali::ImageActor toolBarBackground = Dali::ImageActor::New( image ); - toolBarBackground.SetName( "TOOLBAR_BACKGROUND" ); - toolBarBackground.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS ); toolBar = Dali::Toolkit::ToolBar::New(); - toolBar.SetName( "TOOLBAR" ); - toolBar.SetBackground( toolBarBackground ); - toolBar.SetParentOrigin( Dali::ParentOrigin::TOP_CENTER ); - toolBar.SetAnchorPoint( Dali::AnchorPoint::TOP_CENTER ); + toolBar.SetProperty( Dali::Actor::Property::NAME, "TOOLBAR" ); + Dali::Property::Map background; + background["url"] = toolbarImagePath; + toolBar.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, background ); + toolBar.SetProperty( Dali::Actor::Property::PARENT_ORIGIN, Dali::ParentOrigin::TOP_CENTER ); + toolBar.SetProperty( Dali::Actor::Property::ANCHOR_POINT, Dali::AnchorPoint::TOP_CENTER ); toolBar.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS ); - toolBarBackground.SetSortModifier(1.0f); - // Add the tool bar to the too bar layer. + // Add the tool bar to the tool bar layer. toolBarLayer.Add( toolBar ); // Tool bar text. if( !title.empty() ) { Dali::Toolkit::TextLabel label = Dali::Toolkit::TextLabel::New(); - label.SetAnchorPoint( Dali::AnchorPoint::TOP_LEFT ); - label.SetDrawMode( Dali::DrawMode::OVERLAY ); - label.SetProperty( Dali::Toolkit::Control::Property::STYLE_NAME, "toolbarlabel" ); + label.SetProperty( Dali::Actor::Property::ANCHOR_POINT, Dali::AnchorPoint::TOP_LEFT ); + label.SetStyleName( "ToolbarLabel" ); label.SetProperty( Dali::Toolkit::TextLabel::Property::TEXT, title ); label.SetProperty( Dali::Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" ); label.SetProperty( Dali::Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" ); label.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT ); - label.SetColor( DEFAULT_TEXT_STYLE_COLOR ); // Add title to the tool bar. const float padding( style.mToolBarPadding ); @@ -120,50 +99,50 @@ Dali::Layer CreateToolbar( Dali::Toolkit::ToolBar& toolBar, } Dali::Layer CreateView( Dali::Application& application, - Dali::Toolkit::View& view, + Dali::Toolkit::Control& view, Dali::Toolkit::ToolBar& toolBar, const std::string& backgroundImagePath, const std::string& toolbarImagePath, const std::string& title, const ViewStyle& style = DEFAULT_VIEW_STYLE ) { - Dali::Stage stage = Dali::Stage::GetCurrent(); + Dali::Window window = application.GetWindow(); // Create default View. - view = Dali::Toolkit::View::New(); + view = Dali::Toolkit::Control::New(); + view.SetProperty( Dali::Actor::Property::ANCHOR_POINT, Dali::AnchorPoint::CENTER ); + view.SetProperty( Dali::Actor::Property::PARENT_ORIGIN, Dali::ParentOrigin::CENTER ); view.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS ); - // Add the view to the stage before setting the background. - stage.Add( view ); + // Add the view to the window before setting the background. + window.Add( view ); // Set background image, loading it at screen resolution: if ( !backgroundImagePath.empty() ) { - Dali::ImageAttributes backgroundAttributes; - backgroundAttributes.SetSize( stage.GetSize() ); - backgroundAttributes.SetFilterMode( Dali::ImageAttributes::BoxThenLinear ); - backgroundAttributes.SetScalingMode( Dali::ImageAttributes::ScaleToFill ); - Dali::Image backgroundImage = Dali::ResourceImage::New( backgroundImagePath, backgroundAttributes ); - Dali::ImageActor backgroundImageActor = Dali::ImageActor::New( backgroundImage ); - view.SetBackground( backgroundImageActor ); + Dali::Property::Map map; + map[Dali::Toolkit::Visual::Property::TYPE] = Dali::Toolkit::Visual::IMAGE; + map[Dali::Toolkit::ImageVisual::Property::URL] = backgroundImagePath; + map[Dali::Toolkit::ImageVisual::Property::DESIRED_WIDTH] = window.GetSize().GetWidth(); + map[Dali::Toolkit::ImageVisual::Property::DESIRED_HEIGHT] = window.GetSize().GetHeight(); + map[Dali::Toolkit::ImageVisual::Property::FITTING_MODE] = Dali::FittingMode::SCALE_TO_FILL; + map[Dali::Toolkit::ImageVisual::Property::SAMPLING_MODE] = Dali::SamplingMode::BOX_THEN_LINEAR; + map[Dali::Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING] = true; + view.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, map ); } - // FIXME - // Connects the orientation signal with the View::OrientationChanged method. - //application.GetOrientation().ChangedSignal().Connect( &view, &Dali::Toolkit::View::OrientationChanged ); - // Create default ToolBar Dali::Layer toolBarLayer = CreateToolbar( toolBar, toolbarImagePath, title, style ); // Add tool bar layer to the view. - view.AddContentLayer( toolBarLayer ); + view.Add( toolBarLayer ); // Create a content layer. Dali::Layer contentLayer = Dali::Layer::New(); - contentLayer.SetAnchorPoint( Dali::AnchorPoint::CENTER ); - contentLayer.SetParentOrigin( Dali::ParentOrigin::CENTER ); + contentLayer.SetProperty( Dali::Actor::Property::ANCHOR_POINT, Dali::AnchorPoint::CENTER ); + contentLayer.SetProperty( Dali::Actor::Property::PARENT_ORIGIN, Dali::ParentOrigin::CENTER ); contentLayer.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS ); - view.AddContentLayer( contentLayer ); + view.Add( contentLayer ); contentLayer.LowerBelow( toolBarLayer ); return contentLayer; @@ -172,16 +151,14 @@ Dali::Layer CreateView( Dali::Application& application, Dali::Toolkit::TextLabel CreateToolBarLabel( const std::string& text ) { Dali::Toolkit::TextLabel label = Dali::Toolkit::TextLabel::New( text ); - label.SetProperty( Dali::Toolkit::Control::Property::STYLE_NAME, "toolbarlabel" ); - label.SetDrawMode( Dali::DrawMode::OVERLAY ); + label.SetStyleName( "ToolbarLabel" ); label.SetProperty( Dali::Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" ); label.SetProperty( Dali::Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" ); label.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT ); - label.SetColor( DEFAULT_TEXT_STYLE_COLOR ); return label; } } // DemoHelper -#endif // __DALI_DEMO_HELPER_VIEW_H__ +#endif // DALI_DEMO_HELPER_VIEW_H