author | zecke <zecke> | 2004-09-13 14:06:48 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-09-13 14:06:48 (UTC) |
commit | 2e896a0d3d5b18a160c5cc468bee5ed129a92320 (patch) (side-by-side diff) | |
tree | d1b502c78c744911d2bace64c09ca4fa69dc4c77 | |
parent | 5880f51e9d6a4ad2c670f7679e874fc0610d850a (diff) | |
download | opie-2e896a0d3d5b18a160c5cc468bee5ed129a92320.zip opie-2e896a0d3d5b18a160c5cc468bee5ed129a92320.tar.gz opie-2e896a0d3d5b18a160c5cc468bee5ed129a92320.tar.bz2 |
GCC 3.4.2 is so standard conform that it forces the range
of enumns. This broke handling of the 'Help' button in
our decoration. What we do now is to make the 'range'
bigger so that our 'Help'-Button will fit into the range.
-rw-r--r-- | qt/qt-2.3.7.patch/qte237-all.patch | 12 | ||||
-rw-r--r-- | qt/qt-2.3.7.patch/qte237-gcc34.patch | 12 |
2 files changed, 24 insertions, 0 deletions
diff --git a/qt/qt-2.3.7.patch/qte237-all.patch b/qt/qt-2.3.7.patch/qte237-all.patch index ea03446..307e558 100644 --- a/qt/qt-2.3.7.patch/qte237-all.patch +++ b/qt/qt-2.3.7.patch/qte237-all.patch @@ -684,768 +684,780 @@ diff -ur qt-2.3.7-old/src/kernel/qgfxtransformed_qws.cpp qt-2.3.7/src/kernel/qgf } @@ -683,11 +683,11 @@ inline int ty( int x, int y ) { switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - return (width - x - 1) - yoffs - xoffs; + return (this->width - x - 1) - this->yoffs - this->xoffs; case QTransformedScreen::Rot180: - return (height - y - 1) - yoffs - yoffs; + return (this->height - y - 1) - this->yoffs - this->yoffs; case QTransformedScreen::Rot270: - return x - yoffs + xoffs; + return x - this->yoffs + this->xoffs; default: return y; } @@ -715,23 +715,23 @@ template <const int depth, const int type> void QGfxTransformedRaster<depth,type>::setSourceWidgetOffset(int x, int y) { - if ( srcbits == buffer ) { + if ( this->srcbits == this->buffer ) { switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - srcwidgetoffs = QPoint( y, width - x - srcwidth ); + this->srcwidgetoffs = QPoint( y, this->width - x - this->srcwidth ); break; case QTransformedScreen::Rot180: - srcwidgetoffs = QPoint( width - x - srcwidth, height - y - srcheight ); + this->srcwidgetoffs = QPoint( this->width - x - this->srcwidth, this->height - y - this->srcheight ); break; case QTransformedScreen::Rot270: - srcwidgetoffs = QPoint( height - y - srcheight, x ); + this->srcwidgetoffs = QPoint( this->height - y - this->srcheight, x ); break; default: - srcwidgetoffs = QPoint( x, y ); + this->srcwidgetoffs = QPoint( x, y ); break; } } else - srcwidgetoffs = QPoint( x, y ); + this->srcwidgetoffs = QPoint( x, y ); } template <const int depth, const int type> @@ -739,8 +739,8 @@ { QT_TRANS_GFX_BASE<depth,type>::setSource(i); QSize s = qt_screen->mapToDevice( QSize(i->width(), i->height()) ); - srcwidth = s.width(); - srcheight = s.height(); + this->srcwidth = s.width(); + this->srcheight = s.height(); } template <const int depth, const int type> @@ -782,7 +782,7 @@ if ( w == 0 || h == 0 ) return; QRect r( x, y, w, h ); - if ( cbrush.style() == SolidPattern ) { + if ( this->cbrush.style() == Qt::SolidPattern ) { r.setCoords( tx(x,y), ty(x,y), tx(x+w-1,y+h-1), ty(x+w-1,y+h-1) ); r = r.normalize(); } @@ -797,7 +797,7 @@ // solution. The brush offset logic is complicated enough, so we don't // fastpath patternedbrush. - if ( inDraw || cpen.style()==NoPen || patternedbrush ) { + if ( inDraw || this->cpen.style()==Qt::NoPen || this->patternedbrush ) { //slowpath QT_TRANS_GFX_BASE<depth,type>::drawPolygon( a, w, idx, num ); } else { @@ -819,29 +819,29 @@ template <const int depth, const int type> void QGfxTransformedRaster<depth,type>::processSpans( int n, QPoint* point, int* width ) { - if ( inDraw || patternedbrush && srcwidth != 0 && srcheight != 0 ) { + if ( inDraw || this->patternedbrush && this->srcwidth != 0 && this->srcheight != 0 ) { //in the patternedbrush case, we let blt do the transformation // so we leave inDraw false. - QT_TRANS_GFX_BASE<depth,type>::processSpans( n, point, width ); + QT_TRANS_GFX_BASE<depth,type>::processSpans( n, point, width ); } else { inDraw = TRUE; while (n--) { if ( *width > 0 ) { - int x=tx(point->x(),point->y())+xoffs; - int y=ty(point->x(),point->y())+yoffs; + int x=tx(point->x(),point->y())+this->xoffs; + int y=ty(point->x(),point->y())+this->yoffs; switch( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - vline( x, y-(*width-1), y ); + this->vline( x, y-(*width-1), y ); break; case QTransformedScreen::Rot180: - hline( x - (*width-1), x, y ); + this->hline( x - (*width-1), x, y ); break; case QTransformedScreen::Rot270: - vline( x, y, y+*width-1 ); + this->vline( x, y, y+*width-1 ); break; default: - hline( x, x+*width-1, y ); + this->hline( x, x+*width-1, y ); break; } } @@ -896,14 +896,14 @@ switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: rsx = sy; - rsy = srcwidth - sx - w; + rsy = this->srcwidth - sx - w; break; case QTransformedScreen::Rot180: - rsx = srcwidth - sx - w; - rsy = srcheight - sy - h; + rsx = this->srcwidth - sx - w; + rsy = this->srcheight - sy - h; break; case QTransformedScreen::Rot270: - rsx = srcheight - sy - h; + rsx = this->srcheight - sy - h; rsy = sx; break; default: @@ -941,39 +941,39 @@ r.setCoords( tx(rx,ry), ty(rx,ry), tx(rx+w-1,ry+h-1), ty(rx+w-1,ry+h-1) ); r = r.normalize(); - QPoint oldBrushOffs = brushoffs; + QPoint oldBrushOffs = this->brushoffs; int brx, bry; switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - brx = brushoffs.y(); - bry = srcwidth - brushoffs.x() - w; + brx = this->brushoffs.y(); + bry = this->srcwidth - this->brushoffs.x() - w; break; case QTransformedScreen::Rot180: - brx = srcwidth - brushoffs.x() - w; - bry = srcheight - brushoffs.y() - h; + brx = this->srcwidth - this->brushoffs.x() - w; + bry = this->srcheight - this->brushoffs.y() - h; break; case QTransformedScreen::Rot270: - brx = srcheight - brushoffs.y() - h; - bry = brushoffs.x(); + brx = this->srcheight - this->brushoffs.y() - h; + bry = this->brushoffs.x(); break; default: - brx = brushoffs.x(); - bry = brushoffs.y(); + brx = this->brushoffs.x(); + bry = this->brushoffs.y(); break; } - brushoffs = QPoint( brx, bry ); + this->brushoffs = QPoint( brx, bry ); - int oldsw = srcwidth; - int oldsh = srcheight; - QSize s = qt_screen->mapToDevice( QSize(srcwidth,srcheight) ); - srcwidth = s.width(); - srcheight = s.height(); + int oldsw = this->srcwidth; + int oldsh = this->srcheight; + QSize s = qt_screen->mapToDevice( QSize(this->srcwidth,this->srcheight) ); + this->srcwidth = s.width(); + this->srcheight = s.height(); QT_TRANS_GFX_BASE<depth,type>::tiledBlt( r.x(), r.y(), r.width(), r.height() ); - srcwidth = oldsw; - srcheight = oldsh; - brushoffs = oldBrushOffs; + this->srcwidth = oldsw; + this->srcheight = oldsh; + this->brushoffs = oldBrushOffs; inDraw = FALSE; } diff -ur qt-2.3.7-old/src/kernel/qgfxvfb_qws.cpp qt-2.3.7/src/kernel/qgfxvfb_qws.cpp --- qt-2.3.7-old/src/kernel/qgfxvfb_qws.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/kernel/qgfxvfb_qws.cpp 2004-07-23 15:42:01.000000000 +0200 @@ -31,7 +31,6 @@ **********************************************************************/ #include "qgfxraster_qws.h" - #ifndef QT_NO_QWS_VFB #include <sys/ipc.h> @@ -140,8 +139,8 @@ void QGfxVFb<depth,type>::drawPoint( int x, int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x+xoffs, y+yoffs, 1, 1 ) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, 1, 1 ) ); QGfxRaster<depth,type>::drawPoint( x, y ); QWSDisplay::ungrab(); } @@ -150,8 +149,8 @@ void QGfxVFb<depth,type>::drawPoints( const QPointArray &pa,int x,int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( clipbounds ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( this->clipbounds ); QGfxRaster<depth,type>::drawPoints( pa, x, y ); QWSDisplay::ungrab(); } @@ -160,9 +159,9 @@ void QGfxVFb<depth,type>::drawLine( int x1,int y1,int x2,int y2 ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) { + if ( this->is_screen_gfx ) { QRect r; - r.setCoords( x1+xoffs, y1+yoffs, x2+xoffs, y2+yoffs ); + r.setCoords( x1+this->xoffs, y1+this->yoffs, x2+this->xoffs, y2+this->yoffs ); qvfb_screen->setDirty( r.normalize() ); } QGfxRaster<depth,type>::drawLine( x1, y1, x2, y2 ); @@ -173,8 +172,8 @@ void QGfxVFb<depth,type>::fillRect( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) ); QGfxRaster<depth,type>::fillRect( x, y, w, h ); QWSDisplay::ungrab(); } @@ -183,8 +182,8 @@ void QGfxVFb<depth,type>::drawPolyline( const QPointArray &pa,int x,int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( clipbounds ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( this->clipbounds ); QGfxRaster<depth,type>::drawPolyline( pa, x, y ); QWSDisplay::ungrab(); } @@ -193,8 +192,8 @@ void QGfxVFb<depth,type>::drawPolygon( const QPointArray &pa,bool w,int x,int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( clipbounds ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( this->clipbounds ); QGfxRaster<depth,type>::drawPolygon( pa, w, x, y ); QWSDisplay::ungrab(); } @@ -203,8 +202,8 @@ void QGfxVFb<depth,type>::blt( int x,int y,int w,int h, int sx, int sy ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) ); QGfxRaster<depth,type>::blt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -215,8 +214,8 @@ QWSDisplay::grab( TRUE ); int dy = sy - y; int dx = sx - x; - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect(QMIN(x,sx) + xoffs, QMIN(y,sy) + yoffs, + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect(QMIN(x,sx) + this->xoffs, QMIN(y,sy) + this->yoffs, w+abs(dx), h+abs(dy)) ); QGfxRaster<depth,type>::scroll( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); @@ -227,8 +226,8 @@ void QGfxVFb<depth,type>::stretchBlt( int x,int y,int w,int h,int sx,int sy ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x + xoffs, y + yoffs, w, h) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x + this->xoffs, y + this->yoffs, w, h) ); QGfxRaster<depth,type>::stretchBlt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -238,8 +237,8 @@ void QGfxVFb<depth,type>::tiledBlt( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect(x + xoffs, y + yoffs, w, h) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect(x + this->xoffs, y + this->yoffs, w, h) ); QGfxRaster<depth,type>::tiledBlt( x, y, w, h ); QWSDisplay::ungrab(); } diff -ur qt-2.3.7-old/src/kernel/qkeyboard_qws.cpp qt-2.3.7/src/kernel/qkeyboard_qws.cpp --- qt-2.3.7-old/src/kernel/qkeyboard_qws.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/kernel/qkeyboard_qws.cpp 2004-07-23 15:33:46.000000000 +0200 @@ -238,7 +238,7 @@ { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 63 { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 64 { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 65 - { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 66 + { Qt::Key_F14, 0xffff , 0xffff , 0xffff }, // 66 { Qt::Key_Meta, 0xffff , 0xffff , 0xffff }, // 67 { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 68 { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 69 diff -ur qt-2.3.7-old/src/kernel/qwindowsystem_qws.cpp qt-2.3.7/src/kernel/qwindowsystem_qws.cpp --- qt-2.3.7-old/src/kernel/qwindowsystem_qws.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/kernel/qwindowsystem_qws.cpp 2004-07-23 15:33:47.000000000 +0200 @@ -844,6 +844,18 @@ { } +static void catchSegvSignal( int ) +{ +#ifndef QT_NO_QWS_KEYBOARD + if ( qwsServer ) + qwsServer->closeKeyboard(); +#endif + QWSServer::closedown(); + fprintf(stderr, "Segmentation fault.\n"); + exit(1); +} + + /*! \class QWSServer qwindowsystem_qws.h \brief Server-specific functionality in Qt/Embedded @@ -936,6 +948,7 @@ } signal(SIGPIPE, ignoreSignal); //we get it when we read + signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash #endif focusw = 0; mouseGrabber = 0; diff -ur qt-2.3.7-old/src/tools/qcstring.h qt-2.3.7/src/tools/qcstring.h --- qt-2.3.7-old/src/tools/qcstring.h 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/tools/qcstring.h 2004-07-23 15:42:01.000000000 +0200 @@ -119,7 +119,7 @@ // We want to keep source compatibility for 2.x // ### TODO for 4.0: completely remove these and the cstr* functions -#if !defined(QT_GENUINE_STR) +#if 0 #undef strlen #define strlen qstrlen diff -ur qt-2.3.7-old/src/tools/qglobal.h qt-2.3.7/src/tools/qglobal.h --- qt-2.3.7-old/src/tools/qglobal.h 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/tools/qglobal.h 2004-07-23 15:42:01.000000000 +0200 @@ -207,8 +207,16 @@ #if __GNUC__ == 2 && __GNUC_MINOR__ == 96 #define Q_FP_CCAST_BROKEN #endif +/* ARM gcc pads structs to 32 bits, even when they contain a single + char, or short. We tell gcc to pack QChars to 16 bits, to avoid + QString bloat. However, gcc 3.4 doesn't allow us to create references to + members of a packed struct. (Pointers are OK, because then you + supposedly know what you are doing.) */ #if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP) #define Q_PACKED __attribute__ ((packed)) +# if __GNUC__ == 3 && __GNUC_MINOR__ >= 4 +# define Q_NO_PACKED_REFERENCE +# endif #endif #elif defined(__xlC__) #define _CC_XLC_ diff -ur qt-2.3.7-old/src/tools/qmodules.h qt-2.3.7/src/tools/qmodules.h --- qt-2.3.7-old/src/tools/qmodules.h 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/tools/qmodules.h 2004-07-23 16:03:09.000000000 +0200 @@ -1,14 +1,11 @@ -#ifndef QT_H -#endif // QT_H - +// These modules are licensed to you #define QT_MODULE_TOOLS #define QT_MODULE_KERNEL #define QT_MODULE_WIDGETS #define QT_MODULE_DIALOGS - #define QT_MODULE_ICONVIEW #define QT_MODULE_WORKSPACE -#define QT_MODULE_TABLE +#define QT_MODULE_NETWORK #define QT_MODULE_CANVAS +#define QT_MODULE_TABLE #define QT_MODULE_XML -#define QT_MODULE_NETWORK diff -ur qt-2.3.7-old/src/tools/qsortedlist.h qt-2.3.7/src/tools/qsortedlist.h --- qt-2.3.7-old/src/tools/qsortedlist.h 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/tools/qsortedlist.h 2004-07-23 15:42:01.000000000 +0200 @@ -48,7 +48,7 @@ public: QSortedList() {} QSortedList( const QSortedList<type> &l ) : QList<type>(l) {} - ~QSortedList() { clear(); } + ~QSortedList() { this->clear(); } QSortedList<type> &operator=(const QSortedList<type> &l) { return (QSortedList<type>&)QList<type>::operator=(l); } diff -ur qt-2.3.7-old/src/tools/qstring.cpp qt-2.3.7/src/tools/qstring.cpp --- qt-2.3.7-old/src/tools/qstring.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/tools/qstring.cpp 2004-07-23 15:44:25.000000000 +0200 @@ -14469,7 +14469,11 @@ return qt_winQString2MB( *this ); #endif #ifdef _WS_QWS_ - return utf8(); // ##### if there is ANY 8 bit format supported? + QTextCodec* codec = QTextCodec::codecForLocale(); + return codec + ? codec->fromUnicode(*this) + : utf8(); + //return latin1(); // ##### if there is ANY 8 bit format supported? #endif #endif } @@ -14515,7 +14519,12 @@ return qt_winMB2QString( local8Bit ); #endif #ifdef _WS_QWS_ - return fromUtf8(local8Bit,len); + QTextCodec* codec = QTextCodec::codecForLocale(); + if( len < 0) len = qstrlen(local8Bit); + return codec + ? codec->toUnicode(local8Bit, len) + : QString::fromUtf8(local8Bit,len); +// return fromLatin1(local8Bit,len); #endif #endif // QT_NO_TEXTCODEC } diff -ur qt-2.3.7-old/src/tools/qstring.h qt-2.3.7/src/tools/qstring.h --- qt-2.3.7-old/src/tools/qstring.h 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/tools/qstring.h 2004-07-23 15:42:01.000000000 +0200 @@ -163,8 +163,16 @@ bool isLetterOrNumber() const; bool isDigit() const; + +#ifdef Q_NO_PACKED_REFERENCE + uchar& cell() { return *(&cl); } + uchar& row() { return *(&rw); } +#else uchar& cell() { return cl; } - uchar& row() { return rw; } + uchar& row() { return rw; } +#endif + + uchar cell() const { return cl; } uchar row() const { return rw; } diff -ur qt-2.3.7-old/src/widgets/qcommonstyle.cpp qt-2.3.7/src/widgets/qcommonstyle.cpp --- qt-2.3.7-old/src/widgets/qcommonstyle.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/widgets/qcommonstyle.cpp 2004-07-23 15:38:13.000000000 +0200 @@ -566,7 +566,7 @@ bool enabled, bool active ) { #ifndef QT_NO_MENUBAR -#ifndef QT_NO_STYLE_SGI +#if 1 // #ifndef QT_NO_STYLE_SGI if (draw_menu_bar_impl != 0) { QDrawMenuBarItemImpl impl = draw_menu_bar_impl; (this->*impl)(p, x, y, w, h, mi, g, enabled, active); diff -ur qt-2.3.7-old/src/widgets/qlistview.cpp qt-2.3.7/src/widgets/qlistview.cpp --- qt-2.3.7-old/src/widgets/qlistview.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/widgets/qlistview.cpp 2004-07-23 15:38:13.000000000 +0200 @@ -4968,9 +4968,9 @@ l = l->childItem ? l->childItem : l->siblingItem; if ( l && l->height() ) - s.setHeight( s.height() + 10 * l->height() ); - else - s.setHeight( s.height() + 140 ); + s.setHeight( s.height() + 4 /*10*/ * l->height() ); + else // ^v much too big for handhelds + s.setHeight( s.height() + 30 /*140*/ ); if ( s.width() > s.height() * 3 ) s.setHeight( s.width() / 3 ); diff -ur qt-2.3.7-old/src/widgets/qscrollview.cpp qt-2.3.7/src/widgets/qscrollview.cpp --- qt-2.3.7-old/src/widgets/qscrollview.cpp 2004-07-23 19:25:18.000000000 +0200 +++ qt-2.3.7/src/widgets/qscrollview.cpp 2004-07-23 19:23:10.000000000 +0200 @@ -526,15 +526,16 @@ this, SLOT( doDragAutoScroll() ) ); #endif - connect( &d->hbar, SIGNAL( valueChanged( int ) ), - this, SLOT( hslide( int ) ) ); - connect( &d->vbar, SIGNAL( valueChanged( int ) ), - this, SLOT( vslide( int ) ) ); + connect( &d->hbar, SIGNAL( valueChanged(int) ), + this, SLOT( hslide(int) ) ); + connect( &d->vbar, SIGNAL( valueChanged(int) ), + this, SLOT( vslide(int) ) ); d->viewport.installEventFilter( this ); setFrameStyle( QFrame::StyledPanel | QFrame::Sunken ); setLineWidth( style().defaultFrameWidth() ); setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); + } @@ -683,6 +684,11 @@ h-tmarg-bmarg - (showh ? hsbExt : 0) ); } +/* + The surrounding environment (or application, if there is no + environment, may set this. Requires Qt >= 2.3.8. +*/ +bool qt_left_hand_scrollbars = FALSE; /*! Updates scrollbars - all possibilities considered. You should never @@ -786,45 +792,50 @@ // Position the scrollbars, viewport, and corner widget. int bottom; + int xoffset = ( qt_left_hand_scrollbars && ( showv || cornerWidget() ) ) ? vsbExt : 0; + int xpos = qt_left_hand_scrollbars ? 0 : w-vsbExt; + xpos = (style() == WindowsStyle) && qt_left_hand_scrollbars ? xpos + fw : xpos - fw; + int ypos = tmarg; + ypos = (style() == WindowsStyle) ? ypos +fw : 0; if ( showh ) { int right = ( showv || cornerWidget() ) ? w-vsbExt : w; if ( style() == WindowsStyle ) - setHBarGeometry(d->hbar, fw, h-hsbExt-fw, + setHBarGeometry(d->hbar, fw + xoffset , h-hsbExt-fw, right-fw-fw, hsbExt ); else - setHBarGeometry(d->hbar, 0, h-hsbExt, right, + setHBarGeometry(d->hbar, 0+ xoffset, h-hsbExt, right, hsbExt ); bottom=h-hsbExt; } else { bottom=h; } if ( showv ) { - clipper()->setGeometry( lmarg, tmarg, + clipper()->setGeometry( lmarg + xoffset, tmarg, w-vsbExt-lmarg-rmarg, bottom-tmarg-bmarg ); d->viewportResized( w-vsbExt-lmarg-rmarg, bottom-tmarg-bmarg ); if ( style() == WindowsStyle ) - changeFrameRect(QRect(0, 0, w, h) ); + changeFrameRect(QRect(xoffset, 0, w, h) ); else - changeFrameRect(QRect(0, 0, w-vsbExt, bottom)); + changeFrameRect(QRect(xoffset, 0, w-vsbExt, bottom)); if (cornerWidget()) { if ( style() == WindowsStyle ) - setVBarGeometry( d->vbar, w-vsbExt-fw, - fw, vsbExt, - h-hsbExt-fw-fw ); + setVBarGeometry( d->vbar, xpos, + ypos, vsbExt, + bottom-fw-ypos ); else - setVBarGeometry( d->vbar, w-vsbExt, 0, + setVBarGeometry( d->vbar, xpos, ypos, vsbExt, - h-hsbExt ); + bottom-ypos ); } else { if ( style() == WindowsStyle ) - setVBarGeometry( d->vbar, w-vsbExt-fw, - fw, vsbExt, - bottom-fw-fw ); + setVBarGeometry( d->vbar, xpos, + ypos, vsbExt, + bottom-fw-ypos ); else - setVBarGeometry( d->vbar, w-vsbExt, 0, - vsbExt, bottom ); + setVBarGeometry( d->vbar, xpos, ypos, + vsbExt, bottom-ypos ); } } else { if ( style() == WindowsStyle ) @@ -837,12 +848,12 @@ } if ( d->corner ) { if ( style() == WindowsStyle ) - d->corner->setGeometry( w-vsbExt-fw, + d->corner->setGeometry( xpos, h-hsbExt-fw, vsbExt, hsbExt ); else - d->corner->setGeometry( w-vsbExt, + d->corner->setGeometry( xpos, h-hsbExt, vsbExt, hsbExt ); @@ -1266,6 +1277,9 @@ case QEvent::LayoutHint: d->autoResizeHint(this); break; + case QEvent::WindowActivate: + case QEvent::WindowDeactivate: + return TRUE; default: break; } @@ -1675,7 +1689,7 @@ } /*! - Scrolls the content by \a x to the left and \a y upwards. + Scrolls the content by \a dx to the left and \a dy upwards. */ void QScrollView::scrollBy( int dx, int dy ) { diff -ur qt-2.3.7-old/src/widgets/qtoolbutton.cpp qt-2.3.7/src/widgets/qtoolbutton.cpp --- qt-2.3.7-old/src/widgets/qtoolbutton.cpp 2004-07-23 15:22:56.000000000 +0200 +++ qt-2.3.7/src/widgets/qtoolbutton.cpp 2004-07-23 15:38:13.000000000 +0200 @@ -230,7 +230,7 @@ else QToolTip::add( this, textLabel ); } -#endif +#endif } @@ -324,12 +324,12 @@ QPixmap pm = iconSet(TRUE).pixmap(QIconSet::Large, QIconSet::Normal); w = pm.width(); h = pm.height(); - if ( w < 32 ) - w = 32; - if ( h < 32 ) - h = 32; + if ( w < 24 ) + w = 24; + if ( h < 24 ) + h = 24; } else { - w = h = 16; + w = h = 14; QPixmap pm = iconSet(TRUE).pixmap(QIconSet::Small, QIconSet::Normal); w = pm.width(); h = pm.height(); diff -ur qt-2.3.7_old/src/kernel/qgfxvnc_qws.cpp qt-2.3.7/src/kernel/qgfxvnc_qws.cpp --- qt-2.3.7_old/src/kernel/qgfxvnc_qws.cpp 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/kernel/qgfxvnc_qws.cpp 2004-09-10 21:10:54.000000000 +0200 @@ -971,7 +971,7 @@ void QGfxVNC<depth,type>::drawPoint( int x, int y ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x+xoffs, y+yoffs, 1, 1 ) & clipbounds ); + qvnc_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, 1, 1 ) & this->clipbounds ); QGfxRaster<depth,type>::drawPoint( x, y ); QWSDisplay::ungrab(); } @@ -981,8 +981,8 @@ { QWSDisplay::grab( TRUE ); QRect r = pa.boundingRect(); - r.moveBy( xoffs, yoffs ); - qvnc_screen->setDirty( r & clipbounds ); + r.moveBy( this->xoffs, this->yoffs ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawPoints( pa, x, y ); QWSDisplay::ungrab(); } @@ -992,9 +992,9 @@ { QWSDisplay::grab( TRUE ); QRect r; - r.setCoords( x1+xoffs, y1+yoffs, x2+xoffs, y2+yoffs ); + r.setCoords( x1+this->xoffs, y1+this->yoffs, x2+this->xoffs, y2+this->yoffs ); r = r.normalize(); - qvnc_screen->setDirty( r & clipbounds ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawLine( x1, y1, x2, y2 ); QWSDisplay::ungrab(); } @@ -1003,7 +1003,7 @@ void QGfxVNC<depth,type>::fillRect( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) & clipbounds ); + qvnc_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) & this->clipbounds ); QGfxRaster<depth,type>::fillRect( x, y, w, h ); QWSDisplay::ungrab(); } @@ -1013,8 +1013,8 @@ { QWSDisplay::grab( TRUE ); QRect r = pa.boundingRect(); - r.moveBy( xoffs, yoffs ); - qvnc_screen->setDirty( r & clipbounds ); + r.moveBy( this->xoffs, this->yoffs ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawPolyline( pa, x, y ); QWSDisplay::ungrab(); } @@ -1024,8 +1024,8 @@ { QWSDisplay::grab( TRUE ); QRect r = pa.boundingRect(); - r.moveBy( xoffs, yoffs ); - qvnc_screen->setDirty( r & clipbounds ); + r.moveBy( this->xoffs, this->yoffs ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawPolygon( pa, w, x, y ); QWSDisplay::ungrab(); } @@ -1034,7 +1034,7 @@ void QGfxVNC<depth,type>::blt( int x,int y,int w,int h, int sx, int sy ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) & clipbounds ); + qvnc_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) & this->clipbounds ); QGfxRaster<depth,type>::blt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -1045,8 +1045,8 @@ QWSDisplay::grab( TRUE ); int dy = sy - y; int dx = sx - x; - qvnc_screen->setDirty( QRect(QMIN(x,sx) + xoffs, QMIN(y,sy) + yoffs, - w+abs(dx), h+abs(dy)) & clipbounds ); + qvnc_screen->setDirty( QRect(QMIN(x,sx) + this->xoffs, QMIN(y,sy) + this->yoffs, + w+abs(dx), h+abs(dy)) & this->clipbounds ); QGfxRaster<depth,type>::scroll( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -1056,7 +1056,7 @@ void QGfxVNC<depth,type>::stretchBlt( int x,int y,int w,int h,int sx,int sy ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x + xoffs, y + yoffs, w, h) & clipbounds ); + qvnc_screen->setDirty( QRect( x + this->xoffs, y + this->yoffs, w, h) & this->clipbounds ); QGfxRaster<depth,type>::stretchBlt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -1066,7 +1066,7 @@ void QGfxVNC<depth,type>::tiledBlt( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect(x + xoffs, y + yoffs, w, h) & clipbounds ); + qvnc_screen->setDirty( QRect(x + this->xoffs, y + this->yoffs, w, h) & this->clipbounds ); QGfxRaster<depth,type>::tiledBlt( x, y, w, h ); QWSDisplay::ungrab(); } +diff -ur qt-2.3.7_old/src/kernel/qwsdecoration_qws.h qt-2.3.7/src/kernel/qwsdecoration_qws.h +--- qt-2.3.7_old/src/kernel/qwsdecoration_qws.h 2003-07-17 03:20:26.000000000 +0200 ++++ qt-2.3.7/src/kernel/qwsdecoration_qws.h 2004-09-13 15:44:13.000000000 +0200 +@@ -50,7 +50,7 @@ + enum Region { None=0, All=1, Title=2, Top=3, Bottom=4, Left=5, Right=6, + TopLeft=7, TopRight=8, BottomLeft=9, BottomRight=10, + Close=11, Minimize=12, Maximize=13, Normalize=14, +- Menu=15, LastRegion=Menu }; ++ Menu=15, LastRegion=Menu, UserDefined = 100 }; + + virtual QRegion region(const QWidget *, const QRect &rect, Region r=All) = 0; + virtual void close( QWidget * ); diff --git a/qt/qt-2.3.7.patch/qte237-gcc34.patch b/qt/qt-2.3.7.patch/qte237-gcc34.patch index 9a0f28c..a7f1681 100644 --- a/qt/qt-2.3.7.patch/qte237-gcc34.patch +++ b/qt/qt-2.3.7.patch/qte237-gcc34.patch @@ -1,498 +1,510 @@ diff -ur qt-2.3.7_old/src/kernel/qgfxtransformed_qws.cpp qt-2.3.7/src/kernel/qgfxtransformed_qws.cpp --- qt-2.3.7_old/src/kernel/qgfxtransformed_qws.cpp 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/kernel/qgfxtransformed_qws.cpp 2004-09-10 21:08:42.000000000 +0200 @@ -671,11 +671,11 @@ inline int tx( int x, int y ) { switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - return y - xoffs + yoffs; + return y - this->xoffs + this->yoffs; case QTransformedScreen::Rot180: - return (width - x - 1) - xoffs - xoffs; + return (this->width - x - 1) - this->xoffs - this->xoffs; case QTransformedScreen::Rot270: - return (height - y - 1) - xoffs - yoffs; + return (this->height - y - 1) - this->xoffs - this->yoffs; default: return x; } @@ -683,11 +683,11 @@ inline int ty( int x, int y ) { switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - return (width - x - 1) - yoffs - xoffs; + return (this->width - x - 1) - this->yoffs - this->xoffs; case QTransformedScreen::Rot180: - return (height - y - 1) - yoffs - yoffs; + return (this->height - y - 1) - this->yoffs - this->yoffs; case QTransformedScreen::Rot270: - return x - yoffs + xoffs; + return x - this->yoffs + this->xoffs; default: return y; } @@ -715,23 +715,23 @@ template <const int depth, const int type> void QGfxTransformedRaster<depth,type>::setSourceWidgetOffset(int x, int y) { - if ( srcbits == buffer ) { + if ( this->srcbits == this->buffer ) { switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - srcwidgetoffs = QPoint( y, width - x - srcwidth ); + this->srcwidgetoffs = QPoint( y, this->width - x - this->srcwidth ); break; case QTransformedScreen::Rot180: - srcwidgetoffs = QPoint( width - x - srcwidth, height - y - srcheight ); + this->srcwidgetoffs = QPoint( this->width - x - this->srcwidth, this->height - y - this->srcheight ); break; case QTransformedScreen::Rot270: - srcwidgetoffs = QPoint( height - y - srcheight, x ); + this->srcwidgetoffs = QPoint( this->height - y - this->srcheight, x ); break; default: - srcwidgetoffs = QPoint( x, y ); + this->srcwidgetoffs = QPoint( x, y ); break; } } else - srcwidgetoffs = QPoint( x, y ); + this->srcwidgetoffs = QPoint( x, y ); } template <const int depth, const int type> @@ -739,8 +739,8 @@ { QT_TRANS_GFX_BASE<depth,type>::setSource(i); QSize s = qt_screen->mapToDevice( QSize(i->width(), i->height()) ); - srcwidth = s.width(); - srcheight = s.height(); + this->srcwidth = s.width(); + this->srcheight = s.height(); } template <const int depth, const int type> @@ -782,7 +782,7 @@ if ( w == 0 || h == 0 ) return; QRect r( x, y, w, h ); - if ( cbrush.style() == SolidPattern ) { + if ( this->cbrush.style() == Qt::SolidPattern ) { r.setCoords( tx(x,y), ty(x,y), tx(x+w-1,y+h-1), ty(x+w-1,y+h-1) ); r = r.normalize(); } @@ -797,7 +797,7 @@ // solution. The brush offset logic is complicated enough, so we don't // fastpath patternedbrush. - if ( inDraw || cpen.style()==NoPen || patternedbrush ) { + if ( inDraw || this->cpen.style()==Qt::NoPen || this->patternedbrush ) { //slowpath QT_TRANS_GFX_BASE<depth,type>::drawPolygon( a, w, idx, num ); } else { @@ -819,29 +819,29 @@ template <const int depth, const int type> void QGfxTransformedRaster<depth,type>::processSpans( int n, QPoint* point, int* width ) { - if ( inDraw || patternedbrush && srcwidth != 0 && srcheight != 0 ) { + if ( inDraw || this->patternedbrush && this->srcwidth != 0 && this->srcheight != 0 ) { //in the patternedbrush case, we let blt do the transformation // so we leave inDraw false. - QT_TRANS_GFX_BASE<depth,type>::processSpans( n, point, width ); + QT_TRANS_GFX_BASE<depth,type>::processSpans( n, point, width ); } else { inDraw = TRUE; while (n--) { if ( *width > 0 ) { - int x=tx(point->x(),point->y())+xoffs; - int y=ty(point->x(),point->y())+yoffs; + int x=tx(point->x(),point->y())+this->xoffs; + int y=ty(point->x(),point->y())+this->yoffs; switch( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - vline( x, y-(*width-1), y ); + this->vline( x, y-(*width-1), y ); break; case QTransformedScreen::Rot180: - hline( x - (*width-1), x, y ); + this->hline( x - (*width-1), x, y ); break; case QTransformedScreen::Rot270: - vline( x, y, y+*width-1 ); + this->vline( x, y, y+*width-1 ); break; default: - hline( x, x+*width-1, y ); + this->hline( x, x+*width-1, y ); break; } } @@ -896,14 +896,14 @@ switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: rsx = sy; - rsy = srcwidth - sx - w; + rsy = this->srcwidth - sx - w; break; case QTransformedScreen::Rot180: - rsx = srcwidth - sx - w; - rsy = srcheight - sy - h; + rsx = this->srcwidth - sx - w; + rsy = this->srcheight - sy - h; break; case QTransformedScreen::Rot270: - rsx = srcheight - sy - h; + rsx = this->srcheight - sy - h; rsy = sx; break; default: @@ -941,39 +941,39 @@ r.setCoords( tx(rx,ry), ty(rx,ry), tx(rx+w-1,ry+h-1), ty(rx+w-1,ry+h-1) ); r = r.normalize(); - QPoint oldBrushOffs = brushoffs; + QPoint oldBrushOffs = this->brushoffs; int brx, bry; switch ( qt_trans_screen->transformation() ) { case QTransformedScreen::Rot90: - brx = brushoffs.y(); - bry = srcwidth - brushoffs.x() - w; + brx = this->brushoffs.y(); + bry = this->srcwidth - this->brushoffs.x() - w; break; case QTransformedScreen::Rot180: - brx = srcwidth - brushoffs.x() - w; - bry = srcheight - brushoffs.y() - h; + brx = this->srcwidth - this->brushoffs.x() - w; + bry = this->srcheight - this->brushoffs.y() - h; break; case QTransformedScreen::Rot270: - brx = srcheight - brushoffs.y() - h; - bry = brushoffs.x(); + brx = this->srcheight - this->brushoffs.y() - h; + bry = this->brushoffs.x(); break; default: - brx = brushoffs.x(); - bry = brushoffs.y(); + brx = this->brushoffs.x(); + bry = this->brushoffs.y(); break; } - brushoffs = QPoint( brx, bry ); + this->brushoffs = QPoint( brx, bry ); - int oldsw = srcwidth; - int oldsh = srcheight; - QSize s = qt_screen->mapToDevice( QSize(srcwidth,srcheight) ); - srcwidth = s.width(); - srcheight = s.height(); + int oldsw = this->srcwidth; + int oldsh = this->srcheight; + QSize s = qt_screen->mapToDevice( QSize(this->srcwidth,this->srcheight) ); + this->srcwidth = s.width(); + this->srcheight = s.height(); QT_TRANS_GFX_BASE<depth,type>::tiledBlt( r.x(), r.y(), r.width(), r.height() ); - srcwidth = oldsw; - srcheight = oldsh; - brushoffs = oldBrushOffs; + this->srcwidth = oldsw; + this->srcheight = oldsh; + this->brushoffs = oldBrushOffs; inDraw = FALSE; } diff -ur qt-2.3.7_old/src/kernel/qgfxvfb_qws.cpp qt-2.3.7/src/kernel/qgfxvfb_qws.cpp --- qt-2.3.7_old/src/kernel/qgfxvfb_qws.cpp 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/kernel/qgfxvfb_qws.cpp 2004-09-10 21:08:42.000000000 +0200 @@ -31,7 +31,6 @@ **********************************************************************/ #include "qgfxraster_qws.h" - #ifndef QT_NO_QWS_VFB #include <sys/ipc.h> @@ -140,8 +139,8 @@ void QGfxVFb<depth,type>::drawPoint( int x, int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x+xoffs, y+yoffs, 1, 1 ) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, 1, 1 ) ); QGfxRaster<depth,type>::drawPoint( x, y ); QWSDisplay::ungrab(); } @@ -150,8 +149,8 @@ void QGfxVFb<depth,type>::drawPoints( const QPointArray &pa,int x,int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( clipbounds ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( this->clipbounds ); QGfxRaster<depth,type>::drawPoints( pa, x, y ); QWSDisplay::ungrab(); } @@ -160,9 +159,9 @@ void QGfxVFb<depth,type>::drawLine( int x1,int y1,int x2,int y2 ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) { + if ( this->is_screen_gfx ) { QRect r; - r.setCoords( x1+xoffs, y1+yoffs, x2+xoffs, y2+yoffs ); + r.setCoords( x1+this->xoffs, y1+this->yoffs, x2+this->xoffs, y2+this->yoffs ); qvfb_screen->setDirty( r.normalize() ); } QGfxRaster<depth,type>::drawLine( x1, y1, x2, y2 ); @@ -173,8 +172,8 @@ void QGfxVFb<depth,type>::fillRect( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) ); QGfxRaster<depth,type>::fillRect( x, y, w, h ); QWSDisplay::ungrab(); } @@ -183,8 +182,8 @@ void QGfxVFb<depth,type>::drawPolyline( const QPointArray &pa,int x,int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( clipbounds ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( this->clipbounds ); QGfxRaster<depth,type>::drawPolyline( pa, x, y ); QWSDisplay::ungrab(); } @@ -193,8 +192,8 @@ void QGfxVFb<depth,type>::drawPolygon( const QPointArray &pa,bool w,int x,int y ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( clipbounds ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( this->clipbounds ); QGfxRaster<depth,type>::drawPolygon( pa, w, x, y ); QWSDisplay::ungrab(); } @@ -203,8 +202,8 @@ void QGfxVFb<depth,type>::blt( int x,int y,int w,int h, int sx, int sy ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) ); QGfxRaster<depth,type>::blt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -215,8 +214,8 @@ QWSDisplay::grab( TRUE ); int dy = sy - y; int dx = sx - x; - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect(QMIN(x,sx) + xoffs, QMIN(y,sy) + yoffs, + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect(QMIN(x,sx) + this->xoffs, QMIN(y,sy) + this->yoffs, w+abs(dx), h+abs(dy)) ); QGfxRaster<depth,type>::scroll( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); @@ -227,8 +226,8 @@ void QGfxVFb<depth,type>::stretchBlt( int x,int y,int w,int h,int sx,int sy ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect( x + xoffs, y + yoffs, w, h) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect( x + this->xoffs, y + this->yoffs, w, h) ); QGfxRaster<depth,type>::stretchBlt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -238,8 +237,8 @@ void QGfxVFb<depth,type>::tiledBlt( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - if ( is_screen_gfx ) - qvfb_screen->setDirty( QRect(x + xoffs, y + yoffs, w, h) ); + if ( this->is_screen_gfx ) + qvfb_screen->setDirty( QRect(x + this->xoffs, y + this->yoffs, w, h) ); QGfxRaster<depth,type>::tiledBlt( x, y, w, h ); QWSDisplay::ungrab(); } diff -ur qt-2.3.7_old/src/kernel/qgfxvnc_qws.cpp qt-2.3.7/src/kernel/qgfxvnc_qws.cpp --- qt-2.3.7_old/src/kernel/qgfxvnc_qws.cpp 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/kernel/qgfxvnc_qws.cpp 2004-09-10 21:10:54.000000000 +0200 @@ -971,7 +971,7 @@ void QGfxVNC<depth,type>::drawPoint( int x, int y ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x+xoffs, y+yoffs, 1, 1 ) & clipbounds ); + qvnc_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, 1, 1 ) & this->clipbounds ); QGfxRaster<depth,type>::drawPoint( x, y ); QWSDisplay::ungrab(); } @@ -981,8 +981,8 @@ { QWSDisplay::grab( TRUE ); QRect r = pa.boundingRect(); - r.moveBy( xoffs, yoffs ); - qvnc_screen->setDirty( r & clipbounds ); + r.moveBy( this->xoffs, this->yoffs ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawPoints( pa, x, y ); QWSDisplay::ungrab(); } @@ -992,9 +992,9 @@ { QWSDisplay::grab( TRUE ); QRect r; - r.setCoords( x1+xoffs, y1+yoffs, x2+xoffs, y2+yoffs ); + r.setCoords( x1+this->xoffs, y1+this->yoffs, x2+this->xoffs, y2+this->yoffs ); r = r.normalize(); - qvnc_screen->setDirty( r & clipbounds ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawLine( x1, y1, x2, y2 ); QWSDisplay::ungrab(); } @@ -1003,7 +1003,7 @@ void QGfxVNC<depth,type>::fillRect( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) & clipbounds ); + qvnc_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) & this->clipbounds ); QGfxRaster<depth,type>::fillRect( x, y, w, h ); QWSDisplay::ungrab(); } @@ -1013,8 +1013,8 @@ { QWSDisplay::grab( TRUE ); QRect r = pa.boundingRect(); - r.moveBy( xoffs, yoffs ); - qvnc_screen->setDirty( r & clipbounds ); + r.moveBy( this->xoffs, this->yoffs ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawPolyline( pa, x, y ); QWSDisplay::ungrab(); } @@ -1024,8 +1024,8 @@ { QWSDisplay::grab( TRUE ); QRect r = pa.boundingRect(); - r.moveBy( xoffs, yoffs ); - qvnc_screen->setDirty( r & clipbounds ); + r.moveBy( this->xoffs, this->yoffs ); + qvnc_screen->setDirty( r & this->clipbounds ); QGfxRaster<depth,type>::drawPolygon( pa, w, x, y ); QWSDisplay::ungrab(); } @@ -1034,7 +1034,7 @@ void QGfxVNC<depth,type>::blt( int x,int y,int w,int h, int sx, int sy ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x+xoffs, y+yoffs, w, h ) & clipbounds ); + qvnc_screen->setDirty( QRect( x+this->xoffs, y+this->yoffs, w, h ) & this->clipbounds ); QGfxRaster<depth,type>::blt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -1045,8 +1045,8 @@ QWSDisplay::grab( TRUE ); int dy = sy - y; int dx = sx - x; - qvnc_screen->setDirty( QRect(QMIN(x,sx) + xoffs, QMIN(y,sy) + yoffs, - w+abs(dx), h+abs(dy)) & clipbounds ); + qvnc_screen->setDirty( QRect(QMIN(x,sx) + this->xoffs, QMIN(y,sy) + this->yoffs, + w+abs(dx), h+abs(dy)) & this->clipbounds ); QGfxRaster<depth,type>::scroll( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -1056,7 +1056,7 @@ void QGfxVNC<depth,type>::stretchBlt( int x,int y,int w,int h,int sx,int sy ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect( x + xoffs, y + yoffs, w, h) & clipbounds ); + qvnc_screen->setDirty( QRect( x + this->xoffs, y + this->yoffs, w, h) & this->clipbounds ); QGfxRaster<depth,type>::stretchBlt( x, y, w, h, sx, sy ); QWSDisplay::ungrab(); } @@ -1066,7 +1066,7 @@ void QGfxVNC<depth,type>::tiledBlt( int x,int y,int w,int h ) { QWSDisplay::grab( TRUE ); - qvnc_screen->setDirty( QRect(x + xoffs, y + yoffs, w, h) & clipbounds ); + qvnc_screen->setDirty( QRect(x + this->xoffs, y + this->yoffs, w, h) & this->clipbounds ); QGfxRaster<depth,type>::tiledBlt( x, y, w, h ); QWSDisplay::ungrab(); } diff -ur qt-2.3.7_old/src/tools/qcstring.h qt-2.3.7/src/tools/qcstring.h --- qt-2.3.7_old/src/tools/qcstring.h 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/tools/qcstring.h 2004-09-10 21:08:42.000000000 +0200 @@ -119,7 +119,7 @@ // We want to keep source compatibility for 2.x // ### TODO for 4.0: completely remove these and the cstr* functions -#if !defined(QT_GENUINE_STR) +#if 0 #undef strlen #define strlen qstrlen diff -ur qt-2.3.7_old/src/tools/qglobal.h qt-2.3.7/src/tools/qglobal.h --- qt-2.3.7_old/src/tools/qglobal.h 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/tools/qglobal.h 2004-09-10 21:08:42.000000000 +0200 @@ -207,8 +207,16 @@ #if __GNUC__ == 2 && __GNUC_MINOR__ == 96 #define Q_FP_CCAST_BROKEN #endif +/* ARM gcc pads structs to 32 bits, even when they contain a single + char, or short. We tell gcc to pack QChars to 16 bits, to avoid + QString bloat. However, gcc 3.4 doesn't allow us to create references to + members of a packed struct. (Pointers are OK, because then you + supposedly know what you are doing.) */ #if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP) #define Q_PACKED __attribute__ ((packed)) +# if __GNUC__ == 3 && __GNUC_MINOR__ >= 4 +# define Q_NO_PACKED_REFERENCE +# endif #endif #elif defined(__xlC__) #define _CC_XLC_ diff -ur qt-2.3.7_old/src/tools/qsortedlist.h qt-2.3.7/src/tools/qsortedlist.h --- qt-2.3.7_old/src/tools/qsortedlist.h 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/tools/qsortedlist.h 2004-09-10 21:08:42.000000000 +0200 @@ -48,7 +48,7 @@ public: QSortedList() {} QSortedList( const QSortedList<type> &l ) : QList<type>(l) {} - ~QSortedList() { clear(); } + ~QSortedList() { this->clear(); } QSortedList<type> &operator=(const QSortedList<type> &l) { return (QSortedList<type>&)QList<type>::operator=(l); } diff -ur qt-2.3.7_old/src/tools/qstring.h qt-2.3.7/src/tools/qstring.h --- qt-2.3.7_old/src/tools/qstring.h 2004-09-10 21:08:04.000000000 +0200 +++ qt-2.3.7/src/tools/qstring.h 2004-09-10 21:08:42.000000000 +0200 @@ -163,8 +163,16 @@ bool isLetterOrNumber() const; bool isDigit() const; + +#ifdef Q_NO_PACKED_REFERENCE + uchar& cell() { return *(&cl); } + uchar& row() { return *(&rw); } +#else uchar& cell() { return cl; } - uchar& row() { return rw; } + uchar& row() { return rw; } +#endif + + uchar cell() const { return cl; } uchar row() const { return rw; } +diff -ur qt-2.3.7_old/src/kernel/qwsdecoration_qws.h qt-2.3.7/src/kernel/qwsdecoration_qws.h +--- qt-2.3.7_old/src/kernel/qwsdecoration_qws.h 2003-07-17 03:20:26.000000000 +0200 ++++ qt-2.3.7/src/kernel/qwsdecoration_qws.h 2004-09-13 15:44:13.000000000 +0200 +@@ -50,7 +50,7 @@ + enum Region { None=0, All=1, Title=2, Top=3, Bottom=4, Left=5, Right=6, + TopLeft=7, TopRight=8, BottomLeft=9, BottomRight=10, + Close=11, Minimize=12, Maximize=13, Normalize=14, +- Menu=15, LastRegion=Menu }; ++ Menu=15, LastRegion=Menu, UserDefined = 100 }; + + virtual QRegion region(const QWidget *, const QRect &rect, Region r=All) = 0; + virtual void close( QWidget * ); |