mirror of
https://github.com/edubart/otclient.git
synced 2025-10-15 20:14:54 +02:00
Market fix, and a few other things:
* Added 'button' param to g_mouse.bindPress * Added 'lower' param to table.contains * UIComboBox:onOptionChange should signalcall? * Changed the experience bar color * Market buy/sell 'amount' window will now show the cost of the amount you are selecting
This commit is contained in:
@@ -408,34 +408,40 @@ local function openAmountWindow(callback, type, actionText)
|
||||
end
|
||||
amountWindow = g_ui.createWidget('AmountWindow', rootWidget)
|
||||
amountWindow:lock()
|
||||
local max = selectedOffer[type]:getAmount()
|
||||
local item = selectedOffer[type]:getItem()
|
||||
|
||||
local max = selectedOffer[type]:getAmount(item:getId())
|
||||
if type == MarketAction.Sell then
|
||||
local depot = Market.depotContains(selectedOffer[type]:getItem():getId())
|
||||
local depot = Market.depotContains()
|
||||
if max > depot then
|
||||
max = depot
|
||||
end
|
||||
end
|
||||
|
||||
local spinbox = amountWindow:getChildById('amountSpinBox')
|
||||
spinbox:setMaximum(max)
|
||||
spinbox:setMinimum(1)
|
||||
spinbox:setValue(1)
|
||||
local itembox = amountWindow:getChildById('item')
|
||||
itembox:setItemId(item:getId())
|
||||
itembox:setText(1)
|
||||
|
||||
local scrollbar = amountWindow:getChildById('amountScrollBar')
|
||||
scrollbar:setText(tostring(selectedOffer[type]:getPrice())..'gp')
|
||||
scrollbar:setMaximum(max)
|
||||
scrollbar:setMinimum(1)
|
||||
scrollbar:setValue(1)
|
||||
|
||||
scrollbar.onValueChange = function(self, value) spinbox:setValue(value) end
|
||||
spinbox.onValueChange = function(self, value) scrollbar:setValue(value) end
|
||||
scrollbar.onValueChange = function(widget, value)
|
||||
widget:setText(tostring(value*selectedOffer[type]:getPrice())..'gp')
|
||||
itembox:setText(tostring(value))
|
||||
end
|
||||
|
||||
local okButton = amountWindow:getChildById('buttonOk')
|
||||
if actionText ~= '' then okButton:setText(actionText) end
|
||||
if actionText ~= '' then
|
||||
okButton:setText(actionText)
|
||||
end
|
||||
|
||||
local okFunc = function()
|
||||
local counter = selectedOffer[type]:getCounter()
|
||||
local timestamp = selectedOffer[type]:getTimeStamp()
|
||||
callback(spinbox:getValue(), timestamp, counter)
|
||||
callback(scrollbar:getValue(), timestamp, counter)
|
||||
okButton:getParent():destroy()
|
||||
amountWindow = nil
|
||||
end
|
||||
|
@@ -1,39 +1,45 @@
|
||||
AmountWindow < MainWindow
|
||||
id: amountWindow
|
||||
!text: tr('Amount')
|
||||
size: 196 112
|
||||
size: 196 80
|
||||
|
||||
Label
|
||||
!text: tr('Amount:')
|
||||
width: 64
|
||||
Item
|
||||
id: item
|
||||
text-offset: 0 22
|
||||
text-align: right
|
||||
anchors.left: parent.left
|
||||
anchors.top: parent.top
|
||||
margin-top: 2
|
||||
|
||||
SpinBox
|
||||
id: amountSpinBox
|
||||
anchors.left: prev.right
|
||||
anchors.right: parent.right
|
||||
anchors.top: parent.top
|
||||
margin-left: -4
|
||||
focusable: false
|
||||
virtual: true
|
||||
|
||||
HorizontalScrollBar
|
||||
id: amountScrollBar
|
||||
anchors.left: parent.left
|
||||
anchors.left: prev.right
|
||||
anchors.right: parent.right
|
||||
anchors.top: prev.bottom
|
||||
margin-top: 8
|
||||
|
||||
Button
|
||||
id: buttonOk
|
||||
!text: tr('Ok')
|
||||
width: 64
|
||||
anchors.right: next.left
|
||||
anchors.bottom: parent.bottom
|
||||
margin-right: 5
|
||||
anchors.top: prev.top
|
||||
margin-left: 10
|
||||
margin-top: -2
|
||||
focusable: false
|
||||
|
||||
Button
|
||||
id: buttonCancel
|
||||
!text: tr('Cancel')
|
||||
width: 64
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
height: 20
|
||||
anchors.left: amountScrollBar.horizontalCenter
|
||||
anchors.right: amountScrollBar.right
|
||||
anchors.top: amountScrollBar.bottom
|
||||
margin-top: 7
|
||||
focusable: false
|
||||
|
||||
Button
|
||||
id: buttonOk
|
||||
!text: tr('Ok')
|
||||
height: 20
|
||||
anchors.right: amountScrollBar.horizontalCenter
|
||||
anchors.left: amountScrollBar.left
|
||||
anchors.top: amountScrollBar.bottom
|
||||
margin-top: 7
|
||||
margin-right: 6
|
||||
focusable: false
|
||||
|
@@ -176,7 +176,7 @@ Panel
|
||||
margin-bottom: 6
|
||||
@onSetup: self:setChecked(false)
|
||||
height: 16
|
||||
width: 70
|
||||
width: 90
|
||||
|
||||
Label
|
||||
id: feeLabel
|
||||
|
@@ -8,7 +8,8 @@ MarketItemBox < UICheckBox
|
||||
Item
|
||||
id: item
|
||||
phantom: true
|
||||
text-offset: 0 13
|
||||
virtual: true
|
||||
text-offset: 0 22
|
||||
text-align: right
|
||||
anchors.top: parent.top
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
Reference in New Issue
Block a user