xref: /AOO41X/main/svx/inc/svx/svdtypes.hxx (revision 3334a7e6acdae9820fa1a6f556bb10129a8de6b2)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef _SVDTYPES_HXX
25 #define _SVDTYPES_HXX
26 
27 #include <tools/solar.h>
28 
29 ////////////////////////////////////////////////////////////////////////////////////////////////////
30 //  @@@@  @@@@@  @@@@@    @@@@  @@@@@  @@@@@@ @@@@@  @@@@  @@@@@@
31 // @@  @@ @@  @@ @@  @@  @@  @@ @@  @@     @@ @@    @@  @@   @@
32 // @@     @@  @@ @@  @@  @@  @@ @@  @@     @@ @@    @@       @@
33 //  @@@@  @@  @@ @@@@@   @@  @@ @@@@@      @@ @@@@  @@       @@
34 //     @@ @@  @@ @@  @@  @@  @@ @@  @@     @@ @@    @@       @@
35 // @@  @@ @@  @@ @@  @@  @@  @@ @@  @@ @@  @@ @@    @@  @@   @@
36 //  @@@@  @@@@@  @@  @@   @@@@  @@@@@   @@@@  @@@@@  @@@@    @@
37 ////////////////////////////////////////////////////////////////////////////////////////////////////
38 
39 const sal_uInt32 SdrInventor=sal_uInt32('S')*0x00000001+
40                          sal_uInt32('V')*0x00000100+
41                          sal_uInt32('D')*0x00010000+
42                          sal_uInt32('r')*0x01000000;
43 
44 // Kommandos fuer EndCreate()
45 enum SdrCreateCmd {SDRCREATE_NEXTPOINT,     // Naechster Polygonpunkt, Kreissegment: Naechste Koordinate
46                    SDRCREATE_NEXTOBJECT,    // Naechstes Polygon im PolyPolygon
47                    SDRCREATE_FORCEEND};     // Ende erzwungen
48 
49 enum SdrDragMode
50 {
51     SDRDRAG_MOVE,       // Verschieben
52     SDRDRAG_RESIZE,     // Groesse aendern
53     SDRDRAG_ROTATE,     // Drehen
54     SDRDRAG_MIRROR,     // Spiegeln
55     SDRDRAG_SHEAR,      // Schraegstellen
56     SDRDRAG_CROOK,      // Kreisfoermig verbiegen
57     SDRDRAG_DISTORT,    // Freies verzerren (Rect in beliebiges Viereck transformieren)
58 
59     // new modes for interactive transparence and gradient tools
60     SDRDRAG_TRANSPARENCE,
61     SDRDRAG_GRADIENT,
62 
63     // new mode for interactive cropping of graphics
64     SDRDRAG_CROP
65 };
66 
67 
68 // fuer SdrObject::ConvertToPoly()
69 enum SdrConvertType {SDRCONVERT_POLY,   // reines Polygon erzeugen
70                      SDRCONVERT_BEZIER, // alles Beziersegmente
71                      SDRCONVERT_MIXED}; // Gemischtes Objekt (optimal)
72 
73 ////////////////////////////////////////////////////////////////////////////////////////////////////
74 //  @@     @@@@  @@  @@ @@@@@ @@@@@
75 //  @@    @@  @@ @@  @@ @@    @@  @@
76 //  @@    @@  @@ @@  @@ @@    @@  @@
77 //  @@    @@@@@@  @@@@  @@@@  @@@@@
78 //  @@    @@  @@   @@   @@    @@  @@
79 //  @@    @@  @@   @@   @@    @@  @@
80 //  @@@@@ @@  @@   @@   @@@@@ @@  @@
81 ////////////////////////////////////////////////////////////////////////////////////////////////////
82 
83 ////////////////////////////////////////////////////////////////////////////////////////////////////
84 // Bei der Identifikation eines Layer kann es vorkommen, das dieser nicht
85 // vorhanden ist. SdrLayerAdmin::GetLayerID(const String&) liefert
86 // dann diesen Wert:
87 #define SDRLAYER_NOTFOUND 0xFF
88 // Man kann diesen Wert jodoch ohne Bedenken den Methoden des SdrLayerSet
89 // zuwerfen, bekommt dann jedoch immer sal_False, bzw. tut die Methode nix.
90 ////////////////////////////////////////////////////////////////////////////////////////////////////
91 // Typdeklaration fuer Layer-IDs
92 typedef sal_uInt8 SdrLayerID;
93 ////////////////////////////////////////////////////////////////////////////////////////////////////
94 
95 ////////////////////////////////////////////////////////////////////////////////////////////////////
96 // @@@@@   @@@@   @@@@  @@@@@         @@@@  @@@@@  @@@@@@ @@    @@  @@@@  @@@@@@
97 // @@  @@ @@  @@ @@  @@ @@           @@  @@ @@  @@     @@ @@    @@ @@  @@   @@
98 // @@  @@ @@  @@ @@     @@      @@   @@  @@ @@  @@     @@ @@    @@ @@       @@
99 // @@@@@  @@@@@@ @@ @@@ @@@@   @@@@  @@  @@ @@@@@      @@ @@    @@  @@@@    @@
100 // @@     @@  @@ @@  @@ @@      @@   @@  @@ @@  @@     @@ @@    @@     @@   @@
101 // @@     @@  @@ @@  @@ @@           @@  @@ @@  @@ @@  @@ @@    @@ @@  @@   @@
102 // @@     @@  @@  @@@@@ @@@@@         @@@@  @@@@@   @@@@  @@@@@ @@  @@@@    @@
103 ////////////////////////////////////////////////////////////////////////////////////////////////////
104 enum SdrObjListKind {SDROBJLIST_UNKNOWN    =0x00,    // Unbekannt
105                      // reine Objektlisten:
106                      SDROBJLIST_GROUPOBJ   =0x01,    // Objektliste eines Gruppenobjekts
107                      SDROBJLIST_VIRTOBJECTS=0x02,    // Liste ist die Liste der virtuellen Objekte
108                      SDROBJLIST_SYMBOLTABLE=0x03,    // Liste ist die Symboltabelle
109                      // Hier haben zur Not noch 12 weitere Listentypen Platz
110                      // Pages:
111                      SDROBJLIST_DRAWPAGE   =0x10,    // Liste ist eine Zeichenseite
112                      SDROBJLIST_MASTERPAGE =0x11    // Liste ist eine Masterpage
113                      // Hier haben zur Not noch 8 weitere Pagetypen Platz
114 };   // fuer die Surrogate reserviert
115 
SdrIsPageKind(SdrObjListKind eK)116 inline FASTBOOL SdrIsPageKind(SdrObjListKind eK) { return eK>=SDROBJLIST_DRAWPAGE && eK<=0x1A; }
117 ////////////////////////////////////////////////////////////////////////////////////////////////////
118 
119 ////////////////////////////////////////////////////////////////////////////////////////////////////
120 //  @@@@@  @@@@@ @@@@@  @@@@@  @@@@  @@@@@@
121 //  @@  @@ @@    @@  @@ @@    @@  @@   @@
122 //  @@  @@ @@    @@  @@ @@    @@  @@   @@
123 //  @@@@@  @@@@  @@@@@  @@@@  @@@@@@   @@
124 //  @@  @@ @@    @@     @@    @@  @@   @@
125 //  @@  @@ @@    @@     @@    @@  @@   @@
126 //  @@  @@ @@@@@ @@     @@@@@ @@  @@   @@
127 ////////////////////////////////////////////////////////////////////////////////////////////////////
128 
129 enum SdrRepeatFunc {SDRREPFUNC_OBJ_NONE,
130                     // Mit Parameter
131                     SDRREPFUNC_OBJ_MOVE,         // Distanz
132                     SDRREPFUNC_OBJ_RESIZE,       // Faktor, Referenz(%) bezogen auf MarkRect
133                     SDRREPFUNC_OBJ_SETSNAPRECT,  // Rectangle
134                     SDRREPFUNC_OBJ_SETLOGICRECT, // Rectangle
135                     SDRREPFUNC_OBJ_ROTATE,       // Drehwinkel, Referenz(%) bezogen auf MarkRect
136                     SDRREPFUNC_OBJ_SHEAR,        // Winkel,Faktor, Referenz(%) bezogen auf MarkRect
137                     SDRREPFUNC_OBJ_CROOKROTATE,
138                     SDRREPFUNC_OBJ_CROOKSLANT,
139                     SDRREPFUNC_OBJ_CROOKSTRETCH,
140                     SDRREPFUNC_OBJ_ALIGN,        // Hor/Vert/bBound
141                     SDRREPFUNC_OBJ_SETATTRIBUTES,// ItemSet
142                     SDRREPFUNC_OBJ_SETSTYLESHEET,// StyleSheet*
143                     // Ohne Parameter
144                     SDRREPFUNC_OBJ_DELETE,
145                     SDRREPFUNC_OBJ_COMBINE_POLYPOLY,
146                     SDRREPFUNC_OBJ_COMBINE_ONEPOLY,
147                     SDRREPFUNC_OBJ_DISMANTLE_POLYS,
148                     SDRREPFUNC_OBJ_DISMANTLE_LINES,
149                     SDRREPFUNC_OBJ_CONVERTTOPOLY,
150                     SDRREPFUNC_OBJ_CONVERTTOPATH,
151                     SDRREPFUNC_OBJ_GROUP,
152                     SDRREPFUNC_OBJ_UNGROUP,
153                     SDRREPFUNC_OBJ_PUTTOTOP,
154                     SDRREPFUNC_OBJ_PUTTOBTM,
155                     SDRREPFUNC_OBJ_MOVTOTOP,
156                     SDRREPFUNC_OBJ_MOVTOBTM,
157                     SDRREPFUNC_OBJ_REVORDER,
158                     SDRREPFUNC_OBJ_IMPORTMTF,
159                     SDRREPFUNC_PAGE_DELETE,
160                     SDRREPFUNC_LAST};
161 
162 ////////////////////////////////////////////////////////////////////////////////////////////////////
163 
164 #endif //_SVDTYPES_HXX
165 
166