TSlidePanel
Version 1.00
by Pablo Pissanetzky

pablo@neosoft.com
http://www.neosoft.com/~pablo

Description
-----------

TSlidePanel is a TPanel descendant that allows sliding panels at run time.
It can be used to split windows into separate panes ala Windows Explorer,
or for sliding toolbars ala Internet Explorer 3.0.

Terms
-----

TSlidePanel is freeware and comes with complete source code.
You are free to redistribute as long as the author's name is kept with
all the included files. If you redistribute a modified copy, let me know.

Installation
------------

TSlidePanel installs the same as any other Delphi component.
By default, TSlidePanel will be placed in the Standard page.

Properties
----------

TSlidePanel has all the properties of TPanel and a few new ones:

HandlePosition : THandlePosition
type THandlePosition = ( hpLeft , hpRight , hpTop , hpBottom );

  HandlePosition determines where the handle of the panel will be and in which
  direction, the panel will slide.

HandleVisible : Boolean;

  If True, the handle will be visible, otherwise it will not.

MaxSize : Integer;

  The maximum size of the panel. Either witdh or height depending on orientation.
  The panel will not expand beyond this amount. Set it to 0 for no maximum.
  The panel will stay within the boundaries of its parent.

MinSize : Integer;

  The Panel will not shrink below this amount, the default min size is enough to
  just show the handle.

SlideType : TSlideType;
TSlideType = ( stFull , stLine );

  Determines behavior while the panel is sliding.
  stFull will adjust the panel as the mouse is being dragged, much like
  Internet Explorer 3.0's toolbar. It is not recommended using stFull for large
  panels as the drawing may be a bit choppy.
  stLine will display a line when the user clicks the mouse down on the handle
  and only the line will slide. When the user releases the mouse button, the
  panel will be resized. Much like the Windows Explorer multi pane window.

Hints
-----

To create a multi pane window, first place a normal panel on a form. Set the
panel's Align property to alClient. Then drop a TSlidePanel inside the panel.
Set the TSlidePanel's Align property to alLeft, its HandlePosition to hpRight,
and the SlideType to stLine. Then drop a tree view inside the TSlidePanel and
set the tree view's Align property to alClient. Then, drop a ListView inside the
main panel and set its Align property to alClient. That's It! 0 Code.


Enjoy,
Pablo.







