Version 5.4.3.2, tag libreoffice-5.4.3.2
[LibreOffice.git] / include / svx / svdtypes.hxx
blobbf8e00005bb3396c851f9c19f05594458983cce9
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_SVX_SVDTYPES_HXX
21 #define INCLUDED_SVX_SVDTYPES_HXX
23 #include <sal/types.h>
24 #include <o3tl/strong_int.hxx>
26 // commands for EndCreate()
27 enum class SdrCreateCmd
29 NextPoint, // next traverse station, segment of a circle: next coordinate
30 NextObject, // next polygon in PolyPolygon
31 ForceEnd // forced end
34 enum class SdrDragMode
36 Move,
37 Resize,
38 Rotate,
39 Mirror,
40 Shear,
41 Crook,
43 // new modes for interactive transparence and gradient tools
44 Transparence,
45 Gradient,
47 // new mode for interactive cropping of graphics
48 Crop
54 * Layer
56 // You can use this value in the methods of SdrLayerSet, but false is returned
57 // every time or the method does nothing.
58 // type declaration for Layer-IDs
59 struct SdrLayerIDTag {};
60 typedef o3tl::strong_int<sal_uInt8,SdrLayerIDTag> SdrLayerID;
62 // If there is no layer when it should be identified, then
63 // SdrLayerAdmin::GetLayerID(const String&) returns a value.
64 constexpr SdrLayerID SDRLAYER_NOTFOUND(0xff);
67 * Page + ObjList
69 enum class SdrObjListKind {
70 Unknown = 0x00,
71 // reine Objektlisten:
72 GroupObj = 0x01,
73 // Here is space for 12 more types of lists
74 // Pages:
75 DrawPage = 0x10,
76 MasterPage = 0x11
77 // Here is space for 8 more types of pages
78 }; // reserved for Surrogate
81 * Repeat
83 enum class SdrRepeatFunc {
84 NONE,
85 // with parameter
86 Move, // distance
87 Resize, // factor, reference(%) related to MarkRect
88 Rotate, // rotation angle, reference(%) related to MarkRect
89 // Without parameter
90 Delete,
91 CombinePolyPoly,
92 CombineOnePoly,
93 DismantlePolys,
94 DismantleLines,
95 ConvertToPoly,
96 ConvertToPath,
97 Group,
98 Ungroup,
99 PutToTop,
100 PutToBottom,
101 MoveToTop,
102 MoveToBottom,
103 ReverseOrder,
104 ImportMtf,
107 #endif // INCLUDED_SVX_SVDTYPES_HXX
109 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */