00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef PAPERDOLLGUMP_H
00020 #define PAPERDOLLGUMP_H
00021
00022 #include "ContainerGump.h"
00023
00024 class RenderedText;
00025
00026 class PaperdollGump : public ContainerGump
00027 {
00028 public:
00029 ENABLE_RUNTIME_CLASSTYPE();
00030
00031 PaperdollGump();
00032 PaperdollGump(Shape* shape, uint32 framenum, uint16 owner,
00033 uint32 _Flags = FLAG_DRAGGABLE, sint32 layer = LAYER_NORMAL);
00034 virtual ~PaperdollGump(void);
00035
00036
00037 virtual void InitGump(Gump* newparent, bool take_focus=true);
00038
00039
00040 virtual void Close(bool no_del = false);
00041
00042
00043 virtual void PaintThis(RenderSurface*, sint32 lerp_factor, bool scaled);
00044
00045 virtual void ChildNotify(Gump *child, uint32 message);
00046
00047
00048 virtual uint16 TraceObjId(int mx, int my);
00049
00050
00051
00052 virtual bool GetLocationOfItem(uint16 itemid, int &gx, int &gy,
00053 sint32 lerp_factor = 256);
00054
00055 virtual bool StartDraggingItem(Item* item, int mx, int my);
00056 virtual bool DraggingItem(Item* item, int mx, int my);
00057 virtual void DropItem(Item* item, int mx, int my);
00058
00059 bool loadData(IDataSource* ids, uint32 version);
00060 protected:
00061 virtual void saveData(ODataSource* ods);
00062
00064 void PaintStats(RenderSurface*, sint32 lerp_factor);
00065
00067 void PaintStat(RenderSurface* surf, unsigned int n,
00068 std::string text, int val);
00069
00070 RenderedText* cached_text[14];
00071 int cached_val[7];
00072
00073 uint16 statbuttongid;
00074 };
00075
00076 #endif