home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / com / tutsamp / perclien / listwin.h < prev    next >
C/C++ Source or Header  |  1997-08-30  |  3KB  |  103 lines

  1. /*+==========================================================================
  2.   File:      LISTWIN.H
  3.  
  4.   Summary:   Include file for the C++ object that encapsulates the
  5.              list box control that displays the page list.
  6.  
  7.   Classes:   CListWin
  8.  
  9.   Functions: none.
  10.  
  11.   Origin:    5-25-97: atrent - Editor Inheritance from CMsgLog in
  12.              APPUTIL.H.
  13.  
  14. ----------------------------------------------------------------------------
  15.   This file is part of the Microsoft COM Tutorial Code Samples.
  16.  
  17.   Copyright (C) Microsoft Corporation, 1997.  All rights reserved.
  18.  
  19.   This source code is intended only as a supplement to Microsoft
  20.   Development Tools and/or on-line documentation.  See these other
  21.   materials for detailed information regarding Microsoft code samples.
  22.  
  23.   THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  24.   KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  25.   IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  26.   PARTICULAR PURPOSE.
  27. ==========================================================================+*/
  28.  
  29. // Don't allow recursive includes of this file.
  30. #ifndef LISTWIN_H
  31. #define LISTWIN_H
  32.  
  33. #define MAXLINE_SIZE 128
  34. #define MAX_SHOW_LINES 200
  35.  
  36. // ListWin command IDs.
  37. #define IDC_LISTWIN 7000
  38.  
  39.  
  40. #ifdef __cplusplus
  41.  
  42.  
  43. /*C+C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C
  44.   Class:    CListWin
  45.  
  46.   Summary:  Class for the PageList display Listbox window.
  47.  
  48.   Methods:  CListWin
  49.               Constructor.
  50.             ~CListWin
  51.               Destructor.
  52.             BOOL Create(HINSTANCE hInst, HWND hWndParent, BOOL bSeparate);
  53.               Creates the CListWin List Box as a separate child window.
  54.             BOOL SetCurSel(INT iIndex);
  55.               Set current selection to specified list item. Zero-based.
  56.             BOOL GetCurSel(INT* piIndex);
  57.               Get the index (page number) of current listbox selection.
  58.             BOOL AddFmt(LPTSTR szFmt, ...);
  59.               Add a printf-style formatted string as new line in listbox.
  60.             BOOL InsertFmt(INT iIndex, LPTSTR szFmt, ...);
  61.               Insert a printf-style formatted line in the listbox.
  62.             BOOL Resize(INT nWidth, INT nHeight);
  63.               Resizes the ListWin listbox to a new width and height.
  64.             BOOL Clear(void);
  65.               Clears all display lines from the ListWin.
  66. C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C-C*/
  67. class CListWin
  68. {
  69. public:
  70.   // Constructor.
  71.   CListWin()
  72.   {
  73.     m_hInst = NULL;
  74.     m_hWnd = NULL;
  75.     m_bSeparate = FALSE;
  76.   };
  77.  
  78.   ~CListWin()
  79.   {
  80.   };
  81.  
  82.   BOOL Create(HINSTANCE hInst, HWND hWndParent, BOOL bSeparate);
  83.   BOOL SetCurSel(INT iIndex);
  84.   BOOL GetCurSel(INT* piIndex);
  85.   BOOL AddFmt(LPTSTR szFmt, ...);
  86.   BOOL InsertFmt(INT iIndex, LPTSTR szFmt, ...);
  87.   BOOL Resize(INT nWidth, INT nHeight);
  88.   BOOL Clear(void);
  89.  
  90. private:
  91.   // Remember the App Instance Handle.
  92.   HINSTANCE m_hInst;
  93.   // Remember the handle of the listbox window.
  94.   HWND m_hWnd;
  95.   // Remember if CListWin was created as separate window.
  96.   BOOL m_bSeparate;
  97. };
  98.  
  99.  
  100. #endif //__cplusplus
  101.  
  102. #endif //LISTWIN_H
  103.