home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / cmd / winfe / collapse.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  1.5 KB  |  50 lines

  1. /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  *
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18. #ifndef __COLLAPSE_H
  19. #define __COLLAPSE_H
  20.  
  21. typedef enum {
  22.    collapse_open = 0,
  23.    collapse_closed
  24. } COLLAPSE_STATE;
  25.  
  26. class CNSCollapser 
  27. {
  28. protected:
  29.    HBITMAP m_hVertSectionBitmap;
  30.    HBITMAP m_hHTabBitmap;
  31.    BOOL m_bHilite;
  32.    CRect m_rect;
  33.    CWnd * m_pWnd;
  34.    COLLAPSE_STATE m_cState;
  35.    int m_iSubtract;
  36.     UINT m_nTimer;
  37.    UINT m_cmdId;
  38. public:
  39.    CNSCollapser();
  40.    ~CNSCollapser();
  41.    void GetRect(CRect & rect) { rect = m_rect; }
  42.    BOOL ButtonPress(POINT & point);
  43.    void Initialize(CWnd * pWnd = NULL, UINT nCmd = 0);
  44.    void TimerEvent(UINT nIDEvent);
  45.    void DrawCollapseWidget(CDC &dc, COLLAPSE_STATE state = collapse_closed, BOOL bHilite = FALSE, int iSubtract = 0);
  46.    void MouseAround(POINT & point);
  47. };
  48.  
  49. #endif
  50.