home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / UILREA.ME < prev    next >
Text File  |  1993-05-05  |  6KB  |  186 lines

  1.  ==============================================================================
  2.  Input for combined readme for the Maxine external beta
  3.    from the IBM C/C++ Tools: User Interface Class Library
  4.  ==============================================================================
  5.  
  6.  
  7.  NEW FEATURES
  8.  _____________
  9.  
  10.  USER INTERFACE CLASS LIBRARY:
  11.  
  12.  Note: A detailed list of changes is provided in the file UILCHGS.LST.
  13.  
  14.  1. Obsolete classes
  15.  
  16.     a) Drag-drop
  17.  
  18.        Drag-drop and container drag-drop classes have been removed.  They
  19.        are currently being redesigned to allow for greater portability in
  20.        the future.
  21.  
  22.     b) IFillBox
  23.  
  24.        This class has been merged with IStaticText.
  25.  
  26.  2. New Classes
  27.  
  28.     a) IPageHandle
  29.  
  30.        Class to represent a page in a notebook.  Generally this class can be
  31.        used similarly to the INotebook::Cursor class to identify a page.
  32.        However, only this class is returned to identify a page queried from
  33.        the notebook.  Specific information about a page can be obtained by
  34.        calling the INotebook::pageSettings function, passing it an
  35.        IPageHandle.
  36.  
  37.     b) IMenu::Cursor
  38.  
  39.        Cursor class to iterate items in a menu.
  40.  
  41.     c) ISpinButton::Cursor
  42.  
  43.        Cursor class to iterate entries in the spin button.
  44.  
  45.     d) ISubMenu::Cursor
  46.  
  47.        Cursor class to iterate submenu items.
  48.  
  49.  3. Interface Changes
  50.  
  51.     a) Renaming
  52.  
  53.        Several functions and styles have been renamed for consistency,
  54.        including the change of occurences of "ownerDraw" to "drawItem".
  55.  
  56.     b) Corrections to the use of const
  57.  
  58.        Several functions and function arguments were made constant, as
  59.        appropriate to their use.
  60.  
  61.     c) IBitmapControl / IIconControl
  62.  
  63.        These classes have been changed to inherit from IStaticText.  This
  64.        allows text to be displayed with either a color-filled background,
  65.        an icon as its background, or a bitmap as its background.  The text
  66.        can optionally be omitted.
  67.  
  68.     d) Event posting and sending
  69.  
  70.        The functionality for posting and sending events has been moved from
  71.        the IEvent class to IWindowHandle and IMessageQueueHandle.  This
  72.        functionality in IWindow remains as well.
  73.  
  74.     e) IFrameWindow
  75.  
  76.        Frame windows now allow an IWindow (previsously an IControl) to be
  77.        specified as a client area or an extension of the frame.
  78.  
  79.     f) IKeyboardEvent
  80.  
  81.        The isKeyCode() testing function has been replaced by individual
  82.        functions that test for specific information about the event (for
  83.        example, isScanCode()).
  84.  
  85.     g) IKeyboardHandler
  86.  
  87.        This class provides additional virtual functions to allow for easier
  88.        handling of specific types of keyboard events (for example, the
  89.        characterPress() function can be overridden to only process presses
  90.        of data keys).
  91.  
  92.     h) INotebook::PageSettings
  93.  
  94.        The PageSettings class replaces the Page class.  This settings class
  95.        is to be used to specify the characteristics of a page that is to be
  96.        added to a notebook, or to return the characteristics of an existing
  97.        page in the notebook.  Changes to an existing page in a notebook can
  98.        only be made by calling "set" functions of INotebook.
  99.  
  100.     i) IMenu / IMenuItem
  101.  
  102.        The IMenuItem class has been changed to act as a settings class,
  103.        similar to the INotebook::PageSettings class.  Thus the IMenuItem
  104.        class is to be used to specify the characteristics of an item that is
  105.        to be added to a menu, or to return the characteristics of a item in
  106.        the menu.  Changes to an existing item in a menu can only be made by
  107.        calling functions of IMenu.  Items in a menu are iterated using the
  108.        IMenu::Cursor class.
  109.  
  110.     j) IMenuBar
  111.  
  112.        Additional styles and style-related functions have been added to this
  113.        class.
  114.  
  115.        Additionally, various IMenuItem enumerations have been replaced by
  116.        styles.
  117.  
  118.  4. Other Changes
  119.  
  120.     a) Static library names
  121.  
  122.        IBASE.LIB and IBASEAPP.LIB have been replaced by DDE4MUIB.LIB.
  123.        IBASECTL.LIB and ICNR.LIB have been replaced by DDE4MUIC.LIB.
  124.        IDDE.LIB has been replaced by DDE4MUID.LIB.
  125.        IDRAG.LIB has been removed (see information on drag-drop classes
  126.        above).
  127.  
  128.  
  129.  RELEASE CONSIDERATIONS:
  130.  _______________________
  131.  
  132.  USER INTERFACE CLASS LIBRARY:
  133.  
  134.  1. Using the Class Library DLL
  135.  
  136.     Any code using the User Interface class library that is built into a
  137.     .dll must link to the class library dynamic link library, DDE4MUII.DLL.
  138.     This means that the application .dll must be linked with the DDE4MUII.LIB
  139.     export library instead of the static object libraries (DDE4MUIB.LIB,
  140.     DDE4MUIC.LIB, and DDE4MUID.LIB).
  141.  
  142.     Additionally, if the application .exe is linked to a .dll built with
  143.     DDE4MUII.LIB, the .exe also must be linked with DDE4MUII.LIB rather than
  144.     with the class library static object libraries.  In either case, an .exe
  145.     cannot be linked to both the class library .dll and any of its static
  146.     object libraries -- only one or the other can be used at any one time.
  147.  
  148.     The above are permanent restrictions, and the results of doing otherwise
  149.     are unpredictable.
  150.  
  151.  2. Known problems
  152.  
  153.     a) Colors and fonts
  154.  
  155.        Setting colors and fonts does not work reliably.
  156.  
  157.     b) IStaticText painting
  158.  
  159.        Painting performance of IStaticText objects is poor because of
  160.        exceptions being internally thrown and caught.
  161.  
  162.     c) DLL load time
  163.  
  164.        This performance issue is being actively investigated.
  165.  
  166.  3. Future Changes
  167.  
  168.     The class names, function names and function arguments are subject
  169.     to change.  Changes may result from IBM Quality and Usability reviews,
  170.     functional corrections, problem fixes, or feedback from beta users.
  171.  
  172.  
  173.  DOCUMENTATION
  174.  _____________
  175.  
  176.  The following documentation is provided with this driver in .INF format.
  177.  Use the  view  command to read these files:
  178.  
  179.    DDE4UIL.INF  - IBM C/C++ Tools: User Interface Class Library Reference
  180.  
  181.  The following documentation is provided in LIST3820 format:
  182.  
  183.    DDE4UIL    -  IBM C/C++ Tools: User Interface Class Library Reference
  184.    DDE4UILG   -  IBM C/C++ Tools: User Interface Class Library Guide
  185.  
  186.