Planeshift

pawsbankwindow.h

Go to the documentation of this file.
00001 /*
00002 * pawsbankwindow.h - Author: Mike Gist
00003 *
00004 * Copyright (C) 2007 Atomic Blue ([email protected], http://www.atomicblue.org)
00005 *
00006 *
00007 * This program is free software; you can redistribute it and/or
00008 * modify it under the terms of the GNU General Public License
00009 * as published by the Free Software Foundation (version 2 of the License)
00010 * This program is distributed in the hope that it will be useful,
00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013 * GNU General Public License for more details.
00014 * You should have received a copy of the GNU General Public License
00015 * along with this program; if not, write to the Free Software
00016 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00017 *
00018 */
00019 
00020 #ifndef __PAWS_BANK_WINDOW_H__
00021 #define __PAWS_BANK_WINDOW_H__
00022 
00023 #include "net/cmdbase.h"
00024 #include "paws/pawswidget.h"
00025 #include "paws/pawstextbox.h"
00026 #include "paws/pawsbutton.h"
00027 #include "paws/pawslistbox.h"
00028 #include "paws/pawsradio.h"
00029 
00033 class pawsBankWindow : public pawsWidget, public psClientNetSubscriber
00034 {
00035 public:
00036     pawsBankWindow();
00037     virtual ~pawsBankWindow();
00038 
00039     /* From pawsWidget */
00040     bool PostSetup();
00041     bool OnButtonPressed( int mouseButton, int keyModifier, pawsWidget* widget );
00042     
00043     /* From iNetSubscriber */
00044     void HandleMessage( MsgEntry* me );
00045     
00046 protected:
00047 
00048     /* Text that shows the total amount of money available to withdraw. */
00049     pawsTextBox *circlesCanWithdraw, *octasCanWithdraw, *hexasCanWithdraw, *triasCanWithdraw;
00050 
00051     /* Text that shows the total amount of money available to deposit. */
00052     pawsTextBox *circlesCanDeposit, *octasCanDeposit, *hexasCanDeposit, *triasCanDeposit;
00053 
00054     /* Text that shows the maximum amount of each coin available to exchange. */
00055     pawsTextBox *circlesCanExchange, *octasCanExchange, *hexasCanExchange, *triasCanExchange;
00056 
00057     /* Box for specifying how much to withdraw. */
00058     pawsEditTextBox *circlesToWithdraw, *octasToWithdraw, *hexasToWithdraw, *triasToWithdraw;
00059 
00060     /* Box for specifying how much to deposit. */
00061     pawsEditTextBox *circlesToDeposit, *octasToDeposit, *hexasToDeposit, *triasToDeposit;
00062 
00063     /* Box for specifying how much to exchange. */
00064     pawsEditTextBox *coinsToExchange;
00065 
00066     /* Coin selection radio group */
00067     pawsRadioButtonGroup *coinSelect;
00068 
00069     /* Radio buttons for specifying which coin type to exchange. */
00070     pawsRadioButton *circles, *octas, *hexas, *trias;
00071 
00072     /* Fee info for coin conversions. */
00073     pawsTextBox *feeInfo;
00074 
00075     /* Tab buttons. */
00076     pawsButton *Money, *Admin;
00077 
00078     /* two sub-windows. */
00079     pawsWidget *moneyWindow, *adminWindow;
00080 
00081     /* Whether or not this is a guild bank account. */
00082     bool guild;
00083 }; 
00084 
00085 CREATE_PAWS_FACTORY( pawsBankWindow );
00086 
00087 #endif // __PAWS_BANK_WINDOW_H__