Adobe.com
Contents Suites Classes Class Index Member Index

AIIsolationMode.h

Go to the documentation of this file.
00001 #ifndef __AIIsolationMode__
00002 #define __AIIsolationMode__
00003 
00004 /*
00005  *        Name: AIIsolationMode.h
00006  *      Author:
00007  *        Date:
00008  *     Purpose: Adobe Illustrator Isolation Mode Suite.
00009  *
00010  * ADOBE SYSTEMS INCORPORATED
00011  * Copyright 2006-2016 Adobe Systems Incorporated.
00012  * All rights reserved.
00013  *
00014  * NOTICE:  Adobe permits you to use, modify, and distribute this file 
00015  * in accordance with the terms of the Adobe license agreement 
00016  * accompanying it. If you have received this file from a source other 
00017  * than Adobe, then your use, modification, or distribution of it 
00018  * requires the prior written permission of Adobe.
00019  *
00020  */
00021 
00022 
00023 /*******************************************************************************
00024  **
00025  **     Imports
00026  **
00027  **/
00028 
00029 #ifndef __AIMdMemory__
00030 #include "AIMdMemory.h"
00031 #endif
00032 
00033 #ifndef _IAIAUTOBUFFER_H_
00034 #include "IAIAutoBuffer.h"
00035 #endif
00036 
00037 #include "AIHeaderBegin.h"
00038 
00041 /*******************************************************************************
00042  **
00043  **     Suite name and version
00044  **
00045  **/
00046 
00047 #define kAIIsolationModeSuite                           "AI Isolation Mode"
00048 #define kAIIsolationModeSuiteVersion5           AIAPI_VERSION(5)
00049 #define kAIIsolationModeSuiteVersion            kAIIsolationModeSuiteVersion5
00050 #define kAIIsolationModeVersion                         kAIIsolationModeSuiteVersion
00051 
00052 
00053 /*******************************************************************************
00054  **
00055  **     Constants
00056  **
00057  **/
00058 
00062 #define kCantIsolateFromCurrentModeErr '!Iso'
00063 
00069 #define kAIIsolationModeChangedNotifier "AI Isolation Mode Changed Notifier"
00070 
00076 #define kAIBeforeIsolationModeChangedNotifier   "AI Before Isolation Mode Changed Notifier"
00077 
00078 
00079 /*******************************************************************************
00080  **
00081  **     Types
00082  **
00083  **/
00084 
00085 
00087 typedef struct {
00090         AIBoolean inIsolationMode;
00092         AIArtHandle isolatedArt;
00094         AIArtHandle isolatedArtParent;
00096         AIBoolean canceled;
00097 } AIIsolationModeChangedNotifierData;
00098 
00099 
00100 
00104 enum AIIsolationModeType
00105 {
00107         kAIIMLeafArt        = 1,  
00108 
00112         kAIIMGroup, 
00113 
00115         kAIIMClippingObjects, 
00116 
00118         kAIIMCompoundPath,  
00119 
00121         kAIIMTopLevelLayer, 
00122 
00124         kAIIMSubLayer,
00125 
00127         kAIIMSymbol,    
00128 
00130         kAIIMObjects,  
00131 
00133         kAIIMNoObject,
00134 
00136         kAIIMNone            
00137 };
00138 
00139 /*******************************************************************************
00140  **
00141  **     Suite
00142  **
00143  **/
00144 
00154 typedef struct {
00155 
00168         AIAPI AIErr (*EnterIsolationMode)(AIArtHandle art, AIBoolean invisibleFlag);
00169 
00178         AIAPI AIErr (*ExitIsolationMode)(void);
00179 
00190         AIAPI void (*GetIsolatedArtAndParents)(AIArtHandle *isolatedArtParent, ai::AutoBuffer<AIArtHandle> *parentChain);
00191 
00196         AIAPI ASBoolean (*IsInIsolationMode)(void);
00197 
00203         AIAPI ASBoolean (*IsIsolatedLayer)(AIArtHandle art);
00204 
00214         AIAPI ASBoolean (*IsNonIsolatedLayer)(AIArtHandle art);
00215 
00227         AIAPI ASBoolean (*CanIsolateArt)(AIArtHandle art);
00228 
00232         AIAPI AIIsolationModeType (*GetIsolationModeType)();
00233 
00242         AIAPI AIErr (*CancelIsolationMode)(void);
00243         
00248         AIAPI AIErr (*SetNonIsolatedArtLayerOpacity)(const AIReal inNewOpacity);
00249         
00255         AIAPI AIReal (*GetNonIsolatedArtLayerOpacity)();
00256 
00257 } AIIsolationModeSuite;
00258 
00259 
00260 #include "AIHeaderEnd.h"
00261 
00262 
00263 #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