[NUI] Introduce NUI DatePicker
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI.Components / 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_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         [SuppressMessage("Microsoft.Reliability", "CA2000: Dispose objects before losing scope", Justification = "The responsibility to dispose the object is transferred to the theme object.")]
28         public Theme Create()
29         {
30             var theme = new Theme()
31             {
32                 Id = Tizen.NUI.DefaultThemeCreator.DefaultId,
33                 Version = Tizen.NUI.DefaultThemeCreator.DefaultVersion
34             };
35
36             theme.AddStyleWithoutClone("Tizen.NUI.Components.Button", new ButtonStyle()
37             {
38                 Size = new Size(339, 96),
39                 CornerRadiusPolicy = VisualTransformPolicyType.Relative,
40                 CornerRadius = 0.2916f,
41                 BackgroundColor = new Selector<Color>()
42                 {
43                     Normal = new Color(0.039f, 0.055f, 0.29f, 1),
44                     Pressed = new Color(0.106f, 0.412f, 0.792f, 1),
45                     Focused = new Color(0, 0.2f, 0.545f, 1),
46                     Disabled = new Color(0.765f, 0.792f, 0.824f, 1),
47                 },
48                 Text = new TextLabelStyle()
49                 {
50                     PixelSize = 32,
51                     TextColor = Color.White,
52                 }
53             });
54
55             theme.AddStyleWithoutClone("Tizen.NUI.Components.CheckBox", new ButtonStyle()
56             {
57                 TextPadding = new Extents(32, 0, 0, 0),
58                 Icon = new ImageViewStyle()
59                 {
60                     Size = new Size(36, 36),
61                     ResourceUrl = new Selector<string>()
62                     {
63                         Normal = FrameworkInformation.ResourcePath + "IoT_check_off.svg",
64                         Pressed = FrameworkInformation.ResourcePath + "IoT_check_off_p.svg",
65                         Disabled = FrameworkInformation.ResourcePath + "IoT_check_off_d.svg",
66                         Focused = FrameworkInformation.ResourcePath + "IoT_check_off_f.svg",
67                         Selected = FrameworkInformation.ResourcePath + "IoT_check_on.svg",
68                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_check_on_p.svg",
69                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_check_on_f.svg",
70                         DisabledSelected = FrameworkInformation.ResourcePath + "IoT_check_on_d.svg",
71                     },
72                 },
73                 Text = new TextLabelStyle()
74                 {
75                     PixelSize = 32,
76                     TextColor = new Color("#001447")
77                 }
78             });
79
80             theme.AddStyleWithoutClone("Tizen.NUI.Components.Popup", new PopupStyle()
81             {
82                 Size = new Size(500, 280),
83                 BackgroundColor = new Color(0.9f, 0.9f, 0.9f, 1),
84                 ImageShadow = new ImageShadow()
85                 {
86                     Url = FrameworkInformation.ResourcePath + "nui_component_default_popup_shadow.png",
87                     Border = new Rectangle(24, 24, 24, 24),
88                     Extents = new Vector2(48, 48)
89                 },
90                 Title = new TextLabelStyle()
91                 {
92                     PointSize = 16,
93                     Padding = new Extents(20, 20, 20, 20),
94                 },
95                 Buttons = new ButtonStyle()
96                 {
97                     Size = new Size(0, 80),
98                     BackgroundColor = new Selector<Color>()
99                     {
100                         Normal = new Color(1, 1, 1, 1),
101                         Pressed = new Color(1, 1, 1, 0.5f),
102                     },
103                     Overlay = new ImageViewStyle()
104                     {
105                         BackgroundColor = new Selector<Color>()
106                         {
107                             Pressed = new Color(0, 0, 0, 0.1f),
108                             Other = new Color(1, 1, 1, 0.1f),
109                         },
110                     },
111                     Text = new TextLabelStyle()
112                     {
113                         TextColor = new Color(0.05f, 0.63f, 0.9f, 1),
114                     }
115                 }
116             });
117
118             theme.AddStyleWithoutClone("Tizen.NUI.Components.Progress", new ProgressStyle()
119             {
120                 Size = new Size(200, 5),
121                 Track = new ImageViewStyle()
122                 {
123                     BackgroundColor = new Color(0, 0, 0, 0.1f),
124                 },
125                 Buffer = new ImageViewStyle()
126                 {
127                     BackgroundColor = new Color(0.05f, 0.63f, 0.9f, 0.3f),
128                 },
129                 Progress = new ImageViewStyle()
130                 {
131                     BackgroundColor = new Color(0.05f, 0.63f, 0.9f, 1),
132                 },
133             });
134
135             theme.AddStyleWithoutClone("Tizen.NUI.Components.RadioButton", new ButtonStyle()
136             {
137                 TextPadding = new Extents(32, 0, 0, 0),
138                 Icon = new ImageViewStyle()
139                 {
140                     Size = new Size(36, 36),
141                     ResourceUrl = new Selector<string>()
142                     {
143                         Normal = FrameworkInformation.ResourcePath + "IoT_radiobutton_off.svg",
144                         Pressed = FrameworkInformation.ResourcePath + "IoT_radiobutton_off_p.svg",
145                         Disabled = FrameworkInformation.ResourcePath + "IoT_radiobutton_off_d.svg",
146                         Focused = FrameworkInformation.ResourcePath + "IoT_radiobutton_off_f.svg",
147                         Selected = FrameworkInformation.ResourcePath + "IoT_radiobutton_on.svg",
148                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_radiobutton_on_p.svg",
149                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_radiobutton_on_f.svg",
150                         DisabledSelected = FrameworkInformation.ResourcePath + "IoT_radiobutton_on_d.svg",
151                     },
152                 },
153                 Text = new TextLabelStyle()
154                 {
155                     PixelSize = 32,
156                     TextColor = new Color("#001447")
157                 }
158             });
159
160             theme.AddStyleWithoutClone("Tizen.NUI.Components.Slider", new SliderStyle()
161             {
162                 Size = new Size(200, 50),
163                 TrackThickness = 5,
164                 Track = new ImageViewStyle()
165                 {
166                     BackgroundColor = new Color(0, 0, 0, 0.1f),
167                 },
168                 Progress = new ImageViewStyle()
169                 {
170                     BackgroundColor = new Color(0.5f, 0.63f, 0.9f, 1),
171                 },
172                 Thumb = new ImageViewStyle()
173                 {
174                     Size = new Size(50, 50),
175                     ResourceUrl = FrameworkInformation.ResourcePath + "nui_component_default_slider_thumb_n.png",
176                     BackgroundImage = new Selector<string>()
177                     {
178                         Normal = FrameworkInformation.ResourcePath + "nui_component_default_slider_thumb_bg_p.png",
179                         Pressed = FrameworkInformation.ResourcePath + "nui_component_default_slider_thumb_bg_p.png",
180                     }
181                 },
182                 ValueIndicatorImage = new ImageViewStyle()
183                 {
184                     Size = new Size(83, 54),
185                     ResourceUrl = FrameworkInformation.ResourcePath + "nui_component_default_slider_value_indicator.png",
186                 },
187             });
188
189             theme.AddStyleWithoutClone("Tizen.NUI.Components.Switch", new SwitchStyle()
190             {
191                 TextPadding = new Extents(32, 0, 0, 0),
192                 Track = new ImageViewStyle()
193                 {
194                     Size = new Size(80, 40),
195                     ResourceUrl = new Selector<string>()
196                     {
197                         Normal = FrameworkInformation.ResourcePath + "IoT_switch_track_off.svg",
198                         Pressed = FrameworkInformation.ResourcePath + "IoT_switch_track_off_p.svg",
199                         Disabled = FrameworkInformation.ResourcePath + "IoT_switch_track_off_d.svg",
200                         Focused = FrameworkInformation.ResourcePath + "IoT_switch_track_off_f.svg",
201                         Selected = FrameworkInformation.ResourcePath + "IoT_switch_track_on.svg",
202                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_switch_track_on_p.svg",
203                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_switch_track_on_f.svg",
204                         DisabledSelected = FrameworkInformation.ResourcePath + "IoT_switch_track_on_d.svg",
205                     },
206                 },
207                 Thumb = new ImageViewStyle()
208                 {
209                     Size = new Size(40, 40),
210                     ResourceUrl = new Selector<string>()
211                     {
212                         Normal = FrameworkInformation.ResourcePath + "IoT_switch_thumb.svg",
213                         Disabled = FrameworkInformation.ResourcePath + "IoT_switch_thumb_d.svg",
214                         Selected = FrameworkInformation.ResourcePath + "IoT_switch_thumb_s.svg",
215                         SelectedPressed = FrameworkInformation.ResourcePath + "IoT_switch_thumb_sp.svg",
216                         SelectedFocused = FrameworkInformation.ResourcePath + "IoT_switch_thumb_sf.svg",
217                     }
218                 },
219                 Text = new TextLabelStyle()
220                 {
221                     PixelSize = 32,
222                     TextColor = new Color("#001447")
223                 }
224             });
225
226             theme.AddStyleWithoutClone("Tizen.NUI.Components.Loading", new LoadingStyle()
227             {
228                 LoadingSize = new Size(100, 100),
229             });
230
231             theme.AddStyleWithoutClone("Tizen.NUI.Components.Pagination", new PaginationStyle()
232             {
233                 IndicatorImageUrl = new Selector<string>()
234                 {
235                     Normal = FrameworkInformation.ResourcePath + "nui_component_default_pagination_normal_dot.png",
236                     Selected = FrameworkInformation.ResourcePath + "nui_component_default_pagination_focus_dot.png",
237                 },
238                 IndicatorSize = new Size(10, 10),
239             });
240
241             theme.AddStyleWithoutClone("Tizen.NUI.Components.Scrollbar", new ScrollbarStyle()
242             {
243                 TrackThickness = 6,
244                 ThumbThickness = 6,
245                 TrackColor = new Color(1, 1, 1, 0.15f),
246                 ThumbColor = new Color(0.6f, 0.6f, 0.6f, 1.0f),
247                 TrackPadding = 4
248             });
249
250             theme.AddStyleWithoutClone("Tizen.NUI.Components.RecyclerViewItem", new RecyclerViewItemStyle()
251             {
252                 BackgroundColor = new Selector<Color>()
253                 {
254                     Normal = new Color(1, 1, 1, 1),
255                     Pressed = new Color(0.85f, 0.85f, 0.85f, 1),
256                     Disabled = new Color(0.70f, 0.70f, 0.70f, 1),
257                     Selected = new Color(0.701f, 0.898f, 0.937f, 1),
258                 },
259             });
260
261             theme.AddStyleWithoutClone("Tizen.NUI.Components.DefaultLinearItem", new DefaultLinearItemStyle()
262             {
263                 SizeHeight = 108,
264                 Padding = new Extents(64, 64, 18, 17),
265                 BackgroundColor = new Selector<Color>()
266                 {
267                     Normal = new Color(1, 1, 1, 1),
268                     Pressed = new Color(0.85f, 0.85f, 0.85f, 1),
269                     Disabled = new Color(0.70f, 0.70f, 0.70f, 1),
270                     Selected = new Color(0.85f, 0.85f, 0.85f, 1),
271                 },
272                 Label = new TextLabelStyle()
273                 {
274                     PixelSize = 32,
275                     Ellipsis = true,
276                     FontFamily = "BreezeSans", //FXIME Font Weight is Light
277                     TextColor = new Color("#001447FF"),
278                 },
279                 SubLabel = new TextLabelStyle()
280                 {
281                     PixelSize = 28,
282                     Ellipsis = true,
283                     FontFamily = "BreezeSans",
284                     TextColor = new Color("#001447FF"),
285                 },
286                 Icon = new ViewStyle()
287                 {
288                     Margin = new Extents(0, 32, 0, 0)
289                 },
290                 Extra = new ViewStyle()
291                 {
292                     Margin = new Extents(32, 0, 0, 0)
293                 },
294                 Seperator = new ViewStyle()
295                 {
296                     SizeHeight = 1,
297                     Margin = new Extents(64, 64, 0, 0),
298                     BackgroundColor = new Color("#C3CAD2FF"),
299                 },
300             });
301             theme.AddStyleWithoutClone("Tizen.NUI.Components.DefaultGridItem", new DefaultGridItemStyle()
302             {
303                 Padding = new Extents(5, 5, 5, 5),
304                 Caption = new TextLabelStyle()
305                 {
306                     SizeHeight = 60,
307                     PixelSize = 24,
308                     LineWrapMode = LineWrapMode.Character,
309                 },
310                 Badge = new ViewStyle()
311                 {
312                     Margin = new Extents(5, 5, 5, 5),
313                 },
314             });
315
316             theme.AddStyleWithoutClone("Tizen.NUI.Components.DefaultTitleItem", new DefaultTitleItemStyle()
317             {
318                 SizeHeight = 60,
319                 Padding = new Extents(64, 64, 12, 12),
320                 BackgroundColor = new Selector<Color>()
321                 {
322                     Normal = new Color("#EEEEF1FF"),
323                 },
324                 Label = new TextLabelStyle()
325                 {
326                     PixelSize = 28,
327                     Ellipsis = true,
328                     TextColor = new Color("#001447FF"),
329                 },
330                 Icon = new ViewStyle()
331                 {
332                     Margin = new Extents(40, 0, 0, 0)
333                 },
334                 Seperator = new ViewStyle()
335                 {
336                     Margin = new Extents(0, 0, 0, 0),
337                     BackgroundColor = new Color(0, 0, 0, 0),
338                 },
339             });
340
341             theme.AddStyleWithoutClone("Tizen.NUI.Components.AppBar", new AppBarStyle()
342             {
343                 Size = new Size(-1, 120),
344                 BackgroundColor = new Color("#EEEFF1FF"),
345                 BackButton = new ButtonStyle()
346                 {
347                     Size = new Size(48, 48),
348                     CornerRadius = 0,
349                     BackgroundColor = new Color(0, 0, 0, 0),
350                     Icon = new ImageViewStyle()
351                     {
352                         Size = new Size(48, 48),
353                         ResourceUrl = FrameworkInformation.ResourcePath + "nui_component_default_back_button.png",
354                         Color = new Selector<Color>()
355                         {
356                             Normal = new Color("#0A0E4AFF"),
357                             Focused = new Color("#00338BFF"),
358                             Pressed = new Color("#1B69CAFF"),
359                             Disabled = new Color("#C3CAD2FF"),
360                         },
361                     },
362                 },
363                 TitleTextLabel = new TextLabelStyle()
364                 {
365                     PixelSize = 40,
366                     VerticalAlignment = VerticalAlignment.Center,
367                     TextColor = new Selector<Color>()
368                     {
369                         Normal = new Color("#000C2BFF"),
370                     }
371                 },
372                 ActionView = new ViewStyle()
373                 {
374                     Size = new Size(-1, 48),
375                     CornerRadius = 0,
376                     BackgroundColor = new Color(0, 0, 0, 0),
377                 },
378                 ActionButton = new ButtonStyle()
379                 {
380                     Size = new Size(-1, 48),
381                     CornerRadius = 0,
382                     BackgroundColor = new Color(0, 0, 0, 0),
383                     Text = new TextLabelStyle()
384                     {
385                         PixelSize = 26,
386                         TextColor = new Selector<Color>()
387                         {
388                             Normal = new Color("#0A0E4AFF"),
389                             Focused = new Color("#00338BFF"),
390                             Pressed = new Color("#1B69CAFF"),
391                             Disabled = new Color("#C3CAD2FF"),
392                         },
393                     },
394                     Icon = new ImageViewStyle()
395                     {
396                         Size = new Size(-1, 48),
397                         Color = new Selector<Color>()
398                         {
399                             Normal = new Color("#0A0E4AFF"),
400                             Focused = new Color("#00338BFF"),
401                             Pressed = new Color("#1B69CAFF"),
402                             Disabled = new Color("#C3CAD2FF"),
403                         },
404                     },
405                 },
406                 Padding = new Extents(64, 64, 0, 0),
407                 NavigationPadding = new Extents(0, 24, 0, 0),
408                 ActionPadding = new Extents(40, 0, 0, 0),
409                 ActionCellPadding = new Size2D(40, 0),
410             });
411
412             theme.AddStyleWithoutClone("Tizen.NUI.Components.Picker", new PickerStyle()
413             {
414                 Size = new Size(160, 339),
415                 ItemTextLabel = new TextLabelStyle()
416                 {
417                     //FIXME: Should be check PointSize. given size from UX is too large.
418                     PixelSize = 32,
419                     VerticalAlignment = VerticalAlignment.Center,
420                     HorizontalAlignment = HorizontalAlignment.Center,
421                     Size = new Size(0,72),
422                     TextColor = new Selector<Color>()
423                     {
424                         Normal = new Color("#000C2BFF"),
425                     },
426                     BackgroundColor = Color.White,
427                 },
428                 Divider = new ViewStyle()
429                 {
430                     SizeHeight = 2.0f,
431                     WidthResizePolicy = ResizePolicyType.FillToParent,
432                     Position = new Position(0, 132),
433                     BackgroundColor = new Color("#0A0E4AFF"),
434                 },
435                 StartScrollOffset = new Size(0, 12),
436             });
437
438             theme.AddStyleWithoutClone("Tizen.NUI.Components.TabButton", new TabButtonStyle()
439             {
440                 Size = new Size(-1, 84),
441                 CornerRadius = 0,
442                 BackgroundColor = Color.White,
443                 Text = new TextLabelStyle()
444                 {
445                     PixelSize = 28,
446                     Size = new Size(-2, -2),
447                     TextColor = new Selector<Color>()
448                     {
449                         Normal = new Color("#000C2BFF"),
450                         Selected = new Color("#000C2BFF"),
451                         Pressed = new Color("#1473E6FF"),
452                         Disabled = new Color("#C3CAD2FF"),
453                     },
454                 },
455                 Icon = new ImageViewStyle()
456                 {
457                     Size = new Size(48, 48),
458                     Color = new Selector<Color>()
459                     {
460                         Normal = new Color("#000C2BFF"),
461                         Selected = new Color("#000C2BFF"),
462                         Pressed = new Color("#1473E6FF"),
463                         Disabled = new Color("#C3CAD2FF"),
464                     },
465                 },
466                 TopLine = new ViewStyle()
467                 {
468                     Size = new Size(-1, 1),
469                     BackgroundColor = new Selector<Color>()
470                     {
471                         Normal = new Color("#000C2BFF"),
472                         Selected = new Color("#000C2BFF"),
473                         Pressed = new Color("#1473E6FF"),
474                         Disabled = new Color("#C3CAD2FF"),
475                     },
476                 },
477                 BottomLine = new ViewStyle()
478                 {
479                     Size = new Size(-1, 8),
480                     Position = new Position(0, 76), // 84 - 8
481                     BackgroundColor = new Selector<Color>()
482                     {
483                         Normal = Color.Transparent,
484                         Selected = new Color("#000C2BFF"),
485                         Pressed = new Color("#1473E6FF"),
486                         Disabled = Color.Transparent,
487                     },
488                 },
489             });
490
491             theme.AddStyleWithoutClone("NotificationToast", new TextLabelStyle()
492             {
493                 BackgroundImage = FrameworkInformation.ResourcePath + "IoT_Toast_1.png",
494                 BackgroundImageBorder = new Rectangle(28, 28, 28, 28),
495                 TextColor = new Color("#000C2B"),
496                 PixelSize = 32,
497                 WidthResizePolicy = ResizePolicyType.UseNaturalSize,
498                 HeightResizePolicy = ResizePolicyType.UseNaturalSize,
499                 PositionUsesPivotPoint = true,
500                 HorizontalAlignment = HorizontalAlignment.Center,
501                 VerticalAlignment = VerticalAlignment.Center,
502                 Padding = new Extents(40, 40, 24, 24),
503                 PositionY = 120,
504             });
505
506             theme.AddStyleWithoutClone("Tizen.NUI.Components.AlertDialog", new AlertDialogStyle()
507             {
508                 Size = new Size(-2, -2),
509                 Padding = new Extents(80, 80, 0, 0),
510                 BackgroundImage = FrameworkInformation.ResourcePath + "nui_component_default_dialog_bg.#.png",
511                 TitleTextLabel = new TextLabelStyle()
512                 {
513                     Size = new Size(1024, -2),
514                     Margin = new Extents(0, 0, 40, 40),
515                     PixelSize = 40,
516                     HorizontalAlignment = HorizontalAlignment.Center,
517                     VerticalAlignment = VerticalAlignment.Center,
518                     TextColor = new Selector<Color>()
519                     {
520                         Normal = new Color("#000C2BFF"),
521                     },
522                 },
523                 MessageTextLabel = new TextLabelStyle()
524                 {
525                     Size = new Size(1024, -2),
526                     Margin = new Extents(0, 0, 0, 64),
527                     PixelSize = 32,
528                     MultiLine = true,
529                     HorizontalAlignment = HorizontalAlignment.Center,
530                     VerticalAlignment = VerticalAlignment.Center,
531                     TextColor = new Selector<Color>()
532                     {
533                         Normal = new Color("#000C2BFF"),
534                     },
535                 },
536                 ActionContent = new ViewStyle()
537                 {
538                     Size = new Size(1024, -2),
539                 },
540             });
541
542             theme.AddStyleWithoutClone("Tizen.NUI.Components.TimePicker", new TimePickerStyle()
543             {
544                 CellPadding = new Size(50, 339),
545
546                 Pickers = new PickerStyle()
547                 {
548                     Size = new Size(160, 339),
549                     ItemTextLabel = new TextLabelStyle()
550                     {
551                         //FIXME: Should be check PointSize. given size from UX is too large.
552                         PixelSize = 32,
553                         VerticalAlignment = VerticalAlignment.Center,
554                         HorizontalAlignment = HorizontalAlignment.Center,
555                         Size = new Size(0,72),
556                         TextColor = new Selector<Color>()
557                         {
558                             Normal = new Color("#000C2BFF"),
559                         },
560                         BackgroundColor = Color.White,
561                     },
562                     Divider = new ViewStyle()
563                     {
564                         SizeHeight = 2.0f,
565                         WidthResizePolicy = ResizePolicyType.FillToParent,
566                         Position = new Position(0, 132),
567                         BackgroundColor = new Color("#0A0E4AFF"),
568                     },
569                     StartScrollOffset = new Size2D(0, 12),
570                 }
571             });
572
573             theme.AddStyleWithoutClone("Tizen.NUI.Components.DatePicker", new DatePickerStyle()
574             {
575                 CellPadding = new Size(50, 339),
576
577                 Pickers = new PickerStyle()
578                 {
579                     Size = new Size(160, 339),
580                     ItemTextLabel = new TextLabelStyle()
581                     {
582                         //FIXME: Should be check PointSize. given size from UX is too large.
583                         PixelSize = 32,
584                         VerticalAlignment = VerticalAlignment.Center,
585                         HorizontalAlignment = HorizontalAlignment.Center,
586                         Size = new Size(0,72),
587                         TextColor = new Selector<Color>()
588                         {
589                             Normal = new Color("#000C2BFF"),
590                         },
591                         BackgroundColor = Color.White,
592                     },
593                     Divider = new ViewStyle()
594                     {
595                         SizeHeight = 2.0f,
596                         WidthResizePolicy = ResizePolicyType.FillToParent,
597                         Position = new Position(0, 132),
598                         BackgroundColor = new Color("#0A0E4AFF"),
599                     },
600                     StartScrollOffset = new Size2D(0, 12),
601                 }
602             });
603
604             return theme;
605         }
606     }
607 }
608
609 #endif