diff -U 3 -H -d -N -- patch2/baghiraclient.cc patch1/baghiraclient.cc --- patch2/baghiraclient.cc 2004-03-11 18:58:07.000000000 +0100 +++ patch1/baghiraclient.cc 2004-03-16 00:23:29.000000000 +0100 @@ -929,7 +929,8 @@ // setup layout QVBoxLayout *mainlayout = new QVBoxLayout( widget() ); QHBoxLayout *titlelayout = new QHBoxLayout(); - QHBoxLayout *windowlayout = new QHBoxLayout(); +// QHBoxLayout *windowlayout = new QHBoxLayout(); + windowlayout = new QHBoxLayout(); titlebar_ = new QSpacerItem( 1, titleheight_, QSizePolicy::Expanding, QSizePolicy::Fixed ); @@ -964,12 +965,11 @@ addButtons( titlelayout, options() ->titleButtonsRight() ); if ( BaghiraFactory::bgStipple() ) { - HandlePix = QPixmap( HANDLESIZE, HANDLESIZE ); + HandlePix = QPixmap( HANDLESIZE > 0 ? HANDLESIZE : 1, HANDLESIZE > 4 ? HANDLESIZE : 4); QPainter painter; painter.begin( &HandlePix ); painter.fillRect( HandlePix.rect(), widget() ->colorGroup().background() ); - painter.setPen( widget() ->colorGroup().background().dark( 100 + - BaghiraFactory::contrast() ) ); + painter.setPen( widget()->colorGroup().background().dark( 100 + BaghiraFactory::contrast() ) ); for ( int i = 0; i < HandlePix.height(); i += 4 ) { painter.drawLine( 0, i, HandlePix.width() - 1, i ); painter.drawLine( 0, i + 1, HandlePix.width() - 1, i + 1 ); @@ -1196,12 +1196,15 @@ y2 = title.bottom(); int b = height()-2; + const QColor *ttbar = &(options()->color(ColorTitleBar, isActive())); group = options() ->colorGroup( ColorTitleBar, isActive() ); - painter.setPen( group.midlight() ); + painter.setPen( ttbar->light(120) ); painter.drawLine( x, y, x, y2 ); - painter.setPen( group.light() ); - painter.drawRect( title ); + painter.setPen( ttbar->light(110) ); + painter.drawLine( x,y,x2,y ); + painter.drawLine( x2,y,x2,y2 ); + // draw around the corners ;-) if (BaghiraFactory::shapeUL()){ @@ -1239,8 +1242,9 @@ painter.drawPoint(w - 2, b-4); } - painter.setPen( group.shadow() ); - painter.drawLine( x+left.width(), y2, x2-right.width(), y2 ); + const QColor *ttblend = &(options()->color(ColorTitleBar, isActive())); + painter.setPen( ttblend->dark(180) ); + painter.drawLine( x+1, y2, x2-1, y2 ); // draw title text titlebar_->geometry().rect( &x, &y, &w, &h ); @@ -1259,21 +1263,23 @@ painter.fillRect( title.x(), y + 1, x - title.x()+5, h - 2, options()->color( ColorTitleBar, isActive() ) ); painter.fillRect( x+w-5, y + 1, title.right() - w + 5, h - 2, options()->color( ColorTitleBar, isActive() ) ); } - - painter.drawPixmap( iconLeft, y + ( titleheight_ - 16 ) / 2, icon().pixmap( QIconSet::Small, QIconSet::Normal ) ); + ICONX = iconLeft; + ICONY = y + ( titleheight_ - 16 ) / 2; + painter.drawPixmap( ICONX, ICONY, icon().pixmap( QIconSet::Small, QIconSet::Normal ) ); painter.drawText( x + 2 * MARGIN + 16/* - excursion*/, y, w - MARGIN * 2 - 16, h, BaghiraFactory::titleAlign() | AlignVCenter, caption() ); // draw outer frame if ( !isShade() ) { - group = options() ->colorGroup( ColorFrame, isActive() ); +// group = options() ->colorGroup( ColorFrame, isActive() ); + QColor background = widget() ->colorGroup().background(); // left side left.rect( &x, &y, &w, &h ); x2 = left.right(); y2 = left.bottom(); BaghiraFactory::bgStipple() ? painter.drawTiledPixmap( x, y, w, h, HandlePix ) : - painter.fillRect( x, y, w, h, widget() ->colorGroup().background() ); + painter.fillRect( x, y, w, h, background ); // painter.setPen(group.shadow()); // painter.drawLine(x, y, x, y2); @@ -1282,13 +1288,13 @@ x2 = right.right(); y2 = right.bottom(); BaghiraFactory::bgStipple() ? painter.drawTiledPixmap( x, y, w, h, HandlePix ) : - painter.fillRect( x, y, w, h, widget() ->colorGroup().background() ); + painter.fillRect( x, y, w, h, background ); // painter.drawLine(x2, y, x2, y2); - } +// } // draw handle ===================================================== // bottom bar - if ( !isShade() ) { +// if ( !isShade() ) { // handle middle handle.rect( &x, &y, &w, &h ); x += 15; @@ -1298,7 +1304,7 @@ group = options() ->colorGroup( ColorHandle, isActive() ); BaghiraFactory::bgStipple() ? painter.drawTiledPixmap( x, y, w, h, HandlePix ) : - painter.fillRect( x, y, w, h, widget() ->colorGroup().background() ); + painter.fillRect( x, y, w, h, background ); // painter.setPen(group.shadow()); // painter.drawLine(x, y2, x2, y2); @@ -1315,7 +1321,7 @@ if ( drawHandlerBar ) { group = options() ->colorGroup( ColorFrame, isActive() ); - painter.fillRect( x, y, w, h, group.background() ); + painter.fillRect( x, y, w, h, background ); painter.setPen( group.mid() ); painter.drawLine( x2, y, x2, y2 ); @@ -1491,15 +1497,16 @@ } void BaghiraClient::createOverlay(){ -/*inactiveOverlay = new QWidget(0, 0, WStyle_Customize | WStyle_NoBorder ); -inactiveOverlay->setGeometry(geometry()); +/*inactiveOverlay = new QWidget(widget(), 0, WStyle_Customize); +inactiveOverlay->setGeometry(/*geometry().x(), geometry().y()+titleheight_,*\/0,0,geometry().width(), geometry().height()-titleheight_); inactiveOverlay->installEventFilter( this ); -QPixmap fadePixmap = QPixmap::grabWindow(inactiveOverlay->winId()); +QPixmap fadePixmap = QPixmap::grabWindow(inactiveOverlay->winId(),0,titleheight_,width(),height()-titleheight_); KPixmapEffect::desaturate( (KPixmap&) fadePixmap, 0.8 ); -inactiveOverlay->setErasePixmap(fadePixmap); -XMapWindow(qt_xdisplay(), inactiveOverlay->winId()); -XReparentWindow(qt_xdisplay(), inactiveOverlay->winId(), widget()->winId(), 0, 0 ); -//inactiveOverlay->show(); +//inactiveOverlay->setErasePixmap(fadePixmap); +windowlayout->insertWidget(1,inactiveOverlay,1); +//XMapWindow(qt_xdisplay(), inactiveOverlay->winId()); +//XReparentWindow(qt_xdisplay(), inactiveOverlay->winId(), widget()->winId(), 0, 0 ); +inactiveOverlay->show(); qWarning("setting faded TRUE"); isFaded = true;*/ /* @@ -1518,8 +1525,9 @@ void BaghiraClient::removeOverlay(){ /* if (inactiveOverlay){ -// inactiveOverlay->hide(); - XUnmapWindow(qt_xdisplay(), inactiveOverlay->winId()); + inactiveOverlay->hide(); +// XUnmapWindow(qt_xdisplay(), inactiveOverlay->winId()); + windowlayout->remove(inactiveOverlay); delete inactiveOverlay; qWarning("setting faded FALSE (2)"); isFaded = false; @@ -1557,10 +1565,12 @@ // The title has changed void BaghiraClient::iconChange() { - if ( button[ MenuButton ] ) { + QPainter painter( widget() ); + painter.drawPixmap( ICONX, ICONY, icon().pixmap( QIconSet::Small, QIconSet::Normal ) ); +/* if ( button[ MenuButton ] ) { button[ MenuButton ] ->setIcon(); button[ MenuButton ] ->repaint( false ); - } + }*/ } ////////////////////////////////////////////////////////////////////////////// diff -U 3 -H -d -N -- patch2/baghiraclient.h patch1/baghiraclient.h --- patch2/baghiraclient.h 2004-03-11 17:20:11.000000000 +0100 +++ patch1/baghiraclient.h 2004-03-14 03:35:31.000000000 +0100 @@ -303,6 +303,8 @@ int plusminus; bool isFaded; QWidget *inactiveOverlay; + QHBoxLayout *windowlayout; + int ICONX, ICONY; // KDecorationBridge *myBridge_; // QImage* ActiveDecoImage_; // QImage* InactiveDecoImage_;