00001 00002 // Copyright (C) 2004-2007 by The Allacrost Project 00003 // All Rights Reserved 00004 // 00005 // This code is licensed under the GNU GPL version 2. It is free software 00006 // and you may modify it and/or redistribute it under the terms of this license. 00007 // See http://www.gnu.org/copyleft/gpl.html for details. 00009 00020 #ifndef __SHOP_WINDOWS_HEADER__ 00021 #define __SHOP_WINDOWS_HEADER__ 00022 00023 #include "defs.h" 00024 #include "utils.h" 00025 #include "global.h" 00026 #include "video.h" 00027 00028 namespace hoa_shop { 00029 00030 namespace private_shop { 00031 00038 class ShopActionWindow : public hoa_video::MenuWindow { 00039 public: 00040 ShopActionWindow(); 00041 00042 ~ShopActionWindow(); 00043 00045 void Update(); 00046 00048 void UpdateFinanceText(); 00049 00051 void Draw(); 00052 00056 hoa_video::OptionBox options; 00057 00059 hoa_video::TextBox text_box; 00060 }; // class ShopActionWindow : public hoa_video::MenuWindow 00061 00062 00068 class ObjectListWindow : public hoa_video::MenuWindow { 00069 public: 00070 ObjectListWindow(); 00071 00072 ~ObjectListWindow(); 00073 00074 // -------------------- Class Methods 00075 00077 void Clear(); 00078 00083 void AddEntry(hoa_utils::ustring name, uint32 price, uint32 quantity); 00084 00086 void ConstructList(); 00087 00089 void RefreshList(); 00090 00092 void Update(); 00093 00095 void Draw(); 00096 00097 // -------------------- Class Members 00098 00100 bool hide_options; 00101 00103 std::vector<hoa_utils::ustring> option_text; 00104 00108 hoa_video::OptionBox object_list; 00109 }; // class ObjectListWindow : public hoa_video::MenuWindow 00110 00111 00117 class ObjectSellListWindow : public hoa_video::MenuWindow { 00118 public: 00119 ObjectSellListWindow(); 00120 00121 ~ObjectSellListWindow(); 00122 00123 // -------------------- Class Methods 00124 00126 void Clear(); 00127 00133 void AddEntry(hoa_utils::ustring name, uint32 count, uint32 price, uint32 sell_count); 00134 00136 void Update(); 00137 00139 void UpdateSellList(); 00140 00142 void Draw(); 00143 00144 // -------------------- Class Members 00145 00147 bool hide_options; 00148 00150 std::vector<hoa_utils::ustring> option_text; 00151 00155 hoa_video::OptionBox object_list; 00156 }; // class ObjectSellListWindow : public hoa_video::MenuWindow 00157 00158 00164 class ObjectInfoWindow : public hoa_video::MenuWindow { 00165 public: 00166 ObjectInfoWindow(); 00167 00168 ~ObjectInfoWindow(); 00169 00171 void Draw(); 00172 00176 void SetObject(hoa_global::GlobalObject* obj); 00177 00179 hoa_video::TextBox description; 00180 00182 hoa_video::TextBox properties; 00183 00184 private: 00190 hoa_global::GlobalObject* _object; 00191 }; // class ObjectInfoWindow : public hoa_video::MenuWindow 00192 00193 00194 00201 class ConfirmWindow : public hoa_video::MenuWindow { 00202 public: 00203 ConfirmWindow(); 00204 00205 ~ConfirmWindow(); 00206 00208 void Update(); 00209 00211 void Draw(); 00212 00214 hoa_video::OptionBox options; 00215 }; // class ConfirmWindow : public hoa_video::MenuWindow 00216 00217 } // namespace private_shop 00218 00219 } // namespace hoa_shop 00220 00221 #endif // __SHOP_WINDOWS_HEADER__
1.5.1