1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-13 19:39:44 +00:00

Drag and drop works. There is a bug with item count when doing d&d. Clean-up time :p

This commit is contained in:
gugus 2012-05-11 12:50:30 +02:00
parent 9dd65dce30
commit cfb7aa4343
2 changed files with 7 additions and 6 deletions

View file

@ -203,6 +203,7 @@ void ContainerWindow::onSelectedItem(MyGUI::Widget* _sender)
count++; count++;
if(count == item->mPos) if(count == item->mPos)
{ {
mDragAndDrop->mStore.add(*iter);
iter->getRefData().setCount(0); iter->getRefData().setCount(0);
break; break;
} }
@ -232,16 +233,16 @@ void ContainerWindow::onContainerClicked(MyGUI::Widget* _sender)
if(mDragAndDrop->mIsOnDragAndDrop) //drop widget here if(mDragAndDrop->mIsOnDragAndDrop) //drop widget here
{ {
ItemWidget* item = static_cast<ItemWidget*>(mDragAndDrop->mDraggedWidget); ItemWidget* item = static_cast<ItemWidget*>(mDragAndDrop->mDraggedWidget);
std::cout << item->mPos << item->mPtr.getTypeName(); std::cout << item->mPos << (*mDragAndDrop->mStore.begin()).getTypeName();
if(item->mPtr.getContainerStore() == 0) std::cout << "nocontainer!"; if(item->mPtr.getContainerStore() == 0) std::cout << "nocontainer!";
std::cout << item->mPtr.getContainerStore()->getType(item->mPtr); MWWorld::ContainerStore& containerStore = MWWorld::Class::get(mContainer).getContainerStore(mContainer);
MWWorld::Ptr ptr = item->mPtr; containerStore.add(*mDragAndDrop->mStore.begin());
//MWWorld::World mDragAndDrop->mStore.clear();
//mContainer.getContainerStore()->add(item->mPtr);
mDragAndDrop->mIsOnDragAndDrop = false; mDragAndDrop->mIsOnDragAndDrop = false;
mDragAndDrop->mDraggedWidget->detachFromWidget(); mDragAndDrop->mDraggedWidget->detachFromWidget();
mDragAndDrop->mDraggedWidget->attachToWidget(mContainerWidget); mDragAndDrop->mDraggedWidget->attachToWidget(mContainerWidget);
mDragAndDrop->mDraggedWidget = 0; mDragAndDrop->mDraggedWidget = 0;
mDragAndDrop->mContainerWindow = 0; mDragAndDrop->mContainerWindow = 0;
drawItems();
} }
} }

View file

@ -39,7 +39,7 @@ namespace MWGui
ContainerWindow* mContainerWindow; ContainerWindow* mContainerWindow;
MyGUI::Widget* mDraggedWidget; MyGUI::Widget* mDraggedWidget;
MyGUI::Widget* mDragAndDropWidget; MyGUI::Widget* mDragAndDropWidget;
MWWorld::ContainerStore mStore;
MWWorld::Ptr mItem; MWWorld::Ptr mItem;
}; };