27 #ifndef _ITextSelectionSuite_ 28 #define _ITextSelectionSuite_ 30 #include "IPMUnknown.h" 31 #include "TextEditorID.h" 32 #include "ISelectionMessages.h" 68 enum { kDefaultIID = IID_ITEXTSELECTION_SUITE};
93 enum ToggleType { kFootnotesOnly, kAnchoredFramesOnly, kAnyType };
107 enum Change { kMoveSelection = 0, kMove = kMoveSelection, kReplaceSelection = kMove, kExtendSelection = 1, kExtend = kExtendSelection};
108 enum Units { kNone = 0, kCharacter, kChar = kCharacter, kWord, kLine, kSentence, kParagraph = 5, kStory = 9 };
109 enum Direction { kNext, kPrev, kStart, kEnd, kAll };
119 virtual bool16
ChangeTextSelection( Change moveOrExtend, Units textUnits, Direction direction, Selection::ScrollChoice autoScroll ) = 0;
142 Change change, Units units) = 0;
162 virtual bool16 IsTextSelectionInFootnote()
const = 0;
163 virtual bool16 IsInsertionPoint()
const = 0;
174 virtual bool16 DrawShapeDynamicTextHighlight(
GraphicsData* gd,
IShape *textFrameShape) = 0;
180 virtual RangeData GetDynamicHighlight() = 0;
182 virtual void ResetDynamicHighlight() = 0;
186 friend class TextSelectionIntegratorSuite;
187 friend class TextSelectionIntegratorSuiteTemp;
188 friend class TextCellTextSelectTracker;
189 friend class TextCellSelectTracker;
190 friend class HorizontalIBeamCrsrProvider;
191 friend class FootnoteTextSelectTracker;
192 friend class FrameShape;
193 friend class TextSelectionHighlighter;
195 friend class TableShape;
196 friend class CLineSegmentAdornment;
197 friend class MoveRowColumnTracker;
198 friend class CharacterAlternatesData;
202 #endif // _ITextSelectionSuite_