|
|
|
@ -24,14 +24,14 @@
|
|
|
|
|
#include <kpixmapeffect.h>
|
|
|
|
|
#include <kpixmap.h>
|
|
|
|
|
|
|
|
|
|
#include <qbitmap.h>
|
|
|
|
|
#include <qlabel.h>
|
|
|
|
|
#include <qlayout.h>
|
|
|
|
|
#include <qpainter.h>
|
|
|
|
|
#include <qtooltip.h>
|
|
|
|
|
#include <qtimer.h>
|
|
|
|
|
#include <qapplication.h>
|
|
|
|
|
#include <qsettings.h>
|
|
|
|
|
#include <tqbitmap.h>
|
|
|
|
|
#include <tqlabel.h>
|
|
|
|
|
#include <tqlayout.h>
|
|
|
|
|
#include <tqpainter.h>
|
|
|
|
|
#include <tqtooltip.h>
|
|
|
|
|
#include <tqtimer.h>
|
|
|
|
|
#include <tqapplication.h>
|
|
|
|
|
#include <tqsettings.h>
|
|
|
|
|
#include <math.h>
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
|
|
|
|
@ -48,7 +48,7 @@ using namespace polyester;
|
|
|
|
|
polyesterFactory* factory=NULL;
|
|
|
|
|
|
|
|
|
|
bool polyesterFactory::initialized_ = false;
|
|
|
|
|
Qt::AlignmentFlags polyesterFactory::titlealign_ = Qt::AlignHCenter;
|
|
|
|
|
TQt::AlignmentFlags polyesterFactory::titlealign_ = TQt::AlignHCenter;
|
|
|
|
|
int polyesterFactory::contrast_ = 6;
|
|
|
|
|
bool polyesterFactory::cornerflags_ = true;
|
|
|
|
|
int polyesterFactory::titlesize_ = 22;
|
|
|
|
@ -140,16 +140,16 @@ bool polyesterFactory::readConfig() {
|
|
|
|
|
config.setGroup("General");
|
|
|
|
|
|
|
|
|
|
// grab settings
|
|
|
|
|
QString value = config.readEntry("TitleAlignment", "AlignHCenter");
|
|
|
|
|
TQString value = config.readEntry("TitleAlignment", "AlignHCenter");
|
|
|
|
|
if (value == "AlignLeft")
|
|
|
|
|
titlealign_ = Qt::AlignLeft;
|
|
|
|
|
titlealign_ = TQt::AlignLeft;
|
|
|
|
|
else if (value == "AlignHCenter")
|
|
|
|
|
titlealign_ = Qt::AlignHCenter;
|
|
|
|
|
titlealign_ = TQt::AlignHCenter;
|
|
|
|
|
else if (value == "AlignRight")
|
|
|
|
|
titlealign_ = Qt::AlignRight;
|
|
|
|
|
titlealign_ = TQt::AlignRight;
|
|
|
|
|
|
|
|
|
|
QSettings globalSettings;
|
|
|
|
|
contrast_ = globalSettings.readNumEntry("/Qt/KDE/contrast", 6);
|
|
|
|
|
TQSettings globalSettings;
|
|
|
|
|
contrast_ = globalSettings.readNumEntry("/TQt/KDE/contrast", 6);
|
|
|
|
|
cornerflags_ = config.readBoolEntry("RoundCorners", true);
|
|
|
|
|
titlesize_ = config.readNumEntry("TitleSize",20);
|
|
|
|
|
titleBarStyle_ = config.readNumEntry("TitleBarStyle", 0);
|
|
|
|
@ -184,7 +184,7 @@ bool polyesterFactory::readConfig() {
|
|
|
|
|
// polyesterButton()
|
|
|
|
|
// ---------------
|
|
|
|
|
// Constructor
|
|
|
|
|
polyesterButton::polyesterButton(polyesterClient *parent, const char *name, const QString& tip, ButtonType type, int button_size, bool squareButton, bool toggle): QButton(parent->widget(), name),
|
|
|
|
|
polyesterButton::polyesterButton(polyesterClient *parent, const char *name, const TQString& tip, ButtonType type, int button_size, bool squareButton, bool toggle): TQButton(parent->widget(), name),
|
|
|
|
|
client_(parent),
|
|
|
|
|
type_(type),
|
|
|
|
|
size_(button_size),
|
|
|
|
@ -210,13 +210,13 @@ polyesterButton::polyesterButton(polyesterClient *parent, const char *name, cons
|
|
|
|
|
|
|
|
|
|
setFixedSize( buttonWidth, button_size);
|
|
|
|
|
setCursor(arrowCursor);
|
|
|
|
|
QToolTip::add(this, tip);
|
|
|
|
|
TQToolTip::add(this, tip);
|
|
|
|
|
setToggleButton(toggle);
|
|
|
|
|
//button animation setup
|
|
|
|
|
animTmr = new QTimer(this);
|
|
|
|
|
connect(animTmr, SIGNAL(timeout() ), this, SLOT(animate() ) );
|
|
|
|
|
connect(this, SIGNAL(pressed() ), this, SLOT(buttonClicked() ) );
|
|
|
|
|
connect(this, SIGNAL(released() ), this, SLOT(buttonReleased() ) );
|
|
|
|
|
animTmr = new TQTimer(this);
|
|
|
|
|
connect(animTmr, TQ_SIGNAL(timeout() ), this, TQ_SLOT(animate() ) );
|
|
|
|
|
connect(this, TQ_SIGNAL(pressed() ), this, TQ_SLOT(buttonClicked() ) );
|
|
|
|
|
connect(this, TQ_SIGNAL(released() ), this, TQ_SLOT(buttonReleased() ) );
|
|
|
|
|
animProgress = 0;
|
|
|
|
|
m_clicked=false;
|
|
|
|
|
}
|
|
|
|
@ -231,8 +231,8 @@ polyesterButton::~polyesterButton() {
|
|
|
|
|
// ----------
|
|
|
|
|
// Return size hint
|
|
|
|
|
|
|
|
|
|
QSize polyesterButton::sizeHint() const {
|
|
|
|
|
return QSize(size_, size_);
|
|
|
|
|
TQSize polyesterButton::sizeHint() const {
|
|
|
|
|
return TQSize(size_, size_);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
@ -245,7 +245,7 @@ void polyesterButton::buttonClicked() {
|
|
|
|
|
animProgress=0;
|
|
|
|
|
}
|
|
|
|
|
void polyesterButton::buttonReleased() {
|
|
|
|
|
//This doesn't work b/c a released() signal is thrown when a leaveEvent occurs
|
|
|
|
|
//This doesn't work b/c a released() TQ_SIGNAL is thrown when a leaveEvent occurs
|
|
|
|
|
//m_clicked=false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -276,9 +276,9 @@ void polyesterButton::animate() {
|
|
|
|
|
// ------------
|
|
|
|
|
// Mouse has entered the button
|
|
|
|
|
|
|
|
|
|
void polyesterButton::enterEvent(QEvent *e) {
|
|
|
|
|
void polyesterButton::enterEvent(TQEvent *e) {
|
|
|
|
|
// we wanted to pass on the event
|
|
|
|
|
QButton::enterEvent(e);
|
|
|
|
|
TQButton::enterEvent(e);
|
|
|
|
|
// we want to do mouseovers, so keep track of it here
|
|
|
|
|
hover_=true;
|
|
|
|
|
if(!m_clicked)
|
|
|
|
@ -292,9 +292,9 @@ void polyesterButton::enterEvent(QEvent *e) {
|
|
|
|
|
// ------------
|
|
|
|
|
// Mouse has left the button
|
|
|
|
|
|
|
|
|
|
void polyesterButton::leaveEvent(QEvent *e) {
|
|
|
|
|
void polyesterButton::leaveEvent(TQEvent *e) {
|
|
|
|
|
// we wanted to pass on the event
|
|
|
|
|
QButton::leaveEvent(e);
|
|
|
|
|
TQButton::leaveEvent(e);
|
|
|
|
|
// we want to do mouseovers, so keep track of it here
|
|
|
|
|
hover_=false;
|
|
|
|
|
if(!m_clicked)
|
|
|
|
@ -308,7 +308,7 @@ void polyesterButton::leaveEvent(QEvent *e) {
|
|
|
|
|
// -----------------
|
|
|
|
|
// Button has been pressed
|
|
|
|
|
|
|
|
|
|
void polyesterButton::mousePressEvent(QMouseEvent* e) {
|
|
|
|
|
void polyesterButton::mousePressEvent(TQMouseEvent* e) {
|
|
|
|
|
lastmouse_ = e->button();
|
|
|
|
|
|
|
|
|
|
// translate and pass on mouse event
|
|
|
|
@ -316,9 +316,9 @@ void polyesterButton::mousePressEvent(QMouseEvent* e) {
|
|
|
|
|
if ((type_ != ButtonMax) && (e->button() != LeftButton)) {
|
|
|
|
|
button = NoButton; // middle & right buttons inappropriate
|
|
|
|
|
}
|
|
|
|
|
QMouseEvent me(e->type(), e->pos(), e->globalPos(),
|
|
|
|
|
TQMouseEvent me(e->type(), e->pos(), e->globalPos(),
|
|
|
|
|
button, e->state());
|
|
|
|
|
QButton::mousePressEvent(&me);
|
|
|
|
|
TQButton::mousePressEvent(&me);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
@ -326,7 +326,7 @@ void polyesterButton::mousePressEvent(QMouseEvent* e) {
|
|
|
|
|
// -----------------
|
|
|
|
|
// Button has been released
|
|
|
|
|
|
|
|
|
|
void polyesterButton::mouseReleaseEvent(QMouseEvent* e) {
|
|
|
|
|
void polyesterButton::mouseReleaseEvent(TQMouseEvent* e) {
|
|
|
|
|
lastmouse_ = e->button();
|
|
|
|
|
|
|
|
|
|
// translate and pass on mouse event
|
|
|
|
@ -334,8 +334,8 @@ void polyesterButton::mouseReleaseEvent(QMouseEvent* e) {
|
|
|
|
|
if ((type_ != ButtonMax) && (e->button() != LeftButton)) {
|
|
|
|
|
button = NoButton; // middle & right buttons inappropriate
|
|
|
|
|
}
|
|
|
|
|
QMouseEvent me(e->type(), e->pos(), e->globalPos(), button, e->state());
|
|
|
|
|
QButton::mouseReleaseEvent(&me);
|
|
|
|
|
TQMouseEvent me(e->type(), e->pos(), e->globalPos(), button, e->state());
|
|
|
|
|
TQButton::mouseReleaseEvent(&me);
|
|
|
|
|
if(m_clicked)
|
|
|
|
|
{
|
|
|
|
|
m_clicked=false;
|
|
|
|
@ -344,21 +344,21 @@ void polyesterButton::mouseReleaseEvent(QMouseEvent* e) {
|
|
|
|
|
|
|
|
|
|
void polyesterButton::setOn(bool on)
|
|
|
|
|
{
|
|
|
|
|
QButton::setOn(on);
|
|
|
|
|
TQButton::setOn(on);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void polyesterButton::setDown(bool on)
|
|
|
|
|
{
|
|
|
|
|
QButton::setDown(on);
|
|
|
|
|
TQButton::setDown(on);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////
|
|
|
|
|
// getButtonImage()
|
|
|
|
|
// ----------------
|
|
|
|
|
// get the button QImage based on type and window mode
|
|
|
|
|
QImage polyesterButton::getButtonImage(ButtonType type)
|
|
|
|
|
// get the button TQImage based on type and window mode
|
|
|
|
|
TQImage polyesterButton::getButtonImage(ButtonType type)
|
|
|
|
|
{
|
|
|
|
|
QImage finalImage;
|
|
|
|
|
TQImage finalImage;
|
|
|
|
|
switch(type) {
|
|
|
|
|
case ButtonClose:
|
|
|
|
|
finalImage = uic_findImage( "close.png" );
|
|
|
|
@ -423,7 +423,7 @@ QImage polyesterButton::getButtonImage(ButtonType type)
|
|
|
|
|
finalImage = uic_findImage( "splat.png" );
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
if(qGray(KDecoration::options()->color(KDecoration::ColorButtonBg, client_->isActive()).rgb()) < 150)
|
|
|
|
|
if(tqGray(KDecoration::options()->color(KDecoration::ColorButtonBg, client_->isActive()).rgb()) < 150)
|
|
|
|
|
finalImage.invertPixels();
|
|
|
|
|
|
|
|
|
|
return finalImage;
|
|
|
|
@ -434,7 +434,7 @@ QImage polyesterButton::getButtonImage(ButtonType type)
|
|
|
|
|
// -------------------------
|
|
|
|
|
// draw the pixmap button
|
|
|
|
|
|
|
|
|
|
void polyesterButton::drawButton( QPainter *painter ) {
|
|
|
|
|
void polyesterButton::drawButton( TQPainter *painter ) {
|
|
|
|
|
if ( !polyesterFactory::initialized() )
|
|
|
|
|
return ;
|
|
|
|
|
|
|
|
|
@ -442,14 +442,14 @@ void polyesterButton::drawButton( QPainter *painter ) {
|
|
|
|
|
int newHeight = height() - 2;
|
|
|
|
|
int dx = (width() - newWidth) / 2;
|
|
|
|
|
int dy = (height() - newHeight) / 2;
|
|
|
|
|
QImage tmpResult;
|
|
|
|
|
QColorGroup group;
|
|
|
|
|
QColor redColor(red);
|
|
|
|
|
TQImage tmpResult;
|
|
|
|
|
TQColorGroup group;
|
|
|
|
|
TQColor redColor(red);
|
|
|
|
|
bool active = client_->isActive();
|
|
|
|
|
|
|
|
|
|
genButtonPix(active);
|
|
|
|
|
|
|
|
|
|
QPixmap backgroundTile = client_->getTitleBarTile(active);
|
|
|
|
|
TQPixmap backgroundTile = client_->getTitleBarTile(active);
|
|
|
|
|
group = KDecoration::options()->colorGroup(KDecoration::ColorButtonBg, active);
|
|
|
|
|
|
|
|
|
|
//draw the titlebar behind the buttons and app icons
|
|
|
|
@ -471,10 +471,10 @@ void polyesterButton::drawButton( QPainter *painter ) {
|
|
|
|
|
dx++;
|
|
|
|
|
dy++;
|
|
|
|
|
}
|
|
|
|
|
QPixmap menuButtonPixmap(client_->icon().pixmap(QIconSet::Small, QIconSet::Normal));
|
|
|
|
|
QImage menuButtonImage(menuButtonPixmap.convertToImage());
|
|
|
|
|
TQPixmap menuButtonPixmap(client_->icon().pixmap(TQIconSet::Small, TQIconSet::Normal));
|
|
|
|
|
TQImage menuButtonImage(menuButtonPixmap.convertToImage());
|
|
|
|
|
//draw the menu button the same size as the other buttons
|
|
|
|
|
//using QIconSet::Large gives us a 32x32 icon to resize, resizing larger than
|
|
|
|
|
//using TQIconSet::Large gives us a 32x32 icon to resize, resizing larger than
|
|
|
|
|
//that may produce pixilation of the image
|
|
|
|
|
//painter->setPen(group.background());
|
|
|
|
|
|
|
|
|
@ -483,7 +483,7 @@ void polyesterButton::drawButton( QPainter *painter ) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//build the button image with the icon superimposed to the button
|
|
|
|
|
QImage buttonImage = (active?(buttonImgActive):(buttonImgInactive))->copy();
|
|
|
|
|
TQImage buttonImage = (active?(buttonImgActive):(buttonImgInactive))->copy();
|
|
|
|
|
KImageEffect::blendOnLower( (int)round(abs(width()-size_)/2), 0,
|
|
|
|
|
getButtonImage(type_).smoothScale( size_,size_),
|
|
|
|
|
buttonImage );
|
|
|
|
@ -498,7 +498,7 @@ void polyesterButton::drawButton( QPainter *painter ) {
|
|
|
|
|
//always colorize with a threatening red color the close button
|
|
|
|
|
if( type_ == ButtonClose)
|
|
|
|
|
{
|
|
|
|
|
//tmpResult = KImageEffect::blend( QColor(180, 50, 50), buttonImage, factor );
|
|
|
|
|
//tmpResult = KImageEffect::blend( TQColor(180, 50, 50), buttonImage, factor );
|
|
|
|
|
KImageEffect::desaturate( tmpResult, factor );
|
|
|
|
|
KImageEffect::channelIntensity( tmpResult, factor/3, KImageEffect::Red );
|
|
|
|
|
KImageEffect::channelIntensity( tmpResult, -factor/2, KImageEffect::Green );
|
|
|
|
@ -550,9 +550,9 @@ void polyesterButton::drawButton( QPainter *painter ) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
KImageEffect::blendOnLower(tmpResult, QPoint(1,1), buttonImage, QRect(1,1,width()-2, height()-2) );
|
|
|
|
|
KImageEffect::blendOnLower(tmpResult, TQPoint(1,1), buttonImage, TQRect(1,1,width()-2, height()-2) );
|
|
|
|
|
|
|
|
|
|
QPixmap finalButton = QPixmap(buttonImage);
|
|
|
|
|
TQPixmap finalButton = TQPixmap(buttonImage);
|
|
|
|
|
|
|
|
|
|
painter->drawPixmap( 0, 0, finalButton );
|
|
|
|
|
}
|
|
|
|
@ -563,10 +563,10 @@ void polyesterButton::genButtonPix( bool active )
|
|
|
|
|
else if(!active && buttonImgInactive_created) return;
|
|
|
|
|
|
|
|
|
|
KPixmap tempPixmap;
|
|
|
|
|
QPixmap *tempButton = new QPixmap(width(), height());
|
|
|
|
|
QPainter painter(tempButton);
|
|
|
|
|
TQPixmap *tempButton = new TQPixmap(width(), height());
|
|
|
|
|
TQPainter painter(tempButton);
|
|
|
|
|
|
|
|
|
|
QColorGroup group;
|
|
|
|
|
TQColorGroup group;
|
|
|
|
|
group = KDecoration::options()->colorGroup(KDecoration::ColorButtonBg, client_->isActive());
|
|
|
|
|
|
|
|
|
|
if( ::factory->buttonStyle() == BUTTON_GLASS )
|
|
|
|
@ -649,7 +649,7 @@ void polyesterButton::genButtonPix( bool active )
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//border
|
|
|
|
|
QColor borderColor = group.background().dark(160);
|
|
|
|
|
TQColor borderColor = group.background().dark(160);
|
|
|
|
|
painter.setPen( borderColor );
|
|
|
|
|
painter.drawLine(0, 2, 0, height()-3);
|
|
|
|
|
painter.drawLine(width()-1, 2, width()-1, height()-3);
|
|
|
|
@ -671,29 +671,29 @@ void polyesterButton::genButtonPix( bool active )
|
|
|
|
|
painter.end();
|
|
|
|
|
|
|
|
|
|
//border antialiasing
|
|
|
|
|
QImage *tempAlphaImg = new QImage( tempButton->convertToImage() );
|
|
|
|
|
TQImage *tempAlphaImg = new TQImage( tempButton->convertToImage() );
|
|
|
|
|
//tempAlphaImg = tempPixmap.convertToImage();
|
|
|
|
|
tempAlphaImg->setAlphaBuffer(true);
|
|
|
|
|
int borderRed = borderColor.red();
|
|
|
|
|
int borderGreen = borderColor.green();
|
|
|
|
|
int borderBlue = borderColor.blue();
|
|
|
|
|
|
|
|
|
|
tempAlphaImg->setPixel(0,0, qRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1, 0, qRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(0,height()-1, qRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1,height()-1, qRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(0,0, tqRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1, 0, tqRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(0,height()-1, tqRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1,height()-1, tqRgba(borderRed, borderGreen , borderBlue, 40));
|
|
|
|
|
|
|
|
|
|
tempAlphaImg->setPixel(0,1, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(1,0, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(0,1, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(1,0, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
|
|
|
|
|
tempAlphaImg->setPixel(width()-2,0, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1,1, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(width()-2,0, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1,1, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
|
|
|
|
|
tempAlphaImg->setPixel(0,height()-2, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(1,height()-1, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(0,height()-2, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(1,height()-1, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
|
|
|
|
|
tempAlphaImg->setPixel(width()-1,height()-2, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(width()-2,height()-1, qRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(width()-1,height()-2, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
tempAlphaImg->setPixel(width()-2,height()-1, tqRgba(borderRed, borderGreen , borderBlue, 127));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if( client_->isActive() )
|
|
|
|
@ -734,13 +734,13 @@ polyesterClient::polyesterClient(KDecorationBridge *b, KDecorationFactory *f)
|
|
|
|
|
//captionBufferDirty(true),
|
|
|
|
|
closing(false),
|
|
|
|
|
s_titleHeight(0),
|
|
|
|
|
s_titleFont(QFont()),
|
|
|
|
|
s_titleFont(TQFont()),
|
|
|
|
|
maskDirty(true),
|
|
|
|
|
aDoubleBufferDirty(true),
|
|
|
|
|
iDoubleBufferDirty(true)
|
|
|
|
|
{
|
|
|
|
|
aCaptionBuffer = new QPixmap();
|
|
|
|
|
iCaptionBuffer = new QPixmap();
|
|
|
|
|
aCaptionBuffer = new TQPixmap();
|
|
|
|
|
iCaptionBuffer = new TQPixmap();
|
|
|
|
|
|
|
|
|
|
//copying the most used configuration options
|
|
|
|
|
frameSize = ::factory->frameSize();
|
|
|
|
@ -784,7 +784,7 @@ void polyesterClient::create_pixmaps() {
|
|
|
|
|
if(pixmaps_created)
|
|
|
|
|
return;
|
|
|
|
|
KPixmap tempPixmap;
|
|
|
|
|
QPainter painter;
|
|
|
|
|
TQPainter painter;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// active top title bar tile
|
|
|
|
@ -795,7 +795,7 @@ void polyesterClient::create_pixmaps() {
|
|
|
|
|
KPixmapEffect::VerticalGradient
|
|
|
|
|
);
|
|
|
|
|
// tempPixmap.fill(KDecoration::options()->color(ColorTitleBar, true).light(150));
|
|
|
|
|
aTitleBarTopTile = new QPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
aTitleBarTopTile = new TQPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
painter.begin(aTitleBarTopTile);
|
|
|
|
|
painter.drawPixmap(0, 0, tempPixmap);
|
|
|
|
|
painter.end();
|
|
|
|
@ -806,7 +806,7 @@ void polyesterClient::create_pixmaps() {
|
|
|
|
|
KDecoration::options()->color(ColorTitleBlend, false),
|
|
|
|
|
KPixmapEffect::VerticalGradient
|
|
|
|
|
);
|
|
|
|
|
iTitleBarTopTile = new QPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
iTitleBarTopTile = new TQPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
painter.begin(iTitleBarTopTile);
|
|
|
|
|
painter.drawPixmap(0, 0, tempPixmap);
|
|
|
|
|
painter.end();
|
|
|
|
@ -817,9 +817,9 @@ void polyesterClient::create_pixmaps() {
|
|
|
|
|
else
|
|
|
|
|
tempPixmap.resize(1, s_titleHeight+frameSize);
|
|
|
|
|
|
|
|
|
|
QColor color1;
|
|
|
|
|
QColor color2;
|
|
|
|
|
QColor glassColor;
|
|
|
|
|
TQColor color1;
|
|
|
|
|
TQColor color2;
|
|
|
|
|
TQColor glassColor;
|
|
|
|
|
if( ::factory->titleBarStyle() == TITLEBAR_GLASS )
|
|
|
|
|
{
|
|
|
|
|
glassColor = alphaBlendColors( KDecoration::options()->color(ColorTitleBar, true),
|
|
|
|
@ -840,7 +840,7 @@ void polyesterClient::create_pixmaps() {
|
|
|
|
|
KPixmapEffect::VerticalGradient
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
aTitleBarTile = new QPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
aTitleBarTile = new TQPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
painter.begin(aTitleBarTile);
|
|
|
|
|
painter.drawPixmap(0, 0, tempPixmap);
|
|
|
|
|
|
|
|
|
@ -867,7 +867,7 @@ void polyesterClient::create_pixmaps() {
|
|
|
|
|
KDecoration::options()->color(ColorTitleBlend, false),
|
|
|
|
|
KPixmapEffect::VerticalGradient
|
|
|
|
|
);
|
|
|
|
|
iTitleBarTile = new QPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
iTitleBarTile = new TQPixmap(1, s_titleHeight+frameSize);
|
|
|
|
|
painter.begin(iTitleBarTile);
|
|
|
|
|
painter.drawPixmap(0, 0, tempPixmap);
|
|
|
|
|
painter.end();
|
|
|
|
@ -940,26 +940,26 @@ void polyesterClient::_resetLayout()
|
|
|
|
|
delete bottomSpacer_;
|
|
|
|
|
delete windowSpacer_;
|
|
|
|
|
|
|
|
|
|
mainLayout_ = new QVBoxLayout(widget());
|
|
|
|
|
mainLayout_ = new TQVBoxLayout(widget());
|
|
|
|
|
// title
|
|
|
|
|
titleLayout_ = new QHBoxLayout();
|
|
|
|
|
QHBoxLayout *windowLayout_ = new QHBoxLayout();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
topSpacer_ = new QSpacerItem(1, frameSize, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
titlebar_ = new QSpacerItem(1, s_titleHeight,
|
|
|
|
|
QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
leftTitleSpacer_ = new QSpacerItem(frameSize, s_titleHeight,
|
|
|
|
|
QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
|
rightTitleSpacer_ = new QSpacerItem(frameSize, s_titleHeight,
|
|
|
|
|
QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
|
decoSpacer_ = new QSpacerItem(1, frameSize, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
leftSpacer_ = new QSpacerItem(frameSize, 1,
|
|
|
|
|
QSizePolicy::Fixed, QSizePolicy::Expanding);
|
|
|
|
|
rightSpacer_ = new QSpacerItem(frameSize, 1,
|
|
|
|
|
QSizePolicy::Fixed, QSizePolicy::Expanding);
|
|
|
|
|
bottomSpacer_ = new QSpacerItem(1, frameSize,
|
|
|
|
|
QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
titleLayout_ = new TQHBoxLayout();
|
|
|
|
|
TQHBoxLayout *windowLayout_ = new TQHBoxLayout();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
topSpacer_ = new TQSpacerItem(1, frameSize, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
titlebar_ = new TQSpacerItem(1, s_titleHeight,
|
|
|
|
|
TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
leftTitleSpacer_ = new TQSpacerItem(frameSize, s_titleHeight,
|
|
|
|
|
TQSizePolicy::Fixed, TQSizePolicy::Fixed);
|
|
|
|
|
rightTitleSpacer_ = new TQSpacerItem(frameSize, s_titleHeight,
|
|
|
|
|
TQSizePolicy::Fixed, TQSizePolicy::Fixed);
|
|
|
|
|
decoSpacer_ = new TQSpacerItem(1, frameSize, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
leftSpacer_ = new TQSpacerItem(frameSize, 1,
|
|
|
|
|
TQSizePolicy::Fixed, TQSizePolicy::Expanding);
|
|
|
|
|
rightSpacer_ = new TQSpacerItem(frameSize, 1,
|
|
|
|
|
TQSizePolicy::Fixed, TQSizePolicy::Expanding);
|
|
|
|
|
bottomSpacer_ = new TQSpacerItem(1, frameSize,
|
|
|
|
|
TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
|
|
|
|
|
// sizeof(...) is calculated at compile time
|
|
|
|
|
memset(button, 0, sizeof(polyesterButton *) * ButtonTypeCount);
|
|
|
|
@ -967,9 +967,9 @@ void polyesterClient::_resetLayout()
|
|
|
|
|
// message in preview widget
|
|
|
|
|
if (isPreview()) {
|
|
|
|
|
windowLayout_->addWidget(
|
|
|
|
|
new QLabel( i18n("<b><center>Polyester Preview</center></b>"), widget() ), 1 );
|
|
|
|
|
new TQLabel( i18n("<b><center>Polyester Preview</center></b>"), widget() ), 1 );
|
|
|
|
|
} else {
|
|
|
|
|
windowLayout_->addItem(new QSpacerItem(0, 0));
|
|
|
|
|
windowLayout_->addItem(new TQSpacerItem(0, 0));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// setup titlebar buttons
|
|
|
|
@ -980,17 +980,17 @@ void polyesterClient::_resetLayout()
|
|
|
|
|
|
|
|
|
|
if( !::factory->noModalButtons() || !isModal() || isResizable())
|
|
|
|
|
addButtons(titleLayout_,
|
|
|
|
|
options()->customButtonPositions() ? options()->titleButtonsLeft() : QString(default_left),
|
|
|
|
|
options()->customButtonPositions() ? options()->titleButtonsLeft() : TQString(default_left),
|
|
|
|
|
buttonSize);
|
|
|
|
|
titleLayout_->addItem(titlebar_);
|
|
|
|
|
if( !::factory->noModalButtons() || !isModal() || isResizable())
|
|
|
|
|
addButtons(titleLayout_,
|
|
|
|
|
options()->customButtonPositions() ? options()->titleButtonsRight() : QString(default_right),
|
|
|
|
|
options()->customButtonPositions() ? options()->titleButtonsRight() : TQString(default_right),
|
|
|
|
|
buttonSize);
|
|
|
|
|
titleLayout_->addItem(rightTitleSpacer_);
|
|
|
|
|
|
|
|
|
|
//Mid - left side, middle contents and right side
|
|
|
|
|
QHBoxLayout * midLayout_ = new QHBoxLayout();
|
|
|
|
|
TQHBoxLayout * midLayout_ = new TQHBoxLayout();
|
|
|
|
|
midLayout_->addItem(leftSpacer_);
|
|
|
|
|
midLayout_->addLayout(windowLayout_);
|
|
|
|
|
midLayout_->addItem(rightSpacer_);
|
|
|
|
@ -1004,8 +1004,8 @@ void polyesterClient::_resetLayout()
|
|
|
|
|
|
|
|
|
|
// connections
|
|
|
|
|
//TODO: probably these two connections could be removed
|
|
|
|
|
// connect(this, SIGNAL(keepAboveChanged(bool)), SLOT(keepAboveChange(bool)));
|
|
|
|
|
// connect(this, SIGNAL(keepBelowChanged(bool)), SLOT(keepBelowChange(bool)));
|
|
|
|
|
// connect(this, TQ_SIGNAL(keepAboveChanged(bool)), TQ_SLOT(keepAboveChange(bool)));
|
|
|
|
|
// connect(this, TQ_SIGNAL(keepBelowChanged(bool)), TQ_SLOT(keepBelowChange(bool)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
@ -1013,8 +1013,8 @@ void polyesterClient::_resetLayout()
|
|
|
|
|
// ------------
|
|
|
|
|
// Add buttons to title layout
|
|
|
|
|
|
|
|
|
|
void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int button_size) {
|
|
|
|
|
QString tip;
|
|
|
|
|
void polyesterClient::addButtons(TQBoxLayout *layout, const TQString& s, int button_size) {
|
|
|
|
|
TQString tip;
|
|
|
|
|
if (s.length() > 0) {
|
|
|
|
|
for (unsigned n=0; n < s.length(); n++) {
|
|
|
|
|
switch (s[n]) {
|
|
|
|
@ -1022,8 +1022,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
if (!button[ButtonMenu]) {
|
|
|
|
|
button[ButtonMenu] =
|
|
|
|
|
new polyesterButton(this, "splat.png", i18n("Menu"),ButtonMenu,button_size,::factory->squareButton());
|
|
|
|
|
connect(button[ButtonMenu], SIGNAL(pressed()), this, SLOT(menuButtonPressed()));
|
|
|
|
|
connect(button[ButtonMenu], SIGNAL(released()), this, SLOT(menuButtonReleased()));
|
|
|
|
|
connect(button[ButtonMenu], TQ_SIGNAL(pressed()), this, TQ_SLOT(menuButtonPressed()));
|
|
|
|
|
connect(button[ButtonMenu], TQ_SIGNAL(released()), this, TQ_SLOT(menuButtonReleased()));
|
|
|
|
|
layout->addWidget(button[ButtonMenu]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1038,8 +1038,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
}
|
|
|
|
|
button[ButtonSticky] =
|
|
|
|
|
new polyesterButton(this, "circle.png", tip, ButtonSticky, button_size,::factory->squareButton(), true);
|
|
|
|
|
connect(button[ButtonSticky], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(toggleOnAllDesktops()));
|
|
|
|
|
connect(button[ButtonSticky], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(toggleOnAllDesktops()));
|
|
|
|
|
layout->addWidget(button[ButtonSticky]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1049,8 +1049,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
if ((!button[ButtonHelp]) && providesContextHelp()) {
|
|
|
|
|
button[ButtonHelp] =
|
|
|
|
|
new polyesterButton(this, "help.png", i18n("Help"), ButtonHelp, button_size, ::factory->squareButton());
|
|
|
|
|
connect(button[ButtonHelp], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(showContextHelp()));
|
|
|
|
|
connect(button[ButtonHelp], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(showContextHelp()));
|
|
|
|
|
layout->addWidget(button[ButtonHelp]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1060,8 +1060,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
if ((!button[ButtonMin]) && isMinimizable()) {
|
|
|
|
|
button[ButtonMin] =
|
|
|
|
|
new polyesterButton(this, "minimize.png", i18n("Minimize"), ButtonMin, button_size,::factory->squareButton());
|
|
|
|
|
connect(button[ButtonMin], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(minimize()));
|
|
|
|
|
connect(button[ButtonMin], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(minimize()));
|
|
|
|
|
layout->addWidget(button[ButtonMin]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1076,8 +1076,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
}
|
|
|
|
|
button[ButtonMax] =
|
|
|
|
|
new polyesterButton(this, "maximize.png", tip, ButtonMax, button_size,::factory->squareButton(), true);
|
|
|
|
|
connect(button[ButtonMax], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(maxButtonPressed()));
|
|
|
|
|
connect(button[ButtonMax], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(maxButtonPressed()));
|
|
|
|
|
layout->addWidget(button[ButtonMax]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1087,8 +1087,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
if ((!button[ButtonClose]) && isCloseable()) {
|
|
|
|
|
button[ButtonClose] =
|
|
|
|
|
new polyesterButton(this, "close.png", i18n("Close"), ButtonClose, button_size, ::factory->squareButton());
|
|
|
|
|
connect(button[ButtonClose], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(closeWindow()));
|
|
|
|
|
connect(button[ButtonClose], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(closeWindow()));
|
|
|
|
|
layout->addWidget(button[ButtonClose]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1099,8 +1099,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
button[ButtonAbove] =
|
|
|
|
|
new polyesterButton(this, "keep_above.png",
|
|
|
|
|
i18n("Keep Above Others"), ButtonAbove, button_size, ::factory->squareButton(), true);
|
|
|
|
|
connect(button[ButtonAbove], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(aboveButtonPressed()));
|
|
|
|
|
connect(button[ButtonAbove], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(aboveButtonPressed()));
|
|
|
|
|
layout->addWidget(button[ButtonAbove]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1111,8 +1111,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
button[ButtonBelow] =
|
|
|
|
|
new polyesterButton(this, "keep_below.png",
|
|
|
|
|
i18n("Keep Below Others"), ButtonBelow, button_size, ::factory->squareButton(), true);
|
|
|
|
|
connect(button[ButtonBelow], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(belowButtonPressed()));
|
|
|
|
|
connect(button[ButtonBelow], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(belowButtonPressed()));
|
|
|
|
|
layout->addWidget(button[ButtonBelow]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1127,8 +1127,8 @@ void polyesterClient::addButtons(QBoxLayout *layout, const QString& s, int butto
|
|
|
|
|
}
|
|
|
|
|
button[ButtonShade] =
|
|
|
|
|
new polyesterButton(this, "splat.png", tip, ButtonShade, button_size, ::factory->squareButton(), true);
|
|
|
|
|
connect(button[ButtonShade], SIGNAL(clicked()),
|
|
|
|
|
this, SLOT(shadeButtonPressed()));
|
|
|
|
|
connect(button[ButtonShade], TQ_SIGNAL(clicked()),
|
|
|
|
|
this, TQ_SLOT(shadeButtonPressed()));
|
|
|
|
|
layout->addWidget(button[ButtonShade]);
|
|
|
|
|
if (n < s.length()-1) layout->addSpacing(1);
|
|
|
|
|
}
|
|
|
|
@ -1172,8 +1172,8 @@ void polyesterClient::captionChange() {
|
|
|
|
|
void polyesterClient::desktopChange() {
|
|
|
|
|
bool d = isOnAllDesktops();
|
|
|
|
|
if (button[ButtonSticky]) {
|
|
|
|
|
QToolTip::remove(button[ButtonSticky]);
|
|
|
|
|
QToolTip::add(button[ButtonSticky], d ? i18n("Un-Sticky") : i18n("Sticky"));
|
|
|
|
|
TQToolTip::remove(button[ButtonSticky]);
|
|
|
|
|
TQToolTip::add(button[ButtonSticky], d ? i18n("Un-Sticky") : i18n("Sticky"));
|
|
|
|
|
button[ButtonSticky]->repaint(false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1198,8 +1198,8 @@ void polyesterClient::maximizeChange() {
|
|
|
|
|
maskDirty = aDoubleBufferDirty = iDoubleBufferDirty = true;
|
|
|
|
|
bool m = (maximizeMode() == MaximizeFull);
|
|
|
|
|
if (button[ButtonMax]) {
|
|
|
|
|
QToolTip::remove(button[ButtonMax]);
|
|
|
|
|
QToolTip::add(button[ButtonMax], m ? i18n("Restore") : i18n("Maximize"));
|
|
|
|
|
TQToolTip::remove(button[ButtonMax]);
|
|
|
|
|
TQToolTip::add(button[ButtonMax], m ? i18n("Restore") : i18n("Maximize"));
|
|
|
|
|
button[ButtonMax]->repaint(false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1212,8 +1212,8 @@ void polyesterClient::maximizeChange() {
|
|
|
|
|
void polyesterClient::shadeChange() {
|
|
|
|
|
bool s = isSetShade();
|
|
|
|
|
if (button[ButtonShade]) {
|
|
|
|
|
QToolTip::remove(button[ButtonShade]);
|
|
|
|
|
QToolTip::add(button[ButtonShade], s ? i18n("Unshade") : i18n("Shade"));
|
|
|
|
|
TQToolTip::remove(button[ButtonShade]);
|
|
|
|
|
TQToolTip::add(button[ButtonShade], s ? i18n("Unshade") : i18n("Shade"));
|
|
|
|
|
button[ButtonShade]->repaint(false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1255,13 +1255,13 @@ void polyesterClient::borders(int &left, int &right, int &top, int &bottom) cons
|
|
|
|
|
top = s_titleHeight;
|
|
|
|
|
|
|
|
|
|
// update layout etc.
|
|
|
|
|
topSpacer_->changeSize(1, -1, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
decoSpacer_->changeSize(1, 0, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
leftSpacer_->changeSize(left, 1, QSizePolicy::Fixed, QSizePolicy::Expanding);
|
|
|
|
|
leftTitleSpacer_->changeSize(left, s_titleHeight, QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
|
rightSpacer_->changeSize(right, 1, QSizePolicy::Fixed, QSizePolicy::Expanding);
|
|
|
|
|
rightTitleSpacer_->changeSize(right, s_titleHeight, QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
|
bottomSpacer_->changeSize(1, bottom, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
topSpacer_->changeSize(1, -1, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
decoSpacer_->changeSize(1, 0, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
leftSpacer_->changeSize(left, 1, TQSizePolicy::Fixed, TQSizePolicy::Expanding);
|
|
|
|
|
leftTitleSpacer_->changeSize(left, s_titleHeight, TQSizePolicy::Fixed, TQSizePolicy::Fixed);
|
|
|
|
|
rightSpacer_->changeSize(right, 1, TQSizePolicy::Fixed, TQSizePolicy::Expanding);
|
|
|
|
|
rightTitleSpacer_->changeSize(right, s_titleHeight, TQSizePolicy::Fixed, TQSizePolicy::Fixed);
|
|
|
|
|
bottomSpacer_->changeSize(1, bottom, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
} else {
|
|
|
|
|
/*if the borders are rounded add more left and right borders*/
|
|
|
|
|
if( roundedCorners )
|
|
|
|
@ -1271,13 +1271,13 @@ void polyesterClient::borders(int &left, int &right, int &top, int &bottom) cons
|
|
|
|
|
top = titleSize + (frameSize*2);
|
|
|
|
|
|
|
|
|
|
// update layout etc.
|
|
|
|
|
topSpacer_->changeSize(1, frameSize, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
decoSpacer_->changeSize(1, frameSize, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
leftSpacer_->changeSize(left, 1, QSizePolicy::Fixed, QSizePolicy::Expanding);
|
|
|
|
|
leftTitleSpacer_->changeSize(left, s_titleHeight, QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
|
rightSpacer_->changeSize(right, 1, QSizePolicy::Fixed, QSizePolicy::Expanding);
|
|
|
|
|
rightTitleSpacer_->changeSize(right,s_titleHeight,QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
|
bottomSpacer_->changeSize(1, bottom, QSizePolicy::Expanding, QSizePolicy::Fixed);
|
|
|
|
|
topSpacer_->changeSize(1, frameSize, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
decoSpacer_->changeSize(1, frameSize, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
leftSpacer_->changeSize(left, 1, TQSizePolicy::Fixed, TQSizePolicy::Expanding);
|
|
|
|
|
leftTitleSpacer_->changeSize(left, s_titleHeight, TQSizePolicy::Fixed, TQSizePolicy::Fixed);
|
|
|
|
|
rightSpacer_->changeSize(right, 1, TQSizePolicy::Fixed, TQSizePolicy::Expanding);
|
|
|
|
|
rightTitleSpacer_->changeSize(right,s_titleHeight,TQSizePolicy::Fixed, TQSizePolicy::Fixed);
|
|
|
|
|
bottomSpacer_->changeSize(1, bottom, TQSizePolicy::Expanding, TQSizePolicy::Fixed);
|
|
|
|
|
}
|
|
|
|
|
widget()->layout()->activate();
|
|
|
|
|
}
|
|
|
|
@ -1287,7 +1287,7 @@ void polyesterClient::borders(int &left, int &right, int &top, int &bottom) cons
|
|
|
|
|
// --------
|
|
|
|
|
// Called to resize the window
|
|
|
|
|
|
|
|
|
|
void polyesterClient::resize(const QSize &size) {
|
|
|
|
|
void polyesterClient::resize(const TQSize &size) {
|
|
|
|
|
widget()->resize(size);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1296,7 +1296,7 @@ void polyesterClient::resize(const QSize &size) {
|
|
|
|
|
// -------------
|
|
|
|
|
// Return the minimum allowable size for this window
|
|
|
|
|
|
|
|
|
|
QSize polyesterClient::minimumSize() const {
|
|
|
|
|
TQSize polyesterClient::minimumSize() const {
|
|
|
|
|
return widget()->minimumSize();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1305,7 +1305,7 @@ QSize polyesterClient::minimumSize() const {
|
|
|
|
|
// ---------------
|
|
|
|
|
// Return logical mouse position
|
|
|
|
|
|
|
|
|
|
KDecoration::Position polyesterClient::mousePosition(const QPoint &point) const {
|
|
|
|
|
KDecoration::Position polyesterClient::mousePosition(const TQPoint &point) const {
|
|
|
|
|
const int corner = 24;
|
|
|
|
|
Position pos;
|
|
|
|
|
int fs = frameSize + handlebar;
|
|
|
|
@ -1355,33 +1355,33 @@ KDecoration::Position polyesterClient::mousePosition(const QPoint &point) const
|
|
|
|
|
// -------------
|
|
|
|
|
// Event filter
|
|
|
|
|
|
|
|
|
|
bool polyesterClient::eventFilter(QObject *obj, QEvent *e) {
|
|
|
|
|
bool polyesterClient::eventFilter(TQObject *obj, TQEvent *e) {
|
|
|
|
|
if (obj != widget())
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
|
|
switch (e->type()) {
|
|
|
|
|
case QEvent::MouseButtonDblClick: {
|
|
|
|
|
mouseDoubleClickEvent(static_cast<QMouseEvent *>(e));
|
|
|
|
|
case TQEvent::MouseButtonDblClick: {
|
|
|
|
|
mouseDoubleClickEvent(static_cast<TQMouseEvent *>(e));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
case QEvent::MouseButtonPress: {
|
|
|
|
|
processMousePressEvent(static_cast<QMouseEvent *>(e));
|
|
|
|
|
case TQEvent::MouseButtonPress: {
|
|
|
|
|
processMousePressEvent(static_cast<TQMouseEvent *>(e));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
case QEvent::Wheel: {
|
|
|
|
|
wheelEvent(static_cast< QWheelEvent* >(e));
|
|
|
|
|
case TQEvent::Wheel: {
|
|
|
|
|
wheelEvent(static_cast< TQWheelEvent* >(e));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
case QEvent::Paint: {
|
|
|
|
|
paintEvent(static_cast<QPaintEvent *>(e));
|
|
|
|
|
case TQEvent::Paint: {
|
|
|
|
|
paintEvent(static_cast<TQPaintEvent *>(e));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
case QEvent::Resize: {
|
|
|
|
|
resizeEvent(static_cast<QResizeEvent *>(e));
|
|
|
|
|
case TQEvent::Resize: {
|
|
|
|
|
resizeEvent(static_cast<TQResizeEvent *>(e));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
case QEvent::Show: {
|
|
|
|
|
showEvent(static_cast<QShowEvent *>(e));
|
|
|
|
|
case TQEvent::Show: {
|
|
|
|
|
showEvent(static_cast<TQShowEvent *>(e));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
default: {
|
|
|
|
@ -1397,7 +1397,7 @@ bool polyesterClient::eventFilter(QObject *obj, QEvent *e) {
|
|
|
|
|
// -----------------------
|
|
|
|
|
// Doubleclick on title
|
|
|
|
|
|
|
|
|
|
void polyesterClient::mouseDoubleClickEvent(QMouseEvent *e) {
|
|
|
|
|
void polyesterClient::mouseDoubleClickEvent(TQMouseEvent *e) {
|
|
|
|
|
if (titlebar_->geometry().contains(e->pos()))
|
|
|
|
|
titlebarDblClickOperation();
|
|
|
|
|
}
|
|
|
|
@ -1407,7 +1407,7 @@ void polyesterClient::mouseDoubleClickEvent(QMouseEvent *e) {
|
|
|
|
|
// -----------------------
|
|
|
|
|
// Mousewheel over titlebar
|
|
|
|
|
|
|
|
|
|
void polyesterClient::wheelEvent(QWheelEvent * e) {
|
|
|
|
|
void polyesterClient::wheelEvent(TQWheelEvent * e) {
|
|
|
|
|
#if KDE_VERSION > KDE_MAKE_VERSION(3,4,3)
|
|
|
|
|
if (titleLayout_->geometry().contains(e->pos()))
|
|
|
|
|
titlebarMouseWheelOperation(e->delta());
|
|
|
|
@ -1419,7 +1419,7 @@ titlebarMouseWheelOperation(e->delta());
|
|
|
|
|
// ------------
|
|
|
|
|
// Repaint the window
|
|
|
|
|
|
|
|
|
|
void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
void polyesterClient::paintEvent(TQPaintEvent* e) {
|
|
|
|
|
if (!::factory->initialized())
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
@ -1429,21 +1429,21 @@ void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
const uint maxCaptionLength = 200; // truncate captions longer than this!
|
|
|
|
|
// FIXME: truncate related to window size
|
|
|
|
|
//titlebar_->geometry().width()/(widget()->font().pointSize());
|
|
|
|
|
QString captionText(caption());
|
|
|
|
|
TQString captionText(caption());
|
|
|
|
|
if (captionText.length() > maxCaptionLength) {
|
|
|
|
|
captionText.truncate(maxCaptionLength);
|
|
|
|
|
captionText.append(" [...]");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
QColor blackColor(black);
|
|
|
|
|
QColor redColor(red);
|
|
|
|
|
QColorGroup group,widgetGroup;
|
|
|
|
|
TQColor blackColor(black);
|
|
|
|
|
TQColor redColor(red);
|
|
|
|
|
TQColorGroup group,widgetGroup;
|
|
|
|
|
|
|
|
|
|
bool active = isActive();
|
|
|
|
|
|
|
|
|
|
//doublebuffering everything to avoid the flicker
|
|
|
|
|
QPainter finalPainter(widget());
|
|
|
|
|
TQPainter finalPainter(widget());
|
|
|
|
|
|
|
|
|
|
//an ugly debug red border used to thest the speed...
|
|
|
|
|
//finalPainter.fillRect(e->rect(),red);return;
|
|
|
|
@ -1467,39 +1467,39 @@ void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if( active )
|
|
|
|
|
activeBuff = QPixmap(widget()->width(), widget()->height());
|
|
|
|
|
activeBuff = TQPixmap(widget()->width(), widget()->height());
|
|
|
|
|
else
|
|
|
|
|
inactiveBuff = QPixmap(widget()->width(), widget()->height());
|
|
|
|
|
inactiveBuff = TQPixmap(widget()->width(), widget()->height());
|
|
|
|
|
|
|
|
|
|
QPainter painter(active?&activeBuff:&inactiveBuff);
|
|
|
|
|
TQPainter painter(active?&activeBuff:&inactiveBuff);
|
|
|
|
|
//get group information first
|
|
|
|
|
group = options()->colorGroup(KDecoration::ColorTitleBlend, active);
|
|
|
|
|
widgetGroup = widget()->colorGroup();
|
|
|
|
|
|
|
|
|
|
QRect topRect( topSpacer_->geometry() );
|
|
|
|
|
QRect titleRect( titleLayout_->geometry() );
|
|
|
|
|
QRect textRect( titlebar_->geometry() );
|
|
|
|
|
QRect Rltitle( leftTitleSpacer_->geometry() );
|
|
|
|
|
QRect Rrtitle( rightTitleSpacer_->geometry() );
|
|
|
|
|
QRect Rdeco( decoSpacer_->geometry() );
|
|
|
|
|
QRect Rleft( leftSpacer_->geometry() );
|
|
|
|
|
QRect Rright( rightSpacer_->geometry() );
|
|
|
|
|
QRect Rbottom( bottomSpacer_->geometry() );
|
|
|
|
|
QRect tempRect;
|
|
|
|
|
TQRect topRect( topSpacer_->geometry() );
|
|
|
|
|
TQRect titleRect( titleLayout_->geometry() );
|
|
|
|
|
TQRect textRect( titlebar_->geometry() );
|
|
|
|
|
TQRect Rltitle( leftTitleSpacer_->geometry() );
|
|
|
|
|
TQRect Rrtitle( rightTitleSpacer_->geometry() );
|
|
|
|
|
TQRect Rdeco( decoSpacer_->geometry() );
|
|
|
|
|
TQRect Rleft( leftSpacer_->geometry() );
|
|
|
|
|
TQRect Rright( rightSpacer_->geometry() );
|
|
|
|
|
TQRect Rbottom( bottomSpacer_->geometry() );
|
|
|
|
|
TQRect tempRect;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
if(active)
|
|
|
|
|
{
|
|
|
|
|
qDebug("topRect.y() = %i\tbottom() = %i",topRect.top(),topRect.bottom());
|
|
|
|
|
qDebug("titleRect.y() = %i\tbottom() = %i",titleRect.top(),titleRect.bottom());
|
|
|
|
|
qDebug("textRect.y() = %i\tbottom() = %i",textRect.top(),textRect.bottom());
|
|
|
|
|
qDebug("Rltitle.y() = %i\tbottom() = %i",Rltitle.top(),Rltitle.bottom());
|
|
|
|
|
qDebug("Rrtitle.y() = %i\tbottom() = %i",Rrtitle.top(),Rrtitle.bottom());
|
|
|
|
|
qDebug("Rdeco.y() = %i\tbottom() = %i",Rdeco.top(),Rdeco.bottom());
|
|
|
|
|
qDebug("Rleft.y() = %i\tbottom() = %i",Rleft.top(),Rleft.bottom());
|
|
|
|
|
qDebug("Rright.y() = %i\tbottom() = %i",Rright.top(),Rright.bottom());
|
|
|
|
|
qDebug("Rbottom.y() = %i\tbottom() = %i",Rbottom.top(),Rbottom.bottom());
|
|
|
|
|
tqDebug("topRect.y() = %i\tbottom() = %i",topRect.top(),topRect.bottom());
|
|
|
|
|
tqDebug("titleRect.y() = %i\tbottom() = %i",titleRect.top(),titleRect.bottom());
|
|
|
|
|
tqDebug("textRect.y() = %i\tbottom() = %i",textRect.top(),textRect.bottom());
|
|
|
|
|
tqDebug("Rltitle.y() = %i\tbottom() = %i",Rltitle.top(),Rltitle.bottom());
|
|
|
|
|
tqDebug("Rrtitle.y() = %i\tbottom() = %i",Rrtitle.top(),Rrtitle.bottom());
|
|
|
|
|
tqDebug("Rdeco.y() = %i\tbottom() = %i",Rdeco.top(),Rdeco.bottom());
|
|
|
|
|
tqDebug("Rleft.y() = %i\tbottom() = %i",Rleft.top(),Rleft.bottom());
|
|
|
|
|
tqDebug("Rright.y() = %i\tbottom() = %i",Rright.top(),Rright.bottom());
|
|
|
|
|
tqDebug("Rbottom.y() = %i\tbottom() = %i",Rbottom.top(),Rbottom.bottom());
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
@ -1519,23 +1519,23 @@ void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
|
|
|
|
|
//is the title text too long?
|
|
|
|
|
bool titleTooLong = false;
|
|
|
|
|
Qt::AlignmentFlags titleAlign = ::factory->titleAlign();
|
|
|
|
|
TQt::AlignmentFlags titleAlign = ::factory->titleAlign();
|
|
|
|
|
const int gradientWidth = 60;
|
|
|
|
|
if( QFontMetrics(widget()->font()).width(captionText) > (textRect.width() - gradientWidth) )
|
|
|
|
|
if( TQFontMetrics(widget()->font()).width(captionText) > (textRect.width() - gradientWidth) )
|
|
|
|
|
{
|
|
|
|
|
titleTooLong = true;
|
|
|
|
|
titleAlign = Qt::AlignLeft;
|
|
|
|
|
titleAlign = TQt::AlignLeft;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//we are shadowing title bar text only if there is some text
|
|
|
|
|
if(::factory->titleShadow() && textRect.width()>0 && textRect.height()>0)
|
|
|
|
|
{
|
|
|
|
|
QPixmap textPixmap;
|
|
|
|
|
QPainter tempPainter;
|
|
|
|
|
QColor shadowColor;
|
|
|
|
|
TQPixmap textPixmap;
|
|
|
|
|
TQPainter tempPainter;
|
|
|
|
|
TQColor shadowColor;
|
|
|
|
|
|
|
|
|
|
textPixmap = QPixmap(textRect.width(), textRect.height());
|
|
|
|
|
textPixmap.fill(QColor(0,0,0));
|
|
|
|
|
textPixmap = TQPixmap(textRect.width(), textRect.height());
|
|
|
|
|
textPixmap.fill(TQColor(0,0,0));
|
|
|
|
|
textPixmap.setMask( textPixmap.createHeuristicMask(TRUE) );
|
|
|
|
|
tempPainter.begin(&textPixmap);
|
|
|
|
|
|
|
|
|
@ -1546,16 +1546,16 @@ void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
tempPainter.setPen(white);
|
|
|
|
|
|
|
|
|
|
tempPainter.drawText(1, 1, textRect.width(), textRect.height(),
|
|
|
|
|
titleAlign | AlignVCenter | Qt::SingleLine,
|
|
|
|
|
titleAlign | AlignVCenter | TQt::SingleLine,
|
|
|
|
|
captionText);
|
|
|
|
|
tempPainter.end();
|
|
|
|
|
|
|
|
|
|
// make the cute blurred text shadow from Plastik engine
|
|
|
|
|
QImage shadow;
|
|
|
|
|
TQImage shadow;
|
|
|
|
|
ShadowEngine se;
|
|
|
|
|
|
|
|
|
|
//deciding if the shadow will be black or white
|
|
|
|
|
if(qGray(options()->color(KDecoration::ColorFont, isActive()).rgb()) > 150)
|
|
|
|
|
if(tqGray(options()->color(KDecoration::ColorFont, isActive()).rgb()) > 150)
|
|
|
|
|
shadowColor = blackColor;
|
|
|
|
|
else
|
|
|
|
|
shadowColor = white;
|
|
|
|
@ -1570,7 +1570,7 @@ void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
painter.setFont(options()->font(isActive(), false));
|
|
|
|
|
painter.setPen(options()->color(KDecoration::ColorFont, isActive()));
|
|
|
|
|
painter.drawText(textRect,
|
|
|
|
|
titleAlign | AlignVCenter | Qt::SingleLine,
|
|
|
|
|
titleAlign | AlignVCenter | TQt::SingleLine,
|
|
|
|
|
captionText);
|
|
|
|
|
|
|
|
|
|
// make title fade out when the caption is too long, veery slow but veery cool :-)
|
|
|
|
@ -1578,13 +1578,13 @@ void polyesterClient::paintEvent(QPaintEvent* e) {
|
|
|
|
|
{
|
|
|
|
|
int xGradient = textRect.right()-(gradientWidth-1);
|
|
|
|
|
|
|
|
|
|
QPixmap backLayerP = QPixmap(gradientWidth, textRect.height());
|
|
|
|
|
QPainter layerPainter(&backLayerP);
|
|
|
|
|
TQPixmap backLayerP = TQPixmap(gradientWidth, textRect.height());
|
|
|
|
|
TQPainter layerPainter(&backLayerP);
|
|
|
|
|
layerPainter.drawTiledPixmap(backLayerP.rect(), active ? *aTitleBarTile:*iTitleBarTile);
|
|
|
|
|
layerPainter.end();
|
|
|
|
|
QImage backLayer = backLayerP.convertToImage();
|
|
|
|
|
TQImage backLayer = backLayerP.convertToImage();
|
|
|
|
|
|
|
|
|
|
QImage textLayer = ( active ?
|
|
|
|
|
TQImage textLayer = ( active ?
|
|
|
|
|
activeBuff.convertToImage():
|
|
|
|
|
inactiveBuff.convertToImage()
|
|
|
|
|
).copy( xGradient, textRect.y(),
|
|
|
|
@ -1698,35 +1698,35 @@ void polyesterClient::updateMask() {
|
|
|
|
|
|
|
|
|
|
if ( (!options()->moveResizeMaximizedWindows() && maximizeMode() & MaximizeFull ) )
|
|
|
|
|
{
|
|
|
|
|
setMask(QRegion(widget()->rect()));
|
|
|
|
|
setMask(TQRegion(widget()->rect()));
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int r(width());
|
|
|
|
|
int b(height());
|
|
|
|
|
QRegion mask;
|
|
|
|
|
TQRegion mask;
|
|
|
|
|
|
|
|
|
|
mask=QRegion(widget()->rect());
|
|
|
|
|
mask=QRegion( 0, 0, r, b );
|
|
|
|
|
mask=TQRegion(widget()->rect());
|
|
|
|
|
mask=TQRegion( 0, 0, r, b );
|
|
|
|
|
|
|
|
|
|
// Remove top-left corner.
|
|
|
|
|
if( roundedCorners &&
|
|
|
|
|
maximizeMode() != KDecorationDefines::MaximizeFull )
|
|
|
|
|
{
|
|
|
|
|
mask -= QRegion(0, 0, 5, 1);
|
|
|
|
|
mask -= QRegion(0, 1, 3, 1);
|
|
|
|
|
mask -= QRegion(0, 2, 2, 1);
|
|
|
|
|
mask -= QRegion(0, 3, 1, 2);
|
|
|
|
|
mask -= QRegion(r - 5, 0, 5, 1);
|
|
|
|
|
mask -= QRegion(r - 3, 1, 3, 1);
|
|
|
|
|
mask -= QRegion(r - 2, 2, 2, 1);
|
|
|
|
|
mask -= QRegion(r - 1, 3, 1, 2);
|
|
|
|
|
mask -= TQRegion(0, 0, 5, 1);
|
|
|
|
|
mask -= TQRegion(0, 1, 3, 1);
|
|
|
|
|
mask -= TQRegion(0, 2, 2, 1);
|
|
|
|
|
mask -= TQRegion(0, 3, 1, 2);
|
|
|
|
|
mask -= TQRegion(r - 5, 0, 5, 1);
|
|
|
|
|
mask -= TQRegion(r - 3, 1, 3, 1);
|
|
|
|
|
mask -= TQRegion(r - 2, 2, 2, 1);
|
|
|
|
|
mask -= TQRegion(r - 1, 3, 1, 2);
|
|
|
|
|
}
|
|
|
|
|
//always remove one corner pixel so it simulates a soft corner like plastik
|
|
|
|
|
mask -= QRegion(0,0,1,1);
|
|
|
|
|
mask -= QRegion(r-1,0,1,1);
|
|
|
|
|
mask -= QRegion(0, b-1, 1,1);
|
|
|
|
|
mask -= QRegion(r-1,b-1,1,1);
|
|
|
|
|
mask -= TQRegion(0,0,1,1);
|
|
|
|
|
mask -= TQRegion(r-1,0,1,1);
|
|
|
|
|
mask -= TQRegion(0, b-1, 1,1);
|
|
|
|
|
mask -= TQRegion(r-1,b-1,1,1);
|
|
|
|
|
|
|
|
|
|
setMask(mask, 1);
|
|
|
|
|
|
|
|
|
@ -1738,10 +1738,10 @@ void polyesterClient::updateMask() {
|
|
|
|
|
// -------------
|
|
|
|
|
// Window is being resized
|
|
|
|
|
|
|
|
|
|
void polyesterClient::resizeEvent(QResizeEvent *) {
|
|
|
|
|
void polyesterClient::resizeEvent(TQResizeEvent *) {
|
|
|
|
|
maskDirty = aDoubleBufferDirty = iDoubleBufferDirty = true;
|
|
|
|
|
if (widget()->isShown()) {
|
|
|
|
|
QRegion region = widget()->rect();
|
|
|
|
|
TQRegion region = widget()->rect();
|
|
|
|
|
region = region.subtract(titlebar_->geometry());
|
|
|
|
|
widget()->erase(region);
|
|
|
|
|
}
|
|
|
|
@ -1753,7 +1753,7 @@ void polyesterClient::resizeEvent(QResizeEvent *) {
|
|
|
|
|
// -----------
|
|
|
|
|
// Window is being shown
|
|
|
|
|
|
|
|
|
|
void polyesterClient::showEvent(QShowEvent *) {
|
|
|
|
|
void polyesterClient::showEvent(TQShowEvent *) {
|
|
|
|
|
widget()->repaint();
|
|
|
|
|
updateMask();
|
|
|
|
|
}
|
|
|
|
@ -1824,16 +1824,16 @@ void polyesterClient::belowButtonPressed() {
|
|
|
|
|
// Menu button was pressed (popup the menu)
|
|
|
|
|
|
|
|
|
|
void polyesterClient::menuButtonPressed() {
|
|
|
|
|
static QTime* t = NULL;
|
|
|
|
|
static TQTime* t = NULL;
|
|
|
|
|
static polyesterClient* lastClient = NULL;
|
|
|
|
|
if (t == NULL)
|
|
|
|
|
t = new QTime;
|
|
|
|
|
bool dbl = (lastClient==this && t->elapsed() <= QApplication::doubleClickInterval());
|
|
|
|
|
t = new TQTime;
|
|
|
|
|
bool dbl = (lastClient==this && t->elapsed() <= TQApplication::doubleClickInterval());
|
|
|
|
|
lastClient = this;
|
|
|
|
|
t->start();
|
|
|
|
|
//if (button[ButtonMenu] && !dbl && !::factory->menuClosed()) {
|
|
|
|
|
if ( !dbl || !::factory->menuClosed()) {
|
|
|
|
|
QPoint p(button[ButtonMenu]->rect().bottomLeft().x(),
|
|
|
|
|
TQPoint p(button[ButtonMenu]->rect().bottomLeft().x(),
|
|
|
|
|
button[ButtonMenu]->rect().bottomLeft().y());
|
|
|
|
|
KDecorationFactory* f = factory();
|
|
|
|
|
showWindowMenu(button[ButtonMenu]->mapToGlobal(p));
|
|
|
|
|