home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / cset21v1.zip / IBMCPP / IBMCLASS / ISETBUT.HPP < prev    next >
C/C++ Source or Header  |  1993-10-22  |  4KB  |  87 lines

  1. #ifndef _ISETBUT_
  2.   #define _ISETBUT_
  3. /*******************************************************************************
  4. * FILE NAME: isetbut.hpp                                                       *
  5. *                                                                              *
  6. * DESCRIPTION:                                                                 *
  7. *   Declaration of the class(es):                                              *
  8. *     ISetttingButtton - This is an abstract base class for the I3StateCheckBox,*
  9. *                ICheckBox, and IRadioButton control window classes.           *
  10. *                                                                              *
  11. * COPYRIGHT:                                                                   *
  12. *   Licensed Materials - Property of IBM                                       *
  13. *   (C) Copyright IBM Corporation 1992, 1993                                   *
  14. *   All Rights Reserved                                                        *
  15. *   US Government Users Restricted Rights - Use, duplication, or disclosure    *
  16. *   restricted by GSA ADP Schedule Contract with IBM Corp.                     *
  17. *                                                                              *
  18. *******************************************************************************/
  19. #ifndef _IBUTTON_
  20.   #include <ibutton.hpp>
  21. #endif
  22.  
  23. // Forward declarations for other classes:
  24. class IRectangle;
  25. #ifndef _IBITFLAG_
  26.   #include <ibitflag.hpp>
  27. #endif
  28.  
  29. /*----------------------------------------------------------------------------*/
  30. /* Align classes on four byte boundary.                                       */
  31. /*----------------------------------------------------------------------------*/
  32. #pragma pack(4)
  33.  
  34. class ISettingButton : public IButton  {
  35. typedef IButton Inherited;
  36. /*******************************************************************************
  37. * The ISettingButton class is an abstract base class for the I3StateCheckBox,  *
  38. * ICheckBox, and IRadioButton control window classes.                          *
  39. *                                                                              *
  40. * An instance of this class can not be created.                                *
  41. *                                                                              *
  42. *******************************************************************************/
  43. public:
  44. /*------------------------ Constructors ----------------------------------------
  45. | An instance of this class cannot be created.                                 |
  46. ------------------------------------------------------------------------------*/
  47.   ISettingButton();
  48.   virtual ~ISettingButton();
  49.  
  50. /*------------------------ Test/Select Button ----------------------------------
  51. | isSelected - Returns true if the button is selected.                         |
  52. | select     - Selects the button.                                             |
  53. | deselect   - Deselects the button.                                           |
  54. ------------------------------------------------------------------------------*/
  55. Boolean
  56.   isSelected() const;
  57. ISettingButton
  58.  &select(),
  59.  &deselect();
  60.  
  61. /*------------------------ Test/Set Auto Select State --------------------------
  62. | enableAutoSelect  - A virtual declaration for enabling the automatic         |
  63. |                     selection style for a button.                            |
  64. | disableAutoSelect - A virtual declaration for disabling the automatic        |
  65. |                     selection style for a button.                            |
  66. | isAutoSelect      - A virtual declaration for querying whether the           |
  67. |                     automatic selection style is set for a button.           |
  68. ------------------------------------------------------------------------------*/
  69. virtual ISettingButton&
  70.   enableAutoSelect(Boolean enable) = 0;
  71. virtual ISettingButton&
  72.   disableAutoSelect()  = 0;
  73. virtual Boolean
  74.   isAutoSelect() const = 0;
  75.  
  76. private:
  77.   ISettingButton(const ISettingButton&);
  78.   ISettingButton& operator=(const ISettingButton&);
  79. };  // class ISettingButton
  80.  
  81. /*----------------------------------------------------------------------------*/
  82. /* Resume compiler default packing.                                           */
  83. /*----------------------------------------------------------------------------*/
  84. #pragma pack()
  85.  
  86. #endif  /* _ISETBUT_ */
  87.