亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pages.h

?? 英文版的 想要的話可以下載了 為大家服務(wù)
?? H
字號(hào):
/*
 * PAGES.H
 * Patron Chapter 22
 *
 * Definitions and function prototypes for the Pages window control
 * as well as the CPage class.
 *
 * Copyright (c)1993-1995 Microsoft Corporation, All Rights Reserved
 *
 * Kraig Brockschmidt, Microsoft
 * Internet  :  kraigb@microsoft.com
 * Compuserve:  >INTERNET:kraigb@microsoft.com
 */


#ifndef _PAGES_H_
#define _PAGES_H_

#include <stdlib.h>     //For atol

//Versioning.
#define VERSIONMAJOR                2
#define VERSIONMINOR                0
#define VERSIONCURRENT              0x00020000

//Classname
#define SZCLASSPAGES                TEXT("pages")

#define HIMETRIC_PER_INCH           2540
#define LOMETRIC_PER_INCH           254
#define LOMETRIC_BORDER             60          //Border around page


//Window extra bytes and offsets
#define CBPAGESWNDEXTRA             (sizeof(LONG))
#define PAGEWL_STRUCTURE            0


#include "tenant.h"

typedef struct tagTENANTLIST
    {
    DWORD       cTenants;
    DWORD       dwIDNext;
    } TENANTLIST, *PTENANTLIST;

#define SZSTREAMTENANTLIST        OLETEXT("Tenant List")

//Delay timer used in mouse debouncing
#define IDTIMER_DEBOUNCE          120



/*
 * Page class describing an individual page and what things it
 * contains, managing an IStorage for us.
 *
 * A DWORD is used to identify this page as the name of the storage
 * is the string form of this ID.  If we added a page every second,
 * it would take 136 years to overrun this counter, so we can
 * get away with saving it persistently.  I hope this software is
 * obsolete by then.
 */

class CPage : public IUnknown
    {
    friend class CIOleUILinkContainer;
    friend class CImpIOleItemContainer;

    private:
        DWORD       m_dwID;             //Persistent identifier
        LPSTORAGE   m_pIStorage;        //Substorage for this page
        HWND        m_hWnd;             //Pages window
        DWORD       m_cOpens;           //Calls to Open

        class CPages *m_pPG;            //Pages window

        DWORD       m_dwIDNext;
        DWORD       m_cTenants;
        HWND        m_hWndTenantList;   //Listbox; our tenant list

        UINT        m_iTenantCur;
        PCTenant    m_pTenantCur;

        UINT        m_uHTCode;          //Last hit-test/mouse move
        UINT        m_uSizingFlags;     //Restrictions on sizing
        BOOL        m_fTracking;        //Tracking resize?
        RECTL       m_rclOrg;           //Original before tracking
        RECTL       m_rcl;              //Tracking rectangle
        RECTL       m_rclBounds;        //Boundaries f/size tracking
        HDC         m_hDC;              //Tracking hDC

        BOOL        m_fDragPending;     //Waiting for drag?
        BOOL        m_fSizePending;     //Waiting for debounce?
        int         m_cxyDist;          //Debounce distance
        UINT        m_cDelay;           //Debounce delay
        POINTS      m_ptDown;           //Point of click to debounce
        UINT        m_uKeysDown;        //Keys when click happens
        DWORD       m_fTimer;           //Timer active?
        BOOL        m_fReopen;          //Did we just close?

        LPMONIKER               m_pmkFile;  //Document name
        ULONG                   m_cRef;
        DWORD                   m_dwRegROTWild;

        class CImpIOleItemContainer *m_pImpIOleItemContainer;

        //CHAPTER22MOD
        BOOL                m_fFirstUIActivate;
        //End CHAPTER22MOD

    protected:
        BOOL         TenantGet(UINT, PCTenant *, BOOL);
        BOOL         TenantGetFromID(DWORD, PCTenant *, BOOL);
        BOOL         TenantAdd(UINT, DWORD, PCTenant *);
        LPDATAOBJECT TransferObjectCreate(PPOINTL);

        //PAGEMOUS.CPP
        BOOL         SelectTenantAtPoint(UINT, UINT);
        UINT         TenantFromPoint(UINT, UINT, PCTenant *);
        BOOL         DragDrop(UINT, UINT, UINT);

    public:
        CPage(DWORD, HWND, class CPages *);
        ~CPage(void);

        //IUnknown for delegation
        STDMETHODIMP QueryInterface(REFIID, PPVOID);
        STDMETHODIMP_(ULONG) AddRef(void);
        STDMETHODIMP_(ULONG) Release(void);

        DWORD       GetID(void);
        BOOL        Open(LPSTORAGE);
        void        Close(BOOL);
        BOOL        Update(void);
        void        Destroy(LPSTORAGE);
        UINT        GetStorageName(LPOLESTR);

        void        Draw(HDC, int, int, BOOL, BOOL);

        BOOL        TenantCreate(TENANTTYPE, LPVOID, LPFORMATETC
                        , PPATRONOBJECT, DWORD);
        BOOL        TenantDestroy(void);
        BOOL        TenantClip(BOOL);
        BOOL        FQueryObjectSelected(HMENU);

        //CHAPTER22MOD
        void        ActivateObject(LONG, LPMSG);
        //End CHAPTER22MOD

        void        ShowObjectTypes(BOOL);
        void        NotifyTenantsOfRename(LPTSTR, LPMONIKER);
        BOOL        FQueryLinksInPage(void);
        BOOL        ConvertObject(HWND, BOOL);

        //CHAPTER22MOD
        void        ScrolledWindow(void);
        void        SwitchActiveTenant(PCTenant);
        //End CHAPTER22MOD

        //PAGEMOUSE.CPP
        BOOL        OnRightDown(UINT, UINT, UINT);
        BOOL        OnLeftDown(UINT, UINT, UINT);
        BOOL        OnLeftDoubleClick(UINT, UINT, UINT);
        BOOL        OnLeftUp(UINT, UINT, UINT);
        void        OnMouseMove(UINT, int, int);
        void        OnTimer(UINT);
        void        StartSizeTracking(void);
        void        OnNCHitTest(UINT, UINT);
        BOOL        OnSetCursor(UINT);
    };

typedef CPage *PCPage;



/*
 * Structures to save with the document describing the device
 * configuration and pages that we have.  This is followed by
 * a list of DWORD IDs for the individual pages.
 */

typedef struct tagDEVICECONFIG
    {
    DWORD       cb;                         //Size of structure
    TCHAR       szDriver[CCHDEVICENAME];
    TCHAR       szDevice[CCHDEVICENAME];
    TCHAR       szPort[CCHDEVICENAME];
    DWORD       cbDevMode;                  //Size of actual DEVMODE
    DEVMODE     dm;                         //Variable
    } DEVICECONFIG, *PDEVICECONFIG;

//Offset to cbDevMode
#define CBSEEKOFFSETCBDEVMODE  (sizeof(DWORD)   \
                               +(3*CCHDEVICENAME*sizeof(TCHAR)))

//Combined OLE and Patron device structures.
typedef struct tagCOMBINEDEVICE
    {
    DVTARGETDEVICE  td;
    DEVICECONFIG    dc;
    } COMBINEBDEVICE, *PCOMBINEDEVICE;


typedef struct tagPAGELIST
    {
    DWORD       cPages;
    DWORD       iPageCur;
    DWORD       dwIDNext;
    } PAGELIST, *PPAGELIST;


//PRINT.CPP
BOOL    APIENTRY PrintDlgProc(HWND, UINT, WPARAM, LPARAM);
BOOL    APIENTRY AbortProc(HDC, int);


//PAGEWIN.CPP
LRESULT APIENTRY PagesWndProc(HWND, UINT, WPARAM, LPARAM);
void             RectConvertMappings(LPRECT, HDC, BOOL);


class CPages : public CWindow
    {
    friend LRESULT APIENTRY PagesWndProc(HWND, UINT, WPARAM, LPARAM);
    friend BOOL    APIENTRY PrintDlgProc(HWND, UINT, WPARAM, LPARAM);

    friend class CPage;
    friend class CTenant;
    friend class CDropTarget;
    friend class CImpIAdviseSink;
    friend class CImpIOleItemContainer;

    //CHAPTER22MOD
    friend class CImpIOleInPlaceSite;
    //End CHAPTER22MOD

    protected:
        PCPage      m_pPageCur;             //Current page
        UINT        m_iPageCur;             //Current page
        UINT        m_cPages;               //Number of pages

        HWND        m_hWndPageList;         //Listbox with page list
        HFONT       m_hFont;                //Page font
        BOOL        m_fSystemFont;          //m_hFont system object?

        UINT        m_cx;                   //Page size in LOMETRIC
        UINT        m_cy;

        UINT        m_xMarginLeft;          //Unusable margins,
        UINT        m_xMarginRight;         //in LOMETRIC
        UINT        m_yMarginTop;
        UINT        m_yMarginBottom;

        UINT        m_xPos;                 //Viewport scroll pos,
        UINT        m_yPos;                 //both in *PIXELS*

        DWORD       m_dwIDNext;             //Next ID for a page.
        LPSTORAGE   m_pIStorage;            //Root storage

        UINT        m_cf;                   //Clipboard format
        BOOL        m_fDirty;

        BOOL        m_fDragSource;          //Source==target?
        BOOL        m_fMoveInPage;          //Moving in same page
        BOOL        m_fLinkAllowed;         //Linking in drag-drop?
        POINTL      m_ptDrop;               //Where to move object

        BOOL        m_fDragRectShown;       //Is rect on the screen?
        UINT        m_uScrollInset;         //Hit-test for drag-drop
        UINT        m_uScrollDelay;         //Delay before repeat
        DWORD       m_dwTimeLast;           //Ticks on last DragOver
        UINT        m_uHScrollCode;         //L/R on scroll repeat?
        UINT        m_uVScrollCode;         //U/D on scroll repeat?
        UINT        m_uLastTest;            //Last test result
        POINTL      m_ptlRect;              //Last feedback rectangle
        SIZEL       m_szlRect;

        BOOL        m_fShowTypes;           //Show Object active?
        LPMONIKER   m_pmkFile;
        //CHAPTER22MOD
        BOOL        m_fAddUI;
        //End CHAPTER22MOD

    private:
        void        Draw(HDC, BOOL, BOOL);
        void        UpdateScrollRanges(void);
        BOOL        ConfigureForDevice(void);
        BOOL        PageGet(UINT, PCPage *, BOOL);
        BOOL        PageAdd(UINT, DWORD, BOOL);

        void        CalcBoundingRect(LPRECT, BOOL);

        //DRAGDROP.CPP
        UINT        UTestDroppablePoint(PPOINTL);
        void        DrawDropTargetRect(PPOINTL, LPSIZEL);
        void        AdjustPosition(PPOINTL, LPSIZEL);

    public:
        CPages(HINSTANCE, UINT);
        ~CPages(void);

        BOOL        Init(HWND, LPRECT, DWORD, UINT, LPVOID);

        BOOL        StorageSet(LPSTORAGE, BOOL, BOOL);
        BOOL        StorageUpdate(BOOL);

        BOOL        Print(HDC, LPTSTR, DWORD, UINT, UINT, UINT);

        void        RectGet(LPRECT);
        void        RectSet(LPRECT, BOOL);
        void        SizeGet(LPRECT);
        void        SizeSet(LPRECT, BOOL);

        PCPage      ActivePage(void);
        UINT        PageInsert(UINT);
        UINT        PageDelete(UINT);
        UINT        CurPageGet(void);
        UINT        CurPageSet(UINT);
        UINT        NumPagesGet(void);

        BOOL        DevModeSet(HGLOBAL, HGLOBAL);
        HGLOBAL     DevModeGet(void);

        BOOL        FIsDirty(void);
        BOOL        DevReadConfig(PCOMBINEDEVICE *, HDC *);
        BOOL        TenantCreate(TENANTTYPE, LPVOID, LPFORMATETC
                        , PPATRONOBJECT, DWORD);
        BOOL        TenantDestroy(void);
        BOOL        TenantClip(BOOL);
        BOOL        FQueryObjectSelected(HMENU);

        //CHAPTER22MOD
        void        ActivateObject(LONG, LPMSG);
        //End CHAPTER22MOD

        void        ShowObjectTypes(BOOL);
        void        NotifyTenantsOfRename(LPTSTR, LPMONIKER);
        BOOL        FQueryLinksInPage(void);
        BOOL        GetUILinkContainer(class CIOleUILinkContainer **);
        BOOL        ConvertObject(HWND);
        UINT        IPageGetFromID(DWORD, PCPage *, BOOL);
    };

typedef CPages *PCPages;


//Fixed names of streams in the Pages IStorage
#define SZSTREAMPAGELIST        OLETEXT("Page List")
#define SZSTREAMDEVICECONFIG    OLETEXT("Device Configuration")

//Return values for UTestDroppablePoint
#define UDROP_NONE              0x0000      //Exclusive
#define UDROP_CLIENT            0x0001      //Inclusive
#define UDROP_INSETLEFT         0x0002      //L/R are exclusive
#define UDROP_INSETRIGHT        0x0004
#define UDROP_INSETHORZ         (UDROP_INSETLEFT | UDROP_INSETRIGHT)

#define UDROP_INSETTOP          0x0008      //T/B are exclusive
#define UDROP_INSETBOTTOM       0x0010
#define UDROP_INSETVERT         (UDROP_INSETTOP | UDROP_INSETBOTTOM)


//Object used for the Links dialog

class CIOleUILinkContainer : public IOleUILinkContainer
    {
    private:
        ULONG                   m_cRef;
        PCPage                  m_pPage;
        UINT                    m_iTenant;
        LPOLEUILINKCONTAINER    m_pDelIUILinks;

    public:
        BOOL                    m_fDirty;   //No reason to hide it

    protected:
        STDMETHODIMP GetObjectInterface(DWORD, REFIID, PPVOID);

    public:
        CIOleUILinkContainer(PCPage);
        ~CIOleUILinkContainer(void);

        BOOL Init(void);
        BOOL IsDirty(void);

        STDMETHODIMP         QueryInterface(REFIID, PPVOID);
        STDMETHODIMP_(ULONG) AddRef(void);
        STDMETHODIMP_(ULONG) Release(void);

        STDMETHODIMP_(DWORD) GetNextLink(DWORD);
        STDMETHODIMP         SetLinkUpdateOptions(DWORD, DWORD);
        STDMETHODIMP         GetLinkUpdateOptions(DWORD, LPDWORD);
        STDMETHODIMP         SetLinkSource(DWORD, LPTSTR, ULONG
                                 , ULONG *, BOOL);
        STDMETHODIMP         GetLinkSource(DWORD, LPTSTR *, ULONG *
                                 , LPTSTR *, LPTSTR *, BOOL *
                                 , BOOL *);
        STDMETHODIMP         OpenLinkSource(DWORD);
        STDMETHODIMP         UpdateLink(DWORD, BOOL, BOOL);
        STDMETHODIMP         CancelLink(DWORD);
    };

typedef CIOleUILinkContainer *PCIOleUILinkContainer;


#endif  //_PAGES_H_

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠色狠狠色综合系列| 成人av网址在线观看| 日韩理论片中文av| 日韩手机在线导航| 91丨porny丨在线| 国产麻豆视频精品| 亚洲成av人片在www色猫咪| 国产欧美日韩不卡| 日韩一级片在线观看| 色婷婷香蕉在线一区二区| 国内偷窥港台综合视频在线播放| 亚洲高清免费视频| 亚洲色图一区二区三区| 久久久精品蜜桃| 欧美三级一区二区| 色香蕉久久蜜桃| 日韩欧美激情四射| 欧美亚洲国产bt| 色综合久久综合网欧美综合网| 国产一区在线看| 麻豆精品一二三| 天天免费综合色| 亚洲国产色一区| 一区二区视频免费在线观看| 国产精品私人影院| 久久精品欧美日韩| 久久老女人爱爱| 久久人人超碰精品| 精品久久久久久久一区二区蜜臀| 欧美精品久久99| 91精品在线麻豆| 911国产精品| 欧美日韩高清在线播放| 欧美三级欧美一级| 欧美日韩日日夜夜| 欧美日韩激情在线| 欧美老女人在线| 亚洲欧美日韩电影| 亚洲九九爱视频| 亚洲丝袜制服诱惑| 亚洲啪啪综合av一区二区三区| 中文字幕一区二区三区四区 | 精品一区精品二区高清| 蜜桃视频在线观看一区| 日本成人在线看| 国产综合色视频| 国产99精品在线观看| 成人性视频网站| 99国产精品久久久久久久久久| 99精品偷自拍| 欧美视频一二三区| 538在线一区二区精品国产| 日韩一区二区三区电影在线观看 | 五月综合激情网| 国产91精品久久久久久久网曝门| 成人精品一区二区三区中文字幕| proumb性欧美在线观看| 色素色在线综合| 91精品国产黑色紧身裤美女| 日韩精品中文字幕一区二区三区| 精品99一区二区| 国产拍揄自揄精品视频麻豆| 亚洲色图视频网站| 午夜精品久久久久久久久久| 极品尤物av久久免费看| 高清国产一区二区三区| 色八戒一区二区三区| 欧美日韩国产美女| 久久久久综合网| 亚洲欧美电影院| 奇米777欧美一区二区| 国产麻豆精品95视频| 色视频成人在线观看免| 欧美日韩成人激情| 久久天天做天天爱综合色| 国产精品福利一区| 床上的激情91.| 欧美视频第二页| 2020国产精品| 亚洲一区二区三区在线| 麻豆免费精品视频| 99久久久无码国产精品| 在线播放一区二区三区| 国产视频不卡一区| 亚洲成人福利片| 国产91精品免费| 91精品国产综合久久精品| 国产日韩欧美一区二区三区综合| 夜夜嗨av一区二区三区中文字幕| 久久国产精品99久久人人澡| 91视频一区二区| 欧美mv日韩mv| 一区二区三区四区在线播放| 久久精品国产网站| 日本高清视频一区二区| 久久免费电影网| 丝袜国产日韩另类美女| av男人天堂一区| 欧美精品一区二区三区高清aⅴ | 国产伦精品一区二区三区免费 | 国产夫妻精品视频| 91精品久久久久久久久99蜜臂| 国产精品网站在线观看| 看片网站欧美日韩| 色婷婷精品久久二区二区蜜臂av| 26uuu精品一区二区三区四区在线| 亚洲与欧洲av电影| 成人福利视频在线| 久久一区二区三区四区| 日本vs亚洲vs韩国一区三区| 色八戒一区二区三区| 国产精品少妇自拍| 国内精品伊人久久久久av一坑| 欧美日韩国产影片| 亚洲欧美电影一区二区| 成人午夜在线播放| 久久久久九九视频| 六月丁香婷婷久久| 777亚洲妇女| 亚洲五月六月丁香激情| 久久久另类综合| 麻豆一区二区三区| 在线播放国产精品二区一二区四区 | 亚洲无人区一区| 色综合av在线| 亚洲三级免费电影| 99在线热播精品免费| 国产人成亚洲第一网站在线播放 | 欧美午夜免费电影| 亚洲欧美日韩国产一区二区三区| 成人午夜视频在线| 国产精品你懂的在线欣赏| 国产成人av一区二区三区在线| 精品国产污网站| 黑人巨大精品欧美黑白配亚洲| 日韩精品一区二区三区老鸭窝| 蜜桃一区二区三区在线观看| 日韩欧美另类在线| 国产在线精品一区二区夜色| 一区二区三区国产豹纹内裤在线| 色偷偷一区二区三区| 亚洲精品第一国产综合野| 97se狠狠狠综合亚洲狠狠| 中文字幕中文字幕一区二区 | 日韩欧美在线观看一区二区三区| 麻豆精品久久久| 欧美精品一区二区久久久| 极品少妇一区二区| 国产亚洲成aⅴ人片在线观看| 国产ts人妖一区二区| 国产欧美日韩不卡| 色婷婷久久久久swag精品| 亚洲成人自拍网| 91精品久久久久久久91蜜桃| 久久er99热精品一区二区| 久久一日本道色综合| 成人激情小说乱人伦| 一区二区三区四区中文字幕| 在线播放国产精品二区一二区四区| 美国毛片一区二区三区| 久久久久97国产精华液好用吗 | 欧美一区二区三区免费视频| 看片网站欧美日韩| 免费看日韩精品| 久久精品欧美一区二区三区不卡| 99久久久久免费精品国产 | 精品久久一区二区| 国产成人亚洲综合a∨猫咪| 日韩美女精品在线| 欧美日韩国产精品自在自线| 九色综合国产一区二区三区| 中文字幕av一区 二区| 日本高清无吗v一区| 捆绑调教美女网站视频一区| 国产精品人成在线观看免费| 欧美午夜精品电影| 国产一区二区三区免费观看| 亚洲视频一二三区| 欧美一区二区三区电影| 成人小视频免费观看| 午夜天堂影视香蕉久久| 欧美经典一区二区| 欧美日韩五月天| 国产99一区视频免费| 五月综合激情婷婷六月色窝| 国产欧美1区2区3区| 欧美日本国产视频| 成人免费va视频| 成人动漫一区二区| 日韩黄色小视频| 日韩理论片一区二区| 久久亚洲二区三区| 欧洲生活片亚洲生活在线观看| 久久99精品久久久久| 亚洲精品国产精华液| 26uuu久久天堂性欧美| 欧美精品久久99| 97超碰欧美中文字幕| 国产一区二区三区高清播放| 一区av在线播放|