1/*
2    SPDX-FileCopyrightText: 2020 Michail Vourlakos <mvourlakos@gmail.com>
3    SPDX-License-Identifier: GPL-2.0-or-later
4*/
5
6#ifndef @CORETYPESHEADER@
7#define @CORETYPESHEADER@
8
9// Qt
10#include <QObject>
11#include <QMetaEnum>
12#include <QMetaType>
13
14namespace Latte {
15
16class Types
17{
18    Q_GADGET
19
20public:
21    Types() = delete;
22    ~Types(){};
23
24    enum ViewType
25    {
26        DockView = 0,
27        PanelView
28    };
29    Q_ENUM(ViewType);
30
31    enum Visibility
32    {
33        None = -1,
34        AlwaysVisible = 0,
35        AutoHide,
36        DodgeActive,
37        DodgeMaximized,
38        DodgeAllWindows,
39        WindowsGoBelow,
40        WindowsCanCover,
41        WindowsAlwaysCover,
42        SidebarOnDemand,
43        SidebarAutoHide,
44        NormalWindow = 20
45    };
46    Q_ENUM(Visibility);
47
48    enum Alignment
49    {
50        NoneAlignment = -1,
51        Center = 0,
52        Left,
53        Right,
54        Top,
55        Bottom,
56        Justify = 10
57    };
58    Q_ENUM(Alignment);
59
60    enum EdgesAndAlignments
61    {
62        BottomEdgeCenterAlign = 0,
63        BottomEdgeLeftAlign,
64        BottomEdgeRightAlign,
65        TopEdgeCenterAlign,
66        TopEdgeLeftAlign,
67        TopEdgeRightAlign,
68        LeftEdgeCenterAlign,
69        LeftEdgeTopAlign,
70        LeftEdgeBottomAlign,
71        RightEdgeCenterAlign,
72        RightEdgeTopAlign,
73        RightEdgeBottomAlign
74    };
75    Q_ENUM(EdgesAndAlignments);
76
77    enum LaunchersGroup
78    {
79        UniqueLaunchers = 0,
80        LayoutLaunchers = 1,
81        GlobalLaunchers = 2
82    };
83    Q_ENUM(LaunchersGroup);
84};
85
86}//end of namespace
87
88#endif
89