#include"vgui_int.h" #include #include #include #include #include #include #include #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" //Label *gTestLabel = NULL; //CImageLabel* gTestLabel; 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); } public: virtual bool isWithin(int x,int y) { return _textEntry->isWithin(x,y); } public: 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); // //gTestLabel = new Label( "TestLabel", 125, 125, 200, 50 ); // gTestLabel = new CImageLabel( "arrowdn", 125, 125, 200, 50 ); // gTestLabel->setParent( root ); // // //gTestLabel->setFgColor(0, 255, 0, 128); // //gTestLabel->setBgColor( 0, 0, 0, 128); // // gTestLabel->m_pTGA->setColor( vgui::Color(0, 255, 0, 128) ); } // Comment this out when not debugging //TexturePanel* texturePanel=new TexturePanel(); //texturePanel->setParent(gViewPort); } void VGui_Shutdown() { delete gViewPort; gViewPort = NULL; }