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