00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #pragma once
00020
00021
00022
00023
00024
00025
00026
00027 #include "AITypes.h"
00028
00029 #include "AIHeaderBegin.h"
00030
00033
00034
00035
00036
00037
00038
00039 #define kAISelectionContextManagerSuite "AI Selection Context Manager Suite"
00040 #define kAISelectionContextManagerSuiteVersion1 AIAPI_VERSION(1)
00041 #define kAISelectionContextManagerSuiteVersion kAISelectionContextManagerSuiteVersion1
00042 #define kAISelectionContextManagerVersion kAISelectionContextManagerSuiteVersion
00043
00044
00045 #define kNoTopLevelDocumentPropsError '!TLP'
00046
00051
00052
00053
00054
00055 enum AISelectionLevelContext : ai::uint16
00056 {
00060 kAISelectionNoneContext = 0,
00061
00065 kAISelectionTopLevelContext = 1<<0,
00066
00070 kAISelectionAnyLevelContext = 1<<1,
00071
00075 kAISelectionObjectLevelContext = 1<<2,
00076
00080 kAISelectionCompleteContext = kAISelectionTopLevelContext | kAISelectionAnyLevelContext | kAISelectionObjectLevelContext
00081 };
00082
00083
00084
00085
00086
00087
00088
00089
00090 enum class AISelectionCountDetailsFlag : ai::uint16
00091 {
00095 kTopLevelObjectTypeCount,
00096
00100 kTopLevelTotalObjectCount,
00101
00105 kObjectLevelObjectTypeCount,
00106
00110 kObjectLevelTotalObjectCount
00111 };
00112
00113 using AISelectionContext = ai::SizeType;
00114
00115
00116
00117
00118
00119
00120
00121 enum class AISelectionContextFlags : ai::uint16
00122 {
00126 kAISelectionNone = 0,
00127
00131 kAISelectionHasPathArt,
00132 kAISelectionHasMultiplePaths,
00133
00137 kAISelectionHasOpenPathArt,
00138 kAISelectionHasClosePathArt,
00139
00143 kAISelectionHasLiveShapeArt,
00144 kAISelectionHasMultipleLiveShapeArt,
00145
00150 kAISelectionHasGroupObject,
00151 kAISelectionHasMultipleGroupObject,
00152
00156 kAISelectionHasNormalGroup,
00157 kAISelectionHasMultipleNormalGroup,
00158
00162 kAISelectionHasCompoundGroup,
00163 kAISelectionHasMultipleCompoundGroup,
00164
00168 kAISelectionHasClipGroup,
00169 kAISelectionHasMultipleClipGroup,
00170
00174 kAISelectionHasNormalNonLayerGroup,
00175 kAISelectionHasMultipleNormalNonLayerGroup,
00176
00180 kAISelectionHasImageArt,
00181 kAISelectionHasMultipleImageArt,
00182
00186 kAISelectionHasEmbedImageArt,
00187 kAISelectionHasUnEmbedImageArt,
00188 kAISelectionHasMultipleUnEmbedImageArt,
00189
00193 kAISelectionHasTextArt,
00194 kAISelectionHasMultipleTextArt,
00195
00199 kAISelectionHasSymbol,
00200 kAISelectionHasMultipleSymbol,
00201
00205 kAISelectionHasSymbolSet,
00206 kAISelectionHasMultipleSymbolSet,
00207
00211 kAISelectionHasLivePaintGroup,
00212 kAISelectionHasMultipleLivePaintGroup,
00213
00217 kAISelectionHasShaperGroup,
00218 kAISelectionHasMultipleShaperGroup,
00219
00223 kAISelectionHasGraphObjects,
00224 kAISelectionHasMultipleGraphObjects,
00225
00229 kAISelectionHasTracedbject,
00230 kAISelectionHasMultipleTracedbject,
00231
00235 kAISelectionHasAnchorPoint,
00236 kAISelectionHasMultipleAnchorPoint,
00237
00241 kAISelectionHasWarpEnvelope,
00242 kAISelectionHasMultipleWarpEnvelope,
00243
00247 kAISelectionHasMeshEnvelope,
00248 kAISelectionHasMultipleMeshEnvelope,
00249
00253 kAISelectionHasTopEnvelope,
00254 kAISelectionHasMultipleTopEnvelope,
00255
00259 kAISelectionHasEnvelope,
00260 kAISelectionHasMultipleEnvelope,
00261
00265 kAISelectionHasBlend,
00266 kAISelectionHasMultipleBlend,
00267
00271 kAISelectionHasMeshObject,
00272 kAISelectionHasMultipleMeshObject,
00273
00277 kAISelectionHasTransformedSymbolInstance,
00278 kAISelectionHasGuides,
00279
00280
00284 kAISelectionResetSymbolTransformation,
00285
00289 kAISelectionCanEnableGlobalEditing,
00290
00294 kAISelectionHasSymmetryRepeat,
00295 kAISelectionHasMultipleSymmetryRepeat,
00296
00300 kAISelectionHasRadialRepeat,
00301 kAISelectionHasMultipleRadialRepeat,
00302
00306 kAISelectionHasGridRepeat,
00307 kAISelectionHasMultipleGridRepeat
00308
00309
00310 };
00311
00312
00313
00314
00315
00316
00317
00325 struct AISelectionContextManagerSuite
00326 {
00345 AIAPI AIBoolean (*IsSelectionContextFlagPresent) (AISelectionContextFlags inFlag, AISelectionLevelContext queryLevelContext);
00346
00359 AIAPI AIErr (*GetSelectionCountDetails) (AISelectionCountDetailsFlag inFlag, ai::SizeType &outCount );
00360
00361 };
00362
00363 #include "AIHeaderEnd.h"
00364