//-------------------------------------------------------------------------------------------------------- //========= Copyright Valve Corporation, All rights reserved. ============// #ifndef SELECTIONTOOL_H #define SELECTIONTOOL_H #ifdef SERVER_USES_VGUI #include "NavUI.h" #include "nav.h" //-------------------------------------------------------------------------------------------------------- class SelectionToolPanel : public CNavUIToolPanel { DECLARE_CLASS_SIMPLE( SelectionToolPanel, CNavUIToolPanel ); public: SelectionToolPanel( vgui::Panel *parent, const char *toolName ); virtual void Init( void ); virtual void Shutdown( void ); virtual void PerformLayout( void ); virtual void OnCommand( const char *command ); virtual void StartLeftClickAction( const char *actionName ); virtual void FinishLeftClickAction( const char *actionName ); virtual void StartRightClickAction( const char *actionName ); virtual void OnCursorMoved( int x, int y ); virtual bool IsFloodSelectable( CNavArea *area ); protected: void FloodSelect( void ); CNavArea *m_floodStartArea; enum DragSelectType { DRAG_NONE, DRAG_SELECT, DRAG_UNSELECT }; DragSelectType m_dragType; }; #endif // SERVER_USES_VGUI #endif // SELECTIONTOOL_H