|
FunctionalityGeometryThe split window is a window split into an N times M grid of child windows. The figure above demonstrates several things about the geometry of the split window. It's a splitwindow with a 3 times 2 grid where the panes are numbered (0,0) to (2,1). All the resize bars have the same size [rbWidth]. There is a margin [mWidth]. Visual elementsPanesThe panes are child windows of the split window and the visual appearance of these are their own responsibility. MarginsThe margins are meant to look like half a resize bar. This is only of importance if a 3D look is used for the resize bars. The margins are drawn together with the resize bars. [see properties: marginWidth] Resize barsThe resize bars are either flat or 3D. [see properties: resizebarWidth, resizeBarColor] Active resize barThe active resize bar is a line the same size as the resize bar going across the window. It is drawn when the user clicks on a resize bar and follows the cursor when the user drags the mouse. [Example] look in Word or Outlook. Resize cursorWhen the cursor is above one of the resize bars it changes to a resize cursor. The look of the resize cursor depends on what the resize bar callback predicate returns. Typically it will depend on whether the cursor is above a horizontal resize bar, a vertical resize bar or one of the crosses. BehaviourResizing using the resize bars
Visual feedback on resizingIf resizing is allowed (the splitwin_resize_cb doesn't fail) a resize cursor is drawn. When the mouse is pressed an active resize bar is drawn which follows the cursor, but stays inside the allowable resize area. Resizing the window
|