QPixmap TransparentTop::background(const QColor &c) { if (bg.isNull()) return QPixmap(); KPixmap pix = KPixmap(bg); return KPixmapEffect::fade(pix, m_transparent, c); }
void VariablesListView::replaceVariable(DebuggerVariable* oldvar, DebuggerVariable* newvar) { KListViewItem * item; // Remove children that doesen't exist anymore QPtrList<DebuggerVariable> oldlist = oldvar->values(); for(DebuggerVariable* oldchild = oldlist.last(); oldchild; oldchild = oldlist.prev()) { bool found = false; QPtrList<DebuggerVariable> newlist = newvar->values(); for(DebuggerVariable* newchild = newlist.last(); newchild; newchild = newlist.prev()) { if(newchild->name() == oldchild->name()) { found = true; break; } } if(!found) oldvar->deleteChild(oldchild); } // Update and add children QPtrList<DebuggerVariable> newlist = newvar->values(); for(DebuggerVariable* newchild = newlist.last(); newchild; newchild = newlist.prev()) { bool found = false; QPtrList<DebuggerVariable> oldlist = oldvar->values(); for(DebuggerVariable* oldchild = oldlist.last(); oldchild; oldchild = oldlist.prev()) { if(newchild->name() == oldchild->name()) { found = true; replaceVariable( oldchild, newchild); break; } } if(!found) { DebuggerVariable* child = new DebuggerVariable(); item = new KListViewItem(oldvar->item()); child->setItem(item); replaceVariable( child, newchild); oldvar->append(child); } } item = oldvar->item(); if(oldvar->value() != newvar->value()) item->setPixmap(VariablesListViewColumns::Status, SmallIcon("ok")); else item->setPixmap(VariablesListViewColumns::Status, KPixmap()); oldvar->copy(newvar, false); item->setText(VariablesListViewColumns::Name, oldvar->name()); item->setText(VariablesListViewColumns::Type, oldvar->typeName()); item->setText(VariablesListViewColumns::Size, oldvar->sizeName()); item->setText(VariablesListViewColumns::Value, (newvar->isScalar() ? oldvar->value() : QString())); }