home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool.zip / OOL / include / xscrlwnd.h < prev    next >
C/C++ Source or Header  |  1997-03-07  |  2KB  |  63 lines

  1. #ifndef __OOL_XSCROLLWND_H__
  2. #define __OOL_XSCROLLWND_H__
  3.  
  4. /*===========================================================================*/
  5. /* OOL ------------------- the Open Object Library ------------- OS/2 Beta 1 */
  6. /*===========================================================================*/
  7. /*                              class: XScrollWindow                         */
  8. /*                       derived from: XFrameWindow                          */
  9. /*                        last update: 12/96                                 */
  10. /*                      programmed by: Stefan von Brauk (sbrauk@gwdg.de)     */
  11. /*===========================================================================*/
  12.  
  13.  
  14. #include "xfrmwnd.h"
  15.  
  16.  
  17. class XScrollBar;
  18. class XResource;
  19. class XSize;
  20.  
  21. class _export_ XScrollWindow: public XFrameWindow
  22. {
  23.       friend class scrollhandler;
  24.    private:
  25.       void AddDummy(void);
  26.       void DeleteDummy( void);
  27.    protected:
  28.       void CalcHorzSize( void );
  29.       void CalcVertSize( void );
  30.       LONG virtualX, virtualY, scrollPosX, scrollPosY;
  31.       SHORT xStep, yStep, xPage, yPage;
  32.       SWP clientSwp;
  33.    public:
  34.       XScrollWindow( const XResource * resource = NULL,
  35.                  const char * title=NULL,
  36.                  const ULONG createstyle = XFrameWindow::defaultStyle,
  37.                  const XRect * rec = NULL,
  38.                  const XFrameWindow * parent = NULL,
  39.                  const BOOL buildFromResource = FALSE,
  40.                  const BOOL animate = FALSE);
  41.       virtual ~XScrollWindow();
  42.       void AddVertScroller( void );
  43.       void AddHorzScroller( void );
  44.       void DeleteVertScroller( void );
  45.       void DeleteHorzScroller( void );
  46.       void DoSize( XSize*);
  47.       LONG GetHorzPos( void ) { return scrollPosX; }
  48.       XScrollBar * GetHorzScroller(void) { return horz; }
  49.       LONG GetVertPos( void ) { return scrollPosY; }
  50.       XScrollBar * GetVertScroller(void) { return vert; }
  51.       virtual void HScroll( LONG );
  52.       void SetVirtualX( const LONG x);
  53.       void SetVirtualY( const LONG y);
  54.       void SetXPageSize( const SHORT p) { xPage = p; }
  55.       void SetYPageSize( const SHORT p) { yPage = p; }
  56.       void SetXStepSize( const SHORT p) { xStep = p; }
  57.       void SetYStepSize( const SHORT p) { yStep = p; }
  58. ///      virtual MRESULT HandleMessage(ULONG msg, MPARAM mp1, MPARAM mp2);
  59.       virtual void VScroll( LONG );
  60. };
  61.  
  62. #endif
  63.