mirror of
https://github.com/0TheSpy/Seaside.git
synced 2025-01-09 19:08:48 +08:00
71 lines
1.7 KiB
C++
71 lines
1.7 KiB
C++
#ifndef ICLIENTPANEL_H
|
|
#define ICLIENTPANEL_H
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "VGUI.h"
|
|
|
|
#ifdef GetClassName
|
|
#undef GetClassName
|
|
#endif
|
|
|
|
class KeyValues;
|
|
|
|
namespace vgui
|
|
{
|
|
|
|
class Panel;
|
|
class SurfaceBase;
|
|
|
|
enum EInterfaceID
|
|
{
|
|
ICLIENTPANEL_STANDARD_INTERFACE = 0,
|
|
};
|
|
|
|
class IClientPanel
|
|
{
|
|
public:
|
|
virtual VPANEL GetVPanel() = 0;
|
|
|
|
virtual void Think() = 0;
|
|
virtual void PerformApplySchemeSettings() = 0;
|
|
virtual void PaintTraverse(bool forceRepaint, bool allowForce) = 0;
|
|
virtual void Repaint() = 0;
|
|
virtual VPANEL IsWithinTraverse(int x, int y, bool traversePopups) = 0;
|
|
virtual void GetInset(int& top, int& left, int& right, int& bottom) = 0;
|
|
virtual void GetClipRect(int& x0, int& y0, int& x1, int& y1) = 0;
|
|
virtual void OnChildAdded(VPANEL child) = 0;
|
|
virtual void OnSizeChanged(int newWide, int newTall) = 0;
|
|
|
|
virtual void InternalFocusChanged(bool lost) = 0;
|
|
virtual bool RequestInfo(KeyValues* outputData) = 0;
|
|
virtual void RequestFocus(int direction) = 0;
|
|
virtual bool RequestFocusPrev(VPANEL existingPanel) = 0;
|
|
virtual bool RequestFocusNext(VPANEL existingPanel) = 0;
|
|
virtual void OnMessage(const KeyValues* params, VPANEL ifromPanel) = 0;
|
|
virtual VPANEL GetCurrentKeyFocus() = 0;
|
|
virtual int GetTabPosition() = 0;
|
|
|
|
virtual const char* GetName() = 0;
|
|
virtual const char* GetClassName() = 0;
|
|
|
|
virtual HScheme GetScheme() = 0;
|
|
virtual bool IsProportional() = 0;
|
|
virtual bool IsAutoDeleteSet() = 0;
|
|
virtual void DeletePanel() = 0;
|
|
|
|
virtual void* QueryInterface(EInterfaceID id) = 0;
|
|
|
|
virtual Panel* GetPanel() = 0;
|
|
|
|
virtual const char* GetModuleName() = 0;
|
|
|
|
virtual void OnTick() = 0;
|
|
};
|
|
|
|
}
|
|
|
|
|
|
#endif |