Adobe.com
Contents Suites Classes Class Index Member Index

ATETypes.h

Go to the documentation of this file.
00001 /* -------------------------------------------------------------------------------
00002 
00003     Copyright 2000-2006 Adobe Systems Incorporated. All Rights Reserved.
00004 
00005     NOTICE:  Adobe permits you to use, modify, and distribute this file 
00006     in accordance with the terms of the Adobe license agreement accompanying 
00007     it. If you have received this file from a source other than Adobe, then 
00008     your use, modification, or distribution of it requires the prior written 
00009     permission of Adobe.
00010 
00011  ----------------------------------------------------------------------------------
00012  
00013         $File: ATETypes.h $
00014 
00015         Author: 
00016 
00017         $Author: micheleg $
00018 
00019         $DateTime: 2006/01/02 16:27:31 $
00020 
00021         $Revision: #2 $
00022 
00023         $Change: 379550 $
00024         
00025         Notes:  
00026         
00027  ---------------------------------------------------------------------------------- */
00028 #ifndef __ATETypes__
00029 #define __ATETypes__
00030 
00031 #ifdef __MWERKS__
00032         #if defined(__MC68K__) || defined(__POWERPC__)
00033                 #pragma enumsalwaysint on
00034         #endif
00035 #endif // __MWERKS__
00036 
00037 // ----------------------------------------------------------------------------------
00038 
00039 typedef unsigned short ASUTF16;
00040 
00041 #ifdef __cplusplus
00042 
00054 #define ATE_ENUM_BIT_OPERATORS(E)       \
00055     inline E operator| (E a, E b)       \
00056     {                                   \
00057         return E((int)a | (int)b);      \
00058     }                                   \
00059     inline E operator& (E a, E b)       \
00060     {                                   \
00061         return E((int)a & (int)b);      \
00062     }                                   \
00063     inline E operator^ (E a, E b)       \
00064     {                                   \
00065         return E((int)a ^ (int)b);      \
00066     }                                   \
00067     inline E operator~ (E a)            \
00068     {                                   \
00069         return E(~((int)a));            \
00070     }                                   \
00071     inline E& operator|= (E& a, E b)    \
00072     {                                   \
00073         return a = a | b;               \
00074     }                                   \
00075     inline E& operator&= (E& a, E b)    \
00076     {                                   \
00077         return a = a & b;               \
00078     }                                   \
00079     inline E& operator^= (E& a, E b)    \
00080     {                                   \
00081         return a = a ^ b;               \
00082     }
00083 
00084 // ----------------------------------------------------------------------------------
00085 
00086 namespace ATE
00087 {
00088 #endif
00089 
00090 typedef int     ATEGlyphID;
00091 
00092 typedef unsigned char ATEBool8;
00093 
00094 // Some compilers complain of performance issues when converting
00095 // between ATEBool8 (an integral value) and bool. These macros
00096 // dodge these warnings but leave the code using them readable.
00097 #define ATEBOOL8_IS_TRUE(value) (value) != 0
00098 #define ATEBOOL8PTR_IS_TRUE(value) (value) ? *(value) != 0 : false
00099 
00101 enum ATEErr {
00102         kNoError = 0,
00103         kBadParameter,
00104         kOutOfMemory,
00105         kOutOfRange,
00106         kNullPointer,
00107         kInternalError,
00108         kMissingSpellingDictionary,
00109         kMissingHyphenationDictionary
00110 };
00111 #ifndef __cplusplus
00112 typedef enum ATEErr ATEErr;
00113 #endif
00114 
00115 // ----------------------------------------------------------------------------------
00116 
00118 enum StreamVersion
00119 {
00120         kStreamVersion1 = 1,                                                                                                    // pre CS1 (ATE 1.0 )
00121         kStreamVersion2,                                                                                                                // CS1 - (ATE 2.0)
00122         kStreamVersion3,        kStreamLastNonPersistedVersion  = kStreamVersion3,      // CS2 redux (shorter tag names) - (ATE V2.5)
00123                                                 kStreamCS2Redux                                 = kStreamVersion3,
00124         kStreamVersion4,        kVerticalTextScaleChange                = kStreamVersion4,      // CS3 vertical text scale change (ATE 2.51)
00125         kStreamVersion5,        kComplexScriptSupport                   = kStreamVersion5,      // CS4 complex script support (ATE 3.0)
00126         kStreamVersion6,                                                                                                                // CS5 (ATE 4.0)
00127         kStreamVersion7,                                                                                                                // CS6 hyperlink support (ATE 5.0)
00128         kStreamVersion8,                                                                                                                // CS7 (ATE 6.0)
00129     kStreamVersion9,
00130         // ^^^^^^^^^^^^ Add new versions above this comment ^^^^^^^^^^^^ 
00131         // This allows us to have the current version always equal the last.
00132         kDontUseLastPlusOne,
00133         kStreamCurrentVersion = kDontUseLastPlusOne - 1
00134 };
00135 #ifndef __cplusplus
00136 typedef enum StreamVersion StreamVersion;
00137 #endif
00138 
00139 // ----------------------------------------------------------------------------------
00140 
00142 enum StreamFormatting
00143 {
00144         kEfficientPDFOutput,
00145         kPrettyPDFOutput,
00146         kBinaryPDFOutput
00147 #if SLO_XML
00148         ,kXMLUTF8Output
00149 #endif
00150 };
00151 #ifndef __cplusplus
00152 typedef enum StreamFormatting StreamFormatting;
00153 #endif
00154 
00155 // ----------------------------------------------------------------------------------
00156 
00157 enum FeatureSet 
00158 {
00159         kLatinCJKFeatureSet, 
00160         kMEFeatureSet,
00161         kIndicFeatureSet
00162 };
00163 
00164 #ifndef __cplusplus
00165 typedef enum FeatureSet FeatureSet;
00166 #endif
00167 
00168 // ----------------------------------------------------------------------------------
00169 
00170 enum FontLockingAllowance 
00171 {
00172         kAllowFontLocking, 
00173         kDontAllowFontLocking,
00174         kUseFontLockDocumentSetting
00175 };
00176 
00177 #ifndef __cplusplus
00178 typedef enum FontLockingAllowance FontLockingAllowance;
00179 #endif
00180 
00181 // ----------------------------------------------------------------------------------
00182 
00184 enum LineCapType {
00185         kButtCap = 0,
00186         kRoundCap = 1,
00187         kSquareCap = 2,
00188         kNumLineCapTypes
00189 };
00190 #ifndef __cplusplus
00191 typedef enum LineCapType LineCapType;
00192 #endif
00193 
00194 // ----------------------------------------------------------------------------------
00195 
00197 enum ASCharType {
00199         kASSpaceChar = 0,
00201         kPunctuationChar,
00203         kParagraphEndChar,
00205         kNormalChar
00206 };
00207 #ifndef __cplusplus
00208 typedef enum ASCharType ASCharType;
00209 #endif
00210 
00211 // ----------------------------------------------------------------------------------
00212 
00214 enum LineJoinType {
00216         kMiterJoin = 0,
00218         kRoundJoin = 1,
00220         kBevelJoin = 2,
00221         kNumLineJoinTypes
00222 };
00223 #ifndef __cplusplus
00224 typedef enum LineJoinType LineJoinType;
00225 #endif
00226 
00227 // ----------------------------------------------------------------------------------
00228 
00230 enum ParagraphJustification
00231 {
00232         kLeftJustify = 0,
00233         kRightJustify,
00234         kCenterJustify,
00235 
00236         kFullJustifyLastLineLeft,
00237         kFullJustifyLastLineRight,
00238         kFullJustifyLastLineCenter,
00239 
00240         kFullJustifyLastLineFull
00241 };
00242 #ifndef __cplusplus
00243 typedef enum ParagraphJustification ParagraphJustification;
00244 #endif
00245 
00246 
00247 // ----------------------------------------------------------------------------------
00248 
00250 enum FrameAlignment
00251 {
00252         kTopAlignment = 0,
00253         kCenterAlignment,
00254         kBottomAlignment,
00255     kJustifyAlignment
00256 };
00257 #ifndef __cplusplus
00258 typedef enum FrameAlignment FrameAlignment;
00259 #endif
00260 
00261 // ----------------------------------------------------------------------------------
00262 
00270 enum ComposerEngine 
00271 { 
00272         kLatinCJKComposer = 0, 
00273         kOptycaComposer,
00274         kAdornment
00275 };
00276 #ifndef __cplusplus
00277 typedef enum ComposerEngine ComposerEngine;
00278 #endif
00279 
00280 // ----------------------------------------------------------------------------------
00281 
00283 enum ParagraphDirection
00284 {
00285         kLeftToRight = 0,
00286         kRightToLeft
00287 };
00288 #ifndef __cplusplus
00289 typedef enum ParagraphDirection ParagraphDirection;
00290 #endif
00291 
00292 // ----------------------------------------------------------------------------------
00293 
00295 enum JustificationMethod
00296 {
00297         kJustifMethodDefault = 0,               //corresponds to kLatinLike in WR
00298         kJustifMethodArabic,                    //corresponds to kEvenKashidasStretched in WR
00299         kJustifMethodNaskh,                             //corresponds to kTraditionalNaskh in WR
00300         kJustifMethodNaskhTatweel,              //corresponds to kTraditionalNaskhTatweel in WR
00301         kJustifMethodNaskhKashida,              //corresponds to kTraditionalNaskhKashida in WR
00302         kJustifMethodNaskhTatweelFrac,  //corresponds to kTraditionalNaskhTatweelFrac in WR
00303         kJustifMethodNaskhKashidaFrac,  //corresponds to kTraditionalNaskhKashidaFrac in WR
00304         kJustifMethodAuto                               //ATE shall decide justification method on the basis of 
00305                                                                         //Kashida Width. Following Logic would be used:
00306                                                                         //None          : kLatinLike,
00307                                                                         //Short         : kTraditionalNaskhKashidaFrac, 
00308                                                                         //Medium        : kTraditionalNaskhKashidaFrac,
00309                                                                         //Long          : kTraditionalNaskhKashidaFrac,
00310                                                                         //Stylistic     : kTraditionalNaskhKashida,
00311 };
00312 #ifndef __cplusplus
00313 typedef enum JustificationMethod JustificationMethod;
00314 #endif
00315 
00316 // ----------------------------------------------------------------------------------
00317 
00319 enum DigitSet
00320 {
00321         kDefaultDigits = 0,
00322         kArabicDigits,
00323         kHindiDigits,
00324         kFarsiDigits,
00325         kArabicDigitsRTL
00326 };
00327 #ifndef __cplusplus
00328 typedef enum DigitSet DigitSet;
00329 #endif
00330 
00331 // ----------------------------------------------------------------------------------
00332 
00334 enum DirOverride
00335 { 
00336         kDirOverrideDefault = 0,
00337         kDirOverrideLTR,
00338         kDirOverrideRTL 
00339 };
00340 #ifndef __cplusplus
00341 typedef enum DirOverride DirOverride;
00342 #endif
00343 
00344 // ----------------------------------------------------------------------------------
00345 
00347 enum DiacVPos
00348 {
00349         kDiacVPosOff = 0,
00350         kDiacVPosLoose,
00351         kDiacVPosMedium,
00352         kDiacVPosTight,
00353         kDiacVPosOpenType 
00354 };
00355 #ifndef __cplusplus
00356 typedef enum DiacPosition DiacPosition;
00357 #endif
00358 
00359 // ----------------------------------------------------------------------------------
00360 
00362 enum Kashidas
00363 { 
00364         kKashidaDefault = 0,
00365         kKashidaOn = kKashidaDefault,
00366         kKashidaOff 
00367 };
00368 
00369 enum KashidaWidth
00370 { 
00371         kKashidaNone = 0,
00372         kKashidaSmall,
00373         kKashidaMedium,
00374         kKashidaLong,
00375         kKashidaStylistic
00376 };
00377 
00378 #ifndef __cplusplus
00379 typedef enum Kashidas Kashidas;
00380 #endif
00381 
00382 // ----------------------------------------------------------------------------------
00383 
00385 enum WariChuJustification
00386 {
00387         kWariChuLeftJustify = 0,
00388         kWariChuRightJustify,
00389         kWariChuCenterJustify,
00390 
00391         kWariChuFullJustifyLastLineLeft,
00392         kWariChuFullJustifyLastLineRight,
00393         kWariChuFullJustifyLastLineCenter,
00394 
00395         kWariChuFullJustifyLastLineFull,
00396 
00397         kWariChuAutoJustify
00398 };
00399 #ifndef __cplusplus
00400 typedef enum WariChuJustification WariChuJustification;
00401 #endif
00402 
00403 // ----------------------------------------------------------------------------------
00404 
00406 enum PreferredKinsokuOrder
00407 {
00408         kPushIn = 0,
00409         kPushOutFirst,
00410         kPushOutOnly
00411 };
00412 #ifndef __cplusplus
00413 typedef enum PreferredKinsokuOrder PreferredKinsokuOrder;
00414 #endif
00415 
00416 // ----------------------------------------------------------------------------------
00417 
00419 enum BurasagariType
00420 {
00421         kBurasagariNone = 0,
00422         kBurasagariStandard,
00423         kBurasagariStrong
00424 };
00425 #ifndef __cplusplus
00426 typedef enum BurasagariType BurasagariType;
00427 #endif
00428 
00429 // ----------------------------------------------------------------------------------
00430 
00432 enum LeadingType
00433 {
00434         kRomanLeadingType = 0,
00435         kJapaneseLeadingType = 1
00436 };
00437 #ifndef __cplusplus
00438 typedef enum LeadingType LeadingType;
00439 #endif
00440 
00441 // ----------------------------------------------------------------------------------
00442 
00444 enum TabType
00445 {
00446         kLeftTabType = 0,
00447         kCenterTabType,
00448         kRightTabType,
00449         kDecimalTabType
00450 };
00451 #ifndef __cplusplus
00452 typedef enum TabType TabType;
00453 #endif
00454 
00455 // ----------------------------------------------------------------------------------
00456 
00458 enum AutoKernType { kNoAutoKern, kMetricKern, kOpticalKern, kMetricRomanOnlyKern };
00459 #ifndef __cplusplus
00460 typedef enum AutoKernType AutoKernType;
00461 #endif
00462 
00463 // ----------------------------------------------------------------------------------
00464 
00466 enum JapaneseAlternateFeature
00467 {
00468         kDefaultForm,
00469         kTraditionalForm,
00470         kExpertForm,
00471         kJIS78Form,
00472         kJIS83Form,
00473         kHalfWidthForm,
00474         kThirdWidthForm,
00475         kQuarterWidthForm,
00476         kFullWidthForm,
00477         kProportionalWidthForm,
00478         kJIS90Form,
00479         kJIS04Form
00480 };
00481 #ifndef __cplusplus
00482 typedef enum JapaneseAlternateFeature JapaneseAlternateFeature;
00483 #endif
00484 
00485 // ----------------------------------------------------------------------------------
00486 
00488 enum BaselineDirection
00489 {
00490         kNeverUseMustBeKnown = 0,                               // we don't allow "unknown" like we used to
00491         kBaselineWithStream = 1,        // rotate roman glyphs to vertical orientation in vertical
00492         kBaselineVerticalRotated = 2,                                   // default baseline -- roman glyphs on side in vertical
00493         kBaselineVerticalCrossStream = 3                                // Tate-Chu-Yoko in vertical
00494 };
00495 #ifndef __cplusplus
00496 typedef enum BaselineDirection BaselineDirection;
00497 #endif
00498 
00499 // ----------------------------------------------------------------------------------
00500 
00504 enum FontSizeRefType
00505 {
00506         kFontSizeRefDefault, //Embox
00507         kFontSizeRef_CapHeight,
00508         kFontSizeRef_XHeight,
00509         kFontSizeRef_ICFBox
00510 };
00511 
00512 #ifndef __cplusplus
00513 typedef enum FontSizeRefType FontSizeRefType;
00514 #endif
00515 
00516 // ----------------------------------------------------------------------------------
00517 
00519 enum UnderlinePosition
00520 {
00521         kUnderlineOff,
00522         kUnderlineOn_RightInVertical,
00523         kUnderlineOn_LeftInVertical
00524 };
00525 
00526 #ifndef __cplusplus
00527 typedef enum UnderlinePosition UnderlinePosition;
00528 #endif
00529 
00530 // ----------------------------------------------------------------------------------
00531 
00533 enum UnderlineStyle
00534 {
00535         kUnderlineSolid,
00536         kUnderlineDashed
00537 };
00538 
00539 #ifndef __cplusplus
00540 typedef enum UnderlineStyle UnderlineStyle;
00541 #endif
00542 
00543 // ----------------------------------------------------------------------------------
00544 
00546 enum StrikethroughPosition
00547 {
00548         kStrikethroughOff,
00549         kStrikethroughOn_XHeight,
00550         kStrikethroughOn_EMBox
00551 };
00552 
00553 #ifndef __cplusplus
00554 typedef enum StrikethroughPosition StrikethroughPosition;
00555 #endif
00556 
00557 // ----------------------------------------------------------------------------------
00558 
00560 enum StyleRunAlignment
00561 {
00562         kAlignStylesByBottom = 0,
00563         kAlignStylesByICFBottom = 1,
00564         
00565         kAlignStylesByRomanHorizontalCenterVertical = 2,
00566         
00567         kAlignStylesByCenterHorizontalRomanVertical = 3,
00568         
00569         kAlignStylesByICFTop = 4,
00570         kAlignStylesByTop = 5
00571 };
00572 #ifndef __cplusplus
00573 typedef enum StyleRunAlignment StyleRunAlignment;
00574 #endif
00575 
00576 // ----------------------------------------------------------------------------------
00577 
00579 enum CaseChangeType
00580 {
00581         kUppercase = 0,
00582         kLowercase,
00583         kTitleCase,
00584         kSentenceCase
00585 };
00586 #ifndef __cplusplus
00587 typedef enum CaseChangeType CaseChangeType;
00588 #endif
00589 
00590 // ----------------------------------------------------------------------------------
00591 
00592 struct SLOToOTLanguage
00593 {
00594         const char* fScript;
00595         const char* fLanguage;
00596 };
00597 
00599 // NEW LANGUAGES MUST BE ADDED AT THE END OF THE LIST
00600 // otherwise make appropriate corrections to LinguisticSettings::GetIndex()
00601 enum Language
00602 {
00603         kEnglishLanguage,
00604         kFinnishLanguage,
00605         kStandardFrenchLanguage,
00606         kCanadianFrenchLanguage,
00607         kGerman1996ReformLanguage,                      // [1996-2006] Previously kStandardGermanLanguage.  See below for latest German.
00608         kOldGermanLanguage,                                     // As we moved from Proximity Hunspell the Old German language mapping changed to 1901 language.
00609         kOldSwissGermanLanguage,                        // Pre 2006 Reform.  Previously kSwissGermanLanguage.  See below for latest Swiss German.
00610         kItalianLanguage,
00611         kBokmalNorwegianLanguage,
00612         kNynorskNorwegianLanguage,
00613         kStandardPortugueseLanguage,
00614         kBrazillianPortugueseLanguage,
00615         kSpanishLanguage,
00616         kSwedishLanguage,
00617         kUKEnglishLanguage,
00618         kOldDutchLanguage,                                      // Pre 2006 Reform. Previously kDutchLanguage. See below for latest Dutch.
00619         kDanish,
00620         kCatalan,
00621         kRussian,
00622         kUkranian,
00623         kBulgarian,
00624         kSerbian,
00625         kCzech,
00626         kPolish,
00627         kRumanian,
00628         kGreek,
00629         kTurkish,
00630         kIcelandic,
00631         kHungarian,
00632         kChineseLanguage,
00633         kJapaneseLanguage,
00634         kCroatian,
00635         kHebrew,
00636         kSlovenian,
00637         kBelarussian,
00638         kAlbanian,
00639         kLithuanian,
00640         kLatvian,
00641         kSlovakian,
00642         kArabic,
00643         kEstonian,
00644         kFarsi,
00645         kGerman2006ReformLanguage,                      // Latest German.  Should be the default as of 2006
00646         kDutch2005ReformLanguage,                       // Latest Dutch.   Should be the default as of 2006
00647         kSwissGerman2006ReformLanguage,         // Latest Swiss German.   Should be the default as of 2006
00648         kCanadianEnglish,
00649         kThai,
00650         kVietnamese,
00651         kLao,
00652         kHindi,
00653         kMarathi,
00654         kBengaliIndia,
00655         kPunjabi,
00656         kGujarati,
00657         kOriya,
00658         kTamil,
00659         kTelugu,
00660         kKannada,
00661         kMalayalam,
00662         
00663         kBurmese,
00664         kSinhalese,
00665         kKhmer,
00666         kIndonesian,
00667         
00668         // Add all scripts supported by WRServices
00669         kNumberOfLanguages,
00670         kInvalidLanguage = 1000         // LILO need us to have an invalid language
00671 };
00672 
00673 //list of dictionary providers
00674 enum DictionaryProvider
00675 {
00676         kHunspellProvider,
00677         kWinSoftProvider,
00678         kWinSoftExtendedProvider,
00679         kUserDictionaryOnlyProvider,
00680         kProximityProvider,
00681         kMaxNumProviders,
00682         kInvalidProvider = 1000
00683 };
00684 
00685 //
00686 // DictionaryServiceType defines the types of services that are available from the dictionary provider
00687 //
00688 typedef ASUTF16 DictionaryServiceType;
00689 enum 
00690 {
00691         kSpellingService,
00692         kHyphenationService,
00693         kInvalidService
00694 };
00695 
00696 #ifndef __cplusplus
00697 typedef enum Language Language;
00698 #endif
00699 
00700 // ----------------------------------------------------------------------------------
00701 
00703 enum SyntheticFontType
00704 {
00705         kNoSynthetic = 0,
00706         kItalicSynthetic,
00707         kBoldSynthetic,
00708         kBoldItalicSynthetic
00709 };
00710 #ifndef __cplusplus
00711 typedef enum SyntheticFontType SyntheticFontType;
00712 #endif
00713 
00715 enum FigureStyle
00716 {
00717         kDefaultFigureStyle = 0,
00718         kTabularLining,
00719         kProportionalOldStyle,
00720         kProportionalLining,
00721         kTabularOldStyle
00722 };
00723 #ifndef __cplusplus
00724 typedef enum FigureStyle FigureStyle;
00725 #endif
00726 
00727 // ----------------------------------------------------------------------------------
00728 
00730 enum FontCapsOption
00731 {
00732         kFontNormalCaps = 0,
00733         kFontSmallCaps,
00734         kFontAllCaps,
00735         kFontAllSmallCaps
00736 };
00737 #ifndef __cplusplus
00738 typedef enum FontCapsOption FontCapsOption;
00739 #endif
00740 
00741 // ----------------------------------------------------------------------------------
00742 
00744 enum FontBaselineOption
00745 {
00746         kFontNormalBaseline = 0,
00747         kFontFauxedSuperScript,
00748         kFontFauxedSubScript
00749 };
00750 
00751 #ifndef __cplusplus
00752 typedef enum FontBaselineOption FontBaselineOption;
00753 #endif
00754 
00755 // ----------------------------------------------------------------------------------
00756 
00758 enum FontOpenTypePositionOption
00759 {
00760         kFontOTNormalPosition,
00761         kFontOTSuperscriptPosition,
00762         kFontOTSubscriptPosition,
00763         kFontOTNumeratorPosition,
00764         kFontOTDenominatorPosition
00765 };
00766 
00767 #ifndef __cplusplus
00768 typedef enum FontOpenTypePositionOption FontOpenTypePositionOption;
00769 #endif
00770 
00771 // ----------------------------------------------------------------------------------
00772 
00774 enum MakeEmptyMemoryHint
00775 {
00776         kMakeEmptyAndFreeAllocations,
00777         kMakeEmptyAndPreserveAllocations
00778 };
00779 
00780 #ifndef __cplusplus
00781 typedef enum MakeEmptyMemoryHint MakeEmptyMemoryHint;
00782 #endif
00783 
00784 // ----------------------------------------------------------------------------------
00785 
00787 enum Direction { kForward = +1, kStationary = 0, kBackward = -1 };
00788 #ifndef __cplusplus
00789 typedef enum Direction Direction;
00790 #endif
00791 
00792 // ----------------------------------------------------------------------------------
00793 
00795 enum FlattenWithParentStyles
00796 {
00797         kDoNotFlattenWithParent = 0,
00798         kFlattenWithParent = 1
00799 };
00800 #ifndef __cplusplus
00801 typedef enum FlattenWithParentStyles FlattenWithParentStyles;
00802 #endif
00803 
00804 // ----------------------------------------------------------------------------------
00805 
00807 enum SearchScope
00808 {
00809         kSearchEntireDocument = 0,
00810         kSearchStory = 1
00811 };
00812 #ifndef __cplusplus
00813 typedef enum SearchScope SearchScope;
00814 #endif
00815 
00816 // ----------------------------------------------------------------------------------
00817 
00819 enum CollapseDirection
00820 {
00821         CollapseEnd,
00822         CollapseStart
00823 };
00824 #ifndef __cplusplus
00825 typedef enum CollapseDirection CollapseDirection;
00826 #endif
00827 
00828 
00829 // ----------------------------------------------------------------------------------
00830 
00832 enum
00833 {
00834         kOpenParenthesis_MojiKumiCharacterClass = 1,
00835         kCloseParenthesis_MojiKumiCharacterClass = 2,
00836         kCantBeginLineCharacters_MojiKumiCharacterClass = 3,
00837         kBreakingPunctuation_MojiKumiCharacterClass = 4,
00838         kMiddlePunctuation_MojiKumiCharacterClass = 5,
00839         kPeriods_MojiKumiCharacterClass = 6,
00840         kComma_MojiKumiCharacterClass = 7,
00841         kIndivisibleCharacters_MojiKumiCharacterClass = 8,
00842         kPreAbbreviationSymbols_MojiKumiCharacterClass = 9,
00843         kPostAbbreviationSymbols_MojiKumiCharacterClass = 10,
00844         kJapaneseSpace_MojiKumiCharacterClass = 11,
00845         kHiragana_MojiKumiCharacterClass = 12,
00846         kDoubleByteNumber_MojiKumiCharacterClass = 13,
00847         kOtherJapaneseCharacters_MojiKumiCharacterClass = 14,
00848         kSingleByteNumber_MojiKumiCharacterClass = 15,
00849         kRomanNonSpaceCharacters_MojiKumiCharacterClass = 16,
00850         kTopOrEndOfLine_MojiKumiCharacterClass = 17,
00851         kTopOfParagraph_MojiKumiCharacterClass = 18
00852 };
00853 
00854 // ----------------------------------------------------------------------------------
00855 
00857 enum CompositeFontClassType
00858 {
00859         kCompositeFontClassOverride = 0,
00860 
00861         // Following are predefined composite font class types
00862         kCompositeFontClassBase,                                        // Kanji class
00863         kCompositeFontClassKana,                                        // Full Width
00864         kCompositeFontClassPunctuation,
00865         kCompositeFontClassFWSymbolsAndAlphabetic,      // Full Width
00866         kCompositeFontClassHWSymbolsAndAlphabetic,      // Half Width
00867         kCompositeFontClassHWNumerals,                          // Half Width
00868         kCompositeFontClassGaiji0,
00869         kCompositeFontClassGaiji1,
00870         kCompositeFontClassGaiji2,
00871         kCompositeFontClassGaiji3,
00872         kCompositeFontClassGaiji4,
00873         kCompositeFontClassGaiji5,
00874         kCompositeFontClassGaiji6,
00875         kCompositeFontClassGaiji7,
00876         kCompositeFontClassGaiji8,
00877         kCompositeFontClassGaiji9,
00878         kCompositeFontClassGaiji10,
00879         kCompositeFontClassGaiji11,
00880 
00881         kEndOfCompositeFontClassType
00882 };
00883 #ifndef __cplusplus
00884 typedef enum CompositeFontClassType CompositeFontClassType;
00885 #endif
00886 
00887 // ----------------------------------------------------------------------------------
00888 
00890 enum MojiKumiCodeClass
00891 {
00892         kOpen = 1,
00893         kClose,
00894         kNoBegin,
00895         kEndPunctuation,
00896         kMiddlePunctuation,
00897         kPeriodPunctuation,
00898         kCommaPunctuation,
00899         kNotSeparatePunctuation,
00900         kSymbolsPrecedingNumbers,
00901         kSymbolsFollowingNumbers,
00902         kIdeographic,
00903         kHiragana,
00904         kDoubleByteNumbers,
00905         kOtherJapaneseCharacters,
00906         kSingleByteNumbers,
00907         kRomanNonSpace,
00908         kLineEdgeClass,
00909         kParagraphStartClass,
00910 
00911         kEndOfCodeClasses
00912 };
00913 #ifndef __cplusplus
00914 typedef enum MojiKumiCodeClass MojiKumiCodeClass;
00915 #endif
00916 
00917 // ----------------------------------------------------------------------------------
00918 
00920 enum ClassMetricRestriction
00921 {
00922         // class metric restrictions for a composite font component.
00923         kClassMetricRestrictionNone = 0,
00924         kClassMetricRestrictionSize = 1 << 0,
00925         kClassMetricRestrictionBaseline =  1 << 1,
00926         kClassMetricRestrictionHorizontalScale =  1 << 2,
00927         kClassMetricRestrictionVerticalScale =  1 << 3,
00928         kClassMetricRestrictionCenterGlyph = 1 << 4
00929 };
00930 #ifndef __cplusplus
00931 typedef enum ClassMetricRestriction ClassMetricRestriction;
00932 #endif
00933 
00934 // ----------------------------------------------------------------------------------
00935 
00937 enum LineOrientation
00938 {
00939         kHorizontalLines = 0,
00941         kVerticalLeftToRight = 1,       
00942         kVerticalRightToLeft = 2
00943 };
00944 #ifndef __cplusplus
00945 typedef enum LineOrientation LineOrientation;
00946 #endif
00947 
00948 
00949 // ----------------------------------------------------------------------------------
00950 
00952 enum GlyphOrientation
00953 {
00955         kHorizontalGlyphs,                              
00957         kVerticalGlyphs,                        
00959         kHorizontalGlyphsRotated,
00961         kVerticalUprightRomanGlyphs
00962 };
00963 #ifndef __cplusplus
00964 typedef enum GlyphOrientation GlyphOrientation;
00965 #endif
00966 
00968 enum FrameType
00969 {
00970         kPointTextFrame = 0,
00971         kInPathTextFrame = 1,
00972         kOnPathTextFrame = 2
00973 };
00974 #ifndef __cplusplus
00975 typedef enum FrameType FrameType;
00976 #endif
00977 
00978 // ----------------------------------------------------------------------------------
00979 
00981 enum SpellCheckingResult
00982 {
00983         kNoProblems = 0,
00984         kUnknownWord = 1,       
00985         kRepeatedWords = 2,
00986         kUncappedStartOfSentence = 3,
00987         kUncappedUnknownStartOfSentence = 4
00988 };
00989 #ifndef __cplusplus
00990 typedef enum SpellCheckingResult SpellCheckingResult;
00991 #endif
00992 
00993 // ----------------------------------------------------------------------------------
00994 
00996 enum KinsokuPredefinedTag
00997 {
00998         kUserDefinedKinsokuTag = 0,
00999         kPredefinedHardKinsokuTag = 1,
01000         kPredefinedSoftKinsokuTag = 2
01001 };
01002 #ifndef __cplusplus
01003 typedef enum KinsokuPredefinedTag KinsokuPredefinedTag;
01004 #endif
01005 
01006 // ----------------------------------------------------------------------------------
01007 
01009 enum MojikumiTablePredefinedTag
01010 {
01011         kUserDefinedMojikumiTableTag = 0,
01012         kPredefinedYakumonoHankakuMojikumiTableTag = 1,
01013         kPredefinedYakumonoZenkakuMojikumiTableTag = 2,
01014         kPredefinedGyomatsuYakumonoHankakuMojikumiTableTag = 3,
01015         kPredefinedGyomatsuYakumonoZenkakuMojikumiTableTag = 4
01016 };
01017 #ifndef __cplusplus
01018 typedef enum MojikumiTablePredefinedTag MojikumiTablePredefinedTag;
01019 #endif
01020 
01021 // ----------------------------------------------------------------------------------
01022 
01024 enum ListStylePredefinedTag
01025 {
01026         kUserDefinedListStyleTag = 0,
01027         kPredefinedNumericListStyleTag = 1,
01028         kPredefinedUppercaseAlphaListStyleTag = 2,
01029         kPredefinedLowercaseAlphaListStyleTag = 3,
01030         kPredefinedUppercaseRomanNumListStyleTag = 4,
01031         kPredefinedLowercaseRomanNumListStyleTag = 5,
01032         kPredefinedBulletListStyleTag = 6
01033 };
01034 
01075 enum StreamingPolicy
01076 { 
01077         kAll                                            = 0,
01078         kOmitPredefinedData             = 1 << 0,
01079         kOmitRenderedText                       = 1 << 1,
01080         kOmitMostDocumentSettings       = 1 << 2,
01081         kOmitDictionaryProviders        = 1 << 3,
01082         kOmitTextFrameAsResource        = 1 << 4,
01083         kIncludeOnlyGivenStream         = 1 << 5,
01084     kIncludeOnlyResources       = 1 << 6,
01085         kRefResourcesByUUID                     = 1 << 7
01086         /* WARNING: New policy value has to be a power of 2, to allow bitwise operation */
01087 };
01088 
01089 //This mask shall be used in MundoNotifier::SelectionOwnedItemChanged() call back function 
01090 //to let the client know what has changed.
01091 enum OwnedItemChangeIndicator
01092 {
01093         /* WARNING: New OwnedItemChangeIndicator value has to be a power of 2, to allow bitwise operation */
01094         kNoneOwnedItem          = 0,
01095         kHyperlinkOwnedItem = 1 << 0,
01096         //In future Add other items here,update kAll accordingly.
01097         //kAllOwnedItems is bitwise OR of all the OwnedItemIndicator
01098         kAllOwnedItems          = kHyperlinkOwnedItem
01099 };
01100 
01101 /* To retrieve the text outlines for given range selectively determined by these policies  */
01102 enum OutlineExtractionPolicy
01103 {
01104     /* All the text outlines are retrieved - This is the default case */
01105     kExtractAll                 = 0,
01106     
01107     /* This policy will retrieve all the text outlines omitting the Glyph Outlines */
01108     kOmitGlyphs                 = 1 << 0,
01109     
01110     /* This policy will retrieve all the text outlines omitting the Underline Annotation Outlines */
01111     kOmitUnderlines             = 1 << 1,
01112     
01113     /* This policy will retrieve all the text outlines omitting the StrikeThrough Annotation Outlines */
01114     kOmitStrikeThrough          = 1 << 2,
01115     
01116     /* This policy will forcefully extract the Underline Annotation Outlines of the given range as if the
01117      entire text has been underlined */
01118     kForceIncludeUnderlines     = 1 << 3,
01119     
01120     /* This policy will retrieve the text annotation (underlines/StrikeThrough) in the form of Path Only.
01121      (without stroke) It will not convert the annnotations paths to full polygons.*/
01122     kAnnotationNoStrokePath     = 1 << 4,
01123     
01124     /* WARNING: New policy value has to be a power of 2, to allow bitwise operation */
01125         kExludeAnnotation = kOmitUnderlines | kOmitStrikeThrough 
01126 };
01127     
01128 // ----------------------------------------------------------------------------------
01129 
01130 /*
01131  SLOLilo enums
01132  To retrieve or check word based on equivalent forms or Not */
01133 enum AddEquivalentFormsSetting { kDoNotAddEquivalentForms, kAddEquivalentForms };
01134 enum CheckEquivalentFormsSetting { kDoNotCheckEquivalentForms, kCheckEquivalentForms };
01135 enum AddOriginalWordSetting { kDoNotAddOriginalWord, kAddOriginalWord };
01136 
01137 // ----------------------------------------------------------------------------------
01138 
01139 #ifdef __cplusplus
01140 ATE_ENUM_BIT_OPERATORS(StreamingPolicy)
01141 ATE_ENUM_BIT_OPERATORS(OutlineExtractionPolicy)
01142 #else
01143 typedef enum StreamingPolicy StreamingPolicy;
01144 typedef enum OutlineExtractionPolicy OutlineExtractionPolicy;
01145 #endif
01146 
01147 // ----------------------------------------------------------------------------------
01148 
01149 #ifdef __cplusplus
01150 }
01151 #endif
01152 
01153 #ifdef __MWERKS__
01154         #if defined(__MC68K__) || defined(__POWERPC__)
01155                 #pragma enumsalwaysint reset
01156         #endif
01157 #endif // __MWERKS__
01158 
01159 #endif //__ATETypes__


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