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