Adobe.com
Contents Suites Classes Class Index Member Index

AIClipboard.h

Go to the documentation of this file.
00001 #ifndef __AIClipboard__
00002 #define __AIClipboard__
00003 
00004 /*
00005  *        Name: AIClipboard.h
00006  *   $Revision: 1 $
00007  *      Author:
00008  *        Date:
00009  *     Purpose: Adobe Illustrator Clipboard Suite.
00010  *
00011  * ADOBE SYSTEMS INCORPORATED
00012  * Copyright 1986-2015 Adobe Systems Incorporated.
00013  * All rights reserved.
00014  *
00015  * NOTICE:  Adobe permits you to use, modify, and distribute this file 
00016  * in accordance with the terms of the Adobe license agreement 
00017  * accompanying it. If you have received this file from a source other 
00018  * than Adobe, then your use, modification, or distribution of it 
00019  * requires the prior written permission of Adobe.
00020  *
00021  */
00022 
00023 
00024 /*******************************************************************************
00025  **
00026  **     Imports
00027  **
00028  **/
00029 
00030 #ifndef __AITypes__
00031 #include "AITypes.h"
00032 #endif
00033 
00034 #include "AIHeaderBegin.h"
00035 
00039 /*******************************************************************************
00040  **
00041  ** Constants
00042  **
00043  **/
00044 
00045 #define kAIClipboardSuite                               "AI Clipboard Suite"
00046 #define kAIClipboardSuiteVersion5               AIAPI_VERSION(5)        // In AI 20.1
00047 // latest version
00048 #define kAIClipboardSuiteVersion                kAIClipboardSuiteVersion5
00049 #define kAIClipboardVersion                             kAIClipboardSuiteVersion
00050 
00053 #define kCallerAIClipboard                              "AI Clipboard"
00054 
00067 #define kSelectorAIGoClipboard                          "AI Go"
00068 
00069 
00074 #define kSelectorAICanCopyClipboard             "AI Can Copy"
00075 
00081 #define kSelectorAICloneClipboard                       "AI Clone"
00082 
00085 #define kSelectorAIDisposeClipboard             "AI Dispose"
00086 
00091 enum AIClipboardFormatOptions {
00093         kClipboardCopy                                          =       (1<<1),
00095         kClipboardPaste                                         =       (1<<2),
00102         kClipboardCannotCopy                            =       (1<<3)
00103 };
00104 
00107 #define kCantCopyErr            'CLP?'
00108 
00109 
00110 /*******************************************************************************
00111  **
00112  ** Types
00113  **
00114  **/
00115 
00117 typedef struct _t_AIClipboardOpaque *AIClipboardHandle;
00118 
00120 typedef ai::uint32 DDType;
00121 
00124 typedef struct {
00126         const char* clipboardName;
00128         ai::int32 OleType;
00133         DDType uniqueType;
00134 } AIClipboardData;
00135 
00138 typedef struct {
00140         SPMessageData d;
00142         AIClipboardHandle Clipboard;
00144         AIStream ClipboardData;
00147         ai::int32 option;
00148 } AIClipboardMessage;
00149 
00150 /*******************************************************************************
00151  **
00152  **     Suite
00153  **
00154  **/
00155 
00171 typedef struct {
00172 
00180         AIAPI AIErr (*AddClipboard) ( SPPluginRef self, AIClipboardData *data,
00181                 ai::int32 options, AIClipboardHandle *Clipboard );
00185         AIAPI AIErr (*RemoveClipboard) (AIClipboardHandle Clipboard);
00186 
00191         AIAPI AIErr (*GetClipboardName) (AIClipboardHandle Clipboard, const char* *name);
00192 
00197         AIAPI AIErr (*GetClipboardOleType) (AIClipboardHandle Clipboard, ai::int32* OleType);
00198 
00203         AIAPI AIErr (*GetClipboardPlugin) (AIClipboardHandle Clipboard, SPPluginRef *plugin);
00204 
00209         AIAPI AIErr (*GetClipboardType) (AIClipboardHandle Clipboard, DDType *uniqueType);
00210 
00216         AIAPI AIErr (*GetClipboardOptions) (AIClipboardHandle Clipboard, ai::int32 *options);
00217 
00223         AIAPI AIErr (*SetClipboardOptions) (AIClipboardHandle Clipboard, ai::int32 options);
00224 
00229         AIAPI AIErr (*CountClipboards) (ai::int32 *count);
00230 
00235         AIAPI AIErr (*GetNthClipboard) (ai::int32 n, AIClipboardHandle *Clipboard);
00236 
00237 } AIClipboardSuite;
00238 
00239 #include "AIHeaderEnd.h"
00240 
00241 
00242 #endif


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2016 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks