driver->draw2DImage(texture, rect,
core::rect<s32>(core::position2d<s32>(0,0),
core::dimension2di(texture->getOriginalSize())),
- clip, colors, false);
+ clip, colors, true);
}
else
{
if(m_selected_item != NULL && m_selected_item->listname == s.listname
&& m_selected_item->i == i)
{
+ /*s32 border = imgsize.X/12;
+ driver->draw2DRectangle(video::SColor(255,192,192,192),
+ core::rect<s32>(rect.UpperLeftCorner - v2s32(1,1)*border,
+ rect.LowerRightCorner + v2s32(1,1)*border),
+ NULL);
+ driver->draw2DRectangle(video::SColor(255,0,0,0),
+ core::rect<s32>(rect.UpperLeftCorner - v2s32(1,1)*((border+1)/2),
+ rect.LowerRightCorner + v2s32(1,1)*((border+1)/2)),
+ NULL);*/
+ s32 border = 2;
driver->draw2DRectangle(video::SColor(255,255,0,0),
- core::rect<s32>(rect.UpperLeftCorner - v2s32(2,2),
- rect.LowerRightCorner + v2s32(2,2)),
+ core::rect<s32>(rect.UpperLeftCorner - v2s32(1,1)*border,
+ rect.LowerRightCorner + v2s32(1,1)*border),
&AbsoluteClippingRect);
}
+ video::SColor bgcolor(255,128,128,128);
+ driver->draw2DRectangle(bgcolor, rect, &AbsoluteClippingRect);
+
if(item)
{
drawInventoryItem(driver, font, item,
rect, &AbsoluteClippingRect);
}
- else
- {
- video::SColor bgcolor(255,128,128,128);
- driver->draw2DRectangle(bgcolor, rect, &AbsoluteClippingRect);
- }
+
}
}
}
if(event.EventType==EET_MOUSE_INPUT_EVENT)
{
- if(event.MouseInput.Event == EMIE_LMOUSE_PRESSED_DOWN
- || event.MouseInput.Event == EMIE_RMOUSE_PRESSED_DOWN)
+ char amount = -1;
+
+ if(event.MouseInput.Event == EMIE_LMOUSE_PRESSED_DOWN)
+ amount = 0;
+ else if(event.MouseInput.Event == EMIE_RMOUSE_PRESSED_DOWN)
+ amount = 1;
+ else if(event.MouseInput.Event == EMIE_MMOUSE_PRESSED_DOWN)
+ amount = 10;
+
+ if(amount >= 0)
{
- bool right = (event.MouseInput.Event == EMIE_RMOUSE_PRESSED_DOWN);
v2s32 p(event.MouseInput.X, event.MouseInput.Y);
//dstream<<"Mouse down at p=("<<p.X<<","<<p.Y<<")"<<std::endl;
ItemSpec s = getItemAtPos(p);
{
dstream<<"Handing IACTION_MOVE to manager"<<std::endl;
IMoveAction *a = new IMoveAction();
- a->count = right ? 1 : 0;
+ a->count = amount;
a->from_inv = m_selected_item->inventoryname;
a->from_list = m_selected_item->listname;
a->from_i = m_selected_item->i;
}
// Remove selection if target was left-clicked or source
// slot was emptied
- if(right == false || source_empties)
+ if(amount == 0 || source_empties)
{
delete m_selected_item;
m_selected_item = NULL;