benoitrigolleau@159: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ benoitrigolleau@159: benoitrigolleau@159: /* benoitrigolleau@159: Sound Access benoitrigolleau@159: EASAIER client application. benoitrigolleau@159: Silogic 2007. Benoit Rigolleau. benoitrigolleau@159: benoitrigolleau@159: This program is free software; you can redistribute it and/or benoitrigolleau@159: modify it under the terms of the GNU General Public License as benoitrigolleau@159: published by the Free Software Foundation; either version 2 of the benoitrigolleau@159: License, or (at your option) any later version. See the file benoitrigolleau@159: COPYING included with this distribution for more information. benoitrigolleau@159: */ benoitrigolleau@159: benoitrigolleau@159: benoitrigolleau@159: #include "RadialLNFButton.h" benoitrigolleau@159: #include benoitrigolleau@159: #include benoitrigolleau@159: benoitrigolleau@159: RadialLNFButton::RadialLNFButton(QWidget *parent):QPushButton(parent) benoitrigolleau@159: { benoitrigolleau@159: this->setFlat(true); benoitrigolleau@159: } benoitrigolleau@159: benoitrigolleau@159: RadialLNFButton::RadialLNFButton (const QIcon & icon, const QString & text, QWidget * parent ):QPushButton(icon,text,parent) benoitrigolleau@159: { benoitrigolleau@159: this->setFlat(true); benoitrigolleau@159: } benoitrigolleau@159: benoitrigolleau@159: void RadialLNFButton::paintEvent(QPaintEvent *event) benoitrigolleau@159: { benoitrigolleau@159: benoitrigolleau@159: benoitrigolleau@159: QPainter painter(this); benoitrigolleau@159: painter.setRenderHint(QPainter::Antialiasing, false); benoitrigolleau@159: draw(&painter); benoitrigolleau@159: QPushButton::paintEvent(event); benoitrigolleau@159: } benoitrigolleau@159: benoitrigolleau@159: void RadialLNFButton::draw(QPainter *painter) benoitrigolleau@159: { benoitrigolleau@159: benoitrigolleau@159: QPalette actualPalette; benoitrigolleau@159: QColor color1 = actualPalette.color(QPalette::Highlight); benoitrigolleau@159: QColor color2 = actualPalette.color(QPalette::Button); benoitrigolleau@159: //QColor color3(QRgb(0xffffcc15)); benoitrigolleau@159: benoitrigolleau@159: color1.setAlpha(90); benoitrigolleau@159: //color3.setAlpha(70) benoitrigolleau@159: //color2.setAlpha(80); benoitrigolleau@159: benoitrigolleau@159: //QColor color1(QRgb(0xffaaaaaa)); benoitrigolleau@159: benoitrigolleau@159: //QColor color2(QRgb(0xffdbf756)); benoitrigolleau@159: //color2.setAlpha(100); benoitrigolleau@159: benoitrigolleau@159: benoitrigolleau@159: painter->setPen(QPen(palette().foreground(),1,Qt::NoPen,Qt::RoundCap)); benoitrigolleau@159: benoitrigolleau@159: /* benoitrigolleau@159: int rectsize = this->width()/20; benoitrigolleau@159: for(int i=0;i<=20;i++){ benoitrigolleau@159: if((i+m_ind)%2){ benoitrigolleau@159: painter->setBrush(QBrush(color1, Qt::SolidPattern)); benoitrigolleau@159: } benoitrigolleau@159: else{ benoitrigolleau@159: painter->setBrush(QBrush(Qt::white, Qt::SolidPattern)); benoitrigolleau@159: } benoitrigolleau@159: painter->drawRect(i*rectsize,0,this->width(), this->height()); benoitrigolleau@159: } benoitrigolleau@159: */ benoitrigolleau@159: benoitrigolleau@159: QLinearGradient rectRadian(0,0,this->width(),0); benoitrigolleau@159: rectRadian.setColorAt(0,color1); benoitrigolleau@159: rectRadian.setColorAt(0.8,color2); benoitrigolleau@159: rectRadian.setColorAt(1,color2); benoitrigolleau@159: benoitrigolleau@159: painter->setPen(QPen(palette().foreground(),1,Qt::NoPen,Qt::RoundCap)); benoitrigolleau@159: painter->setBrush(rectRadian); benoitrigolleau@159: painter->drawRect(0,0,this->width(), this->height()); benoitrigolleau@159: }