home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool.zip / OOL / include / xuserbtn.h < prev    next >
Text File  |  1997-02-23  |  2KB  |  56 lines

  1. #ifndef __OOL_XUSERBUTTON_H__
  2. #define __OOL_XUSERBUTTON_H__
  3.  
  4. /*===========================================================================*/
  5. /* OOL ------------------- the Open Object Library ------------- OS/2 Beta 1 */
  6. /*===========================================================================*/
  7. /*                              class: XUserButton                           */
  8. /*                       derived from: XSettingButton                        */
  9. /*                        last update: 12/96                                 */
  10. /*                      programmed by: Stefan von Brauk (sbrauk@gwdg.de)     */
  11. /*===========================================================================*/
  12.  
  13.  
  14.  
  15. #include "xsetbtn.h"
  16. #include "xtext.h"
  17. #include "xgraphdv.h"
  18.  
  19. class XBitmap;
  20. class XLine;
  21.  
  22.    #define BU_TWOSTATE         0x8000
  23.  
  24. class _export_ XUserButton: public XSettingButton
  25. {
  26.       friend XBitmap;
  27.       //for internal use only:
  28.       friend class userbtnhandler;
  29.       friend class userbtnmousehandler;
  30.       char isPressed;
  31.       XText * text;
  32.         XGraphicDevice * graph;
  33.       LONG style;
  34.       char buffer;
  35.         XLine * line1, *line2, *line3, *line4;
  36.    protected:
  37.       XBitmap * bmp[2];
  38.       void Draw( void );
  39.         void Setup( );
  40.    public:
  41.       XUserButton( const XWindow * w, const XRect * r, const LONG id = 0, const LONG style = WIN_VISIBLE, const char * text = NULL, const SHORT yOff = 0);
  42.       virtual ~XUserButton();
  43.       virtual void GetText( XString * buffer );
  44.         XBitmap * GetBitmapPointer( UCHAR index) { if(index == 0 || index == 1) return bmp[index]; else return NULL; }
  45.         XGraphicDevice * GetGraphPointer() { return graph; }
  46.         XText * GetTextPointer(void) { return text; }
  47.       virtual BOOL IsSelected( void ) const ;
  48.       void SetBitmap( const XBitmap *, const UCHAR index = 0);
  49.       virtual void Select( BOOL select = TRUE);
  50.       virtual void SetText( const char * text);
  51.       void SetTextStyle( const LONG t) { ;}
  52.       virtual void Toggle(void);
  53. };
  54.  
  55. #endif
  56.