**********************************************************************
* DISCLAIMER OF WARRANTIES:                                          *
*                                                                    *
* The following enclosed code is sample code created by IBM          *
* Corporation.  This sample code is not part of any standard IBM     *
* product and is provided to you solely for the purpose of assisting *
* you in the development of your applications.  The code is provided *
* "AS IS", without warranty of any kind.  IBM shall not be liable    *
* for any damages arising out of your use of the sample code, even   *
* if they have been advised of the possibility of such damages       *
*                                                                    *
**********************************************************************

Lancelot: A Valiant Example

  DESCRIPTION:
    Lancelot is a complex sample intended to
    represent a typical customer application.
    Lancelot is a tool for tracking employees,
    employee time cards, and business
    projects. The main window is the launching
    point for employee queries. Actions appear
    on the menu bar, toolbar, and container
    object popup menus.  After filling in query
    criteria in the Query Personnel notebook, a
    container with employees matching your
    search criteria appears.  Actions also
    appear on the menu bar, toolbar, and
    employee object popup menus.  Specific
    employee information appears when
    opening the employee.

  CONCEPT/FEATURE:
    Lancelot uses many
    User Interface classes.  Just a few of
    these include IFrameWindow, IMenuBar,
    Infoarea, IHelp, IFont, IResourceLibrary,
    IContainerControl, IContainerObject,
    IPopupMenu, INotebook, IMultiCellCanvas,
    ISetCanvas, IProfile, IEntryField,
    IPushButton, IGraphicPushButton,
    INumericSpinButton, IComboBox, ICheckBox,
    IMenuBar, ITitle, IString, ICommandHandler,
    ICnrHandler, ICnrMenuHandler, IToolBar,
    IToolBarButton, IFlyOverHelp,
    IFlyOverHelpHandler, IGPie, IGRectangle,
    IGString, and Direct Manipulation (i.e.
    Drag/Drop).

  HOW TO BUILD THE PROJECT FROM THE COMMAND LINE:
    Note: This sample uses IHelp and thus requires headers in the SDK.

    For building the sample using RTF help,
    from within the directory containing the sample, simply type:
         NMAKE

    For building the sample using IPF help,
    from within the directory containing the sample, simply type:
         NMAKE USE_IPF=1

  HOW TO BUILD THE PROJECT FROM WITHIN THE WORKFRAME ENVIRONMENT:
    Note: This sample uses IHelp and thus requires headers in the SDK.

    Refer to the standard Workframe BUILD instructions

  HOW TO RUN THE PROJECT FROM THE COMMAND LINE:
    From within the directory containing the sample, simply type
    the name of the executable:
         LANCELOT

    Note:  When you run this application, data is stored into
           the following .INI files:

                 LSAVEQRY.INI
                 LBADGE.INI
                 LEMPL.INI
                 LACCT.INI
                 LSKILL.INI
                 LSTATUS.INI
                 LPROJECT.INI
                 LTASK.INI
                 LTIME.INI

           However on Windows, data is stored in the Windows registry
           HKEY_LOCAL_MACHINE/Software.  If you want to delete the
           data, Microsoft provides a tool that allows you to
           modify the Windows registry.

  HOW TO RUN THE PROJECT FROM WITHIN THE WORKFRAME ENVIRONMENT:
    Refer to the standard Workframe RUN instructions

  SPECIAL NOTES:
    If the sample fails to execute or
    abnormally ends, you can get
    more information about the failure
    by turning on the ICLUI trace.
    This is done by setting the
    environment variable ICLUI_TRACE
    as follows:

        set ICLUI_TRACE=ON
        set ICLUI_TRACETO=STDERR

    ICLUI_TRACETO controls where
    the trace information is reported.
    With tracing turned on, ICLUI
    exception text will be written to a
    standard error file. For example:

        sample >sample.out 2>&1

    The exception data is now in the file
    'sample.out'.

  ADDITIONAL HARDWARE/SOFTWARE REQUIREMENTS:
    Lancelot is a large application which uses many resources
    of the operating system.  Some Lancelot dialogs may not
    appear on Windows 3.x because this operating system has
    exhausted the limited resources.

  VISUALAGE FOR C++ SAMPLES INFORMATION:
    A complete listing of samples shipped with the VisualAge for C++
    product can be found in the online GUIDE TO SAMPLES.  To access
    this notebook, simply:

    -  Open the VISUALAGE FOR C++ program group in the Program
       Manager window, then
    -  Open the GUIDE TO SAMPLES notebook in the program group.

