Beispiel #1
0
void Palette::updateList() {
	
	//listOfColours->clear(); // for some reason, this creates an bus error when one removes the last element
	while(listOfColours->count() > 0) listOfColours->takeItem(0);
	for(int i=0; i <  editor->object->getColourCount(); i++) {
		ColourRef colourRef = editor->object->getColour(i);
		QListWidgetItem* colourItem = new QListWidgetItem(listOfColours);
		colourItem->setText( colourRef.name );
		QPixmap colourSwatch(32,32);
		colourSwatch.fill( colourRef.colour );
		QPainter painter(&colourSwatch);
		painter.setPen( QColor(0,0,0,128) );
		painter.drawRect( QRect(0,-1,31,31) );
		colourItem->setIcon( colourSwatch );
	}
	update();
}
void ColorPaletteWidget::refreshColorList()
{
    if ( ui->colorListWidget->count() > 0)
    {
        ui->colorListWidget->clear();
    }
    
    for (int i = 0; i < core()->object()->getColourCount(); i++)
    {
        ColourRef colourRef = core()->object()->getColour(i);

        QListWidgetItem* colourItem = new QListWidgetItem( ui->colorListWidget );
        colourItem->setText( colourRef.name );

        QPixmap colourSwatch(32, 32);
        colourSwatch.fill( colourRef.colour );
        colourItem->setIcon( colourSwatch );

        ui->colorListWidget->addItem( colourItem );
    }
    update();
}
void ColorPaletteWidget::updateItemColor( int itemIndex, QColor newColor )
{
    QPixmap colourSwatch(32, 32);
    colourSwatch.fill( newColor );
    ui->colorListWidget->item( itemIndex )->setIcon( colourSwatch );
}