//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // // $NoKeywords: $ //============================================================================= #ifndef SCROLLABLEEDITABLEPANEL_H #define SCROLLABLEEDITABLEPANEL_H #ifdef _WIN32 #pragma once #endif #include "vgui_controls/EditablePanel.h" //----------------------------------------------------------------------------- // Forward declarations //----------------------------------------------------------------------------- namespace vgui { class ScrollBar; } namespace vgui { //----------------------------------------------------------------------------- // An editable panel that has a scrollbar //----------------------------------------------------------------------------- class ScrollableEditablePanel : public vgui::EditablePanel { DECLARE_CLASS_SIMPLE( ScrollableEditablePanel, vgui::EditablePanel ); public: ScrollableEditablePanel( vgui::Panel *pParent, vgui::EditablePanel *pChild, const char *pName ); virtual ~ScrollableEditablePanel() {} virtual void ApplySettings( KeyValues *pInResourceData ); virtual void PerformLayout(); vgui::ScrollBar *GetScrollbar( void ) { return m_pScrollBar; } MESSAGE_FUNC( OnScrollBarSliderMoved, "ScrollBarSliderMoved" ); virtual void OnMouseWheeled(int delta); // respond to mouse wheel events private: vgui::ScrollBar *m_pScrollBar; vgui::EditablePanel *m_pChild; }; } // end namespace vgui #endif // SCROLLABLEEDITABLEPANEL_H