All pastes #1580320 Raw Edit

Miscellany

public cpp v1 · immutable
#1580320 ·published 2009-09-26 15:16 UTC
rendered paste body
#include <iostream>#include <guichan.hpp>#include <guichan/irrlicht.hpp>#include <irrlicht.h>using namespace std;using namespace irr;using namespace gcn;IrrlichtDevice *mDevice;Gui *mGui;IrrlichtInput *mInput;IrrlichtGraphics *mGraphics;IrrlichtImageLoader *mImageLoader;Container *mTop;Font *mFont;Label *mLabel1;Label *mLabel2;TextField *mUsername;TextField *mPassword;Button *mLogin;class EventReceiver : public IEventReceiver{    public:                virtual bool OnEvent (const SEvent &event)        {            mInput->pushInput (event);            return false;        }};class LoginLabelListener : public MouseListener{    public:        virtual void mouseClicked (MouseEvent &event)        {            mUsername->setText("");            mPassword->setText("");            mUsername->setCaretPosition(0);            mPassword->setCaretPosition(0);        }};class LoginButtonMouseListener : public MouseListener{    public:                virtual void mouseClicked (MouseEvent &event)        {            if (!mUsername->getText().empty() && !mPassword->getText().empty()) {                cout << "attempting to login '" << mUsername->getText() << "' with password '" << mPassword->getText() << "'" << endl;            }        }};LoginButtonMouseListener mLoginButtonMouseListener;LoginLabelListener mLoginLabelListener;int main (int argc, char *argv[]){    mDevice = createDevice (video::EDT_OPENGL);    if (!mDevice)        return 1;    EventReceiver mReceiver;    mDevice->setEventReceiver (&mReceiver);    mImageLoader = new IrrlichtImageLoader (mDevice->getVideoDriver());    Image::setImageLoader (mImageLoader);    mGraphics = new IrrlichtGraphics (mDevice->getVideoDriver());    mInput = new IrrlichtInput (mDevice);    mGui = new Gui ();    mGui->setGraphics (mGraphics);    mGui->setInput (mInput);    mTop = new Container();    mTop->setDimension (Rectangle (0, 0, 640, 480));    mTop->setOpaque (false);    mGui->setTop (mTop);    mFont = new ImageFont ("techyfontwhite.png", " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,!?-+/():;%&`'*#=[]\"");    gcn::Widget::setGlobalFont (mFont);    mUsername = new TextField ("Username");    mUsername->setPosition (10, 55);    mUsername->addMouseListener (&mLoginLabelListener);    mPassword = new TextField ("Password");    mPassword->setPosition (10, 85);    mPassword->addMouseListener (&mLoginLabelListener);        mLogin = new Button("Login");    mLogin->setPosition (10, 115);    mLogin->addMouseListener (&mLoginButtonMouseListener);        mTop->add (mUsername);    mTop->add (mPassword);    mTop->add (mLogin);    mLabel1 = new Label ("Paragon");    mLabel1->setPosition (10, 10);    mLabel2 = new Label ();    mLabel2->setPosition (10, 35);    mTop->add (mLabel1);    mTop->add (mLabel2);    while (mDevice->run())    {        mGui->logic();        mDevice->getVideoDriver()->beginScene (true, true, video::SColor (255, 0, 0, 0));        mDevice->getSceneManager()->drawAll ();        mGui->draw();        mDevice->getVideoDriver()->endScene();    }        delete mDevice;    delete mGui;    delete mInput;    delete mGraphics;    delete mImageLoader;    delete mTop;    delete mFont;    delete mLabel1;    delete mLabel2;    delete mUsername;    delete mPassword;    delete mLogin;        return 0;}