InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ITextFrameOptionsData.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Tetsuya Araki
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //
23 // ADOBE CONFIDENTIAL
24 //
25 //========================================================================================
26 
27 #ifndef __ITextFrameOptionsData__
28 #define __ITextFrameOptionsData__
29 
30 #include "IPMUnknown.h"
31 #include "Utils.h"
32 
33 #include "TextID.h" // IID_ITEXTFRAMEDIALOGOPTIONSDATA
34 #include "ITextInset.h" // bits
35 #include "CTextEnum.h"
36 #include "IBaselineFrameGridData.h"
37 #include "ICompositionStyle.h"
38 #include "IReferencePointData.h"
39 #include "IVerticalColumnRuleData.h"
40 
41 class PMRect;
42 class UIDList;
43 class ITextInset;
44 
71 {
72 public:
73  enum { kDefaultIID = IID_ITEXTFRAMEDIALOGOPTIONSDATA };
74 
78  virtual bool16 ProcessTextFrameOptions(UIDList& mcfList) = 0;
79 
82  virtual void Reset() = 0;
83 
86  virtual void ResetToOther(ITextFrameOptionsData *other) = 0;
87 
90  virtual bool16 GetPreviewMode() const = 0;
93  virtual void SetPreviewMode(bool16 newState) = 0;
94 
104  virtual bool16 GetForceRedundant() const = 0;
105 
109  enum SelectionTypes { allRectangles, allNonRectangles, mixedOrUnsupported, nothing };
110 
120  enum OptionState { unInitialized, mixedValues, unChanged, changed };
121 
125  LeftInvalid = ITextInset::kLeft,
126  TopInvalid = ITextInset::kTop,
127  RightInvalid = ITextInset::kRight,
128  BottomInvalid = ITextInset::kBottom,
129  LeftChanged = ITextInset::kLeft<<4,
130  TopChanged = ITextInset::kTop<<4,
131  RightChanged = ITextInset::kRight<<4,
132  BottomChanged = ITextInset::kBottom<<4
133  };
134 
135  // Columns
141  virtual OptionState GetNumberOfColumnsState() const = 0;
146  virtual bool16 GetColumnWidthIsDisplayable() const = 0;
151  virtual int32 GetNumberOfColumns() const = 0;
156  virtual void AddInNumberOfColumns(int32 numberOfColumns) = 0;
161  virtual void UpdateNumberOfColumns(int32 numberOfColumns) = 0;
162 
168  virtual OptionState GetUseFixedWidthColumnsState() const = 0;
173  virtual bool16 GetUseFixedWidthColumns() const = 0;
178  virtual void AddInUseFixedWidthColumns(bool16 useFixedWidthColumns) = 0;
183  virtual void UpdateUseFixedWidthColumns(bool16 useFixedWidthColumns) = 0;
184 
190  virtual OptionState GetColumnWidthState() const = 0;
191 
196  virtual PMReal GetColumnWidth() const = 0;
201  virtual void AddInColumnWidth(PMReal columnWidth) = 0;
206  virtual void UpdateColumnWidth(PMReal columnWidth) = 0;
207 
213  virtual OptionState GetUseFlexibleWidthColumnsState() const = 0;
218  virtual bool16 GetUseFlexibleWidthColumns() const = 0;
223  virtual void AddInUseFlexibleWidthColumns(bool16 useFlexibleWidthColumns) = 0;
228  virtual void UpdateUseFlexibleWidthColumns(bool16 useFlexibleWidthColumns) = 0;
229 
235  virtual OptionState GetFlexibleColumnWidthMaxState() const = 0;
236 
241  virtual PMReal GetFlexibleColumnWidthMax() const = 0;
246  virtual void AddInFlexibleColumnWidthMax(PMReal flexibleColumnWidthMax) = 0;
251  virtual void UpdateFlexibleColumnWidthMax(PMReal flexibleColumnWidthMax) = 0;
252 
258  virtual OptionState GetGutterWidthState() const = 0;
263  virtual PMReal GetGutterWidth() const = 0;
268  virtual void AddInGutterWidth(PMReal gutterWidth) = 0;
273  virtual void UpdateGutterWidth(PMReal gutterWidth) = 0;
274 
275  // VJ
281  virtual OptionState GetVerticalJustifyState() const = 0;
286  virtual Text::VerticalJustification GetVerticalJustify() const = 0;
291  virtual void AddInVerticalJustify(Text::VerticalJustification verticalJustify) = 0;
296  virtual void UpdateVerticalJustify(Text::VerticalJustification verticalJustify) = 0;
297 
303  virtual OptionState GetMaxVJInterParaSpaceState() const = 0;
308  virtual PMReal GetMaxVJInterParaSpace() const = 0;
313  virtual void AddInMaxVJInterParaSpace(PMReal maxVJInterParaSpace) = 0;
318  virtual void UpdateMaxVJInterParaSpace(PMReal maxVJInterParaSpace) = 0;
319 
325  virtual OptionState GetVJBalanceColumnsState() const = 0;
330  virtual bool16 GetVJBalanceColumns() const = 0;
335  virtual void AddInVJBalanceColumns(bool16 vjBalanceColumns) = 0;
340  virtual void UpdateVJBalanceColumns(bool16 vjBalanceColumns) = 0;
341 
342  // FLO
348  virtual OptionState GetFirstLineOffsetState() const = 0;
353  virtual Text::FirstLineOffsetMetric GetFirstLineOffset() const = 0;
358  virtual void AddInFirstLineOffset(Text::FirstLineOffsetMetric firstLineOffset) = 0;
363  virtual void UpdateFirstLineOffset(Text::FirstLineOffsetMetric firstLineOffset) = 0;
364 
370  virtual OptionState GetMinFirstLineOffsetState() const = 0;
375  virtual PMReal GetMinFirstLineOffset() const = 0;
380  virtual void AddInMinFirstLineOffset(PMReal minFirstLineOffset) = 0;
385  virtual void UpdateMinFirstLineOffset(PMReal minFirstLineOffset) = 0;
386 
387  // Misc
393  virtual OptionState GetIgnoreWrapState() const = 0;
398  virtual bool16 GetIgnoreWrap() const = 0;
403  virtual void AddInIgnoreWrap(bool16 ignoreWrap) = 0;
408  virtual void UpdateIgnoreWrap(bool16 ignoreWrap) = 0;
409 
429  virtual OptionState GetInsetsState(int32 *eachInset = nil) const = 0;
443  virtual PMRect GetInsets() const = 0;
457  virtual void AddInInsets(PMRect insets) = 0;
471  virtual void UpdateInsetLeft(PMReal left) = 0;
485  virtual void UpdateInsetTop(PMReal top) = 0;
499  virtual void UpdateInsetRight(PMReal right) = 0;
513  virtual void UpdateInsetBottom(PMReal bottom) = 0;
527  virtual void UpdateInsets(PMRect insets) = 0;
528 
533  virtual int32 GetIndividualInsetsInvalidity() const = 0;
534 
540  virtual bool16 UserChangedWidth() const = 0;
546  virtual void SetUserChangedWidth(bool16 changed) = 0;
547 
553  virtual SelectionTypes GetSelectionType() const = 0;
559  virtual void AddInSelectionType(SelectionTypes selectionType) = 0;
560 
561  //**************************
572  virtual bool16 GetUseCustomBaselineGridFlag() const = 0;
577  virtual void AddInUseCustomBaselineGridFlag(bool16 flag) = 0;
582  virtual void UpdateUseCustomBaselineGridFlag(bool16 flag) = 0;
583 
584  // FLO
590  virtual OptionState GetRelativeOptionState() const = 0;
595  virtual IBaselineFrameGridData::RelativeOption GetRelativeOption() const = 0;
600  virtual void AddInRelativeOption(IBaselineFrameGridData::RelativeOption relativeOption) = 0;
605  virtual void UpdateRelativeOption(IBaselineFrameGridData::RelativeOption relativeOption) = 0;
606 
612  virtual OptionState GetStartingOffsetState() const = 0;
617  virtual PMReal GetStartingOffset() const = 0;
622  virtual void AddInStartingOffset(PMReal staringOffset) = 0;
627  virtual void UpdateStartingOffset(PMReal staringOffset) = 0;
628 
629  // Misc
635  virtual OptionState GetIncrementState() const = 0;
640  virtual PMReal GetIncrement() const = 0;
645  virtual void AddInIncrement(PMReal increment) = 0;
650  virtual void UpdateIncrement(PMReal increment) = 0;
651 
657  virtual OptionState GetBaselineFrameGridColorState() const = 0;
662  virtual UID GetBaselineFrameGridColor() const = 0;
667  virtual void AddInBaselineFrameGridColor(UID colorUID) = 0;
672  virtual void UpdateBaselineFrameGridColor(UID colorUID) = 0;
673 
678  virtual bool16 ProcessBaselineFrameGridOptions(UIDList& mcfList, bool16 convertColorUIDToLayerColor) = 0;
679 
680  // AS
686  virtual OptionState GetAutoSizeDimensionState() const = 0;
691  virtual Text::AutoSizeDimension GetAutoSizeDimension() const = 0;
696  virtual void AddInAutoSizeDimension(Text::AutoSizeDimension autoSizeDimension) = 0;
701  virtual void UpdateAutoSizeDimension(Text::AutoSizeDimension autoSizeDimension) = 0;
702 
708  virtual OptionState GetAutoSizeRefPointState() const = 0;
718  virtual void AddInAutoSizeRefPoint(IReferencePointData::ReferencePointPosition autoSizeRefPoint) = 0;
723  virtual void UpdateAutoSizeRefPoint(IReferencePointData::ReferencePointPosition autoSizeRefPoint) = 0;
724 
730  virtual OptionState GetAutoSizeHasMinHeightState() const = 0;
735  virtual bool16 GetAutoSizeHasMinHeight() const = 0;
740  virtual void AddInAutoSizeHasMinHeight(bool16 autoSizeHasMinHeight) = 0;
745  virtual void UpdateAutoSizeHasMinHeight(bool16 autoSizeHasMinHeight) = 0;
746 
752  virtual OptionState GetAutoSizeMinHeightValueState() const = 0;
757  virtual PMReal GetAutoSizeMinHeightValue() const = 0;
762  virtual void AddInAutoSizeMinHeightValue(PMReal autoSizeMinHeightValue) = 0;
767  virtual void UpdateAutoSizeMinHeightValue(PMReal autoSizeMinHeightValue) = 0;
768 
774  virtual OptionState GetAutoSizeHasMinWidthState() const = 0;
779  virtual bool16 GetAutoSizeHasMinWidth() const = 0;
784  virtual void AddInAutoSizeHasMinWidth(bool16 autoSizeHasMinWidth) = 0;
789  virtual void UpdateAutoSizeHasMinWidth(bool16 autoSizeHasMinWidth) = 0;
790 
796  virtual OptionState GetAutoSizeMinWidthValueState() const = 0;
801  virtual PMReal GetAutoSizeMinWidthValue() const = 0;
806  virtual void AddInAutoSizeMinWidthValue(PMReal autoSizeMinWidthValue) = 0;
811  virtual void UpdateAutoSizeMinWidthValue(PMReal autoSizeMinWidthValue) = 0;
812 
817  virtual OptionState GetAutoSizeNoLineBreakState() const = 0;
822  virtual bool16 GetAutoSizeNoLineBreak() const = 0;
827  virtual void AddInAutoSizeNoLineBreak(bool16 autoSizeNoLineBreak) = 0;
832  virtual void UpdateAutoSizeNoLineBreak(bool16 autoSizeNoLineBreak) = 0;
833  // Text Frame Footnotes section
834 
844  virtual bool16 GetFootnoteOptionsHasEnableOverrides() const = 0;
849  virtual void AddInFootnoteOptionsHasEnableOverrides(bool16 enableOverrides) = 0;
854  virtual void UpdateFootnoteOptionsHasEnableOverrides(bool16 enableOverrides) = 0;
864  virtual bool16 GetFootnoteOptionsHasSpanFootnotesAcross() const = 0;
869  virtual void AddInFootnoteOptionsHasSpanFootnotesAcross(bool16 spanFootnotesAcross) = 0;
874  virtual void UpdateFootnoteOptionsHasSpanFootnotesAcross(bool16 spanFootnotesAcross) = 0;
884  virtual PMReal GetFootnoteOptionsMinimumSpacingValue() const = 0;
889  virtual void AddInFootnoteOptionsMinimumSpacingValue(PMReal minimumSpacing) = 0;
894  virtual void UpdateFootnoteOptionsMinimumSpacingValue(PMReal minimumSpacing) = 0;
909  virtual void AddInFootnoteOptionsSpaceBetweenFootnotesValue(PMReal spaceBetweenFootnotes) = 0;
914  virtual void UpdateFootnoteOptionsSpaceBetweenFootnotesValue(PMReal spaceBetweenFootnotes) = 0;
918  virtual bool16 ProcessTextFrameFootnoteOptions(UIDList& mcfList) = 0;
919 
925  virtual OptionState GetUseVerticalRuleState() const = 0;
930  virtual bool16 GetUseVerticalRule() const = 0;
935  virtual void AddInUseVerticalRule(bool16 useVerticalRule) = 0;
940  virtual void UpdateUseVerticalRule(bool16 useVerticalRule) = 0;
941 
947  virtual OptionState GetVerticalRuleOffsetState() const = 0;
952  virtual PMReal GetVerticalRuleOffset() const = 0;
957  virtual void AddInVerticalRuleOffset(PMReal verticalRuleOffset) = 0;
962  virtual void UpdateVerticalRuleOffset(PMReal verticalRuleOffset) = 0;
963 
969  virtual OptionState GetVerticalRuleTopInsetState() const = 0;
974  virtual PMReal GetVerticalRuleTopInset() const = 0;
979  virtual void AddInVerticalRuleTopInset(PMReal verticalRuleTopInset) = 0;
984  virtual void UpdateVerticalRuleTopInset(PMReal verticalRuleTopInset) = 0;
985 
990  virtual OptionState GetVerticalRuleInsetChainState() const = 0;
995  virtual void AddInVerticalRuleInsetChain(bool16 isChained) = 0;
1000  virtual void UpdateVerticalRuleInsetChain(bool16 isChained) = 0;
1001 
1006  virtual bool16 GetVerticalRuleInsetChain() const = 0;
1007 
1013  virtual OptionState GetVerticalRuleBottomInsetState() const = 0;
1018  virtual PMReal GetVerticalRuleBottomInset() const = 0;
1023  virtual void AddInVerticalRuleBottomInset(PMReal verticalRuleBottomInset) = 0;
1028  virtual void UpdateVerticalRuleBottomInset(PMReal verticalRuleBottomInset) = 0;
1029 
1035  virtual OptionState GetVerticalRuleStrokeWidthState() const = 0;
1040  virtual PMReal GetVerticalRuleStrokeWidth() const = 0;
1045  virtual void AddInVerticalRuleStrokeWidth(PMReal verticalRuleStrokeWidth) = 0;
1050  virtual void UpdateVerticalRuleStrokeWidth(PMReal verticalRuleStrokeWidth) = 0;
1051 
1057  virtual OptionState GetVerticalRuleStrokeColorState() const = 0;
1062  virtual UID GetVerticalRuleStrokeColor() const = 0;
1067  virtual void AddInVerticalRuleStrokeColor(UID verticalRuleStrokeColorUID) = 0;
1072  virtual void UpdateVerticalRuleStrokeColor(UID verticalRuleStrokeColorUID) = 0;
1073 
1078  virtual OptionState GetVerticalRuleStrokeTypeState() const = 0;
1083  virtual void AddInVerticalRuleStrokeType(ICompositionStyle::StrokeType verticalRuleStrokeType) = 0;
1088  virtual void UpdateVerticalRuleStrokeType(ICompositionStyle::StrokeType verticalRuleStrokeType) = 0;
1089 
1095 
1100  virtual OptionState GetVerticalRuleTintState() const = 0;
1105  virtual void AddInVerticalRuleTint(PMReal tint) = 0;
1110  virtual void UpdateVerticalRuleTint(PMReal tint) = 0;
1111 
1116  virtual PMReal GetVerticalRuleTint() const = 0;
1117 
1122  virtual OptionState GetVerticalRuleOverprintState() const = 0;
1127  virtual void AddInVerticalRuleOverprint(bool16 isOverprint) = 0;
1132  virtual void UpdateVerticalRuleOverprint(bool16 isOverprint) = 0;
1133 
1138  virtual bool16 GetVerticalRuleOverprint() const = 0;
1139 
1144  virtual OptionState GetVerticalRuleHeightModeState() const = 0;
1149  virtual void AddInVerticalRuleHeightMode(IVerticalColumnRuleData::VerticalRuleHeightMode verticalRuleHeightMode) = 0;
1154  virtual void UpdateVerticalRuleHeightMode(IVerticalColumnRuleData::VerticalRuleHeightMode verticalRuleHeightMode) = 0;
1155 
1161 
1165  virtual bool16 ProcessTextFrameVerticalRuleOptions(UIDList& mcfList) = 0;
1166 
1167 
1168 };
1169 
1170 #endif // __ITextFrameOptionsData__