24 #ifndef __ITabRulerData__ 25 #define __ITabRulerData__ 27 #include "IPMUnknown.h" 30 #include "ICompositionStyle.h" 40 class TabRulerItemTable;
42 const PMReal kTabRulerUnclearIndent = -1.0;
54 enum TabState { kOff, kOn, kMulti, kDragged, kSelected };
55 virtual void SetTabStopTable(
const TabStopTable &rTable ) = 0;
56 virtual bool16 GetTabStopTable(
TabStopTable *pTable )
const = 0;
59 virtual void SelectItem(
const TabRulerItem *pItem ) = 0;
69 virtual bool16 SetNewTabStop(
const TabRulerItem &rNewTabStop, bool16 bSelect = kTrue,
TabStopTable *pDeleted = nil ) = 0;
73 virtual bool16
MoveTabRulerItem(
const TabRulerItem &rItem,
PMReal nNewPosition, bool16 bDraw = kTrue,
TabStopTable *pDeleted = 0, bool16 bConstrainLeftIndent = kTrue ) = 0;
74 virtual bool16 RemoveTabStop(
const TabRulerItem &rStop ) = 0;
83 virtual PMString GetDefaultTabLeader()
const = 0;
87 virtual bool16 SetFirstIndent(
PMReal nNewFirst, bool16 bConstrainedByLeftIndent = kTrue ) = 0;
88 virtual PMReal GetFirstIndent()
const = 0;
89 virtual bool16 SetLeftIndent(
PMReal nNew, bool16 bConstrainLeftIndent = kTrue ) = 0;
90 virtual PMReal GetLeftIndent()
const = 0;
91 virtual bool16 SetRightIndent(
PMReal nNew ) = 0;
92 virtual PMReal GetRightIndent()
const = 0;
93 virtual bool16 SetLeftMargin(
PMReal nNew ) = 0;
94 virtual PMReal GetLeftMargin()
const = 0;
95 virtual bool16 SetRightMargin(
PMReal nNew ) = 0;
96 virtual PMReal GetRightMargin()
const = 0;
101 virtual PMReal GetScale()
const = 0;
109 virtual void SetDragItem(
const TabRulerItem *pItem ) = 0;
110 virtual const TabRulerItem * GetDragItem()
const = 0;
128 virtual void SetDiffFrames(
PMReal diff) = 0;
129 virtual PMReal GetDiffFrames()
const = 0;
131 virtual void SetFrameBoxWidth(
PMReal width) = 0;
132 virtual PMReal GetFrameBoxWidth()
const = 0;
138 const PMReal kTabRulerDefaultRightMargin = 216.0;