From b9aad1f15dc600e4dbe4c62d3fcced6363188ba3 Mon Sep 17 00:00:00 2001 From: zautrix Date: Sat, 26 Jun 2004 19:01:18 +0000 Subject: Initial revision --- (limited to 'microkde/kcolordialog.cpp') diff --git a/microkde/kcolordialog.cpp b/microkde/kcolordialog.cpp new file mode 100644 index 0000000..9a76e5e --- a/dev/null +++ b/microkde/kcolordialog.cpp @@ -0,0 +1,92 @@ +#include "kcolordialog.h" +#include +#include +#include +#include +#include +#include +#include + +#include +QColor KColorDialog::getColor( ) const +{ + QColor c ( r->value(), g->value(), b->value() ); + lar->setText ( "R: " + QString::number ( c.red() ) ); + lag->setText ( "G: " + QString::number ( c.green() ) ); + lab->setText ( "B: " + QString::number ( c.blue() ) ); + return c; +} +void KColorDialog::setColor( const QColor & d ) +{ + r->setValue(d.red() ); + g->setValue(d.green() ); + b->setValue(d.blue() ); + old_color->setPalette( QPalette( d.dark(), d ) ); + lar->setText ( "R: " + QString::number ( d.red() ) ); + lag->setText ( "G: " + QString::number ( d.green() ) ); + lab->setText ( "B: " + QString::number ( d.blue() ) ); + +} +KColorDialog::KColorDialog( QWidget *p ):QDialog( p, "input-dialog", true ) +{ + setCaption( i18n("Choose Color") ); + + setMaximumSize( QApplication::desktop()->width() - 20, QApplication::desktop()->height() - 40 ); // for zaurus 5500er. + QGridLayout* lay = new QGridLayout ( this, 4, 2 ); + lay->setSpacing( 6 ); + lay->setMargin( 11 ); + + old_color = new QLabel("Old color",this); + old_color->setFrameStyle( QFrame::Panel | QFrame::Plain ); + old_color->setLineWidth( 1 ); + lay->addWidget(old_color, 0, 0); + + new_color = new QLabel("New color", this); + new_color->setFrameStyle( QFrame::Panel | QFrame::Plain ); + new_color->setLineWidth( 1 ); + lay->addWidget(new_color, 0, 1); + new_color->setAlignment( AlignCenter ); + + QHBox* hb = new QHBox ( this ); + lar = new QLabel( hb ); + lag = new QLabel( hb ); + lab = new QLabel( hb ); + lay->addMultiCellWidget( hb,1,1, 0,1 ); + + QLabel* lr = new QLabel ( "Red:", this ); + lay->addWidget( lr,2,0 ); + r = new QSlider ( 0, 255, 1, 1, Horizontal, this ); + lay->addWidget(r ,2,1 ); + + QLabel* lg = new QLabel( "Green:",this ); + lay->addWidget(lg ,3,0 ); + g = new QSlider ( 0, 255, 1, 1, Horizontal, this ); + lay->addWidget( g ,3,1 ); + + QLabel* lb = new QLabel ( "Blue:",this ); + lay->addWidget( lb,4,0 ); + b = new QSlider ( 0, 255, 1, 1, Horizontal, this ); + lay->addWidget(b ,4,1 ); + + QColor d = backgroundColor(); + r->setValue(d.red() ); + g->setValue(d.green() ); + b->setValue(d.blue() ); + old_color->setPalette( QPalette( d.dark() , d ) ); + // kannst du wieder reinnehmen, aber es geht auch so. + QPushButton * ok = new QPushButton (i18n(" OK "), this ); + QPushButton * cancel = new QPushButton (i18n(" Cancel "), this ); + + lay->addWidget(ok ,5,0 ); + lay->addWidget(cancel ,5,1 ); + connect (ok, SIGNAL( clicked() ), this ,SLOT (accept() )); + connect (cancel, SIGNAL( clicked() ), this ,SLOT (reject() )); + connect (r, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); + connect (g, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); + connect (b, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); +} +void KColorDialog::updateColor( int ) +{ + QColor c = getColor( ) ; + new_color->setPalette( QPalette( c.dark(), c ) ); +} -- cgit v0.9.0.2