[NUI] Add TextSelectionPopupStyle for 7.0 UX
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / Theme / DefaultThemeCommon.cs
1 /*
2  * Copyright(c) 2021 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 #if !PROFILE_TV
18
19 using System.Diagnostics.CodeAnalysis;
20 using Tizen.NUI.BaseComponents;
21
22 namespace Tizen.NUI
23 {
24     internal partial class DefaultThemeCreator
25     {
26         /// <summary>
27         /// The base theme description.
28         /// </summary>
29         [SuppressMessage("Microsoft.Reliability", "CA2000: Dispose objects before losing scope", Justification = "The responsibility to dispose the object is transferred to the theme object.")]
30         public Theme Create()
31         {
32             Theme theme = new Theme()
33             {
34                 Id = DefaultId,
35                 Version = DefaultVersion,
36             };
37
38             // TextLabel style.
39             theme.AddStyleWithoutClone("Tizen.NUI.BaseComponents.TextLabel", new TextLabelStyle()
40             {
41                 FontFamily = "TizenSans",
42                 PixelSize = 24,
43                 TextColor = new Color(0.04f, 0.05f, 0.13f, 1),
44                 FontStyle = new PropertyMap().Add("weight", new PropertyValue("regular")),
45             });
46
47             // TextField style.
48             theme.AddStyleWithoutClone("Tizen.NUI.BaseComponents.TextField", new TextFieldStyle()
49             {
50                 FontFamily = "TizenSans",
51                 PixelSize = 24,
52                 TextColor = new Color(0.04f, 0.05f, 0.13f, 1),
53                 PlaceholderTextColor = new Vector4(0.79f, 0.79f, 0.79f, 1),
54                 FontStyle = new PropertyMap().Add("weight", new PropertyValue("regular")),
55                 PrimaryCursorColor = new Vector4(0.04f, 0.05f, 0.13f, 1),
56                 SecondaryCursorColor = new Vector4(0.04f, 0.05f, 0.13f, 1),
57                 CursorWidth = 2,
58                 SelectionHighlightColor = new Vector4(1.00f, 0.38f, 0.00f, 0.30f),
59                 GrabHandleColor = new Color(1.00f, 1.00f, 1.00f, 1),
60                 GrabHandleImage = FrameworkInformation.ResourcePath + "IoT_handler_center_downW.png",
61                 SelectionHandleImageLeft = new PropertyMap().Add("filename", new PropertyValue(FrameworkInformation.ResourcePath + "IoT_handler_downleftW.png")),
62                 SelectionHandleImageRight = new PropertyMap().Add("filename", new PropertyValue(FrameworkInformation.ResourcePath + "IoT_handler_downrightW.png")),
63                 SelectionPopupStyle = new PropertyMap()
64                 .Add(SelectionPopupStyleProperty.MaxSize, new PropertyValue(new Vector2(1200.0f, 40.0f)))
65                 .Add(SelectionPopupStyleProperty.DividerSize, new PropertyValue(new Vector2(0.0f, 0.0f)))
66                 .Add(SelectionPopupStyleProperty.DividerPadding, new PropertyValue(new Vector4(0.0f, 0.0f, 0.0f, 0.0f)))
67                 .Add(SelectionPopupStyleProperty.Background, new PropertyValue(new PropertyMap().Add(ImageVisualProperty.URL, new PropertyValue(FrameworkInformation.ResourcePath + "IoT-selection-popup-background.9.png"))))
68                 .Add(SelectionPopupStyleProperty.BackgroundBorder, new PropertyValue(new PropertyMap().Add(ImageVisualProperty.URL, new PropertyValue(FrameworkInformation.ResourcePath + "IoT-selection-popup-border.9.png"))))
69                 .Add(SelectionPopupStyleProperty.PressedColor, new PropertyValue(new Vector4(1.0f, 0.39f, 0.0f, 0.16f)))
70                 .Add(SelectionPopupStyleProperty.PressedCornerRadius, new PropertyValue(12.0f))
71                 .Add(SelectionPopupStyleProperty.FadeInDuration, new PropertyValue(0.25f))
72                 .Add(SelectionPopupStyleProperty.FadeOutDuration, new PropertyValue(0.25f))
73                 .Add(SelectionPopupStyleProperty.EnableScrollBar, new PropertyValue(false))
74                 .Add(SelectionPopupStyleProperty.LabelMinimumSize, new PropertyValue(new Vector2(0, 40.0f)))
75                 .Add(SelectionPopupStyleProperty.LabelPadding, new PropertyValue(new Vector4(-4.0f, -4.0f, 0.0f, 0.0f)))
76                 .Add(SelectionPopupStyleProperty.LabelTextVisual, new PropertyValue(new PropertyMap()
77                     .Add(TextVisualProperty.PointSize, new PropertyValue(6.0f))
78                     .Add(TextVisualProperty.TextColor, new PropertyValue(new Vector4(1.00f, 0.38f, 0.00f, 1)))
79                     .Add(TextVisualProperty.FontFamily, new PropertyValue("TizenSans"))
80                     .Add(TextVisualProperty.FontStyle, new PropertyValue(new PropertyMap().Add("weight", new PropertyValue("regular")))))),
81             });
82
83             // TextEditor style.
84             theme.AddStyleWithoutClone("Tizen.NUI.BaseComponents.TextEditor", new TextEditorStyle()
85             {
86                 FontFamily = "TizenSans",
87                 PixelSize = 24,
88                 TextColor = new Color(0.04f, 0.05f, 0.13f, 1),
89                 PlaceholderTextColor = new Color(0.79f, 0.79f, 0.79f, 1),
90                 FontStyle = new PropertyMap().Add("weight", new PropertyValue("regular")),
91                 PrimaryCursorColor = new Vector4(0.04f, 0.05f, 0.13f, 1),
92                 SecondaryCursorColor = new Vector4(0.04f, 0.05f, 0.13f, 1),
93                 CursorWidth = 2,
94                 SelectionHighlightColor = new Vector4(1.00f, 0.38f, 0.00f, 0.30f),
95                 GrabHandleColor = new Color(1.00f, 1.00f, 1.00f, 1),
96                 GrabHandleImage = FrameworkInformation.ResourcePath + "IoT_handler_center_downW.png",
97                 SelectionHandleImageLeft = new PropertyMap().Add("filename", new PropertyValue(FrameworkInformation.ResourcePath + "IoT_handler_downleftW.png")),
98                 SelectionHandleImageRight = new PropertyMap().Add("filename", new PropertyValue(FrameworkInformation.ResourcePath + "IoT_handler_downrightW.png")),
99                 SelectionPopupStyle = new PropertyMap()
100                 .Add(SelectionPopupStyleProperty.MaxSize, new PropertyValue(new Vector2(1200.0f, 40.0f)))
101                 .Add(SelectionPopupStyleProperty.DividerSize, new PropertyValue(new Vector2(0.0f, 0.0f)))
102                 .Add(SelectionPopupStyleProperty.DividerPadding, new PropertyValue(new Vector4(0.0f, 0.0f, 0.0f, 0.0f)))
103                 .Add(SelectionPopupStyleProperty.Background, new PropertyValue(new PropertyMap().Add(ImageVisualProperty.URL, new PropertyValue(FrameworkInformation.ResourcePath + "IoT-selection-popup-background.9.png"))))
104                 .Add(SelectionPopupStyleProperty.BackgroundBorder, new PropertyValue(new PropertyMap().Add(ImageVisualProperty.URL, new PropertyValue(FrameworkInformation.ResourcePath + "IoT-selection-popup-border.9.png"))))
105                 .Add(SelectionPopupStyleProperty.PressedColor, new PropertyValue(new Vector4(1.0f, 0.39f, 0.0f, 0.16f)))
106                 .Add(SelectionPopupStyleProperty.PressedCornerRadius, new PropertyValue(12.0f))
107                 .Add(SelectionPopupStyleProperty.FadeInDuration, new PropertyValue(0.25f))
108                 .Add(SelectionPopupStyleProperty.FadeOutDuration, new PropertyValue(0.25f))
109                 .Add(SelectionPopupStyleProperty.EnableScrollBar, new PropertyValue(false))
110                 .Add(SelectionPopupStyleProperty.LabelMinimumSize, new PropertyValue(new Vector2(0, 40.0f)))
111                 .Add(SelectionPopupStyleProperty.LabelPadding, new PropertyValue(new Vector4(-4.0f, -4.0f, 0.0f, 0.0f)))
112                 .Add(SelectionPopupStyleProperty.LabelTextVisual, new PropertyValue(new PropertyMap()
113                     .Add(TextVisualProperty.PointSize, new PropertyValue(6.0f))
114                     .Add(TextVisualProperty.TextColor, new PropertyValue(new Vector4(1.00f, 0.38f, 0.00f, 1)))
115                     .Add(TextVisualProperty.FontFamily, new PropertyValue("TizenSans"))
116                     .Add(TextVisualProperty.FontStyle, new PropertyValue(new PropertyMap().Add("weight", new PropertyValue("regular")))))),
117             });
118
119             return theme;
120         }
121     }
122 }
123
124 #endif // !PROFILE_TV