You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
127 lines
2.4 KiB
127 lines
2.4 KiB
//========= Copyright (c) 1996-2002, Valve LLC, All rights reserved. ============ |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//============================================================================= |
|
|
|
#include "vgui_int.h" |
|
#include <VGUI_Label.h> |
|
#include <VGUI_BorderLayout.h> |
|
#include <VGUI_LineBorder.h> |
|
#include <VGUI_SurfaceBase.h> |
|
#include <VGUI_TextEntry.h> |
|
#include <VGUI_ActionSignal.h> |
|
#include <string.h> |
|
#include "hud.h" |
|
#include "cl_util.h" |
|
#include "camera.h" |
|
#include "kbutton.h" |
|
#include "cvardef.h" |
|
#include "usercmd.h" |
|
#include "const.h" |
|
#include "camera.h" |
|
#include "in_defs.h" |
|
#include "vgui_TeamFortressViewport.h" |
|
#include "vgui_ControlConfigPanel.h" |
|
|
|
namespace |
|
{ |
|
|
|
class TexturePanel : public Panel, public ActionSignal |
|
{ |
|
private: |
|
int _bindIndex; |
|
TextEntry *_textEntry; |
|
public: |
|
TexturePanel() : Panel( 0, 0, 256, 276 ) |
|
{ |
|
_bindIndex = 2700; |
|
_textEntry = new TextEntry( "2700", 0, 0, 128, 20 ); |
|
_textEntry->setParent( this ); |
|
_textEntry->addActionSignal( this ); |
|
} |
|
|
|
virtual bool isWithin( int x, int y ) |
|
{ |
|
return _textEntry->isWithin( x, y ); |
|
} |
|
|
|
virtual void actionPerformed( Panel *panel ) |
|
{ |
|
char buf[256]; |
|
|
|
_textEntry->getText( 0, buf, 256 ); |
|
sscanf( buf, "%d", &_bindIndex); |
|
} |
|
protected: |
|
virtual void paintBackground() |
|
{ |
|
Panel::paintBackground(); |
|
|
|
int wide, tall; |
|
|
|
getPaintSize( wide, tall ); |
|
|
|
drawSetColor( 0, 0, 255, 0 ); |
|
drawSetTexture( _bindIndex ); |
|
drawTexturedRect( 0, 19, 257, 257 ); |
|
} |
|
}; |
|
|
|
} |
|
|
|
using namespace vgui; |
|
|
|
void VGui_ViewportPaintBackground( int extents[4] ) |
|
{ |
|
gEngfuncs.VGui_ViewportPaintBackground( extents ); |
|
} |
|
|
|
void* VGui_GetPanel() |
|
{ |
|
return (Panel*)gEngfuncs.VGui_GetPanel(); |
|
} |
|
|
|
void VGui_Startup() |
|
{ |
|
Panel *root = (Panel*)VGui_GetPanel(); |
|
root->setBgColor( 128, 128, 0, 0 ); |
|
// root->setNonPainted( false ); |
|
// root->setBorder( new LineBorder() ); |
|
root->setLayout( new BorderLayout( 0 ) ); |
|
|
|
// root->getSurfaceBase()->setEmulatedCursorVisible( true ); |
|
|
|
if( gViewPort != NULL ) |
|
{ |
|
// root->removeChild( gViewPort ); |
|
|
|
// free the memory |
|
// delete gViewPort; |
|
// gViewPort = NULL; |
|
|
|
gViewPort->Initialize(); |
|
} |
|
else |
|
{ |
|
gViewPort = new TeamFortressViewport( 0, 0, root->getWide(), root->getTall() ); |
|
gViewPort->setParent( root ); |
|
} |
|
|
|
/* |
|
TexturePanel *texturePanel = new TexturePanel(); |
|
texturePanel->setParent( gViewPort ); |
|
*/ |
|
} |
|
|
|
void VGui_Shutdown() |
|
{ |
|
delete gViewPort; |
|
gViewPort = NULL; |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|