Пример #1
0
 void ChunkBar::drawBarContents(QPainter* p)
 {
     Uint32 w = contentsRect().width();
     const BitSet& bs = getBitSet();
     curr = bs;
     QColor highlight_color = palette().color(QPalette::Active, QPalette::Highlight);
     if (bs.allOn())
         drawAllOn(p, highlight_color, contentsRect());
     else if (curr.getNumBits() > w)
         drawMoreChunksThenPixels(p, bs, highlight_color, contentsRect());
     else
         drawEqual(p, bs, highlight_color, contentsRect());
 }
Пример #2
0
    void ChunkBar::updateBar(bool force)
    {
        const BitSet& bs = getBitSet();
        QSize s = contentsRect().size();

        bool changed = !(curr == bs);

        if (changed || pixmap.isNull() || pixmap.width() != s.width() || force)
        {
            pixmap = QPixmap(s);
            pixmap.fill(palette().color(QPalette::Active, QPalette::Base));
            QPainter painter(&pixmap);
            drawBarContents(&painter);
            update();
        }
    }
Пример #3
0
 BitSet  updatedSet()  { return  BitSet( m_numVars, getBitSet(1) ); }
Пример #4
0
 BitSet  callbackSet() { return  BitSet( m_numVars, getBitSet(2) ); }
Пример #5
0
 BitSet  validSet()    { return  BitSet( m_numVars, getBitSet(0) ); }