From 6d456994f481190a1b3f18fbbf86580eb4cdecd0 Mon Sep 17 00:00:00 2001 From: Henrique Santiago Date: Tue, 19 Feb 2013 21:34:06 -0300 Subject: [PATCH] Fix scrollbar --- data/images/ui/scrollbar.png | Bin 661 -> 646 bytes data/locales/pt.lua | 3 +++ data/styles/10-scrollbars.otui | 12 +++++++++++- modules/corelib/ui/uiscrollbar.lua | 11 +++++++++-- modules/game_npctrade/npctrade.lua | 24 ++++++++---------------- 5 files changed, 31 insertions(+), 19 deletions(-) diff --git a/data/images/ui/scrollbar.png b/data/images/ui/scrollbar.png index 3d0b6af15de17d45a004821cb5955b547b89b1a8..4d87786c6aa581176adb6754c3a314f4e5f9a4be 100644 GIT binary patch delta 621 zcmV-z0+Rie1%?HXB!32COGiWi{{a60|De66lK=n!32;bRa{vGf6951U69E94oEQKA z00(qQO+^RY0u%rr51J|^_5c6^6G=otRA}Dqn!!%OKomt^n;O#?!iGh40j`j>U*MfKz`;sP*FmpMbW_mi)V1JMdchb?ixQr#f>ZyOf zUM(dO5s7$B?ksN>|7Ie2%&+pMty$6yw6Tfzo}1E$7Ro|QlBb-vd>kik0z%T_3>R! z!=^AK#6f6aev)IJcPKm;NXfe1vP22&{VEO0slIu_gp(U~I8g6q*8tUm#_^|^A|p-EvePvPaI zbT)-|!!0>5P2XHUxYP8&Y};-zz4jpKj1~@BBhj5 zU*t4G{OT07UM(>oWU1AM;&uvw2t*(P5r{wpYEU24mAYP^3eco{%;T_e00000NkvXX Hu0mjfh(#Kf delta 636 zcmV-?0)zdA1(gMmB!2{RLP=Bz2nYy#2xN!=00K-&L_t(&f$f^lPQpMC#;0b{G=^}H zL*-CBA!nb!N9PGRH(o>z$N>+A5F%je#i<2$w=)YZyX*cE68?1d>nAwvi(|%nM`oa$=VZ}`qH~t$<9axiHU(UqBZ4L6cW|NFPUdqNJ_HMX|j*7}{ zea?6O@_s876CEAeZGG3w01zgp6m0mx1yVU^q+rAN3egT4Ie$gU?-S0UQ$^*V(KS;- z_o9m*KXw1YDS&5_)7ljpCWO;HQCGsLi=h+=7gilMm?CvKmjWxvkV}ane8E#;gBbut zICbeGc8H(R$ER>AIQi-ltXE6c@q#mIbph}Ghk_y735IMZ7_yyU$acIlB)D10c76bJ Wm7pCN`s?BV0000 maximum then + self:setMinimum(maximum) + end if self.value > maximum then self:setValue(maximum) else @@ -182,6 +186,9 @@ end function UIScrollBar:setMinimum(minimum) if minimum == self.minimum then return end self.minimum = minimum + if self.maximum < minimum then + self:setMaximum(minimum) + end if self.value < minimum then self:setValue(minimum) else diff --git a/modules/game_npctrade/npctrade.lua b/modules/game_npctrade/npctrade.lua index f79ae77a..9a39931e 100644 --- a/modules/game_npctrade/npctrade.lua +++ b/modules/game_npctrade/npctrade.lua @@ -127,6 +127,10 @@ function onItemBoxChecked(widget) selectedItem = item refreshItem(item) tradeButton:enable() + + if getCurrentTradeType() == SELL then + quantityScroll:setValue(quantityScroll:getMaximum()) + end end end @@ -225,7 +229,8 @@ function clearSelectedItem() weightLabel:clearText() priceLabel:clearText() tradeButton:disable() - quantityScroll:setMaximum(1) + quantityScroll:setMinimum(0) + quantityScroll:setMaximum(0) if selectedItem then radioItems:selectWidget(nil) selectedItem = nil @@ -293,22 +298,10 @@ function refreshItem(item) end local priceMaxCount = math.floor(playerMoney / getItemPrice(item, true)) local finalCount = math.max(0, math.min(getMaxAmount(), math.min(priceMaxCount, capacityMaxCount))) + quantityScroll:setMinimum(1) quantityScroll:setMaximum(finalCount) - - if quantityScroll:getValue() > finalCount then - quantityScroll:setValue(finalCount) - end else - local removeAmount = 0 - if ignoreEquipped:isChecked() then - local localPlayer = g_game.getLocalPlayer() - for i=1,LAST_INVENTORY do - local inventoryItem = localPlayer:getInventoryItem(i) - if inventoryItem and inventoryItem:getId() == item.ptr:getId() then - removeAmount = removeAmount + inventoryItem:getCount() - end - end - end + quantityScroll:setMinimum(1) quantityScroll:setMaximum(math.max(0, math.min(getMaxAmount(), getSellQuantity(item.ptr)))) end @@ -481,7 +474,6 @@ function sellAll() local amount = getSellQuantity(item) if amount > 0 then g_game.sellItem(item, amount, ignoreEquipped:isChecked()) - print(amount) end end end