diff -r 79fbc444584c -r c9a78ba03679 QTfrontend/itemNum.cpp --- a/QTfrontend/itemNum.cpp Mon Nov 22 10:04:08 2010 +0100 +++ b/QTfrontend/itemNum.cpp Mon Nov 22 12:35:52 2010 +0100 @@ -22,10 +22,11 @@ #include #include -ItemNum::ItemNum(const QImage& im, QWidget * parent, unsigned char min, unsigned char max) : - QFrame(parent), m_im(im), infinityState(false), nonInteractive(false), minItems(min), maxItems(max), +ItemNum::ItemNum(const QImage& im, const QImage& img, QWidget * parent, unsigned char min, unsigned char max) : + QFrame(parent), m_im(im), m_img(img), infinityState(false), nonInteractive(false), minItems(min), maxItems(max), numItems(min+2 >= max ? min : min+2) { + enabled = true; if(frontendEffects) setAttribute(Qt::WA_PaintOnScreen, true); } @@ -36,7 +37,7 @@ void ItemNum::mousePressEvent ( QMouseEvent * event ) { if(nonInteractive) return; - if(event->button()==Qt::LeftButton) { + if(event->button()==Qt::LeftButton && enabled) { event->accept(); if((infinityState && numItems <= maxItems) || (!infinityState && numItems < maxItems)) { incItems(); @@ -45,7 +46,7 @@ // appears there's an emit in there decItems(); } - } else if (event->button()==Qt::RightButton) { + } else if (event->button()==Qt::RightButton && enabled) { event->accept(); if(numItems > minItems) { decItems(); @@ -71,11 +72,19 @@ if (numItems==maxItems+1) { QRect target(0, 0, 100, 32); - painter.drawImage(target, QImage(":/res/infinity.png")); + if (enabled) { + painter.drawImage(target, QImage(":/res/infinity.png")); + } else { + painter.drawImage(target, QImage(":/res/infinitygrey.png")); + } } else { for(int i=0; i