Short description of the TRuler and TTabRuler components
(extract from the help file)


The TRuler component is a MS style ruler bar, which is used to reflect the
layout and scale of a text or graphic window. The value of the Kind property
determines if the ruler bar is horizontal or vertical.

To determine the virtual unit in which all layout properties are specified,
set the BaseExtent and PixelExtent properties to the desired ratio. And to
determine the virtual unit in which all scale properties are specified, set
the ScaleExtent and ScalePixelExtent properties to the desired ratio.

The Size, Min and Max property values determine the size and margins of the
virtual window. You can set and scroll the origin position of the virtual
window with the BaseOrigin and PixelOrigin properties.

The ScaleDivision, ScaleInterval and ScaleUnit property values determine the
intervals and numbering of the ruler scale. You can set and scroll the origin
position of the scale with the ScaleOrigin property.

You can use the MousePos and CursorPos properties to show the positions of
the mouse and a text cursor.


The TTabRuler component is a ruler bar with complete programmable and
user-interactive tabulator support while maintaining all the functionality
of the TRuler component.

To prepare for tabulator support, set the TabList and EditTabList properties
to two variables of the type TTabList. Your application can also set a separate
list of tabulators for each paragraph with the TabList property.

In the OnTabChange event handler, you write the code that determines how the
associated window behaves in response to the user finally adding, moving or
removing tabulators in the ruler bar. To save the old tabulators for an undo
function, you can write code in the OnTabChanging event handler. In the
OnEditTabChange and OnEditTabChanging event handlers, you can write the code
that determines how the window behaves in response to the user currently
adding, moving or removing tabulators in the ruler bar.

You determine the grid spacing for selecting or adding a tabulator when the
user clicks in the ruler bar with the value of the TabPrecision property.
The value of the TabKind property determines the kind of the tabulator when
the user adds one using the mouse.

To set a default tabulator you can use the DefaultTabPos property.

You can add, delete, and move tabulators using the AddTabPos, DeleteTab, and
ChangeTabPos methods. The ClearTabList method clears all the tabulators, and
the MoveAllTabsBy method moves all the tabulators in a list of tabulators.
The TabCount property contains the number of tabulators in the list. Each
tab ruler bar component has a Tabs property that lets you access a particular
tabulator by its index in the list of tabulators. To find from a specific text
position the next tabulator in a list, use the FindNextTabPos method.

You can assign one list of tabulators to another using the AssignTabs method.