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

Windows编程

开发平台:

Visual C++

  1. /*
  2.  * COMMON.H
  3.  *
  4.  * Structures and definitions applicable to all OLE 2.0 UI dialogs.
  5.  *
  6.  * Copyright (c)1992-1996 Microsoft Corporation, All Right Reserved
  7.  */
  8. #ifndef _COMMON_H_
  9. #define _COMMON_H_
  10. #include "ansiapi.h"
  11. //Structure for label and source extraction from a metafile
  12. typedef struct tagLABELEXTRACT
  13.    {
  14.    LPOLESTR    lpsz;
  15.    UINT        Index;      // index in lpsz (so we can retrieve 2+ lines)
  16.    DWORD       PrevIndex;  // index of last line (so we can mimic word wrap)
  17.    union
  18.       {
  19.       UINT    cch;        //Length of label for label extraction
  20.       UINT    iIcon;      //Index of icon in source extraction.
  21.       } u;
  22.    //For internal use in enum procs
  23.    BOOL        fFoundIconOnly;
  24.    BOOL        fFoundSource;
  25.    BOOL        fFoundIndex;
  26.    } LABELEXTRACT, FAR * LPLABELEXTRACT;
  27. //Structure for extracting icons from a metafile (CreateIcon parameters)
  28. typedef struct tagICONEXTRACT
  29.    {
  30.    HICON       hIcon;          //Icon created in the enumeration proc.
  31.    /*
  32.     * Since we want to handle multitasking well we have the caller
  33.     * of the enumeration proc instantiate these variables instead of
  34.     * using statics in the enum proc (which would be bad).
  35.     */
  36.    BOOL        fAND;
  37.    HGLOBAL     hMemAND;        //Enumeration proc allocates and copies
  38.    } ICONEXTRACT, FAR * LPICONEXTRACT;
  39. //Structure to use to pass info to EnumMetafileDraw
  40. typedef struct tagDRAWINFO
  41.    {
  42.    RECT     Rect;
  43.    BOOL     fIconOnly;
  44.    } DRAWINFO, FAR * LPDRAWINFO;
  45. int CALLBACK EXPORT EnumMetafileIconDraw(HDC, HANDLETABLE FAR *, METARECORD FAR *, int, LPARAM);
  46. int CALLBACK EXPORT EnumMetafileExtractLabel(HDC, HANDLETABLE FAR *, METARECORD FAR *, int, LPLABELEXTRACT);
  47. int CALLBACK EXPORT EnumMetafileExtractIcon(HDC, HANDLETABLE FAR *, METARECORD FAR *, int, LPICONEXTRACT);
  48. int CALLBACK EXPORT EnumMetafileExtractIconSource(HDC, HANDLETABLE FAR *, METARECORD FAR *, int, LPLABELEXTRACT);
  49. //Shared globals:  our instance and clipboard formats used by the PasteSpecial dialog
  50. extern HINSTANCE  ghInst;
  51. extern UINT       cfObjectDescriptor;
  52. extern UINT       cfLinkSrcDescriptor;
  53. extern UINT       cfEmbedSource;
  54. extern UINT       cfEmbeddedObject;
  55. extern UINT       cfLinkSource;
  56. extern UINT       cfOwnerLink;
  57. extern UINT       cfFileName;
  58. #endif //_COMMON_H_