UB.h 3.09 KB
Newer Older
Claudio Valerio's avatar
Claudio Valerio committed
1
/*
Claudio Valerio's avatar
Claudio Valerio committed
2 3
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
Claudio Valerio's avatar
Claudio Valerio committed
4
 * the Free Software Foundation, either version 2 of the License, or
Claudio Valerio's avatar
Claudio Valerio committed
5
 * (at your option) any later version.
Claudio Valerio's avatar
Claudio Valerio committed
6
 *
Claudio Valerio's avatar
Claudio Valerio committed
7 8 9 10 11 12 13
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
Claudio Valerio's avatar
Claudio Valerio committed
14 15 16 17 18 19 20
 */

#ifndef UB_H_
#define UB_H_

#include <QtGui>

21
#define UB_MAX_ZOOM 9
Claudio Valerio's avatar
Claudio Valerio committed
22

23 24 25 26 27 28 29 30 31 32 33 34 35
struct UBMimeType
{
    enum Enum
    {
        RasterImage = 0,
        VectorImage,
        AppleWidget,
        W3CWidget,
        Video,
        Audio,
        Flash,
        PDF,
        UniboardTool,
36
        Group,
37 38 39 40
        UNKNOWN
    };
};

Claudio Valerio's avatar
Claudio Valerio committed
41 42 43 44
struct UBStylusTool
{
    enum Enum
    {
45 46
        Pen = 0, 
		Eraser, 
47
 		Marker, 
48
		Selector, 
49
        Play,
50 51 52 53 54 55 56
		Hand, 
		ZoomIn, 
		ZoomOut, 
		Pointer, 
		Line, 
		Text, 
		Capture
Claudio Valerio's avatar
Claudio Valerio committed
57 58 59 60 61 62 63 64 65 66 67
    };
};

struct UBWidth
{
    enum Enum
    {
        Fine = 0, Medium, Strong
    };
};

68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
struct UBZoom
{
    enum Enum
    {
        Small = 0, Medium, Large
    };
};

struct UBSize
{
    enum Enum
    {
        Small = 0, Medium, Large
    };
};

shibakaneki's avatar
shibakaneki committed
84
// Deprecated. Keep it for backward campability with old versions
Claudio Valerio's avatar
Claudio Valerio committed
85 86 87 88 89 90 91 92
struct UBItemLayerType
{
    enum Enum
    {
        FixedBackground = -2000, Object = -1000, Graphic = 0, Tool = 1000, Control = 2000
    };
};

shibakaneki's avatar
shibakaneki committed
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110
struct itemLayerType
{
    enum Enum {
        NoLayer = 0
        , BackgroundItem
        , ObjectItem
        , DrawingItem
        , ToolItem
        , CppTool
        , Eraiser
        , Curtain
        , Pointer
        , Cache
        , SelectedItem
    };
};


Claudio Valerio's avatar
Claudio Valerio committed
111 112 113 114
struct UBGraphicsItemData
{
    enum Enum
    {
shibakaneki's avatar
shibakaneki committed
115
        ItemLayerType //Deprecated. Keep it for backward campability with old versions. Use itemLayerType instead
116 117
        , ItemLocked
        , ItemEditable//for text only
118
        , ItemOwnZValue
shibakaneki's avatar
shibakaneki committed
119
        , itemLayerType //use instead of deprecated ItemLayerType
Ivan Ilyin's avatar
Ivan Ilyin committed
120
        , ItemUuid //storing uuid in QGraphicsItem for fast finding operations
121 122 123
        //Duplicating delegate's functions to make possible working with pure QGraphicsItem
        , ItemFlippable // (bool)
        , ItemRotatable // (bool)
Claudio Valerio's avatar
Claudio Valerio committed
124 125 126
    };
};

shibakaneki's avatar
shibakaneki committed
127 128


Claudio Valerio's avatar
Claudio Valerio committed
129 130 131 132
struct UBGraphicsItemType
{
    enum Enum
    {
133 134 135
        PolygonItemType = QGraphicsItem::UserType + 1, 
		PixmapItemType,
        SvgItemType, 
136
        DelegateButtonType,
Anatoly Mihalchenko's avatar
Anatoly Mihalchenko committed
137
		MediaItemType, 
138
		PDFItemType, 
139
		TextItemType,
140 141 142 143 144
		CurtainItemType,
        RulerItemType, 
		CompassItemType, 
		ProtractorItemType, 
		StrokeItemType,
145 146
		TriangleItemType,
        MagnifierItemType,
Ivan Ilyin's avatar
Ivan Ilyin committed
147
        cacheItemType,
148
        groupContainerType,
149
        ToolWidgetItemType,
150 151
        GraphicsWidgetItemType,
        UserTypesCount // this line must be the last line in this enum because it is types counter.
Claudio Valerio's avatar
Claudio Valerio committed
152 153 154 155 156 157 158 159 160 161 162 163
    };
};

struct DocumentSizeRatio
{
    enum Enum
    {
        Ratio4_3 = 0, Ratio16_9, Custom
    };
};

#endif /* UB_H_ */