⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hxwin.h

📁 linux下的一款播放器
💻 H
📖 第 1 页 / 共 3 页
字号:
     */    STDMETHOD(QueryInterface)	(THIS_				REFIID riid,				void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)	(THIS) PURE;    STDMETHOD_(ULONG32,Release)	(THIS) PURE;    STDMETHOD(Initialize)	(THIS_				IHXValues* pParams) PURE;    STDMETHOD(SetPercentage)	(THIS_				UINT32 nThousandnthsComplete) PURE;};/**************************************************************************** * *  Interface: * *  IHXRegion * *  Purpose: * *  Iterface for managing HXRegions. * *  IHXRegion: * *  {00002200-0903-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXRegion, 0x00000D14, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#define CLSID_IHXRegion IID_IHXRegion#undef  INTERFACE#define INTERFACE   IHXRegionDECLARE_INTERFACE_(IHXRegion, IUnknown){    /************************************************************************     *	Method:     *	    IHXRegion::SetRect     *	Purpose:     *	    This function creates a rectangular region.     *     */    STDMETHOD(SetRect)      (THIS_ HXxRect*    pRect) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::SetRect     *	Purpose:     *	    This function creates a rectangular region.     *     */    STDMETHOD(SetRect)      (THIS_ int x, int y, int x1, int y1) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::SetPoly     *	Purpose:     *	    This function creates a region defined by an arbitary polygon.     *     */    STDMETHOD(SetPoly)      (THIS_ HXxPoint**  pRect, BOOL bUseWinding) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::IsEqual     *	Purpose:     *	    This function determines if two regions are equal.     *     */    STDMETHOD_(BOOL,IsEqual)      (THIS_ IHXRegion* pRegion) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetExtents     *	Purpose:     *	    This function allows the user to determine the extents of the region     *     */    STDMETHOD(GetExtents)      (THIS_ REF(HXxRect) rExtents) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::Offset     *	Purpose:     *	    This function offsets the region by the spectified origin     *     */    STDMETHOD(Offset)      (THIS_ HXxPoint* pOrigin) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::PointHitTest     *	Purpose:     *	    This function returns if TRUE if the specified point is in the region     *     */    STDMETHOD_(BOOL,PointHitTest)      (THIS_ HXxPoint* pPoint) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::RectHitTest     *	Purpose:     *	This function returns      *	    HX_CONTAINED	if the rect is fully contained within the region     *	    HX_PART		if part of the rect is within the region     *	    HX_OUT		if no part of the rect is within the region     *     */    STDMETHOD_(INT32,RectHitTest)      (THIS_ HXxRect* pRect) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetNumRects     *	Purpose:     *	    This function gets the number of rects which describe the      *	    region     *     */    STDMETHOD_(UINT32, GetNumRects)      (THIS) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetRectAtIndex     *	Purpose:     *	    This function gets the RECT at index nRectIndex     *     */    STDMETHOD(GetRectAtIndex)      (THIS_ UINT32 nRectIndex, REF(HXxRect) rRect) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::UnionRegion     *	Purpose:     *		Union Region -- this operator like all of the operators will create an IHXRegion      *		if pDest is NULL.     *     */    STDMETHOD(UnionRegion)      (THIS_ REF(IHXRegion*) pDest, IHXRegion* pSrc1) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetRectAtIndex     *	Purpose:     *	    Copy Region     *     */    STDMETHOD(CopyRegion)      (THIS_ REF(IHXRegion*) pDest) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetRectAtIndex     *	Purpose:     *	    Diff Region     *     */    STDMETHOD(DiffRegion)      (THIS_ REF(IHXRegion*) pDest, IHXRegion* pSrc1) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetRectAtIndex     *	Purpose:     *	    And Region     *     */    STDMETHOD(AndRegion)      (THIS_ REF(IHXRegion*) pDest, IHXRegion* pSrc1) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetRectAtIndex     *	Purpose:     *	    XOR Region     *     */    STDMETHOD(XORRegion)      (THIS_ REF(IHXRegion*) pDest, IHXRegion* pSrc1) PURE;    /************************************************************************     *	Method:     *	    IHXRegion::GetRegion     *	Purpose:     *	    Bad hack for the moment to obtain the REGION pointer of an HXRegion.     *	    Will have to remove this later.     *     */    STDMETHOD_(void*, GetRegion)      (THIS) PURE;};/**************************************************************************** * *  Interface: * *  IHXColorConverterManager * *  Purpose: * *  Interface for obtaining IHXColorConverters * *  IHXColorConverterManager: * *  {00000D15-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXColorConverterManager, 0x00000D15, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXColorConverterManagerDECLARE_INTERFACE_(IHXColorConverterManager, IUnknown){    /*     * Get ColorConverter is called to obtain a color converter to convert      * from a particular bitmap to another bitmap.     */    STDMETHOD(GetColorConverter)      (THIS_                HXBitmapInfoHeader*    /*IN*/  pBitmapInfoIn,                HXBitmapInfoHeader*    /*IN*/  pBitmapInfoOut,		REF(IHXColorConverter*) /*OUT*/ pConverter) PURE;};/**************************************************************************** * *  Interface: * *  IHXColorConverter * *  Purpose: * *  Interface for converting between two bitmaps of different color formats. * *  IHXColorConverterManager: * *  {00000D16-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXColorConverter, 0x00000D16, 0x903, 0x11d1, 0x8b,    0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXColorConverterDECLARE_INTERFACE_(IHXColorConverter, IUnknown){    /*     * ColorConvert converts the pBitsIn from one color format to      * the format of pBitsOut     */    STDMETHOD(ColorConvert)      (THIS_                UCHAR*	    pBitsIn,                UCHAR*	    pBitsOut,		HXxRect*    pRectIn,		HXxRect*    pRectOut                ) PURE;};/**************************************************************************** * *  Interface: * *  IHXOverlayResponse * *  Purpose: * *  Interface for reporting/computing the current statistics relevant to  *  Video Presentations. * *  IHXOverlayResponse: * *  {00000D22-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXOverlayResponse, 0x00000D22, 0x903, 0x11d1, 0x8b,    0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXOverlayResponseDECLARE_INTERFACE_(IHXOverlayResponse, IUnknown){    STDMETHOD(OverlayGranted)      (THIS ) PURE;    STDMETHOD(OverlayRevoked)      (THIS ) PURE;};/**************************************************************************** * *  Interface: * *  IHXOverlayManager * *  Purpose: * *  Interface for reporting/computing the current statistics relevant to  *  Video Presentations. * *  IHXOverlayManager: * *  {00000D21-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXOverlayManager, 0x00000D21, 0x903, 0x11d1, 0x8b,    0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXOverlayManagerDECLARE_INTERFACE_(IHXOverlayManager, IUnknown){    STDMETHOD(HasOverlay)      (THIS_                    IHXOverlayResponse* pResp                    ) PURE;        STDMETHOD(AddStats)      (THIS_                    IHXOverlayResponse* pResp,                    UINT32    ulNumPixels                    ) PURE;        STDMETHOD(RemoveOverlayRequest)(THIS_ IHXOverlayResponse* pResp ) PURE;};// $EndPrivate./**************************************************************************** * *  Interface: * *  IHXKeyBoardFocus * *  Purpose: * *  Interface for setting/getting the keyboard focus for a particular siteuser * *  IHXKeyBoardFocus: * *  {00000D23-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXKeyBoardFocus, 0x00000D23, 0x903, 0x11d1, 0x8b,    0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXKeyBoardFocusDECLARE_INTERFACE_(IHXKeyBoardFocus, IUnknown){    STDMETHOD(SetKeyboardFocus)(THIS_ IHXSiteUser* pSiteUser ) PURE;    STDMETHOD(GetKeyboardFocus)(THIS_ IHXSiteUser* &pSiteUser ) PURE;};/**************************************************************************** * *  Interface: * *  IHXDrawFocus * *  Purpose: * *  Interface for displaying the site that has the keyboard focus * *  IHXDrawFocus: * *  {00000D24-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXDrawFocus, 0x00000D24, 0x903, 0x11d1, 0x8b,    0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXDrawFocusDECLARE_INTERFACE_(IHXDrawFocus, IUnknown){    /************************************************************************     *  Method:     *          IHXDrawFocus::SetStyle     *  Purpose:     *          Ask the site to set the focus style.     *     *  Syles:     *          ULONG32 Properties:     *     *          LINE_STYLE = HX_SOLID_LINE, HX_DASHED_LINE, HX_DOTTED_LINE,     *                       HX_CUSTOM_LINE     *          LINE_WIDTH = Width of the line in pixels     *          RED = 0-255 color of the primary pixel     *          GREEN = 0-255 color of the primary pixel     *          BLUE = 0-255 color of the primary pixel     *          RED_OFF = 0-255 color of the secondary pixel     *          GREEN_OFF = 0-255 color of the secondary pixel     *          BLUE_OFF = 0-255 color of the secondary pixel     *          CUSTOM_LINE_ENTRIES number of ULONG32s in CUSTOM_LINE_PATTERN     *     *          IHXBuffer Properties:     *     *          CUSTOM_LINE_PATTERN list of ULONG32s describing the number     *           of primary and secondary pixels (eq 4241 = "----..----." where     *           - is a primary pixel and . is a secondary pixel) and     *           CUSTOM_LINE_ENTRIES equals 4.  Secondary pixels are not     *           drawn if RED_OFF, GREEN_OFF, and BLUE_OFF are not set.     */    STDMETHOD(SetStyle) (THIS_ IHXValues* pProperties) PURE;    /************************************************************************     *  Method:     *          IHXDrawFocus::ClearFocus     *  Purpose:     *          Ask the site to clear the current focus drawing.     */    STDMETHOD(ClearFocus)(THIS) PURE;    /************************************************************************     *  Method:     *          IHXDrawFocus::SetFocusPolygon     *  Purpose:     *          Ask the site to draw polygon around focus     */    STDMETHOD(SetFocusPolygon)(THIS_  HXxPoint* pPoints, ULONG32 numPoints) PURE;    /************************************************************************     *  Method:     *          IHXDrawFocus::SetFocusRect     *  Purpose:     *          Ask the site to draw rectangle around focus     */    STDMETHOD(SetFocusRect) (THIS_ HXxRect* pRect) PURE;    /************************************************************************     *  Method:     *          IHXDrawFocus::SetFocusEllipse     *  Purpose:     *          Ask the site to draw ellipse around focus     */    STDMETHOD(SetFocusEllipse) (THIS_ HXxRect* pRect) PURE;};// $Private:/**************************************************************************** * *  Interface: * *  IHXSubRectSite * *  Purpose: * *  Interface to determine if a site support sub rect BLT'ing via *  the HX_SURFACE_UPDATE2 message. If the site does support sub *  rect BLT'ing you can tell the site to send you the *  HX_SURFACE_UPDATE2 messages via this interface. * *  IHXSubRectSite: * *  {00000D25-0902-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXSubRectSite, 0x00000D25, 0x903, 0x11d1, 0x8b,    0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXSubRectSiteDECLARE_INTERFACE_(IHXSubRectSite, IHXSite){    /*     * Tells the site to send/not-send HX_SURFACE_UPDATE2 messages.     * These messages contain actuall dirty rects so that the renderer     * does not need to BLT the entire frame.     */    STDMETHOD(SendSubRectMessages) (THIS_ BOOL bRet ) PURE;    /*     * New damage region call that takes the cross platfrom region     * defined in hxwintyp.h and invalidates the rects in it     */    STDMETHOD(SubRectDamageRegion) (THIS_ HXxBoxRegion* pRegion ) PURE;    /*     * Method to get the new video surface that comes with the sub     * rect BLT'ing support.     */    STDMETHOD(GetSubRectVideoSurface) (THIS_                                        REF(IHXSubRectVideoSurface*) pSurface                                       ) PURE;};// $EndPrivate./**************************************************************************** * *  Interface: * *  IHXFocusNavigation * *  Purpose: * *  Interface for navigating between and within keyboard focus sites * *  IHXFocusNavigation: * *  {B42B7677-F605-438e-9002-E2AAB7784B43} * */DEFINE_GUID(IID_IHXFocusNavigation, 0xb42b7677, 0xf605, 0x438e, 0x90,            0x2, 0xe2, 0xaa, 0xb7, 0x78, 0x4b, 0x43);#undef  INTERFACE#define INTERFACE   IHXFocusNavigationDECLARE_INTERFACE_(IHXFocusNavigation, IUnknown){    /************************************************************************     *  Method:     *          IHXFocusNavigation::SetFocus     *  Purpose:     *          Ask the renderer to set the focus to the given item.     */    STDMETHOD(SetFocus) (THIS_ HXFocusContext eFocus) PURE;    /************************************************************************     *  Method:     *          IHXFocusNavigation::ClearFocus     *  Purpose:     *          Ask the renderer to clear the current focus.     */    STDMETHOD(ClearFocus) (THIS) PURE;    /************************************************************************     *  Method:     *          IHXFocusNavigation::ActivateFocus     *  Purpose:     *          Ask the renderer to activate the focused link. Do nothing if      *   there is no focus point.     */    STDMETHOD(ActivateFocus) (THIS) PURE;    /************************************************************************     *  Method:     *          IHXFocusNavigation::GetFocusState     *  Purpose:     *          Obtain the current focus state     */    STDMETHOD_(HXFocusState,GetFocusState) (THIS) PURE;};#endif /* _HXWIN_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -