00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #pragma once
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef __AITypes__
00027 #include "AITypes.h"
00028 #endif
00029
00030 #ifndef __AIArt__
00031 #include "AIArt.h"
00032 #endif
00033
00034 #ifndef _AIRaster_
00035 #include "AIRaster.h"
00036 #endif
00037
00038 #include "IAIFilePath.hpp"
00039 #include "AIPlacedTypes.h"
00040 #include "AIHeaderBegin.h"
00041
00045
00046
00047
00048
00049
00050
00051 #define kAIPlacedSuite "AI Placed Suite"
00052 #define kAIPlacedSuiteVersion10 AIAPI_VERSION(10)
00053 #define kAIPlacedSuiteVersion kAIPlacedSuiteVersion10
00054 #define kAIPlacedVersion kAIPlacedSuiteVersion
00055
00056
00057
00058 using ai::PlaceMethod;
00059 using ai::PlaceAlignment;
00060 using ai::kAsIs;
00061 using ai::kFill;
00062 using ai::kFit;
00063 using ai::kConform;
00064 using ai::kReconform;
00065 using ai::kTopLeft;
00066 using ai::kMidLeft;
00067 using ai::kBotLeft;
00068 using ai::kTopMid;
00069 using ai::kMidMid;
00070 using ai::kBotMid;
00071 using ai::kTopRight;
00072 using ai::kMidRight;
00073 using ai::kBotRight;
00074
00075
00077 enum AIPlacedObjectType {
00079 kEPSType = 0,
00081 kOtherType
00082 };
00083
00085 typedef enum PlaceRequestMode {
00088 kVanillaPlace = 0,
00096 kQueryReplace,
00099 kForceReplace,
00102 kUnlinkPlaced,
00107 kCreateNewArt,
00110 kForceReplaceEx,
00114 kQueryUnlinkPlaced
00115 } ePlaceRequestMode;
00116
00118 typedef enum
00119 {
00121 kAIPlacedHasBlack = (1<<0),
00123 kAIPlacedHasCyan = (1<<1),
00125 kAIPlacedHasMagenta = (1<<2),
00127 kAIPlacedHasYellow = (1<<3),
00129 kAIPlacedHasCustomColors = (1<<4)
00130 } AIPlacedPlateInfo;
00131
00132
00133 typedef enum
00134 {
00135
00136 kAIPlaceTransformTypeNone = 0,
00137
00138 kAIPlacedTransformTypeFitToView = 1
00139
00140 } AIPlaceTransformType;
00141
00142
00143
00144
00145
00146
00147
00148
00152 struct AIPlaceRequestData
00153 {
00154 AIPlaceRequestData() : m_lPlaceMode(0), m_hOldArt(NULL), m_hNewArt(NULL), m_pFilePath(NULL), m_lParam(0), m_filemethod(0), m_disableTemplate(false), m_doShowParamDialog(false), m_PlaceTransformType(kAIPlaceTransformTypeNone){}
00155
00158 ai::int32 m_lPlaceMode;
00159
00161 AIArtHandle m_hOldArt;
00162
00164 AIArtHandle m_hNewArt;
00165
00168 const ai::FilePath *m_pFilePath;
00169
00172 ai::int32 m_lParam;
00173
00175 ai::int16 m_filemethod;
00176
00178 ASBoolean m_disableTemplate;
00179
00181 AIBoolean m_doShowParamDialog;
00182
00184 AIPlaceTransformType m_PlaceTransformType;
00185 };
00186
00187
00188
00189
00190
00191
00192
00193
00239 typedef struct AIPlacedSuite {
00240
00247 AIAPI AIErr (*GetPlacedFileSpecification) ( AIArtHandle placed, ai::FilePath &file );
00248
00256 AIAPI AIErr (*SetPlacedFileSpecification) ( AIArtHandle placed, const ai::FilePath &file );
00257
00264 AIAPI AIErr (*GetPlacedMatrix) ( AIArtHandle placed, AIRealMatrix *matrix );
00265
00273 AIAPI AIErr (*SetPlacedMatrix) ( AIArtHandle placed, AIRealMatrix *matrix );
00274
00280 AIAPI AIErr (*GetPlacedBoundingBox) ( AIArtHandle placed, AIRealRect *bbox );
00281
00288 AIAPI AIErr (*SetPlacedObject) ( AIArtHandle placed, AIArtHandle *group );
00289
00297 AIAPI AIErr (*CountPlacedCustomColors) ( AIArtHandle art, ai::int32 *count );
00298
00306 AIAPI AIErr (*GetNthPlacedCustomColorName) ( AIArtHandle art, ai::int32 num, ai::UnicodeString& name );
00307
00313 AIAPI AIErr (*MakePlacedObjectNative) ( AIArtHandle placed, AIArtHandle *native, AIBoolean askForParam );
00314
00320 AIAPI AIErr (*GetPlacedType) ( AIArtHandle placed, ai::int16 *pPlacedType );
00321
00328 AIAPI AIErr (*GetPlacedChild) ( AIArtHandle placed, AIArtHandle *group );
00329
00336 AIAPI AIErr (*ExecPlaceRequest)( AIPlaceRequestData &placeRequestData );
00337
00347 AIAPI AIErr (*GetPlacedFileInfoFromArt)( AIArtHandle placed, SPPlatformFileInfo *spFileInfo );
00348
00356 AIAPI AIErr (*GetPlacedFileInfoFromFile)( AIArtHandle placed, SPPlatformFileInfo *spFileInfo );
00357
00362 AIAPI AIErr (*GetPlacedFilePathFromArt)( AIArtHandle placed, ai::UnicodeString &path );
00363
00369 AIAPI AIErr (*ConcatPlacedMatrix) ( AIArtHandle placed, AIRealMatrix *concat );
00370
00371
00372
00382 AIAPI AIErr (*SetPlaceOptions) ( AIArtHandle placed, enum PlaceMethod method, enum PlaceAlignment alignment, AIBoolean clip );
00383
00390 AIAPI AIErr (*GetPlaceOptions) ( AIArtHandle placed, enum PlaceMethod *method, enum PlaceAlignment *alignment, AIBoolean *clip );
00391
00404 AIAPI AIErr (*GetPlacedDimensions) ( AIArtHandle placed, AIRealPoint *size, AIRealRect *viewBounds, AIRealMatrix *viewMatrix,
00405 AIRealRect *imageBounds, AIRealMatrix *imageMatrix );
00406
00407
00408
00413 AIAPI AIErr (*SetPlacedBoundingBox) ( AIArtHandle art, AIRealRect* bbox );
00414
00422 AIAPI AIErr (*GetRasterInfo) ( AIArtHandle art, AIRasterRecord* info, AIBoolean* israster );
00427 AIAPI AIErr (*GetProcessPlatesInfo) (AIArtHandle art, AIPlacedPlateInfo * plateInfo);
00428
00429
00430
00431
00432 AIAPI AIBoolean(*IsPlacedFileDamaged) (AIArtHandle art);
00433
00434 } AIPlacedSuite;
00435
00436 #include "AIHeaderEnd.h"