WC_SPLITPANE
styles
The splitpane control styles allow you to define orientation,
hide-ability of side panes, resizing strategies and splitter drag
styles.
Remarks:
For various reasons (like the ability to immediately respond to
orientation
changes) splitpane styles cannot be queried or set via the WinQuery/SetWindowULong() API,
but require specific
PM messages or the usage of one of the function-like macros defined for that purpose.
All the styles are mutually exclusive withing the categor they
belong to:
- SPLITS_COLUMNS (default)
- the
splitpane is divided into columns by a vertical splitter.
- SPLITS_ROWS
- the splitpane is divided into rows by a horizontal splitter.
- SPLITS_HIDENONE (default)
- the
splitter does not include any clickable area. The panes can
be dragged to the borders of the splitpane only if their minimum size
is set to zero.
- SPLITS_HIDEPANE1
- define the left/top pane as hide-able. The splitter include a
clickable area where triangle shaped arrows painted with the foreground
color show which pane can be hidden.
- SPLITS_HIDEPANE2
- define the right/bottom pane as hide-able.
- SPLITS_HIDEPANES
- equates to ( SPLITS_HIDEPANE1 | SPLITS_HIDEPANE2) making both
side
panes hide-able.
- SPLITS_PROPORTIONAL (default)
- when the size of the splitpane changes the splitter is moved
to
keep the rate of the sizes of the two panes.
- SPLITS_FIXED1
- the size of the left/top pane is kept constant, while the
size of
the other pane changes according to the splitpane size.
- SPLITS_FIXED2
- the size of the right/bottom pane is kept constant, while the
size of the other pane changes according to the splitpane size.
- SPLITS_DRAGSYSTEM (default and reccomended)
- use the default settings for window dragging, that is when Full
window drag is selected in the system settings, the side
panes size
and position changes following the splitter, otherwise only a frame is
dragged and the size panes size and position changes only when the drag
ends.
- SPLITS_DRAGSOLID
- ignore
the system settings and always drag the splitter as for Full
window drag.
- SPLITS_DRAGFRAME
- ignore the system settings and always drag the splitter as a
frame.