abf7001fe0f4fb61dc47914e39aa2effcfe6f803
[platform/core/uifw/dali-demo.git] / examples / contact-cards / masked-image.cpp
1 /*
2  * Copyright (c) 2018 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 // HEADER
19 #include "masked-image.h"
20
21 // EXTERNAL INCLUDES
22 #include <dali-toolkit/dali-toolkit.h>
23
24 namespace MaskedImage
25 {
26
27 using namespace Dali;
28 using namespace Dali::Toolkit;
29
30 namespace
31 {
32 const char* const IMAGE_MASK ( DEMO_IMAGE_DIR "contact-cards-mask.png" );
33 } // unnamed namespace
34
35 Dali::Toolkit::Control Create( const std::string& imagePath )
36 {
37   Control maskedImage = ImageView::New();
38   maskedImage.SetProperty(
39     Toolkit::ImageView::Property::IMAGE,
40     Property::Map().Add( Visual::Property::TYPE, Toolkit::Visual::Type::IMAGE )
41                    .Add( ImageVisual::Property::URL, imagePath )
42                    .Add( ImageVisual::Property::ALPHA_MASK_URL, IMAGE_MASK )
43   );
44   return maskedImage;
45 }
46
47 } // namespace ClippedImage