OpenMW
|
00001 #ifndef MWGUI_CONTAINER_ITEM_MODEL_H 00002 #define MWGUI_CONTAINER_ITEM_MODEL_H 00003 00004 #include "itemmodel.hpp" 00005 00006 namespace MWGui 00007 { 00008 00011 class ContainerItemModel : public ItemModel 00012 { 00013 public: 00014 ContainerItemModel (const std::vector<MWWorld::Ptr>& itemSources, const std::vector<MWWorld::Ptr>& worldItems); 00017 00018 ContainerItemModel (const MWWorld::Ptr& source); 00019 00020 virtual ItemStack getItem (ModelIndex index); 00021 virtual ModelIndex getIndex (ItemStack item); 00022 virtual size_t getItemCount(); 00023 00024 virtual void copyItem (const ItemStack& item, size_t count); 00025 virtual void removeItem (const ItemStack& item, size_t count); 00026 00027 virtual void update(); 00028 00029 private: 00030 std::vector<MWWorld::Ptr> mItemSources; 00031 std::vector<MWWorld::Ptr> mWorldItems; 00032 00033 std::vector<ItemStack> mItems; 00034 }; 00035 00036 } 00037 00038 #endif