VFPUtils Article By: M. Asherman

  | Bottom | Unframe | Help |

SplitCon Development Tasks

Locate in Contents | (framed)

Locate in Discussion | (framed) 

Date Done
(not done)
support a way to set minimum sizes for sub-containers
In some cases, e.g. for grids, an error will be produced if one attempts to reduce the size beyond some minimum value.  A mechanism should be provided to prevent such errors when resizing is triggered by dragging a splitter.  This minor problem shows up in the grid added to XFormDBF's Fields page, if you drag the splitter all the way to the bottom.
(not done)
supply demo app controls to illustrate use of Resize methods
The SplitCon demo form would be more instructive if some sample controls were added, so that the dynamic resizing behavior could be seen clearly.  The actual Resize method code required is really quite simple, and some real examples of this should be shown.
(not done)
support context-sensitive help in the SplitCon demo app
Follow the same approach previously used to support What's This help in XFormDBF.
(not done)
supply help page(s) for the SplitCon demo app, with context ids
In addition to the existing developer-oriented help documentation, supply end-user help for the SplitCon demo application.  This will also serve to illustrate the general approach to supporting of context-sensitive "What's This" help in VFP, an issue previously raised by Nadya.
(not done)
create a compiled HTML Help file for SplitCon
Use the same approach that was done for XFormDBF help, so that both the forum and the help file share a common set of help pages.
set WhatsThisHelpId = 0 as the default for all SplitCon classes
VFP's default setting of WhatsThisHelpId = -1 makes it necessary to manually override this property on every member object if What's This help is to be supported.  This is especially annoying for variably nested objects like the SplitCon subclasses.  Changing the default to 0 to automatically propagate up the container hierarchy in search of help avoids this hassle, and it does no harm when there is no help available.
deliver latest SplitCon changes to BT server
Upload SplitCon to BT server with changes for new splitcon_3_1 subclass, fix to properly restrict dragging, and default setting of WhatsThisHelpId = 0.  Copy the latest splitcon.vcx/vct into the mdacomm directory.  Delete obsolete splitcon.txt from mdacomm, and add a link to the SplitCon forum Contents page in its place.  These changes should be delivered, setup, and tested along with the related XFormDBF Fields page changes.
(not done)
help page explaining how to use SplitCon in any VFP application
The SplitCon Help - Design Overview page describes the SplitCon demo form very briefly and its accompanying class library in some detail, but that is not enough to easily understand how to apply SplitCon to a random VFP application.  Create a separate help page that explains how to use this facility in any VFP application, covering the demo application in greater depth. 
introduce new subclass splitcon_3_1
Create a prototype split container with 3 rows and 1 column, i.e. with 2 horizontal splitters.  This will be handy for forthcoming changes to XFormDBF's Fields page.  Note that such template classes are not mandatory, but they will make it easier to assure that standard naming conventions are followed, so that the default Init logic can do all of the work to properly initialize linking properties.
restrict splitter dragging from crossing neighboring splitter bars
SplitCon supports an array of subcontainers separated by splitter bars.  However the first implementation punted on restricting movement of individual splitters so that they are confined to the space between neighboring splitters.  This worked OK for the initial applications, which required only a single splitter between 2 subcontainers.  Upcoming changes to XFormDBF's Fields page will require the introduction of a second splitter bar to divide the page into 3 subcontainers, so this old bug must now be fixed.  Note that this problem was mentioned previously in the old SplitCon documentation and task list.

I made this fix by adding SplitterBar properties for threading splitters to their neighbors.  SplitContainer.Init logic was adjusted to initialize these links.  SplitterBar.OLEGiveFeedback logic was adjusted to use these properties to respect bounds imposed by neighbors.

| Top | Unframe |


Copyright 2000- 2002, SpaceTime Systems