home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mle.zip / MLE.HPP < prev    next >
Text File  |  1996-03-21  |  4KB  |  79 lines

  1. /*******************************************************************************
  2. * FILE NAME: mle.hpp                                                           *
  3. *                                                                              *
  4. * DESCRIPTION:                                                                 *
  5. *   Declaration of the class:                                                  *
  6. *     MultiLineEdit - IMultiLineEdit with a handler to support                 *
  7. *                     selectedText notification.                               *
  8. *                                                                              *
  9. * DISCLAIMER OF WARRANTIES:                                                    *
  10. *    The following [enclosed] code is sample code created by IBM               *
  11. *    Corporation.  This sample code is not part of any standard IBM product    *
  12. *    and is provided to you solely for the purpose of assisting you in the     *
  13. *    development of your applications.  The code is provided "AS IS",          *
  14. *    without warranty of any kind.  IBM shall not be liable for any damages    *
  15. *    arising out of your use of the sample code, even if they have been        *
  16. *    advised of the possibility of such damages.                               *
  17. ********************************************************************************/
  18. #ifndef _MULTILINEEDIT_
  19. #define _MULTILINEEDIT_
  20.  
  21. #ifndef _IMLE_
  22. #include <imle.hpp>
  23. #endif
  24.  
  25. #ifndef _IRECT_
  26. #include <irect.hpp>
  27. #endif
  28.  
  29. //forward class references
  30. class MLEMouseClickHandler;
  31.  
  32. /*----------------------------------------------------------------------------*/
  33. /* Align classes on four byte boundary.                                       */
  34. /*----------------------------------------------------------------------------*/
  35. #pragma pack(4)
  36.  
  37. //*****************************************************************************
  38. // Class definition for MultiLineEdit
  39. //*****************************************************************************
  40. class MultiLineEdit : public IMultiLineEdit {
  41. public:
  42.    //---------------------------------------------------------------------------
  43.    // Constructors / destructors
  44.    //---------------------------------------------------------------------------
  45.    MultiLineEdit(
  46.       unsigned long id = 15000,
  47.       IWindow* parent = IWindow::desktopWindow(),
  48.       IWindow* owner = 0,
  49.       const IRectangle& framingSpec = IRectangle(),
  50.       const IMultiLineEdit::Style& style = IMultiLineEdit::defaultStyle());
  51.  
  52.    virtual  ~MultiLineEdit();
  53.  
  54.    //---------------------------------------------------------------------------
  55.    // public member functions
  56.    //---------------------------------------------------------------------------
  57.  
  58.    //---------------------------------------------------------------------------
  59.    // public member data
  60.    //---------------------------------------------------------------------------
  61.    static INotificationId const selectedTextId;
  62.  
  63. private:
  64.    //---------------------------------------------------------------------------
  65.    // private member data
  66.    //---------------------------------------------------------------------------
  67.    static unsigned long partWindowId;
  68.    MLEMouseClickHandler *iSelectedTextHandler;
  69.  
  70. };   //MultiLineEdit
  71.  
  72.  
  73. /*----------------------------------------------------------------------------*/
  74. /* Resume compiler default packing.                                           */
  75. /*----------------------------------------------------------------------------*/
  76. #pragma pack()
  77.  
  78. #endif
  79.