mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-01-03 16:13:22 +08:00
121 lines
5.0 KiB
C++
121 lines
5.0 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//=============================================================================//
|
|
|
|
#ifndef IHTMLCHROME_H
|
|
#define IHTMLCHROME_H
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "htmlmessages.h"
|
|
#include "tier1/utlbuffer.h"
|
|
|
|
// prototypes for all the protobuf messages, so we don't need to include all of protobuf
|
|
class CMsgBrowserReady;
|
|
class CMsgNeedsPaint;
|
|
class CMsgStartRequest;
|
|
class CMsgURLChanged;
|
|
class CMsgFinishedRequest;
|
|
class CMsgShowPopup;
|
|
class CMsgHidePopup;
|
|
class CMsgOpenNewTab;
|
|
class CMsgPopupHTMLWindow;
|
|
class CMsgSetHTMLTitle;
|
|
class CMsgLoadingResource;
|
|
class CMsgStatusText;
|
|
class CMsgSetCursor;
|
|
class CMsgFileLoadDialog;
|
|
class CMsgShowToolTip;
|
|
class CMsgUpdateToolTip;
|
|
class CMsgHideToolTip;
|
|
class CMsgSearchResults;
|
|
class CMsgClose;
|
|
class CMsgHorizontalScrollBarSizeResponse;
|
|
class CMsgVerticalScrollBarSizeResponse;
|
|
class CMsgGetZoomResponse;
|
|
class CMsgLinkAtPositionResponse;
|
|
class CMsgZoomToElementAtPositionResponse;
|
|
class CMsgJSAlert;
|
|
class CMsgJSConfirm;
|
|
class CMsgCanGoBackAndForward;
|
|
class CMsgOpenSteamURL;
|
|
class CMsgSizePopup;
|
|
class CMsgScalePageToValueResponse;
|
|
class CMsgRequestFullScreen;
|
|
class CMsgExitFullScreen;
|
|
class CMsgGetCookiesForURLResponse;
|
|
class CMsgNodeHasFocus;
|
|
class CMsgSavePageToJPEGResponse;
|
|
class CMsgFocusedNodeTextResponse;
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Purpose: a single IPC packet for the html thread (in and out)
|
|
//-----------------------------------------------------------------------------
|
|
struct HTMLCommandBuffer_t
|
|
{
|
|
EHTMLCommands m_eCmd;
|
|
int m_iBrowser;
|
|
CUtlBuffer m_Buffer;
|
|
#ifdef DBGFLAG_VALIDATE
|
|
virtual void Validate( CValidator &validator, const tchar *pchName )
|
|
{
|
|
VALIDATE_SCOPE();
|
|
ValidateObj( m_Buffer );
|
|
}
|
|
#endif
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Purpose: callback interfaces for messages from the html thread
|
|
//-----------------------------------------------------------------------------
|
|
class IHTMLResponses
|
|
{
|
|
public:
|
|
virtual ~IHTMLResponses() {}
|
|
|
|
virtual void BrowserSetIndex( int idx ) = 0;
|
|
virtual int BrowserGetIndex() = 0;
|
|
virtual void BrowserReady( const CMsgBrowserReady *pCmd ) = 0;
|
|
virtual void BrowserNeedsPaint( const CMsgNeedsPaint *pCmd ) = 0;
|
|
virtual void BrowserStartRequest( const CMsgStartRequest *pCmd ) = 0;
|
|
virtual void BrowserURLChanged( const CMsgURLChanged *pCmd ) = 0;
|
|
virtual void BrowserFinishedRequest( const CMsgFinishedRequest *pCmd ) = 0;
|
|
virtual void BrowserShowPopup( const CMsgShowPopup *pCmd ) = 0;
|
|
virtual void BrowserHidePopup( const CMsgHidePopup *pCmd ) = 0;
|
|
virtual void BrowserOpenNewTab( const CMsgOpenNewTab *pCmd ) = 0;
|
|
virtual void BrowserPopupHTMLWindow( const CMsgPopupHTMLWindow *pCmd ) = 0;
|
|
virtual void BrowserSetHTMLTitle( const CMsgSetHTMLTitle *pCmd ) = 0;
|
|
virtual void BrowserLoadingResource( const CMsgLoadingResource *pCmd ) = 0;
|
|
virtual void BrowserStatusText( const CMsgStatusText *pCmd ) = 0;
|
|
virtual void BrowserSetCursor( const CMsgSetCursor *pCmd ) = 0;
|
|
virtual void BrowserFileLoadDialog( const CMsgFileLoadDialog *pCmd ) = 0;
|
|
virtual void BrowserShowToolTip( const CMsgShowToolTip *pCmd ) = 0;
|
|
virtual void BrowserUpdateToolTip( const CMsgUpdateToolTip *pCmd ) = 0;
|
|
virtual void BrowserHideToolTip( const CMsgHideToolTip *pCmd ) = 0;
|
|
virtual void BrowserSearchResults( const CMsgSearchResults *pCmd ) = 0;
|
|
virtual void BrowserClose( const CMsgClose *pCmd ) = 0;
|
|
virtual void BrowserHorizontalScrollBarSizeResponse( const CMsgHorizontalScrollBarSizeResponse *pCmd ) = 0;
|
|
virtual void BrowserVerticalScrollBarSizeResponse( const CMsgVerticalScrollBarSizeResponse *pCmd ) = 0;
|
|
virtual void BrowserGetZoomResponse( const CMsgGetZoomResponse *pCmd ) = 0;
|
|
virtual void BrowserLinkAtPositionResponse( const CMsgLinkAtPositionResponse *pCmd ) = 0;
|
|
virtual void BrowserZoomToElementAtPositionResponse( const CMsgZoomToElementAtPositionResponse *pCmd ) = 0;
|
|
virtual void BrowserJSAlert( const CMsgJSAlert *pCmd ) = 0;
|
|
virtual void BrowserJSConfirm( const CMsgJSConfirm *pCmd ) = 0;
|
|
virtual void BrowserCanGoBackandForward( const CMsgCanGoBackAndForward *pCmd ) = 0;
|
|
virtual void BrowserOpenSteamURL( const CMsgOpenSteamURL *pCmd ) = 0;
|
|
virtual void BrowserSizePopup( const CMsgSizePopup *pCmd ) = 0;
|
|
virtual void BrowserScalePageToValueResponse( const CMsgScalePageToValueResponse *pCmd ) = 0;
|
|
virtual void BrowserRequestFullScreen( const CMsgRequestFullScreen *pCmd ) = 0;
|
|
virtual void BrowserExitFullScreen( const CMsgExitFullScreen *pCmd ) = 0;
|
|
virtual void BrowserGetCookiesForURLResponse( const CMsgGetCookiesForURLResponse *pCmd ) = 0;
|
|
virtual void BrowserNodeGotFocus( const CMsgNodeHasFocus *pCmd ) = 0;
|
|
virtual void BrowserSavePageToJPEGResponse( const CMsgSavePageToJPEGResponse *pCmd ) = 0;
|
|
virtual void BrowserFocusedNodeValueResponse( const CMsgFocusedNodeTextResponse *pCmd ) = 0;
|
|
};
|
|
|
|
#endif // IHTMLCHROME_H
|