Line data Source code
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 :
21 : #define _SOT_FORMATS_INCLUDE_SYSTEMFORMATS
22 : #include <tools/solar.h>
23 :
24 : #include <sot/exchange.hxx>
25 : #include <sot/formats.hxx>
26 : #include "sot/filelist.hxx"
27 : #include <comphelper/classids.hxx>
28 :
29 : #include <tools/globname.hxx>
30 : #include <com/sun/star/datatransfer/DataFlavor.hpp>
31 : #include <com/sun/star/datatransfer/XTransferable.hpp>
32 :
33 : using namespace::com::sun::star::uno;
34 : using namespace::com::sun::star::datatransfer;
35 :
36 : struct SotAction_Impl
37 : {
38 : SotClipboardFormatId nFormatId; // Clipboard Id
39 : sal_uInt16 nAction; // Action Id
40 : sal_uInt8 nContextCheckId; // additional check of content in clipboard
41 : };
42 :
43 :
44 : // define a context check Id for every formatid
45 : #define FILEGRPDSC_ONLY_URL 1
46 :
47 : /*
48 : Fuer jedes Ziel existiert in der Tabelle genau ein SotDestinationEntry_Impl.
49 : Dieser Eintrag enthaelt u.a. fuer jedes vom Ziel auswertbare Format eine
50 : Default-Action. Die Default-Aktionen verweisen fuer jedes Format auf
51 : die auszuwertende Tabelle, d.h. sie enthalten nur EXCHG_IN_ACTION_MOVE,
52 : EXCHG_IN_ACTION_COPY oder EXCHG_IN_ACTION_LINK. Entsprechend dieser Aktion
53 : ist dann aMoveActions, aCopyActions oder aLinkActions auszuwerten.
54 : Die Aktionen sind nach Prioritaet sortiert, d.h. je "wichtiger" das
55 : Format ist, desto eher erscheint es in der Liste.
56 : */
57 :
58 : struct SotDestinationEntry_Impl
59 : {
60 : SotExchangeDest nDestination;
61 : const SotAction_Impl* aDefaultActions;
62 : const SotAction_Impl* aMoveActions;
63 : const SotAction_Impl* aCopyActions;
64 : const SotAction_Impl* aLinkActions;
65 : };
66 :
67 :
68 : /*
69 : Ueber diese Tabelle erfolgt die Zuordnung von Destination, vorhandenen
70 : Datenformaten sowie gewuenschter Aktion zu einer Aktion und dem in
71 : ihr zu benutzenden Datenformat. Die Tabelle ist nach den Exchange-Zielen
72 : (EXCHG_DEST_*) sortiert. Innerhalb des Zieleintrages befinden sich genau
73 : vier Tabellen fuer Default-, Move-, Copy- und Linkaktionen. Ueber
74 : die Default-Tabelle erfolgt das Mapping zwischen Default-Aktion
75 : (DropEvent::IsDefaultAction()) und daraus resultierender wirklicher
76 : Aktion. Diese Tabelle enthaelt deshalb nur die Aktionen
77 : EXCHG_IN_ACTION_COPY, EXCHG_IN_ACTION_MOVE und EXCHG_IN_ACTION_LINK,
78 : die auf die spezielle Tabelle verweisen. Die uebrigen Tabellen
79 : koennen beliebige Aktionen enthalten. Jede Tabelle ist nach der
80 : Format-Prioritaet sortiert. Eintrag Null hat die hoechste Prioritaet.
81 : */
82 :
83 : #define EXCHG_EMPYT_ARRAY \
84 : static SotAction_Impl const aEmptyArr[] = \
85 : { \
86 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
87 : };
88 :
89 : #define EXCHG_DEST_DOC_OLEOBJ_ARRAY \
90 : static SotAction_Impl const aEXCHG_DEST_DOC_OLEOBJ_Def[] = \
91 : { \
92 : { SotClipboardFormatId::INET_IMAGE, EXCHG_IN_ACTION_LINK, 0 }, \
93 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_LINK, 0 }, \
94 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK, 0 }, \
95 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK, 0 }, \
96 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_LINK, 0 }, \
97 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_LINK, FILEGRPDSC_ONLY_URL }, \
98 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_LINK, 0 }, \
99 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
100 : }; \
101 : static SotAction_Impl const aEXCHG_DEST_DOC_OLEOBJ_Move[] = \
102 : { \
103 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP, 0 }, \
104 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
105 : }; \
106 : static SotAction_Impl const aEXCHG_DEST_DOC_OLEOBJ_Link[] = \
107 : { \
108 : { SotClipboardFormatId::INET_IMAGE, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
109 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
110 : { SotClipboardFormatId::FILE_LIST, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
111 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
112 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 },\
113 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, FILEGRPDSC_ONLY_URL },\
114 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 },\
115 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP, 0 }, \
116 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
117 : };
118 :
119 : #define EXCHG_DEST_CHARTDOC_OLEOBJ_ARRAY \
120 : static SotAction_Impl const aEXCHG_DEST_CHARTDOC_OLEOBJ_Def[] = \
121 : { \
122 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK, 0 }, \
123 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK, 0 }, \
124 : { SotClipboardFormatId::INET_IMAGE, EXCHG_IN_ACTION_LINK, 0 }, \
125 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_LINK, 0 }, \
126 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_LINK, 0 }, \
127 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_LINK, FILEGRPDSC_ONLY_URL }, \
128 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_LINK, 0 }, \
129 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
130 : }; \
131 : static SotAction_Impl const aEXCHG_DEST_CHARTDOC_OLEOBJ_Move[] = \
132 : { \
133 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP, 0 }, \
134 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
135 : }; \
136 : static SotAction_Impl const aEXCHG_DEST_CHARTDOC_OLEOBJ_Link[] = \
137 : { \
138 : { SotClipboardFormatId::FILE_LIST, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
139 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
140 : { SotClipboardFormatId::INET_IMAGE, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
141 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 }, \
142 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 },\
143 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, FILEGRPDSC_ONLY_URL },\
144 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_INTERACTIVE, 0 },\
145 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP, 0 }, \
146 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
147 : };
148 :
149 : #define EXCHG_DEST_DOC_TEXTFRAME_ARRAY \
150 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_Def[] = \
151 : { \
152 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
153 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
154 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
155 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
156 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
157 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
158 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
159 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
160 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
161 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY, 0 }, \
162 : { SotClipboardFormatId::INET_IMAGE, EXCHG_IN_ACTION_COPY, 0 }, \
163 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY, 0 }, \
164 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 }, \
165 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
166 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
167 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
168 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
169 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
170 : { SotClipboardFormatId::SD_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
171 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_IN_ACTION_MOVE, 0 }, \
172 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_IN_ACTION_MOVE, 0 }, \
173 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
174 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
175 : { SotClipboardFormatId::LINK, EXCHG_IN_ACTION_MOVE, 0 }, \
176 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
177 : }; \
178 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_Move[] = \
179 : { \
180 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_MOVE, 0 }, \
181 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_MOVE, 0 },\
182 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
183 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
184 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
185 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
186 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
187 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
188 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
189 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
190 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
191 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
192 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
193 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
194 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
195 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
196 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
197 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
198 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
199 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE, 0 }, \
200 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
201 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
202 : }; \
203 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_Copy[] = \
204 : { \
205 : { SotClipboardFormatId::SBA_DATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
206 : { SotClipboardFormatId::SBA_CTRLDATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
207 : { SotClipboardFormatId::SBA_FIELDDATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
208 : { SotClipboardFormatId::XFORMS, EXCHG_IN_ACTION_COPY, 0 }, \
209 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
210 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
211 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 },\
212 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
213 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
214 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
215 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
216 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
217 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
218 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
219 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
220 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
221 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
222 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
223 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
224 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
225 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
226 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
227 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
228 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
229 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE, 0 }, \
230 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE, 0 }, \
231 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
232 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
233 : }; \
234 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_Link[] = \
235 : { \
236 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_LINK, 0 }, \
237 : { SotClipboardFormatId::SBA_DATAEXCHANGE, EXCHG_IN_ACTION_LINK, 0 }, \
238 : { SotClipboardFormatId::SBA_CTRLDATAEXCHANGE, EXCHG_IN_ACTION_LINK, 0 }, \
239 : { SotClipboardFormatId::SBA_FIELDDATAEXCHANGE, EXCHG_IN_ACTION_LINK, 0 }, \
240 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
241 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
242 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
243 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
244 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
245 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
246 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
247 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
248 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
249 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
250 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
251 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
252 : };
253 :
254 : #define EXCHG_DEST_DOC_TEXTFRAME_WEB_ARRAY \
255 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_WEB_Def[] = \
256 : { \
257 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
258 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
259 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
260 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
261 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
262 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
263 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
264 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
265 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY, 0 }, \
266 : { SotClipboardFormatId::INET_IMAGE, EXCHG_IN_ACTION_COPY, 0 }, \
267 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY, 0 }, \
268 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 }, \
269 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
270 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
271 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
272 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
273 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
274 : { SotClipboardFormatId::LINK, EXCHG_IN_ACTION_MOVE, 0 }, \
275 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
276 : }; \
277 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_WEB_Move[] = \
278 : { \
279 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_MOVE, 0 }, \
280 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_MOVE, 0 },\
281 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
282 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
283 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
284 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
285 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
286 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
287 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
288 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
289 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
290 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
291 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
292 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE, 0 }, \
293 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
294 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
295 : }; \
296 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_WEB_Copy[] = \
297 : { \
298 : { SotClipboardFormatId::SBA_DATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
299 : { SotClipboardFormatId::SBA_CTRLDATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
300 : { SotClipboardFormatId::SBA_FIELDDATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
301 : { SotClipboardFormatId::XFORMS, EXCHG_IN_ACTION_COPY, 0 }, \
302 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
303 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
304 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 },\
305 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
306 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
307 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
308 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
309 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
310 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
311 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
312 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
313 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
314 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
315 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
316 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
317 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE, 0 }, \
318 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
319 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
320 : }; \
321 : static SotAction_Impl const aEXCHG_DEST_DOC_TEXTFRAME_WEB_Link[] = \
322 : { \
323 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_LINK, 0 }, \
324 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
325 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
326 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
327 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
328 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
329 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
330 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
331 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
332 : };
333 :
334 : #define EXCHG_DEST_DOC_GRAPHOBJ_ARRAY \
335 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPHOBJ_Def[] = \
336 : { \
337 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
338 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
339 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
340 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
341 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
342 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
343 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
344 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
345 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
346 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
347 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
348 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
349 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
350 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
351 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
352 : }; \
353 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPHOBJ_Move[] = \
354 : { \
355 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
356 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
357 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
358 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
359 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
360 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
361 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
362 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
363 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
364 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
365 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
366 : }; \
367 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPHOBJ_Copy[] = \
368 : { \
369 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
370 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
371 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
372 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
373 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
374 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
375 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
376 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
377 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
378 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
379 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
380 : }; \
381 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPHOBJ_Link[] = \
382 : { \
383 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
384 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
385 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
386 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
387 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
388 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
389 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
390 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
391 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
392 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
393 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
394 : };
395 :
396 : #define EXCHG_DEST_DOC_LNKD_GRAPHOBJ_ARRAY \
397 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Def[] = \
398 : { \
399 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
400 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
401 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
402 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
403 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
404 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
405 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
406 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
407 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
408 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
409 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
410 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
411 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
412 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
413 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
414 : }; \
415 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Move[] =\
416 : { \
417 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
418 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
419 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
420 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
421 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
422 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
423 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
424 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
425 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
426 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
427 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
428 : }; \
429 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Copy[] =\
430 : { \
431 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
432 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
433 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
434 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
435 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
436 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
437 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
438 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
439 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
440 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
441 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
442 : }; \
443 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Link[] =\
444 : { \
445 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
446 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
447 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
448 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
449 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
450 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
451 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
452 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
453 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
454 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
455 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
456 : };
457 :
458 : #define EXCHG_DEST_DOC_GRAPH_W_IMAP_ARRAY \
459 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPH_W_IMAP_Def[] = \
460 : { \
461 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
462 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
463 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
464 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
465 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
466 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
467 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
468 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
469 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
470 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
471 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
472 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
473 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
474 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
475 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
476 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
477 : }; \
478 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPH_W_IMAP_Move[] = \
479 : { \
480 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
481 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
482 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
483 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
484 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
485 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
486 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
487 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
488 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
489 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
490 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
491 : }; \
492 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPH_W_IMAP_Copy[] = \
493 : { \
494 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
495 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
496 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
497 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
498 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
499 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
500 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
501 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
502 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
503 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
504 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
505 : }; \
506 : static SotAction_Impl const aEXCHG_DEST_DOC_GRAPH_W_IMAP_Link[] = \
507 : { \
508 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
509 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
510 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
511 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
512 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
513 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
514 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
515 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
516 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
517 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
518 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
519 : };
520 :
521 : #define EXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_ARRAY \
522 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Def[] =\
523 : { \
524 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
525 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
526 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
527 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
528 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
529 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
530 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
531 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
532 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
533 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
534 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
535 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
536 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
537 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
538 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
539 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
540 : }; \
541 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Move[] =\
542 : { \
543 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
544 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
545 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
546 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
547 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
548 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
549 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
550 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
551 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
552 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_REPLACE_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
553 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
554 : }; \
555 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Copy[] =\
556 : { \
557 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
558 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
559 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
560 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
561 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
562 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
563 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
564 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
565 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
566 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
567 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
568 : }; \
569 : static SotAction_Impl const aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Link[] =\
570 : { \
571 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
572 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
573 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
574 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
575 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
576 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
577 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
578 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
579 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
580 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
581 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
582 : };
583 :
584 :
585 : #define EXCHG_DEST_DOC_IMAPREGION_ARRAY \
586 : static SotAction_Impl const aEXCHG_DEST_DOC_IMAPREGION_Def[] = \
587 : { \
588 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
589 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
590 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
591 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
592 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
593 : }; \
594 : static SotAction_Impl const aEXCHG_DEST_DOC_IMAPREGION_Copy[] = \
595 : { \
596 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
597 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
598 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
599 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
600 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
601 : };
602 :
603 :
604 : #define EXCHG_DEST_DOC_DRAWOBJ_ARRAY \
605 : static SotAction_Impl const aEXCHG_DEST_DOC_DRAWOBJ_Def[] = \
606 : { \
607 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
608 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
609 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
610 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
611 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
612 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
613 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
614 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
615 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
616 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
617 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
618 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
619 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
620 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
621 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
622 : }; \
623 : static SotAction_Impl const aEXCHG_DEST_DOC_DRAWOBJ_Copy[] = \
624 : { \
625 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
626 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
627 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
628 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
629 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
630 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
631 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
632 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
633 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
634 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
635 : { static_cast<SotClipboardFormatId>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0 } \
636 : }; \
637 : static SotAction_Impl const aEXCHG_DEST_DOC_DRAWOBJ_Move[] = \
638 : { \
639 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
640 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
641 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
642 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
643 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
644 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
645 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
646 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
647 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
648 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
649 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
650 : }; \
651 : static SotAction_Impl const aEXCHG_DEST_DOC_DRAWOBJ_Link[] = \
652 : { \
653 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
654 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
655 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
656 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
657 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
658 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
659 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
660 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
661 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
662 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
663 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
664 : };
665 :
666 :
667 : #define EXCHG_DEST_DOC_URLBUTTON_ARRAY \
668 : static SotAction_Impl const aEXCHG_DEST_DOC_URLBUTTON_Def[] = \
669 : { \
670 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
671 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
672 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
673 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
674 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
675 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
676 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
677 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
678 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
679 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
680 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
681 : }; \
682 : static SotAction_Impl const aEXCHG_DEST_DOC_URLBUTTON_Move[] = \
683 : { \
684 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
685 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
686 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
687 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
688 : }; \
689 : static SotAction_Impl const aEXCHG_DEST_DOC_URLBUTTON_Copy[] = \
690 : { \
691 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
692 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
693 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
694 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
695 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
696 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
697 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
698 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
699 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
700 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
701 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
702 : };
703 :
704 :
705 : #define EXCHG_DEST_DOC_URLFIELD_ARRAY \
706 : static SotAction_Impl const aEXCHG_DEST_DOC_URLFIELD_Def[] = \
707 : { \
708 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
709 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
710 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
711 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
712 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
713 : }; \
714 : static SotAction_Impl const aEXCHG_DEST_DOC_URLFIELD_Copy[] = \
715 : { \
716 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
717 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
718 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
719 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
720 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
721 : }; \
722 : static SotAction_Impl const aEXCHG_DEST_DOC_URLFIELD_Link[] = \
723 : { \
724 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_HYPERLINK, 0 }, \
725 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
726 : };
727 :
728 : #define EXCHG_DEST_DOC_GROUPOBJ_ARRAY \
729 : static SotAction_Impl const aEXCHG_DEST_DOC_GROUPOBJ_Def[] = \
730 : { \
731 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
732 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
733 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
734 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
735 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
736 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
737 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
738 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
739 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
740 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
741 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
742 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
743 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
744 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
745 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
746 : }; \
747 : static SotAction_Impl const aEXCHG_DEST_DOC_GROUPOBJ_Move[] = \
748 : { \
749 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_REPLACE_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
750 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_REPLACE_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
751 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_REPLACE_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
752 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
753 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_REPLACE_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
754 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
755 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
756 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
757 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
758 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_REPLACE_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_KEEP_POSSIZE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
759 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
760 : }; \
761 : static SotAction_Impl const aEXCHG_DEST_DOC_GROUPOBJ_Copy[] = \
762 : { \
763 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
764 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
765 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
766 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
767 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP| EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
768 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
769 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
770 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
771 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_GRAPH | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
772 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
773 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
774 : }; \
775 : static SotAction_Impl const aEXCHG_DEST_DOC_GROUPOBJ_Link[] = \
776 : { \
777 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
778 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
779 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES| EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
780 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
781 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
782 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
783 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
784 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
785 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
786 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_GET_ATTRIBUTES | EXCHG_OUT_ACTION_FLAG_FILL | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
787 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
788 : };
789 :
790 :
791 : #define EXCHG_DEST_SWDOC_FREE_AREA_ARRAY \
792 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_Def[] = \
793 : { \
794 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 }, \
795 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
796 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
797 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
798 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
799 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY, 0 }, \
800 : { SotClipboardFormatId::SVIM, EXCHG_IN_ACTION_COPY, 0 }, \
801 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY, 0 }, \
802 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
803 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
804 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
805 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
806 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
807 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
808 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
809 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
810 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
811 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY, 0 }, \
812 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
813 : { SotClipboardFormatId::SD_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
814 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_IN_ACTION_MOVE, 0 }, \
815 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_IN_ACTION_MOVE, 0 }, \
816 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
817 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
818 : { SotClipboardFormatId::LINK, EXCHG_IN_ACTION_MOVE, 0 }, \
819 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
820 : }; \
821 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_Move[] = \
822 : { \
823 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_MOVE, 0 }, \
824 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_MOVE, 0 },\
825 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
826 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
827 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
828 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
829 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
830 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
831 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
832 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
833 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
834 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
835 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING, 0 }, \
836 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
837 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
838 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
839 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
840 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
841 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
842 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
843 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
844 : }; \
845 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_Copy[] = \
846 : { \
847 : { SotClipboardFormatId::SBA_DATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
848 : { SotClipboardFormatId::SBA_CTRLDATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
849 : { SotClipboardFormatId::SBA_FIELDDATAEXCHANGE, EXCHG_IN_ACTION_COPY, 0 }, \
850 : { SotClipboardFormatId::XFORMS, EXCHG_IN_ACTION_COPY, 0 }, \
851 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 },\
852 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
853 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
854 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
855 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
856 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
857 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
858 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
859 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
860 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
861 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
862 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
863 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
864 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
865 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
866 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
867 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
868 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
869 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
870 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
871 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
872 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
873 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
874 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
875 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
876 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
877 : }; \
878 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_Link[] = \
879 : { \
880 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_LINK, 0 }, \
881 : { SotClipboardFormatId::SBA_DATAEXCHANGE, EXCHG_IN_ACTION_LINK, 0 }, \
882 : { SotClipboardFormatId::SBA_CTRLDATAEXCHANGE, EXCHG_IN_ACTION_LINK, 0 }, \
883 : { SotClipboardFormatId::SBA_FIELDDATAEXCHANGE, EXCHG_IN_ACTION_LINK, 0 }, \
884 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK, 0 }, \
885 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
886 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
887 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
888 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
889 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
890 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
891 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
892 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
893 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
894 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
895 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
896 : };
897 :
898 : #define EXCHG_DEST_SWDOC_FREE_AREA_WEB_ARRAY \
899 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Def[] = \
900 : { \
901 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 }, \
902 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
903 : { SotClipboardFormatId::SOLK, EXCHG_IN_ACTION_COPY, 0 }, \
904 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
905 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
906 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
907 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY, 0 }, \
908 : { SotClipboardFormatId::SVIM, EXCHG_IN_ACTION_COPY, 0 }, \
909 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY, 0 }, \
910 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
911 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
912 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
913 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
914 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
915 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
916 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
917 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
918 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY, 0 }, \
919 : { SotClipboardFormatId::LINK, EXCHG_IN_ACTION_MOVE, 0 }, \
920 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
921 : }; \
922 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Move[] = \
923 : { \
924 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_MOVE, 0 }, \
925 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_MOVE, 0 },\
926 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
927 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
928 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
929 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
930 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
931 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
932 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING, 0 }, \
933 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
934 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
935 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
936 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
937 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
938 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
939 : }; \
940 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Copy[] = \
941 : { \
942 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 },\
943 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
944 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
945 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
946 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
947 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
948 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
949 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
950 : { SotClipboardFormatId::RTF, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
951 : { SotClipboardFormatId::NETSCAPE_IMAGE, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
952 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
953 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
954 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
955 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
956 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
957 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
958 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
959 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
960 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
961 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
962 : }; \
963 : static SotAction_Impl const aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Link[] = \
964 : { \
965 : { SotClipboardFormatId::SONLK, EXCHG_IN_ACTION_LINK, 0 }, \
966 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK, 0 }, \
967 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
968 : { SotClipboardFormatId::SOLK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
969 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
970 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
971 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
972 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
973 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
974 : };
975 :
976 :
977 : #define EXCHG_DEST_SCDOC_FREE_AREA_ARRAY \
978 : static SotAction_Impl const aEXCHG_DEST_SCDOC_FREE_AREA_Def[] = \
979 : { \
980 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 }, \
981 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
982 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
983 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
984 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
985 : { SotClipboardFormatId::SVIM, EXCHG_IN_ACTION_COPY, 0 }, \
986 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
987 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
988 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
989 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
990 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
991 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
992 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
993 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
994 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
995 : { SotClipboardFormatId::SD_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
996 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_IN_ACTION_MOVE, 0 }, \
997 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_IN_ACTION_MOVE, 0 }, \
998 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
999 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
1000 : { SotClipboardFormatId::LINK, EXCHG_IN_ACTION_MOVE, 0 }, \
1001 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1002 : }; \
1003 : static SotAction_Impl const aEXCHG_DEST_SCDOC_FREE_AREA_Move[] = \
1004 : { \
1005 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_MOVE, 0 },\
1006 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1007 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1008 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1009 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1010 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1011 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1012 : { SotClipboardFormatId::BIFF_5, EXCHG_IN_ACTION_MOVE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1013 : { SotClipboardFormatId::BIFF__5,EXCHG_IN_ACTION_MOVE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1014 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1015 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1016 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1017 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1018 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1019 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1020 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1021 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1022 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1023 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1024 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1025 : { SotClipboardFormatId::BIFF_8, EXCHG_IN_ACTION_MOVE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1026 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1027 : }; \
1028 : static SotAction_Impl const aEXCHG_DEST_SCDOC_FREE_AREA_Copy[] = \
1029 : { \
1030 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 },\
1031 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1032 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1033 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1034 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1035 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1036 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1037 : { SotClipboardFormatId::BIFF_5, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1038 : { SotClipboardFormatId::BIFF__5,EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1039 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1040 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1041 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1042 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1043 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1044 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1045 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1046 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1047 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
1048 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1049 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1050 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1051 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1052 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1053 : { SotClipboardFormatId::BIFF_8, EXCHG_IN_ACTION_COPY | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1054 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1055 : }; \
1056 : static SotAction_Impl const aEXCHG_DEST_SCDOC_FREE_AREA_Link[] = \
1057 : { \
1058 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK, 0 }, \
1059 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1060 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1061 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
1062 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1063 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1064 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1065 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1066 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1067 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1068 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1069 : };
1070 :
1071 :
1072 : #define EXCHG_DEST_SDDOC_FREE_AREA_ARRAY \
1073 : static SotAction_Impl const aEXCHG_DEST_SDDOC_FREE_AREA_Def[] = \
1074 : { \
1075 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 }, \
1076 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_COPY, 0 }, \
1077 : { SotClipboardFormatId::HTML, EXCHG_IN_ACTION_COPY, 0 }, \
1078 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_IN_ACTION_COPY, 0 }, \
1079 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_IN_ACTION_COPY, 0 }, \
1080 : { SotClipboardFormatId::SVIM, EXCHG_IN_ACTION_COPY, 0 }, \
1081 : { SotClipboardFormatId::STRING, EXCHG_IN_ACTION_COPY, 0 }, \
1082 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_IN_ACTION_COPY, 0 }, \
1083 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_IN_ACTION_COPY, FILEGRPDSC_ONLY_URL }, \
1084 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_IN_ACTION_COPY, 0 }, \
1085 : { SotClipboardFormatId::DRAWING, EXCHG_IN_ACTION_COPY, 0 }, \
1086 : { SotClipboardFormatId::SVXB, EXCHG_IN_ACTION_COPY, 0 }, \
1087 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_IN_ACTION_COPY, 0 }, \
1088 : { SotClipboardFormatId::PNG, EXCHG_IN_ACTION_COPY, 0 }, \
1089 : { SotClipboardFormatId::BITMAP, EXCHG_IN_ACTION_COPY, 0 }, \
1090 : { SotClipboardFormatId::SD_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
1091 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_IN_ACTION_MOVE, 0 }, \
1092 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_IN_ACTION_MOVE, 0 }, \
1093 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
1094 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_IN_ACTION_MOVE, 0 }, \
1095 : { SotClipboardFormatId::LINK, EXCHG_IN_ACTION_MOVE, 0 }, \
1096 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1097 : }; \
1098 : static SotAction_Impl const aEXCHG_DEST_SDDOC_FREE_AREA_Move[] = \
1099 : { \
1100 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_MOVE, 0 },\
1101 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1102 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1103 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1104 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1105 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1106 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1107 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1108 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1109 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1110 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1111 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1112 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1113 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1114 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1115 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1116 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1117 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1118 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1119 : }; \
1120 : static SotAction_Impl const aEXCHG_DEST_SDDOC_FREE_AREA_Copy[] = \
1121 : { \
1122 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_COPY, 0 },\
1123 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_OUT_ACTION_INSERT_FILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1124 : { SotClipboardFormatId::DRAWING, EXCHG_OUT_ACTION_INSERT_DRAWOBJ | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1125 : { SotClipboardFormatId::SVXB, EXCHG_OUT_ACTION_INSERT_SVXB | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1126 : { SotClipboardFormatId::SD_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1127 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1128 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1129 : { SotClipboardFormatId::GDIMETAFILE, EXCHG_OUT_ACTION_INSERT_GDIMETAFILE | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1130 : { SotClipboardFormatId::PNG, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1131 : { SotClipboardFormatId::BITMAP, EXCHG_OUT_ACTION_INSERT_BITMAP | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1132 : { SotClipboardFormatId::HTML, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1133 : { SotClipboardFormatId::HTML_NO_COMMENT, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1134 : { SotClipboardFormatId::HTML_SIMPLE, EXCHG_OUT_ACTION_INSERT_HTML | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1135 : { SotClipboardFormatId::STRING, EXCHG_OUT_ACTION_INSERT_STRING | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1136 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1137 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
1138 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1139 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1140 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1141 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1142 : { SotClipboardFormatId::SVIM, EXCHG_OUT_ACTION_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1143 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1144 : }; \
1145 : static SotAction_Impl const aEXCHG_DEST_SDDOC_FREE_AREA_Link[] = \
1146 : { \
1147 : { SotClipboardFormatId::FILE_LIST, EXCHG_IN_ACTION_LINK, 0 }, \
1148 : { SotClipboardFormatId::SIMPLE_FILE, EXCHG_IN_ACTION_LINK | EXCHG_OUT_ACTION_FLAG_INSERT_IMAGEMAP | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1149 : { SotClipboardFormatId::NETSCAPE_BOOKMARK, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1150 : { SotClipboardFormatId::FILEGRPDESCRIPTOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, FILEGRPDSC_ONLY_URL },\
1151 : { SotClipboardFormatId::UNIFORMRESOURCELOCATOR, EXCHG_OUT_ACTION_INSERT_HYPERLINK | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 },\
1152 : { SotClipboardFormatId::LINK, EXCHG_OUT_ACTION_INSERT_DDE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1153 : { SotClipboardFormatId::EMBED_SOURCE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1154 : { SotClipboardFormatId::EMBEDDED_OBJ, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1155 : { SotClipboardFormatId::EMBED_SOURCE_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1156 : { SotClipboardFormatId::EMBEDDED_OBJ_OLE, EXCHG_OUT_ACTION_INSERT_OLE | EXCHG_OUT_ACTION_FLAG_INSERT_TARGETURL, 0 }, \
1157 : { static_cast<SotClipboardFormatId>(0xffff), 0, 0 } \
1158 : };
1159 :
1160 :
1161 :
1162 : #define IMPL_DATA_ARRAY_1 \
1163 : EXCHG_EMPYT_ARRAY \
1164 : EXCHG_DEST_DOC_OLEOBJ_ARRAY \
1165 : EXCHG_DEST_CHARTDOC_OLEOBJ_ARRAY \
1166 : EXCHG_DEST_DOC_TEXTFRAME_ARRAY \
1167 : EXCHG_DEST_DOC_GRAPHOBJ_ARRAY \
1168 : EXCHG_DEST_DOC_LNKD_GRAPHOBJ_ARRAY \
1169 : EXCHG_DEST_DOC_TEXTFRAME_WEB_ARRAY
1170 :
1171 : #define IMPL_DATA_ARRAY_2 \
1172 : EXCHG_DEST_DOC_GRAPH_W_IMAP_ARRAY \
1173 : EXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_ARRAY \
1174 : EXCHG_DEST_DOC_IMAPREGION_ARRAY \
1175 : EXCHG_DEST_DOC_DRAWOBJ_ARRAY \
1176 : EXCHG_DEST_DOC_URLBUTTON_ARRAY \
1177 : EXCHG_DEST_DOC_URLFIELD_ARRAY \
1178 : EXCHG_DEST_DOC_GROUPOBJ_ARRAY \
1179 : EXCHG_DEST_SWDOC_FREE_AREA_ARRAY \
1180 : EXCHG_DEST_SCDOC_FREE_AREA_ARRAY \
1181 : EXCHG_DEST_SDDOC_FREE_AREA_ARRAY \
1182 : EXCHG_DEST_SWDOC_FREE_AREA_WEB_ARRAY \
1183 :
1184 : #define IMPL_DATA_ARRAY_3 \
1185 : static SotDestinationEntry_Impl const aDestinationArray[] = \
1186 : { \
1187 : { SotExchangeDest::DOC_OLEOBJ, \
1188 : aEXCHG_DEST_DOC_OLEOBJ_Def, \
1189 : aEXCHG_DEST_DOC_OLEOBJ_Move, \
1190 : aEmptyArr, \
1191 : aEXCHG_DEST_DOC_OLEOBJ_Link \
1192 : }, \
1193 : { SotExchangeDest::CHARTDOC_OLEOBJ, \
1194 : aEXCHG_DEST_CHARTDOC_OLEOBJ_Def, \
1195 : aEXCHG_DEST_CHARTDOC_OLEOBJ_Move, \
1196 : aEmptyArr, \
1197 : aEXCHG_DEST_CHARTDOC_OLEOBJ_Link \
1198 : }, \
1199 : { SotExchangeDest::DOC_TEXTFRAME, \
1200 : aEXCHG_DEST_DOC_TEXTFRAME_Def, \
1201 : aEXCHG_DEST_DOC_TEXTFRAME_Move, \
1202 : aEXCHG_DEST_DOC_TEXTFRAME_Copy, \
1203 : aEXCHG_DEST_DOC_TEXTFRAME_Link \
1204 : }, \
1205 : { SotExchangeDest::DOC_GRAPHOBJ, \
1206 : aEXCHG_DEST_DOC_GRAPHOBJ_Def, \
1207 : aEXCHG_DEST_DOC_GRAPHOBJ_Move, \
1208 : aEXCHG_DEST_DOC_GRAPHOBJ_Copy, \
1209 : aEXCHG_DEST_DOC_GRAPHOBJ_Link \
1210 : }, \
1211 : { SotExchangeDest::DOC_LNKD_GRAPHOBJ, \
1212 : aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Def, \
1213 : aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Move, \
1214 : aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Copy, \
1215 : aEXCHG_DEST_DOC_LNKD_GRAPHOBJ_Link \
1216 : }, \
1217 : { SotExchangeDest::DOC_GRAPH_W_IMAP, \
1218 : aEXCHG_DEST_DOC_GRAPH_W_IMAP_Def, \
1219 : aEXCHG_DEST_DOC_GRAPH_W_IMAP_Move, \
1220 : aEXCHG_DEST_DOC_GRAPH_W_IMAP_Copy, \
1221 : aEXCHG_DEST_DOC_GRAPH_W_IMAP_Link \
1222 : }, \
1223 : { SotExchangeDest::DOC_LNKD_GRAPH_W_IMAP, \
1224 : aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Def, \
1225 : aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Move, \
1226 : aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Copy, \
1227 : aEXCHG_DEST_DOC_LNKD_GRAPH_W_IMAP_Link \
1228 : }, \
1229 : { SotExchangeDest::DOC_IMAPREGION, \
1230 : aEXCHG_DEST_DOC_IMAPREGION_Def, \
1231 : aEXCHG_DEST_DOC_IMAPREGION_Copy, \
1232 : aEmptyArr, \
1233 : aEmptyArr \
1234 : }, \
1235 : { SotExchangeDest::DOC_DRAWOBJ, \
1236 : aEXCHG_DEST_DOC_DRAWOBJ_Def, \
1237 : aEXCHG_DEST_DOC_DRAWOBJ_Copy, \
1238 : aEXCHG_DEST_DOC_DRAWOBJ_Move, \
1239 : aEXCHG_DEST_DOC_DRAWOBJ_Link \
1240 : }, \
1241 : { SotExchangeDest::DOC_URLBUTTON, \
1242 : aEXCHG_DEST_DOC_URLBUTTON_Def, \
1243 : aEXCHG_DEST_DOC_URLBUTTON_Move, \
1244 : aEXCHG_DEST_DOC_URLBUTTON_Copy, \
1245 : aEmptyArr \
1246 : }, \
1247 : { SotExchangeDest::DOC_URLFIELD, \
1248 : aEXCHG_DEST_DOC_URLFIELD_Def, \
1249 : aEmptyArr, \
1250 : aEXCHG_DEST_DOC_URLFIELD_Copy, \
1251 : aEXCHG_DEST_DOC_URLFIELD_Link \
1252 : }, \
1253 : { SotExchangeDest::DOC_GROUPOBJ, \
1254 : aEXCHG_DEST_DOC_GROUPOBJ_Def, \
1255 : aEXCHG_DEST_DOC_GROUPOBJ_Move, \
1256 : aEXCHG_DEST_DOC_GROUPOBJ_Copy, \
1257 : aEXCHG_DEST_DOC_GROUPOBJ_Link \
1258 : }, \
1259 : { SotExchangeDest::SWDOC_FREE_AREA, \
1260 : aEXCHG_DEST_SWDOC_FREE_AREA_Def, \
1261 : aEXCHG_DEST_SWDOC_FREE_AREA_Move, \
1262 : aEXCHG_DEST_SWDOC_FREE_AREA_Copy, \
1263 : aEXCHG_DEST_SWDOC_FREE_AREA_Link \
1264 : }, \
1265 : { SotExchangeDest::SCDOC_FREE_AREA, \
1266 : aEXCHG_DEST_SCDOC_FREE_AREA_Def, \
1267 : aEXCHG_DEST_SCDOC_FREE_AREA_Move, \
1268 : aEXCHG_DEST_SCDOC_FREE_AREA_Copy, \
1269 : aEXCHG_DEST_SCDOC_FREE_AREA_Link \
1270 : }, \
1271 : { SotExchangeDest::SDDOC_FREE_AREA, \
1272 : aEXCHG_DEST_SDDOC_FREE_AREA_Def, \
1273 : aEXCHG_DEST_SDDOC_FREE_AREA_Move, \
1274 : aEXCHG_DEST_SDDOC_FREE_AREA_Copy, \
1275 : aEXCHG_DEST_SDDOC_FREE_AREA_Link \
1276 : }, \
1277 : { SotExchangeDest::DOC_TEXTFRAME_WEB, \
1278 : aEXCHG_DEST_DOC_TEXTFRAME_WEB_Def, \
1279 : aEXCHG_DEST_DOC_TEXTFRAME_WEB_Move, \
1280 : aEXCHG_DEST_DOC_TEXTFRAME_WEB_Copy, \
1281 : aEXCHG_DEST_DOC_TEXTFRAME_WEB_Link \
1282 : }, \
1283 : { SotExchangeDest::SWDOC_FREE_AREA_WEB, \
1284 : aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Def, \
1285 : aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Move, \
1286 : aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Copy, \
1287 : aEXCHG_DEST_SWDOC_FREE_AREA_WEB_Link \
1288 : }, \
1289 : { \
1290 : static_cast<SotExchangeDest>(static_cast<SotClipboardFormatId>(0xffff)), 0, 0, 0, 0 \
1291 : } \
1292 : };
1293 :
1294 :
1295 :
1296 :
1297 :
1298 : // - new style GetExchange methods -
1299 :
1300 :
1301 0 : bool IsFormatSupported( const DataFlavorExVector& rDataFlavorExVector, SotClipboardFormatId nId )
1302 : {
1303 0 : DataFlavorExVector::iterator aIter( ( (DataFlavorExVector&) rDataFlavorExVector ).begin() );
1304 0 : DataFlavorExVector::iterator aEnd( ( (DataFlavorExVector&) rDataFlavorExVector ).end() );
1305 0 : bool bRet = false;
1306 :
1307 0 : while( aIter != aEnd )
1308 : {
1309 0 : if( nId == (*aIter++).mnSotId )
1310 : {
1311 0 : bRet = true;
1312 0 : aIter = aEnd;
1313 : }
1314 : }
1315 :
1316 0 : return bRet;
1317 : }
1318 :
1319 :
1320 :
1321 0 : static bool CheckTransferableContext_Impl( const Reference< XTransferable >* pxTransferable, const SotAction_Impl& rEntry )
1322 : {
1323 0 : DataFlavor aFlavor;
1324 0 : bool bRet = true;
1325 :
1326 : try
1327 : {
1328 0 : if( pxTransferable && (*pxTransferable).is() &&
1329 0 : SotExchange::GetFormatDataFlavor( SotClipboardFormatId::FILEGRPDESCRIPTOR, aFlavor ) &&
1330 0 : (*pxTransferable)->isDataFlavorSupported( aFlavor ) )
1331 : {
1332 : #ifdef WNT
1333 : switch( rEntry.nContextCheckId )
1334 : {
1335 : case FILEGRPDSC_ONLY_URL:
1336 : {
1337 : bRet = false;
1338 :
1339 : if( SotExchange::GetFormatDataFlavor( SotClipboardFormatId::FILECONTENT, aFlavor ) &&
1340 : (*pxTransferable)->isDataFlavorSupported( aFlavor ) &&
1341 : SotExchange::GetFormatDataFlavor( rEntry.nFormatId, aFlavor ) &&
1342 : (*pxTransferable)->isDataFlavorSupported( aFlavor ) )
1343 : {
1344 : Any aAny( (*pxTransferable)->getTransferData( aFlavor ) );
1345 :
1346 : if( aAny.hasValue() )
1347 : {
1348 : Sequence< sal_Int8 > aSeq; aAny >>= aSeq;
1349 :
1350 : if( aSeq.getLength() )
1351 : {
1352 : FILEGROUPDESCRIPTOR* pFDesc = (FILEGROUPDESCRIPTOR*) aSeq.getConstArray();
1353 :
1354 : if( pFDesc->cItems )
1355 : {
1356 : OString sDesc( pFDesc->fgd[ 0 ].cFileName );
1357 : bRet = 4 < sDesc.getLength() && sDesc.copy(sDesc.getLength()-4).equalsIgnoreAsciiCase(".URL");
1358 : }
1359 : }
1360 : }
1361 : }
1362 : }
1363 : break;
1364 : }
1365 : #else
1366 : (void) rEntry; // avoid warnings
1367 : #endif
1368 : }
1369 : }
1370 0 : catch( const UnsupportedFlavorException& )
1371 : {
1372 : }
1373 0 : catch( const RuntimeException& )
1374 : {
1375 : }
1376 :
1377 :
1378 0 : return bRet;
1379 : }
1380 :
1381 :
1382 :
1383 6 : static sal_uInt16 GetTransferableAction_Impl(
1384 : const DataFlavorExVector& rDataFlavorExVector,
1385 : const SotAction_Impl* pArray,
1386 : SotClipboardFormatId& rFormat,
1387 : SotClipboardFormatId nOnlyTestFormat,
1388 : const Reference< XTransferable >* pxTransferable )
1389 : {
1390 : try
1391 : {
1392 6 : if( rDataFlavorExVector.size() )
1393 : {
1394 0 : DataFlavor aFlavor;
1395 0 : const SotAction_Impl* pArrayStart = pArray;
1396 0 : SotClipboardFormatId nId = pArray->nFormatId;
1397 :
1398 0 : while( nId != static_cast<SotClipboardFormatId>(0xffff) )
1399 : {
1400 0 : rFormat = nId;
1401 :
1402 0 : if( ( nOnlyTestFormat == SotClipboardFormatId::NONE || nOnlyTestFormat == nId ) &&
1403 0 : IsFormatSupported( rDataFlavorExVector, nId ) &&
1404 0 : ( !pArray->nContextCheckId || CheckTransferableContext_Impl( pxTransferable, *pArray ) ) )
1405 : {
1406 0 : if( pxTransferable && (*pxTransferable).is() && ( SotClipboardFormatId::FILE_LIST == rFormat ) )
1407 : {
1408 0 : if( IsFormatSupported( rDataFlavorExVector, SotClipboardFormatId::SIMPLE_FILE ) )
1409 : {
1410 0 : DataFlavor aFileListFlavor;
1411 0 : SotExchange::GetFormatDataFlavor( SotClipboardFormatId::FILE_LIST, aFileListFlavor );
1412 0 : Any aAny( (*pxTransferable)->getTransferData( aFileListFlavor ) );
1413 :
1414 0 : if( aAny.hasValue() )
1415 : {
1416 0 : Sequence< sal_Int8 > aSeq; aAny >>= aSeq;
1417 0 : SvMemoryStream aMemStm( const_cast<sal_Int8 *>(aSeq.getConstArray()), aSeq.getLength(), StreamMode::READ );
1418 0 : FileList aFileList;
1419 :
1420 0 : ReadFileList( aMemStm, aFileList );
1421 :
1422 0 : if( !aMemStm.GetError() && ( aFileList.Count() == 1 ) )
1423 : {
1424 0 : const SotAction_Impl* pCur = pArrayStart;
1425 :
1426 0 : while( pCur->nFormatId != static_cast<SotClipboardFormatId>(0xffff) )
1427 : {
1428 0 : if( pCur->nFormatId == SotClipboardFormatId::SIMPLE_FILE )
1429 : {
1430 0 : rFormat = SotClipboardFormatId::SIMPLE_FILE;
1431 0 : return pCur->nAction;
1432 : }
1433 0 : pCur++;
1434 : }
1435 0 : }
1436 0 : }
1437 : }
1438 : }
1439 0 : return pArray->nAction;
1440 : }
1441 0 : pArray++;
1442 0 : nId = pArray->nFormatId;
1443 0 : }
1444 : }
1445 : }
1446 0 : catch( const UnsupportedFlavorException& )
1447 : {
1448 : }
1449 0 : catch( const RuntimeException& )
1450 : {
1451 : }
1452 :
1453 6 : return EXCHG_INOUT_ACTION_NONE;
1454 : }
1455 :
1456 :
1457 :
1458 3 : sal_uInt16 SotExchange::GetExchangeAction( const DataFlavorExVector& rDataFlavorExVector,
1459 : SotExchangeDest nDestination,
1460 : sal_uInt16 nSourceOptions,
1461 : sal_uInt16 nUserAction,
1462 : SotClipboardFormatId& rFormat,
1463 : sal_uInt16& rDefaultAction,
1464 : SotClipboardFormatId nOnlyTestFormat,
1465 : const Reference< XTransferable >* pxTransferable )
1466 : {
1467 : // hier wird jetzt die oben definierte Tabelle "implementiert"
1468 : IMPL_DATA_ARRAY_1;
1469 : IMPL_DATA_ARRAY_2;
1470 : IMPL_DATA_ARRAY_3;
1471 :
1472 3 : rFormat = SotClipboardFormatId::STRING;
1473 :
1474 : //Todo: Binaere Suche einbauen
1475 3 : const SotDestinationEntry_Impl* pEntry = aDestinationArray;
1476 45 : while( static_cast<SotExchangeDest>(static_cast<SotClipboardFormatId>(0xffff)) != pEntry->nDestination )
1477 : {
1478 42 : if( pEntry->nDestination == nDestination )
1479 3 : break;
1480 39 : ++pEntry;
1481 : }
1482 :
1483 3 : if( static_cast<SotExchangeDest>(static_cast<SotClipboardFormatId>(0xffff)) == pEntry->nDestination )
1484 : {
1485 0 : return EXCHG_INOUT_ACTION_NONE;
1486 : }
1487 :
1488 3 : nUserAction &= EXCHG_ACTION_MASK;
1489 3 : rFormat = SotClipboardFormatId::NONE;
1490 :
1491 : /* Behandlung der Default-Action nach folgender Vorgehensweise:
1492 :
1493 : - Das Ziel wird nach der Default-Action gefragt
1494 : - Unterstuetzt die Quelle diese Aktion so wird sie uebernommen
1495 : - Anderenfalls wird aus den von der Quelle zur Verfuegung gestellten
1496 : Aktionen eine ausgewaehlt, die zu einer moeglichst nicht leeren
1497 : Ergebnisaktion fuehrt. Hierbei wird in dieser Reihenfolge
1498 : vorgegangen: Copy -> Link -> Move
1499 : */
1500 3 : if( nUserAction == EXCHG_IN_ACTION_DEFAULT )
1501 : {
1502 : nUserAction = GetTransferableAction_Impl(
1503 : rDataFlavorExVector, pEntry->aDefaultActions,
1504 3 : rFormat, nOnlyTestFormat, pxTransferable );
1505 : // Unterstuetzt die Quelle die Aktion?
1506 3 : if( !(nUserAction & nSourceOptions ))
1507 : {
1508 : // Nein -> Alle Aktionen der Quelle checken
1509 3 : rDefaultAction = (EXCHG_IN_ACTION_COPY & nSourceOptions);
1510 3 : if( rDefaultAction )
1511 : {
1512 : nUserAction = GetTransferableAction_Impl(
1513 : rDataFlavorExVector, pEntry->aCopyActions,
1514 3 : rFormat, nOnlyTestFormat, pxTransferable );
1515 3 : if ( nUserAction )
1516 0 : return nUserAction;
1517 : }
1518 3 : rDefaultAction = (EXCHG_IN_ACTION_LINK & nSourceOptions);
1519 3 : if( rDefaultAction )
1520 : {
1521 : nUserAction = GetTransferableAction_Impl(
1522 : rDataFlavorExVector, pEntry->aLinkActions,
1523 0 : rFormat, nOnlyTestFormat, pxTransferable );
1524 0 : if ( nUserAction )
1525 0 : return nUserAction;
1526 : }
1527 3 : rDefaultAction = (EXCHG_IN_ACTION_MOVE & nSourceOptions);
1528 3 : if( rDefaultAction )
1529 : {
1530 : nUserAction = GetTransferableAction_Impl(
1531 : rDataFlavorExVector, pEntry->aMoveActions,
1532 0 : rFormat, nOnlyTestFormat, pxTransferable );
1533 0 : if ( nUserAction )
1534 0 : return nUserAction;
1535 : }
1536 3 : rDefaultAction = 0;
1537 3 : return 0;
1538 : }
1539 0 : rDefaultAction = nUserAction;
1540 : }
1541 : else
1542 0 : rDefaultAction = nUserAction;
1543 :
1544 0 : switch( nUserAction )
1545 : {
1546 : case EXCHG_IN_ACTION_MOVE:
1547 : nUserAction = GetTransferableAction_Impl(
1548 : rDataFlavorExVector, pEntry->aMoveActions,
1549 0 : rFormat, nOnlyTestFormat, pxTransferable );
1550 0 : break;
1551 :
1552 : case EXCHG_IN_ACTION_COPY:
1553 : nUserAction = GetTransferableAction_Impl(
1554 : rDataFlavorExVector, pEntry->aCopyActions,
1555 0 : rFormat, nOnlyTestFormat, pxTransferable );
1556 0 : break;
1557 :
1558 : case EXCHG_IN_ACTION_LINK:
1559 : nUserAction = GetTransferableAction_Impl(
1560 : rDataFlavorExVector, pEntry->aLinkActions,
1561 0 : rFormat, nOnlyTestFormat, pxTransferable );
1562 0 : break;
1563 :
1564 : default:
1565 0 : nUserAction = EXCHG_INOUT_ACTION_NONE;
1566 : }
1567 0 : return nUserAction;
1568 : }
1569 :
1570 :
1571 :
1572 55 : sal_uInt16 SotExchange::IsChart( const SvGlobalName& rName )
1573 : {
1574 55 : sal_uInt16 nRet=0;
1575 : // if ( rName == SvGlobalName( SO3_SCH_CLASSID_8 ) )
1576 : // nRet = SOFFICE_FILEFORMAT_8;
1577 : // else
1578 55 : if ( rName == SvGlobalName( SO3_SCH_CLASSID_60 ) )
1579 37 : nRet = SOFFICE_FILEFORMAT_60;
1580 18 : else if ( rName == SvGlobalName( SO3_SCH_CLASSID_50 ) )
1581 0 : nRet = SOFFICE_FILEFORMAT_50;
1582 18 : else if ( rName == SvGlobalName( SO3_SCH_CLASSID_40 ) )
1583 0 : nRet = SOFFICE_FILEFORMAT_40;
1584 18 : else if ( rName == SvGlobalName( SO3_SCH_CLASSID_30 ) )
1585 0 : nRet = SOFFICE_FILEFORMAT_31;
1586 :
1587 55 : return nRet;
1588 : }
1589 :
1590 532 : sal_uInt16 SotExchange::IsMath( const SvGlobalName& rName )
1591 : {
1592 532 : sal_uInt16 nRet=0;
1593 : // if ( rName == SvGlobalName( SO3_SM_CLASSID_8 ) )
1594 : // nRet = SOFFICE_FILEFORMAT_8;
1595 : // else
1596 532 : if ( rName == SvGlobalName( SO3_SM_CLASSID_60 ) )
1597 382 : nRet = SOFFICE_FILEFORMAT_60;
1598 150 : else if ( rName == SvGlobalName( SO3_SM_CLASSID_50 ) )
1599 0 : nRet = SOFFICE_FILEFORMAT_50;
1600 150 : else if ( rName == SvGlobalName( SO3_SM_CLASSID_40 ) )
1601 0 : nRet = SOFFICE_FILEFORMAT_40;
1602 150 : else if ( rName == SvGlobalName( SO3_SM_CLASSID_30 ) )
1603 0 : nRet = SOFFICE_FILEFORMAT_31;
1604 :
1605 532 : return nRet;
1606 : }
1607 :
1608 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|