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 / freclien / freclien.h < prev    next >
C/C++ Source or Header  |  1997-08-05  |  4KB  |  122 lines

  1. /*+==========================================================================
  2.   File:      FRECLIEN.H
  3.  
  4.   Summary:   Include file for the FRECLIEN code sample application.
  5.              In addition to class definitions, this FRECLIEN.H file
  6.              contains definitions of the application's menu, string,
  7.              and other resource IDs.
  8.  
  9.              For a comprehensive tutorial code tour of FRECLIEN's contents
  10.              and offerings see the tutorial FRECLIEN.HTM file. For
  11.              more specific technical details on the internal workings see
  12.              the comments dispersed throughout the FRECLIEN source code.
  13.  
  14.   Classes:   CMainWindow
  15.  
  16.   Functions: WinMain
  17.  
  18.   Origin:    4-6-96: atrent - Editor-inheritance from the DLLCLIEN source.
  19.  
  20. ----------------------------------------------------------------------------
  21.   This file is part of the Microsoft COM Tutorial Code Samples.
  22.  
  23.   Copyright (C) Microsoft Corporation, 1997.  All rights reserved.
  24.  
  25.   This source code is intended only as a supplement to Microsoft
  26.   Development Tools and/or on-line documentation.  See these other
  27.   materials for detailed information regarding Microsoft code samples.
  28.  
  29.   THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  30.   KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  31.   IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  32.   PARTICULAR PURPOSE.
  33. ==========================================================================+*/
  34.  
  35. #if !defined(FRECLIEN_H)
  36. #define FRECLIEN_H
  37.  
  38. #ifdef __cplusplus
  39.  
  40. extern CMsgLog* g_pMsgLog;
  41.  
  42. /*C+C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C
  43.   Class:    CMainWindow
  44.  
  45.   Summary:  Class to encapsulate the application's main window, menu, and
  46.             message dispatching behavior.
  47.  
  48.   Methods:  CMainWindow
  49.               Constructor.
  50.             InitInstance
  51.               Creates a new instance of the main window.
  52. C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C-C*/
  53. class CMainWindow: public CVirWindow
  54. {
  55. public:
  56.   CMainWindow();
  57.   ~CMainWindow();
  58.   BOOL InitInstance(HINSTANCE, int);
  59.  
  60.   TCHAR m_szFileName[MAX_PATH];
  61.   CMsgBox*  m_pMsgBox;
  62.   CGuiBall* m_pGuiBall;
  63.  
  64. protected:
  65.   LRESULT WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam);
  66.  
  67. private:
  68.   LRESULT DoMenu(WPARAM wParam, LPARAM lParam);
  69.  
  70.   WORD m_wWidth;
  71.   WORD m_wHeight;
  72.   TCHAR m_szHelpFile[MAX_PATH];
  73.   TCHAR m_szFileTitle[MAX_PATH];
  74.   TEXTMETRIC m_tm;
  75.   OPENFILENAME m_ofnFile;
  76. };
  77.  
  78.  
  79. #endif // __cplusplus
  80.  
  81. // Window Class String Macros.
  82. #define MAIN_WINDOW_TITLE_STR       "FRECLIEN: Tutorial Code Sample"
  83. #define MAIN_WINDOW_CLASS_NAME_STR  "FRECLIENWindow"
  84. #define MAIN_WINDOW_CLASS_MENU_STR  "FRECLIENMenu"
  85.  
  86. // File Name String Macros.
  87. #define SERVER_TUTFILE_STR          "freserve.htm"
  88.  
  89. // Error strings.
  90. #define NOTHREAD_ERROR_STR "Can't Create Thread"
  91. #define NOCOMOBJ_ERROR_STR "Can't Create COM Object"
  92.  
  93. // OpenFile-related String Macros.
  94. #define OFN_DEFAULTFILES_STR "All Files (*.*)\0*.*\0"
  95. #define OFN_DEFAULTTITLE_STR "Open File"
  96.  
  97. // File Menu Command Identifiers.
  98. #define IDM_FILE_EXIT               1000
  99.  
  100. // Help Menu Command Identifiers.
  101. #define IDM_HELP_CONTENTS           1900
  102. #define IDM_HELP_TUTORIAL           1901
  103. #define IDM_HELP_TUTSERVER          1902
  104. #define IDM_HELP_READSOURCE         1904
  105. #define IDM_HELP_ABOUT              1905
  106. #define IDM_HELP_ABOUTSERVER        1906
  107.  
  108. // Error-related String Identifiers.
  109. #define IDS_COMINITFAILED           2000
  110. #define IDS_APPINITFAILED           2001
  111. #define IDS_OUTOFMEMORY             2002
  112. #define IDS_NOUNICODE               2003
  113. #define IDS_NODCOM                  2004
  114. #define IDS_NOSERVER                2005
  115.  
  116. #define IDS_ASSERT_FAIL             2200
  117.  
  118. // Notice-related String Identifiers.
  119. #define IDS_NOTIMPLEMENTED          2301
  120.  
  121. #endif
  122.