1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /* 3 * This file is part of the LibreOffice project. 4 * 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/. 8 * 9 * This file incorporates work covered by the following license notice: 10 * 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 . 18 */ 19 20 #ifndef INCLUDED_SVX_SVDTYPES_HXX 21 #define INCLUDED_SVX_SVDTYPES_HXX 22 23 #include <sal/types.h> 24 #include <o3tl/strong_int.hxx> 25 26 // commands for EndCreate() 27 enum class SdrCreateCmd 28 { 29 NextPoint, // next traverse station, segment of a circle: next coordinate 30 NextObject, // next polygon in PolyPolygon 31 ForceEnd // forced end 32 }; 33 34 enum class SdrDragMode 35 { 36 Move, 37 Resize, 38 Rotate, 39 Mirror, 40 Shear, 41 Crook, 42 43 // new modes for interactive transparence and gradient tools 44 Transparence, 45 Gradient, 46 47 // new mode for interactive cropping of graphics 48 Crop 49 }; 50 51 52 53 /* 54 * Layer 55 */ 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 typedef o3tl::strong_int<sal_uInt8, struct SdrLayerIDTag> SdrLayerID; 60 61 // If there is no layer when it should be identified, then 62 // SdrLayerAdmin::GetLayerID(const String&) returns a value. 63 constexpr SdrLayerID SDRLAYER_NOTFOUND(0xff); 64 65 /* 66 * Repeat 67 */ 68 enum class SdrRepeatFunc { 69 NONE, 70 // with parameter 71 Move, // distance 72 Resize, // factor, reference(%) related to MarkRect 73 Rotate, // rotation angle, reference(%) related to MarkRect 74 // Without parameter 75 Delete, 76 CombinePolyPoly, 77 CombineOnePoly, 78 DismantlePolys, 79 DismantleLines, 80 ConvertToPoly, 81 ConvertToPath, 82 Group, 83 Ungroup, 84 PutToTop, 85 PutToBottom, 86 MoveToTop, 87 MoveToBottom, 88 ReverseOrder, 89 ImportMtf, 90 }; 91 92 #endif // INCLUDED_SVX_SVDTYPES_HXX 93 94 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 95