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