[NUI] Fix CheckBox and Button.Icon sizes in theme
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI.Components / Theme / DefaultThemeCommon.cs
1 /*
2  * Copyright(c) 2022 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_WEARABLE
18
19 using System.Diagnostics.CodeAnalysis;
20 using Tizen.NUI.BaseComponents;
21
22 namespace Tizen.NUI.Components
23 {
24     // It is a C# version of res/Tizen.NUI.Components_Tizen.NUI.Theme.Common.xaml
25     internal partial class DefaultThemeCreator : IThemeCreator
26     {
27         /// <summary>
28         /// The base theme description.
29         /// </summary>
30         [SuppressMessage("Microsoft.Reliability", "CA2000: Dispose objects before losing scope", Justification = "The responsibility to dispose the object is transferred to the theme object.")]
31         public Theme Create()
32         {
33             var theme = new Theme()
34             {
35                 Id = Tizen.NUI.DefaultThemeCreator.DefaultId,
36                 Version = Tizen.NUI.DefaultThemeCreator.DefaultVersion
37             };
38
39             // Button base style
40             theme.AddStyleWithoutClone("Tizen.NUI.Components.Button", new ButtonStyle()
41             {
42                 Size = new Size(252, 48),
43                 ItemSpacing = new Size2D(8, 8),
44                 CornerRadius = 12.0f,
45                 ItemHorizontalAlignment = HorizontalAlignment.Center,
46                 ItemVerticalAlignment = VerticalAlignment.Center,
47                 BackgroundColor = new Selector<Color>()
48                 {
49                     Normal = new Color(1.0f, 0.384f, 0.0f, 1),
50                     Pressed = new Color(0.85f, 0.325f, 0.0f, 1),
51                     Focused = new Color(1.0f, 0.827f, 0.624f, 1),
52                     Selected = new Color(0.624f, 0.239f, 0.0f, 1),
53                     Disabled = new Color(0.792f, 0.792f, 0.792f, 1),
54                 },
55                 Text = new TextLabelStyle()
56                 {
57                     TextColor = new Color("#FDFDFD"),
58                     PixelSize = 24,
59                 }
60             });
61
62             // CheckBox base style
63             theme.AddStyleWithoutClone("Tizen.NUI.Components.CheckBox", new ButtonStyle()
64             {
65                 ItemSpacing = new Size2D(16, 16),
66                 ItemHorizontalAlignment = HorizontalAlignment.Center,
67                 ItemVerticalAlignment = VerticalAlignment.Center,
68                 Icon = new ImageViewStyle()
69                 {
70                     Size = new Size(32, 32),
71                     ResourceUrl = new Selector<string>()
72                     {
73                         Normal = FrameworkInformation.ResourcePath + "IoT_check_off.png",
74                         Pressed = FrameworkInformation.ResourcePath + "IoT_check_off_p.png",
75                         Disabled = FrameworkInformation.ResourcePath + "IoT_check_off_d.png",
76                         Focused = FrameworkInformation.ResourcePath + "IoT_check_off_f.png",
77                         Selected = FrameworkInformation.ResourcePath + "IoT_check_on.png",
78                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_check_on_p.png",
79                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_check_on_f.png",
80                         DisabledSelected = FrameworkInformation.ResourcePath + "IoT_check_on_d.png",
81                     },
82                 },
83                 Text = new TextLabelStyle()
84                 {
85                     TextColor = new Color("#001447"),
86                     PixelSize = 32,
87                 }
88             });
89
90             // Popup base style
91             theme.AddStyleWithoutClone("Tizen.NUI.Components.Popup", new PopupStyle()
92             {
93                 Size = new Size(500, 280),
94                 BackgroundColor = new Color(0.9f, 0.9f, 0.9f, 1),
95                 ImageShadow = new ImageShadow()
96                 {
97                     Url = FrameworkInformation.ResourcePath + "nui_component_default_popup_shadow.png",
98                     Border = new Rectangle(24, 24, 24, 24),
99                     Extents = new Vector2(48, 48)
100                 },
101                 Title = new TextLabelStyle()
102                 {
103                     PointSize = 16,
104                     Padding = new Extents(20, 20, 20, 20),
105                 },
106                 Buttons = new ButtonStyle()
107                 {
108                     Size = new Size(0, 80),
109                     CornerRadius = 0,
110                     BackgroundColor = new Selector<Color>()
111                     {
112                         Normal = new Color(1, 1, 1, 1),
113                         Pressed = new Color(1, 1, 1, 0.5f),
114                     },
115                     Overlay = new ImageViewStyle()
116                     {
117                         BackgroundColor = new Selector<Color>()
118                         {
119                             Pressed = new Color(0, 0, 0, 0.1f),
120                             Other = new Color(1, 1, 1, 0.1f),
121                         },
122                     },
123                     Text = new TextLabelStyle()
124                     {
125                         TextColor = new Color(0.05f, 0.63f, 0.9f, 1),
126                     }
127                 }
128             });
129
130             // Progress base style
131             theme.AddStyleWithoutClone("Tizen.NUI.Components.Progress", new ProgressStyle()
132             {
133                 Size = new Size(508, 16),
134                 Track = new ImageViewStyle()
135                 {
136                     CornerRadius = 8.0f,
137                     BackgroundColor = new Selector<Color>()
138                     {
139                         Normal = new Color(0.82f, 0.31f, 0.0f, 0.1f),
140                         Disabled = new Color(0.82f, 0.31f, 0.0f, 0.1f),
141                     },
142                 },
143                 Buffer = new ImageViewStyle()
144                 {
145                     CornerRadius = 8.0f,
146                     BackgroundColor = new Color(0.82f, 0.31f, 0.0f, 0.1f),
147                 },
148                 Progress = new ImageViewStyle()
149                 {
150                     CornerRadius = 8.0f,
151                     BackgroundColor = new Color("#D25000"),
152                 },
153                 IndeterminateImageUrl = FrameworkInformation.ResourcePath + "IoT_progress_indeterminate.png",
154             });
155
156             // RadioButton base style
157             theme.AddStyleWithoutClone("Tizen.NUI.Components.RadioButton", new ButtonStyle()
158             {
159                 ItemSpacing = new Size2D(32, 32),
160                 ItemHorizontalAlignment = HorizontalAlignment.Begin,
161                 ItemVerticalAlignment = VerticalAlignment.Center,
162                 Icon = new ImageViewStyle()
163                 {
164                     Size = new Size(36, 36),
165                     ResourceUrl = new Selector<string>()
166                     {
167                         Normal = FrameworkInformation.ResourcePath + "IoT_radiobutton_off.png",
168                         Pressed = FrameworkInformation.ResourcePath + "IoT_radiobutton_off_p.png",
169                         Disabled = FrameworkInformation.ResourcePath + "IoT_radiobutton_off_d.png",
170                         Focused = FrameworkInformation.ResourcePath + "IoT_radiobutton_off_f.png",
171                         Selected = FrameworkInformation.ResourcePath + "IoT_radiobutton_on.png",
172                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_radiobutton_on_p.png",
173                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_radiobutton_on_f.png",
174                         DisabledSelected = FrameworkInformation.ResourcePath + "IoT_radiobutton_on_d.png",
175                     },
176                 },
177                 Text = new TextLabelStyle()
178                 {
179                     TextColor = new Color("#001447"),
180                     PixelSize = 32,
181                 }
182             });
183
184             // Slider base style
185             theme.AddStyleWithoutClone("Tizen.NUI.Components.Slider", new SliderStyle()
186             {
187                 Size = new Size(850, 50),
188                 TrackThickness = 8,
189                 Track = new ImageViewStyle()
190                 {
191                     Size = new Size(800, 8),
192                     CornerRadius = 4.0f,
193                     BackgroundColor = new Selector<Color>()
194                     {
195                         Normal = new Color(1.0f, 0.37f, 0.0f, 0.1f),
196                         Disabled = new Color(1.0f, 0.37f, 0.0f, 0.1f),
197                     },
198                 },
199                 Progress = new ImageViewStyle()
200                 {
201                     Size = new Size(800, 8),
202                     CornerRadius = 4.0f,
203                     BackgroundColor = new Selector<Color>()
204                     {
205                         Normal = new Color("#FF6200"),
206                         Disabled = new Color("#CACACA"),
207                     },
208                 },
209                 Thumb = new ImageViewStyle()
210                 {
211                     Size = new Size(40, 40),
212                     ResourceUrl = new Selector<string>()
213                     {
214                         Normal = FrameworkInformation.ResourcePath + "IoT_slider_handler_normal.png",
215                         Pressed = FrameworkInformation.ResourcePath + "IoT_slider_handler_pressed.png",
216                         Focused = FrameworkInformation.ResourcePath + "IoT_slider_handler_pressed.png",
217                         Disabled = FrameworkInformation.ResourcePath + "IoT_slider_handler_disabled.png",
218                     },
219                 },
220                 ValueIndicatorImage = new ImageViewStyle()
221                 {
222                     Size = new Size(16, 24),
223                     BorderlineWidth = 0.5f,
224                     BorderlineColor = new Color("#FF6200"),
225                     BackgroundColor = new Color(0.0f, 0.04f, 0.16f, 1.0f),
226                 },
227             });
228
229             // Switch base style
230             theme.AddStyleWithoutClone("Tizen.NUI.Components.Switch", new SwitchStyle()
231             {
232                 ItemSpacing = new Size2D(32, 32),
233                 ItemHorizontalAlignment = HorizontalAlignment.Begin,
234                 ItemVerticalAlignment = VerticalAlignment.Center,
235                 Track = new ImageViewStyle()
236                 {
237                     Size = new Size(84, 44),
238                     ResourceUrl = new Selector<string>()
239                     {
240                         Normal = FrameworkInformation.ResourcePath + "IoT_switch_track_off.png",
241                         Pressed = FrameworkInformation.ResourcePath + "IoT_switch_track_off_p.png",
242                         Disabled = FrameworkInformation.ResourcePath + "IoT_switch_track_off_d.png",
243                         Focused = FrameworkInformation.ResourcePath + "IoT_switch_track_off_f.png",
244                         Selected = FrameworkInformation.ResourcePath + "IoT_switch_track_on.png",
245                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_switch_track_on_p.png",
246                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_switch_track_on_f.png",
247                         DisabledSelected = FrameworkInformation.ResourcePath + "IoT_switch_track_on_d.png",
248                     },
249                 },
250                 Thumb = new ImageViewStyle()
251                 {
252                     Size = new Size(44, 44),
253                     ResourceUrl = new Selector<string>()
254                     {
255                         Normal = FrameworkInformation.ResourcePath + "IoT_switch_thumb.png",
256                         Disabled = FrameworkInformation.ResourcePath + "IoT_switch_thumb_d.png",
257                         Selected = FrameworkInformation.ResourcePath + "IoT_switch_thumb_s.png",
258                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_switch_thumb_sp.png",
259                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_switch_thumb_sf.png",
260                     }
261                 },
262                 Text = new TextLabelStyle()
263                 {
264                     TextColor = new Color("#001447"),
265                     PixelSize = 32,
266                 }
267             });
268
269             // Loading base style
270             theme.AddStyleWithoutClone("Tizen.NUI.Components.Loading", new LoadingStyle()
271             {
272                 LoadingSize = new Size(200, 200),
273             });
274
275             // Pagination base style
276             theme.AddStyleWithoutClone("Tizen.NUI.Components.Pagination", new PaginationStyle()
277             {
278                 IndicatorImageUrl = new Selector<string>()
279                 {
280                     Normal = FrameworkInformation.ResourcePath + "nui_component_default_pagination_normal_dot.png",
281                     Selected = FrameworkInformation.ResourcePath + "nui_component_default_pagination_focus_dot.png",
282                 },
283                 IndicatorSize = new Size(10, 10),
284             });
285
286             // Scrollbar base style
287             theme.AddStyleWithoutClone("Tizen.NUI.Components.Scrollbar", new ScrollbarStyle()
288             {
289                 TrackThickness = 8,
290                 ThumbThickness = 8,
291                 TrackColor = new Color(0f, 0f, 0f, 0f),
292                 ThumbColor = new Color("#FFFEFE"),
293                 TrackPadding = 4,
294                 //7.0 UX no require image resource.
295                 Thumb = new ImageViewStyle()
296                 {
297                     CornerRadius = 4.0f,
298                     BoxShadow = new Shadow(8.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 2.0f)),
299                 }
300                 //ThumbVerticalImageUrl = FrameworkInformation.ResourcePath + "nui_component_default_scroll_vbar.#.png",
301                 //ThumbHorizontalImageUrl = FrameworkInformation.ResourcePath + "nui_component_default_scroll_hbar.#.png",
302             });
303
304             // LinearLayouter base style
305             theme.AddStyleWithoutClone("Tizen.NUI.Components.LinearLayouter", new ViewStyle()
306             {
307                 Padding = new Extents(0, 0, 0, 0)
308             });
309
310             // GridLayouter base style
311             theme.AddStyleWithoutClone("Tizen.NUI.Components.GridLayouter", new ViewStyle()
312             {
313                 Padding = new Extents(0, 0, 0, 0),
314             });
315
316             // ItemsLayouter base style
317             theme.AddStyleWithoutClone("Tizen.NUI.Components.ItemsLayouter", new ViewStyle()
318             {
319                 Padding = new Extents(0, 0, 0, 0),
320             });
321
322             // RecyclerViewItem base style
323             theme.AddStyleWithoutClone("Tizen.NUI.Components.RecyclerViewItem", new RecyclerViewItemStyle()
324             {
325                 BackgroundColor = new Selector<Color>()
326                 {
327                     Normal = new Color(1, 1, 1, 1),
328                     Pressed = new Color(0.85f, 0.85f, 0.85f, 1),
329                     Disabled = new Color(0.70f, 0.70f, 0.70f, 1),
330                     Selected = new Color(0.701f, 0.898f, 0.937f, 1),
331                 },
332             });
333
334             // DefaultLinearItem base style
335             theme.AddStyleWithoutClone("Tizen.NUI.Components.DefaultLinearItem", new DefaultLinearItemStyle()
336             {
337                 SizeHeight = 64,
338                 Padding = new Extents(20, 20, 0, 0),
339                 Margin = new Extents(0, 0, 0, 0),
340                 Label = new TextLabelStyle()
341                 {
342                     PixelSize = 24,
343                     Ellipsis = true,
344                     FontFamily = "SamsungOneUI600",
345                     TextColor = new Selector<Color>()
346                     {
347                         Normal = new Color("#090E21"),
348                         Pressed = new Color("#FF6200"),
349                         Disabled = new Color("#CACACA"),
350                         Selected = new Color("#FF6200"),
351                     },
352                     ThemeChangeSensitive = false
353                 },
354                 SubLabel = new TextLabelStyle()
355                 {
356                     PixelSize = 20,
357                     Ellipsis = true,
358                     FontFamily = "SamsungOneUI400",
359                     TextColor = new Selector<Color>()
360                     {
361                         Normal = new Color("#090E21"),
362                         Pressed = new Color("#FF6200"),
363                         Disabled = new Color("#CACACA"),
364                         Selected = new Color("#FF6200"),
365                     },
366                     ThemeChangeSensitive = false
367                 },
368                 Icon = new ViewStyle()
369                 {
370                     Margin = new Extents(0, 24, 0, 0)
371                 },
372                 Extra = new ViewStyle()
373                 {
374                     Margin = new Extents(24, 0, 0, 0)
375                 },
376             });
377
378             // DefaultGridItem base style
379             theme.AddStyleWithoutClone("Tizen.NUI.Components.DefaultGridItem", new DefaultGridItemStyle()
380             {
381                 ClippingMode = ClippingModeType.ClipChildren,
382                 Padding = new Extents(0, 0, 0, 0),
383                 Margin = new Extents(5, 5, 5, 5),
384                 CornerRadius = 12.0f,
385                 BackgroundColor = new Selector<Color>()
386                 {
387                     Normal = new Color("#FAFAFA"),
388                     Pressed = new Color(1f, 0.38f, 0, 0.2f),
389                     Disabled = new Color("#FAFAFA"),
390                     Selected = new Color(1f, 0.38f, 0, 0.2f),
391                 },
392                 Image = new ImageViewStyle()
393                 {
394                     //FIXME: Clip mode is not working on CornerRadius.
395                     CornerRadius = 12.0f,
396                     ClippingMode = ClippingModeType.ClipChildren,
397                 },
398                 Label = new TextLabelStyle()
399                 {
400                     SizeHeight = 24,
401                     PixelSize = 16,
402                     FontFamily = "SamsungOneUI400",
403                     LineWrapMode = LineWrapMode.Character,
404                     TextColor = new Selector<Color>()
405                     {
406                         Normal = new Color("#090E21"),
407                         Pressed = new Color("#FF6200"),
408                         Disabled = new Color("#CACACA"),
409                         Selected = new Color("#FF6200"),
410                     },
411                     ThemeChangeSensitive = false
412                 },
413                 Badge = new ViewStyle()
414                 {
415                     Margin = new Extents(0, 0, 0, 0),
416                 },
417                 BoxShadow = new Shadow(12.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 4.0f)),
418             });
419
420             // DefaultTitleItem base style
421             theme.AddStyleWithoutClone("Tizen.NUI.Components.DefaultTitleItem", new DefaultTitleItemStyle()
422             {
423                 SizeHeight = 48,
424                 Padding = new Extents(20, 20, 0, 0),
425                 Margin = new Extents(0, 0, 0, 0),
426                 BackgroundColor = Color.Transparent,
427                 Label = new TextLabelStyle()
428                 {
429                     PixelSize = 24,
430                     Ellipsis = true,
431                     FontFamily = "SamsungOneUI400",
432                     TextColor = new Color("#090E217F"),
433                     ThemeChangeSensitive = false
434                 },
435                 Icon = new ViewStyle()
436                 {
437                     Margin = new Extents(24, 0, 0, 0)
438                 },
439                 Seperator = new ViewStyle()
440                 {
441                     Margin = new Extents(0, 0, 0, 0),
442                     BackgroundColor = new Color(0, 0, 0, 0),
443                 },
444             });
445
446             // ContentPage base style
447             theme.AddStyleWithoutClone("Tizen.NUI.Components.ContentPage", new ViewStyle()
448             {
449                 BackgroundColor = new Color("#FAFAFA"),
450                 CornerRadius = new Vector4(24.0f, 24.0f, 24.0f ,24.0f),
451                 CornerRadiusPolicy = VisualTransformPolicyType.Absolute,
452                 BoxShadow = new Shadow(8.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 2.0f)),
453             });
454
455             // AppBar base style
456             theme.AddStyleWithoutClone("Tizen.NUI.Components.AppBar", new AppBarStyle()
457             {
458                 Size = new Size(-1, 64),
459                 BackgroundColor = Color.Transparent,
460                 BackButton = new ButtonStyle()
461                 {
462                     Size = new Size(48, 48),
463                     CornerRadius = 0,
464                     BackgroundColor = Color.Transparent,
465                     Icon = new ImageViewStyle()
466                     {
467                         Size = new Size(48, 48),
468                         ResourceUrl = FrameworkInformation.ResourcePath + "nui_component_default_back_button.png",
469                         Color = new Selector<Color>()
470                         {
471                             Normal = new Color("#17234D"),
472                             Focused = new Color("#17234D"),
473                             Pressed = new Color("#FF6200"),
474                             Disabled = new Color("#CACACA"),
475                         },
476                     },
477                     ThemeChangeSensitive = false
478                 },
479                 TitleTextLabel = new TextLabelStyle()
480                 {
481                     PixelSize = 24,
482                     VerticalAlignment = VerticalAlignment.Center,
483                     TextColor = new Selector<Color>()
484                     {
485                         Normal = new Color("#17234D"),
486                     },
487                     ThemeChangeSensitive = false
488                 },
489                 ActionView = new ViewStyle()
490                 {
491                     Size = new Size(48, 64),
492                     CornerRadius = 0,
493                     BackgroundColor = Color.Transparent,
494                 },
495                 ActionButton = new ButtonStyle()
496                 {
497                     Size = new Size(-2, 64),
498                     CornerRadius = 0,
499                     BackgroundColor = Color.Transparent,
500                     Text = new TextLabelStyle()
501                     {
502                         PixelSize = 24,
503                         TextColor = new Selector<Color>()
504                         {
505                             Normal = new Color("#FF6200"),
506                             Focused = new Color("#FF6200"),
507                             Pressed = new Color("#D95300"),
508                             Disabled = new Color("#CACACA"),
509                         },
510                     },
511                     Icon = new ImageViewStyle()
512                     {
513                         Size = new Size(48, 48),
514                         Color = new Selector<Color>()
515                         {
516                             Normal = new Color("#17234D"),
517                             Focused = new Color("#17234D"),
518                             Pressed = new Color("#FF6200"),
519                             Disabled = new Color("#CACACA"),
520                         },
521                     },
522                     ThemeChangeSensitive = false,
523                 },
524                 Padding = new Extents(16, 16, 0, 0),
525                 NavigationPadding = new Extents(0, 8, 0, 0),
526                 ActionPadding = new Extents(16, 0, 0, 0),
527                 ActionCellPadding = new Size2D(16, 0),
528             });
529
530             // Picker base style
531             theme.AddStyleWithoutClone("Tizen.NUI.Components.Picker", new PickerStyle()
532             {
533                 Size = new Size(160, 339),
534                 ItemTextLabel = new TextLabelStyle()
535                 {
536                     //FIXME: Should be check PointSize. given size from UX is too large.
537                     PixelSize = 32,
538                     VerticalAlignment = VerticalAlignment.Center,
539                     HorizontalAlignment = HorizontalAlignment.Center,
540                     Size = new Size(0,72),
541                     TextColor = new Selector<Color>()
542                     {
543                         Normal = new Color("#000C2B"),
544                     },
545                     BackgroundColor = Color.White,
546                 },
547                 Divider = new ViewStyle()
548                 {
549                     SizeHeight = 2.0f,
550                     WidthResizePolicy = ResizePolicyType.FillToParent,
551                     Position = new Position(0, 132),
552                     BackgroundColor = new Color("#0A0E4A"),
553                 },
554                 StartScrollOffset = new Size(0, 12),
555             });
556
557             // TabBar base style
558             theme.AddStyleWithoutClone("Tizen.NUI.Components.TabBar", new ViewStyle()
559             {
560                 Size = new Size(-1, -2),
561                 Margin = new Extents(16, 16, 0, 0),
562                 Padding = new Extents(14, 14, 0, 0),
563                 CornerRadius = new Vector4(12.0f, 12.0f, 12.0f, 12.0f),
564                 CornerRadiusPolicy = VisualTransformPolicyType.Absolute,
565                 BoxShadow = new Shadow(8.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 2.0f)),
566                 BackgroundColor = new Color("#FAFAFA"),
567             });
568
569             // TabButton base style
570             theme.AddStyleWithoutClone("Tizen.NUI.Components.TabButton", new TabButtonStyle()
571             {
572                 Size = new Size(-1, 116),
573                 SizeWithTextOnly = new Size(-1, 72),
574                 SizeWithIconOnly = new Size(-1, 64),
575                 MinimumSize = new Size(100, -1),
576                 Padding = new Extents(24, 24, 18, 16),
577                 PaddingWithTextOnly = new Extents(24, 24, 20, 20),
578                 PaddingWithIconOnly = new Extents(24, 24, 16, 16),
579                 ItemSpacing = new Size2D(0, 10),
580                 CornerRadius = 0,
581                 IconSizeWithIconOnly = new Size(32, 32),
582                 BackgroundColor = new Selector<Color>()
583                 {
584                     Normal = new Color("#FAFAFA"),
585                     Selected = new Color("#FFE0CC"),
586                     Pressed = new Color("#FFCAA8"),
587                     Focused = new Color("#FAFAFA"),
588                     Disabled = new Color("#FAFAFA"),
589                 },
590                 Text = new TextLabelStyle()
591                 {
592                     PixelSize = 28,
593                     Size = new Size(-2, -2),
594                     TextColor = new Selector<Color>()
595                     {
596                         Normal = new Color("#090E21"),
597                         Selected = new Color("#FF6200"),
598                         Pressed = new Color("#FF6200"),
599                         Focused = new Color("#FF6200"),
600                         Disabled = new Color("#CACACA"),
601                     },
602                     ThemeChangeSensitive = false,
603                 },
604                 Icon = new ImageViewStyle()
605                 {
606                     Size = new Size(48, 48),
607                     Color = new Selector<Color>()
608                     {
609                         Normal = new Color("#090E21"),
610                         Selected = new Color("#FF6200"),
611                         Pressed = new Color("#FF6200"),
612                         Focused = new Color("#FF6200"),
613                         Disabled = new Color("#CACACA"),
614                     },
615                 },
616             });
617
618             // NotificationToast base style
619             theme.AddStyleWithoutClone("NotificationToast", new TextLabelStyle()
620             {
621                 BackgroundColor = new Color("#FAFAFA"),
622                 CornerRadius = 12.0f,
623                 BoxShadow = new Shadow(8.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 2.0f)),
624                 TextColor = new Color("#090E21"),
625                 PixelSize = 32,
626                 WidthResizePolicy = ResizePolicyType.UseNaturalSize,
627                 HeightResizePolicy = ResizePolicyType.UseNaturalSize,
628                 PositionUsesPivotPoint = true,
629                 HorizontalAlignment = HorizontalAlignment.Center,
630                 VerticalAlignment = VerticalAlignment.Center,
631                 Padding = new Extents(16, 16, 16, 16),
632                 PositionY = 120,
633             });
634
635             // AlertDialog base style
636             theme.AddStyleWithoutClone("Tizen.NUI.Components.AlertDialog", new AlertDialogStyle()
637             {
638                 Size = new Size(-2, -2),
639                 Padding = new Extents(32, 32, 32, 32),
640                 ItemSpacing = new Size2D(0, 32),
641                 BackgroundColor = new Color("#FAFAFA"),
642                 CornerRadius = 12.0f,
643                 BoxShadow = new Shadow(8.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 2.0f)),
644                 TitleTextLabel = new TextLabelStyle()
645                 {
646                     Size = new Size(626, -2),
647                     PixelSize = 24,
648                     HorizontalAlignment = HorizontalAlignment.Center,
649                     VerticalAlignment = VerticalAlignment.Center,
650                     TextColor = new Color("#090E21"),
651                     ThemeChangeSensitive = false,
652                 },
653                 MessageTextLabel = new TextLabelStyle()
654                 {
655                     Size = new Size(626, -2),
656                     PixelSize = 24,
657                     MultiLine = true,
658                     HorizontalAlignment = HorizontalAlignment.Center,
659                     VerticalAlignment = VerticalAlignment.Center,
660                     TextColor = new Color("#090E21"),
661                     ThemeChangeSensitive = false,
662                 },
663                 ActionContent = new ViewStyle()
664                 {
665                     Size = new Size(626, -2),
666                 },
667             });
668
669             // TimePicker base style
670             theme.AddStyleWithoutClone("Tizen.NUI.Components.TimePicker", new TimePickerStyle()
671             {
672                 CellPadding = new Size(50, 339),
673
674                 Pickers = new PickerStyle()
675                 {
676                     Size = new Size(160, 339),
677                     ItemTextLabel = new TextLabelStyle()
678                     {
679                         //FIXME: Should be check PointSize. given size from UX is too large.
680                         PixelSize = 32,
681                         VerticalAlignment = VerticalAlignment.Center,
682                         HorizontalAlignment = HorizontalAlignment.Center,
683                         Size = new Size(0,72),
684                         TextColor = new Color("#000C2B"),
685                         BackgroundColor = Color.White,
686                         ThemeChangeSensitive = false
687                     },
688                     Divider = new ViewStyle()
689                     {
690                         SizeHeight = 2.0f,
691                         WidthResizePolicy = ResizePolicyType.FillToParent,
692                         Position = new Position(0, 132),
693                         BackgroundColor = new Color("#0A0E4A"),
694                     },
695                     StartScrollOffset = new Size2D(0, 12),
696                 }
697             });
698
699             // DatePicker base style
700             theme.AddStyleWithoutClone("Tizen.NUI.Components.DatePicker", new DatePickerStyle()
701             {
702                 CellPadding = new Size(50, 339),
703
704                 Pickers = new PickerStyle()
705                 {
706                     Size = new Size(160, 339),
707                     ItemTextLabel = new TextLabelStyle()
708                     {
709                         //FIXME: Should be check PointSize. given size from UX is too large.
710                         PixelSize = 32,
711                         VerticalAlignment = VerticalAlignment.Center,
712                         HorizontalAlignment = HorizontalAlignment.Center,
713                         Size = new Size(0,72),
714                         TextColor = new Color("#000C2B"),
715                         BackgroundColor = Color.White,
716                         ThemeChangeSensitive = false
717                     },
718                     Divider = new ViewStyle()
719                     {
720                         SizeHeight = 2.0f,
721                         WidthResizePolicy = ResizePolicyType.FillToParent,
722                         Position = new Position(0, 132),
723                         BackgroundColor = new Color("#0A0E4A"),
724                     },
725                     StartScrollOffset = new Size2D(0, 12),
726                 }
727             });
728
729             // Menu base style
730             theme.AddStyleWithoutClone("Tizen.NUI.Components.Menu", new MenuStyle()
731             {
732                 Content = new ViewStyle()
733                 {
734                     BackgroundColor = new Color("#FFFEFE"),
735                     CornerRadius = 24.0f,
736                     BoxShadow = new Shadow(8.0f, new Color(0.0f, 0.0f, 0.0f, 0.16f), new Vector2(0.0f, 2.0f)),
737                     // FIXME: ScrollableBase with LinearLayout's Padding.Start is applied both Start and End.
738                     //        ScrollableBase with LinearLayout's Padding.Top is applied both Top and Bottom.
739                     Padding = new Extents(32, 0, 16, 0),
740                 },
741             });
742
743             // MenuItem base style
744             theme.AddStyleWithoutClone("Tizen.NUI.Components.MenuItem", new ButtonStyle()
745             {
746                 Size = new Size(324, -2),
747                 MinimumSize = new Size2D(0, 64),
748                 BackgroundColor = new Color("#FFFEFE"),
749                 CornerRadius = 0,
750                 // FIXME: ClippingModeType.ClipChildren cannot support anti-aliasing
751                 //        So not to show left bottom corner of MenuItem, MenuItem.Padding.Start is 0 and Menu.Content.Padding.Start is 32.
752                 //        (instead of MenuItem.Padding.Start 16 and Menu.Content.Padding.Start is 16)
753                 Padding = new Extents(0, 0, 24, 24),
754                 Text = new TextLabelStyle()
755                 {
756                     PixelSize = 24,
757                     MultiLine = true,
758                     HorizontalAlignment = HorizontalAlignment.Begin,
759                     VerticalAlignment = VerticalAlignment.Center,
760                     TextColor = new Selector<Color>()
761                     {
762                         Normal = new Color("#090E21"),
763                         Focused = new Color("#FF6200"),
764                         Pressed = new Color("#FF6200"),
765                         Disabled = new Color("#CACACA"),
766                         Selected = new Color("#FF6200"),
767                     },
768                     ThemeChangeSensitive = false
769                 },
770                 Icon = new ImageViewStyle()
771                 {
772                     Size = new Size(32, 32),
773                     Color = new Selector<Color>()
774                     {
775                         Normal = new Color("#090E21"),
776                         Focused = new Color("#FF6200"),
777                         Pressed = new Color("#FF6200"),
778                         Disabled = new Color("#CACACA"),
779                         Selected = new Color("#FF6200"),
780                     },
781                 },
782             });
783
784             // AlertDialog base style
785             theme.AddStyleWithoutClone("Tizen.NUI.Components.DialogPage.Scrim", new ViewStyle()
786             {
787                 BackgroundColor = new Color("#090E21"),
788                 Opacity = 0.5f,
789             });
790
791             return theme;
792         }
793     }
794 }
795
796 #endif // !PROFILE_WEARABLE