/usr/local/CPAN/Qt/ColorListEditor.pm
package ColorListEditor;
use strict;
use warnings;
use QtCore4;
use QtGui4;
# [0]
use QtCore4::isa qw( Qt::ComboBox );
#Q_PROPERTY(Qt::Color color READ color WRITE setColor USER true)
# [0]
sub NEW
{
my ( $class, $widget ) = @_;
$class->SUPER::NEW( $widget );
this->populateList();
}
# [0]
sub color
{
return qVariantValue( this->itemData(this->currentIndex(), Qt::DecorationRole()), 'Qt::Color' );
}
# [0]
# [1]
sub setColor
{
my ($color) = @_;
this->setCurrentIndex(this->findData($color, ${Qt::DecorationRole()}));
}
# [1]
# [2]
sub populateList
{
my $colorNames = Qt::Color::colorNames();
foreach my $i (0..$#{$colorNames}) {
my $color = Qt::Color($colorNames->[$i]);
this->insertItem($i, $colorNames->[$i]);
this->setItemData($i, $color, Qt::DecorationRole());
}
}
# [2]
1;