APP.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:2k
源码类别:

Windows编程

开发平台:

Visual C++

  1. //**********************************************************************
  2. // File name: app.h
  3. //
  4. //      Definition of CSimpleApp
  5. //
  6. // Copyright (c) 1992 - 1997 Microsoft Corporation. All rights reserved.
  7. //**********************************************************************
  8. #if !defined( _APP_H_)
  9. #define _APP_H_
  10. #include <ole2.h>
  11. #include <stablize.h>
  12. #include "ioipf.h"
  13. class CSimpleDoc;
  14. class CSimpleApp : public IUnknown, public CSafeRefCount
  15. {
  16. public:
  17.         HWND m_hAppWnd;         // main window handle
  18.         HINSTANCE m_hInst;          // application instance
  19.         HMENU           m_hMainMenu;
  20.         HMENU           m_hFileMenu;
  21.         HMENU           m_hEditMenu;
  22.         HMENU           m_hHelpMenu;
  23.         HMENU           m_hCascadeMenu;
  24.         COleInPlaceFrame m_OleInPlaceFrame; // IOleInPlaceFrame Implementation
  25.         CSimpleDoc FAR * m_lpDoc;   // pointer to document object
  26.         BOOL m_fInitialized;        // OLE initialization flag
  27.         BOOL m_fCSHMode;
  28.         BOOL m_fMenuMode;
  29.         HWND m_hwndUIActiveObj; // HWND of UIActive Object
  30.         HPALETTE m_hStdPal;     // Color palette used by container
  31.         BOOL m_fAppActive;      // TRUE if app is active
  32.         CSimpleApp();           // Constructor
  33.         ~CSimpleApp();          // Destructor
  34.         RECT nullRect;
  35.         // IUnknown Interfaces
  36.         STDMETHODIMP QueryInterface(REFIID riid, LPVOID FAR* ppvObj);
  37.         STDMETHODIMP_(ULONG) AddRef();
  38.         STDMETHODIMP_(ULONG) Release();
  39.         // Initialization methods
  40.         BOOL fInitApplication (HANDLE hInstance);
  41.         BOOL fInitInstance (HANDLE hInstance, int nCmdShow);
  42.         // Message handling methods
  43.         long lCommandHandler (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
  44.         long lSizeHandler (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
  45.         long lCreateDoc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
  46.         BOOL HandleAccelerators (LPMSG lpMsg);
  47.         void PaintApp(HDC hDC);
  48.         void DestroyDocs();
  49.         // In-Place support functions
  50.         void AddFrameLevelUI();
  51.         void AddFrameLevelTools();
  52.         void ContextSensitiveHelp (BOOL fEnterMode);
  53.         LRESULT QueryNewPalette(void);
  54. };
  55. LRESULT wSelectPalette(HWND hWnd, HPALETTE hPal, BOOL fBackground);
  56. #endif