MechPurchaseScreen.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #ifndef MECHPURCHASESCREEN_H
  2. #define MECHPURCHASESCREEN_H
  3. /*************************************************************************************************\
  4. MechPurchaseScreen.h : Interface for the MechPurchaseScreen component.
  5. //---------------------------------------------------------------------------//
  6. // Copyright (C) Microsoft Corporation. All rights reserved. //
  7. //===========================================================================//
  8. \*************************************************************************************************/
  9. #ifndef LOGISTICSSCREEN_H
  10. #include "LogisticsScreen.h"
  11. #endif
  12. #include "MechListBox.h"
  13. #include "LogisticsMech.h"
  14. #include "EList.h"
  15. #include "LogisticsMechDisplay.h"
  16. class LogisticsMech;
  17. //*************************************************************************************************
  18. /**************************************************************************************************
  19. CLASS DESCRIPTION
  20. MechPurchaseScreen:
  21. **************************************************************************************************/
  22. class MechPurchaseScreen: public LogisticsScreen
  23. {
  24. public:
  25. static MechPurchaseScreen* instance() { return s_instance; }
  26. MechPurchaseScreen();
  27. virtual ~MechPurchaseScreen();
  28. int init( FitIniFile& file );
  29. virtual void begin();
  30. virtual void end();
  31. virtual void update();
  32. virtual void render(int xOffset, int yOffset);
  33. void setMech( LogisticsMech* pMech, bool bFromLB = 0 );
  34. void beginDrag( LogisticsMech* pMech );
  35. virtual int handleMessage( unsigned long, unsigned long );
  36. private:
  37. MechPurchaseScreen( const MechPurchaseScreen& src );
  38. MechPurchaseScreen& operator=( const MechPurchaseScreen& echPurchaseScreen );
  39. MechListBox inventoryListBox;
  40. MechListBox variantListBox;
  41. LogisticsMechDisplay mechDisplay;
  42. LogisticsMech* pDragMech;
  43. aObject dragIcon;
  44. bool acceptPressed;
  45. static MechPurchaseScreen* s_instance;
  46. bool dragStartLeft;
  47. typedef EList<LogisticsMech, LogisticsMech > MECH_LIST;
  48. MECH_LIST prevInventory;
  49. float countDownTime;
  50. float curCount;
  51. float previousAmount;
  52. float oldCBillsAmount;
  53. float flashTime;
  54. // HELPER FUNCTIONS
  55. void addSelectedMech();
  56. void removeSelectedMech();
  57. void addMech( LogisticsMech* pMech );
  58. void removeMech( LogisticsMech* pMech );
  59. void endDrag();
  60. bool selectFirstBuyableMech();
  61. };
  62. //*************************************************************************************************
  63. #endif // end of file ( MechPurchaseScreen.h )