summaryrefslogtreecommitdiff
path: root/qt/qt-2.3.7.patch/qte237-all.patch
Unidiff
Diffstat (limited to 'qt/qt-2.3.7.patch/qte237-all.patch') (more/less context) (ignore whitespace changes)
-rw-r--r--qt/qt-2.3.7.patch/qte237-all.patch7
1 files changed, 0 insertions, 7 deletions
diff --git a/qt/qt-2.3.7.patch/qte237-all.patch b/qt/qt-2.3.7.patch/qte237-all.patch
index e3351a3..6f94211 100644
--- a/qt/qt-2.3.7.patch/qte237-all.patch
+++ b/qt/qt-2.3.7.patch/qte237-all.patch
@@ -239,199 +239,192 @@ diff -ur qt-2.3.7-old/include/qfontdatabase.h qt-2.3.7/include/qfontdatabase.h
239@@ -59,6 +59,10 @@ 239@@ -59,6 +59,10 @@
240 class QDiskFont; 240 class QDiskFont;
241 #endif 241 #endif
242 242
243+#if !defined( QT_WEAK_SYMBOL ) 243+#if !defined( QT_WEAK_SYMBOL )
244+#define QT_WEAK_SYMBOL 244+#define QT_WEAK_SYMBOL
245+#endif 245+#endif
246+ 246+
247 class QFontDatabasePrivate; 247 class QFontDatabasePrivate;
248 248
249 class Q_EXPORT QFontDatabase 249 class Q_EXPORT QFontDatabase
250@@ -67,9 +71,16 @@ 250@@ -67,9 +71,16 @@
251 QFontDatabase(); 251 QFontDatabase();
252 252
253 QStringList families( bool onlyForLocale = TRUE ) const; 253 QStringList families( bool onlyForLocale = TRUE ) const;
254+ 254+
255+ 255+
256 QValueList<int> pointSizes( const QString &family, 256 QValueList<int> pointSizes( const QString &family,
257 const QString &style = QString::null, 257 const QString &style = QString::null,
258 - const QString &charSet = QString::null ); 258 - const QString &charSet = QString::null );
259 + const QString &charSet = QString::null ) QT_WEAK_SYMBOL; 259 + const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
260+private: 260+private:
261+ QValueList<int> pointSizes_NonWeak( const QString &family, 261+ QValueList<int> pointSizes_NonWeak( const QString &family,
262 + const QString &style, 262 + const QString &style,
263 + const QString &charSet ); 263 + const QString &charSet );
264+public: 264+public:
265 QStringList styles( const QString &family, 265 QStringList styles( const QString &family,
266 const QString &charSet = QString::null ) const; 266 const QString &charSet = QString::null ) const;
267 QStringList charSets( const QString &familyName, 267 QStringList charSets( const QString &familyName,
268diff -ur qt-2.3.7-old/include/qglobal.h qt-2.3.7/include/qglobal.h 268diff -ur qt-2.3.7-old/include/qglobal.h qt-2.3.7/include/qglobal.h
269 --- qt-2.3.7-old/include/qglobal.h2004-07-23 15:22:56.000000000 +0200 269 --- qt-2.3.7-old/include/qglobal.h2004-07-23 15:22:56.000000000 +0200
270 +++ qt-2.3.7/include/qglobal.h2004-07-23 15:42:01.000000000 +0200 270 +++ qt-2.3.7/include/qglobal.h2004-07-23 15:42:01.000000000 +0200
271@@ -207,8 +207,16 @@ 271@@ -207,8 +207,16 @@
272 #if __GNUC__ == 2 && __GNUC_MINOR__ == 96 272 #if __GNUC__ == 2 && __GNUC_MINOR__ == 96
273 #define Q_FP_CCAST_BROKEN 273 #define Q_FP_CCAST_BROKEN
274 #endif 274 #endif
275+/* ARM gcc pads structs to 32 bits, even when they contain a single 275+/* ARM gcc pads structs to 32 bits, even when they contain a single
276+ char, or short. We tell gcc to pack QChars to 16 bits, to avoid 276+ char, or short. We tell gcc to pack QChars to 16 bits, to avoid
277+ QString bloat. However, gcc 3.4 doesn't allow us to create references to 277+ QString bloat. However, gcc 3.4 doesn't allow us to create references to
278+ members of a packed struct. (Pointers are OK, because then you 278+ members of a packed struct. (Pointers are OK, because then you
279+ supposedly know what you are doing.) */ 279+ supposedly know what you are doing.) */
280 #if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP) 280 #if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP)
281 #define Q_PACKED __attribute__ ((packed)) 281 #define Q_PACKED __attribute__ ((packed))
282+# if __GNUC__ == 3 && __GNUC_MINOR__ >= 4 282+# if __GNUC__ == 3 && __GNUC_MINOR__ >= 4
283+# define Q_NO_PACKED_REFERENCE 283+# define Q_NO_PACKED_REFERENCE
284+# endif 284+# endif
285 #endif 285 #endif
286 #elif defined(__xlC__) 286 #elif defined(__xlC__)
287 #define _CC_XLC_ 287 #define _CC_XLC_
288diff -ur qt-2.3.7-old/include/qiconview.h qt-2.3.7/include/qiconview.h 288diff -ur qt-2.3.7-old/include/qiconview.h qt-2.3.7/include/qiconview.h
289 --- qt-2.3.7-old/include/qiconview.h2004-07-23 15:22:56.000000000 +0200 289 --- qt-2.3.7-old/include/qiconview.h2004-07-23 15:22:56.000000000 +0200
290 +++ qt-2.3.7/include/qiconview.h2004-07-23 15:45:34.000000000 +0200 290 +++ qt-2.3.7/include/qiconview.h2004-07-23 15:45:34.000000000 +0200
291@@ -444,6 +444,7 @@ 291@@ -444,6 +444,7 @@
292 virtual void contentsDropEvent( QDropEvent *e ); 292 virtual void contentsDropEvent( QDropEvent *e );
293 #endif 293 #endif
294 294
295+ void bufferedPaintEvent( QPaintEvent* ); 295+ void bufferedPaintEvent( QPaintEvent* );
296 virtual void resizeEvent( QResizeEvent* e ); 296 virtual void resizeEvent( QResizeEvent* e );
297 virtual void keyPressEvent( QKeyEvent *e ); 297 virtual void keyPressEvent( QKeyEvent *e );
298 virtual void focusInEvent( QFocusEvent *e ); 298 virtual void focusInEvent( QFocusEvent *e );
299diff -ur qt-2.3.7-old/include/qsortedlist.h qt-2.3.7/include/qsortedlist.h 299diff -ur qt-2.3.7-old/include/qsortedlist.h qt-2.3.7/include/qsortedlist.h
300 --- qt-2.3.7-old/include/qsortedlist.h2004-07-23 15:22:56.000000000 +0200 300 --- qt-2.3.7-old/include/qsortedlist.h2004-07-23 15:22:56.000000000 +0200
301 +++ qt-2.3.7/include/qsortedlist.h2004-07-23 15:42:01.000000000 +0200 301 +++ qt-2.3.7/include/qsortedlist.h2004-07-23 15:42:01.000000000 +0200
302@@ -48,7 +48,7 @@ 302@@ -48,7 +48,7 @@
303 public: 303 public:
304 QSortedList() {} 304 QSortedList() {}
305 QSortedList( const QSortedList<type> &l ) : QList<type>(l) {} 305 QSortedList( const QSortedList<type> &l ) : QList<type>(l) {}
306- ~QSortedList() { clear(); } 306- ~QSortedList() { clear(); }
307+ ~QSortedList() { this->clear(); } 307+ ~QSortedList() { this->clear(); }
308 QSortedList<type> &operator=(const QSortedList<type> &l) 308 QSortedList<type> &operator=(const QSortedList<type> &l)
309 { return (QSortedList<type>&)QList<type>::operator=(l); } 309 { return (QSortedList<type>&)QList<type>::operator=(l); }
310 310
311diff -ur qt-2.3.7-old/include/qstring.h qt-2.3.7/include/qstring.h 311diff -ur qt-2.3.7-old/include/qstring.h qt-2.3.7/include/qstring.h
312 --- qt-2.3.7-old/include/qstring.h2004-07-23 15:22:56.000000000 +0200 312 --- qt-2.3.7-old/include/qstring.h2004-07-23 15:22:56.000000000 +0200
313 +++ qt-2.3.7/include/qstring.h2004-07-23 15:42:01.000000000 +0200 313 +++ qt-2.3.7/include/qstring.h2004-07-23 15:42:01.000000000 +0200
314@@ -163,8 +163,16 @@ 314@@ -163,8 +163,16 @@
315 bool isLetterOrNumber() const; 315 bool isLetterOrNumber() const;
316 bool isDigit() const; 316 bool isDigit() const;
317 317
318+ 318+
319+#ifdef Q_NO_PACKED_REFERENCE 319+#ifdef Q_NO_PACKED_REFERENCE
320+ uchar& cell() { return *(&cl); } 320+ uchar& cell() { return *(&cl); }
321+ uchar& row() { return *(&rw); } 321+ uchar& row() { return *(&rw); }
322+#else 322+#else
323 uchar& cell() { return cl; } 323 uchar& cell() { return cl; }
324- uchar& row() { return rw; } 324- uchar& row() { return rw; }
325+ uchar& row() { return rw; } 325+ uchar& row() { return rw; }
326+#endif 326+#endif
327+ 327+
328+ 328+
329 uchar cell() const { return cl; } 329 uchar cell() const { return cl; }
330 uchar row() const { return rw; } 330 uchar row() const { return rw; }
331 331
332diff -ur qt-2.3.7-old/src/iconview/qiconview.cpp qt-2.3.7/src/iconview/qiconview.cpp 332diff -ur qt-2.3.7-old/src/iconview/qiconview.cpp qt-2.3.7/src/iconview/qiconview.cpp
333 --- qt-2.3.7-old/src/iconview/qiconview.cpp2004-07-23 15:22:56.000000000 +0200 333 --- qt-2.3.7-old/src/iconview/qiconview.cpp2004-07-23 15:22:56.000000000 +0200
334 +++ qt-2.3.7/src/iconview/qiconview.cpp2004-07-23 15:45:34.000000000 +0200 334 +++ qt-2.3.7/src/iconview/qiconview.cpp2004-07-23 15:45:34.000000000 +0200
335@@ -1,5 +1,5 @@
336 /****************************************************************************
337-** $Id$
338+** $Id$
339 **
340 ** Implementation of QIconView widget class
341 **
342@@ -220,6 +220,7 @@ 335@@ -220,6 +220,7 @@
343 QIconView::SelectionMode selectionMode; 336 QIconView::SelectionMode selectionMode;
344 QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor; 337 QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
345 QRect *rubber; 338 QRect *rubber;
346+ QPixmap *backBuffer; 339+ QPixmap *backBuffer;
347 QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer, 340 QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
348 *fullRedrawTimer; 341 *fullRedrawTimer;
349 int rastX, rastY, spacing; 342 int rastX, rastY, spacing;
350@@ -2263,6 +2264,7 @@ 343@@ -2263,6 +2264,7 @@
351 d->currentItem = 0; 344 d->currentItem = 0;
352 d->highlightedItem = 0; 345 d->highlightedItem = 0;
353 d->rubber = 0; 346 d->rubber = 0;
354+ d->backBuffer = 0; 347+ d->backBuffer = 0;
355 d->scrollTimer = 0; 348 d->scrollTimer = 0;
356 d->startDragItem = 0; 349 d->startDragItem = 0;
357 d->tmpCurrentItem = 0; 350 d->tmpCurrentItem = 0;
358@@ -2411,6 +2413,8 @@ 351@@ -2411,6 +2413,8 @@
359 delete item; 352 delete item;
360 item = tmp; 353 item = tmp;
361 } 354 }
362+ delete d->backBuffer; 355+ delete d->backBuffer;
363+ d->backBuffer = 0; 356+ d->backBuffer = 0;
364 delete d->fm; 357 delete d->fm;
365 d->fm = 0; 358 d->fm = 0;
366 #ifndef QT_NO_TOOLTIP 359 #ifndef QT_NO_TOOLTIP
367@@ -2877,6 +2881,48 @@ 360@@ -2877,6 +2881,48 @@
368 } 361 }
369 362
370 /*! 363 /*!
371+ This function grabs all paintevents that otherwise would have been 364+ This function grabs all paintevents that otherwise would have been
372+ processed by the QScrollView::viewportPaintEvent(). Here we use a 365+ processed by the QScrollView::viewportPaintEvent(). Here we use a
373+ doublebuffer to reduce 'on-paint' flickering on QIconView 366+ doublebuffer to reduce 'on-paint' flickering on QIconView
374+ (and of course its childs). 367+ (and of course its childs).
375+ 368+
376+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents() 369+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
377+*/ 370+*/
378+ 371+
379+void QIconView::bufferedPaintEvent( QPaintEvent* pe ) 372+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
380+{ 373+{
381+ QWidget* vp = viewport(); 374+ QWidget* vp = viewport();
382+ QRect r = pe->rect() & vp->rect(); 375+ QRect r = pe->rect() & vp->rect();
383+ int ex = r.x() + contentsX(); 376+ int ex = r.x() + contentsX();
384+ int ey = r.y() + contentsY(); 377+ int ey = r.y() + contentsY();
385+ int ew = r.width(); 378+ int ew = r.width();
386+ int eh = r.height(); 379+ int eh = r.height();
387+ 380+
388+ if ( !d->backBuffer ) 381+ if ( !d->backBuffer )
389 +d->backBuffer = new QPixmap(vp->size()); 382 +d->backBuffer = new QPixmap(vp->size());
390+ if ( d->backBuffer->size() != vp->size() ) { 383+ if ( d->backBuffer->size() != vp->size() ) {
391 +//Resize function (with hysteesis). Uses a good compromise between memory 384 +//Resize function (with hysteesis). Uses a good compromise between memory
392 +//consumption and speed (number) of resizes. 385 +//consumption and speed (number) of resizes.
393+ float newWidth = (float)vp->width(); 386+ float newWidth = (float)vp->width();
394 +float newHeight = (float)vp->height(); 387 +float newHeight = (float)vp->height();
395 +if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() ) 388 +if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
396 +{ 389 +{
397 + newWidth *= 1.1892; 390 + newWidth *= 1.1892;
398 + newHeight *= 1.1892; 391 + newHeight *= 1.1892;
399 + d->backBuffer->resize( (int)newWidth, (int)newHeight ); 392 + d->backBuffer->resize( (int)newWidth, (int)newHeight );
400 +} else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() ) 393 +} else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
401 + d->backBuffer->resize( (int)newWidth, (int)newHeight ); 394 + d->backBuffer->resize( (int)newWidth, (int)newHeight );
402+ } 395+ }
403+ 396+
404+ QPainter p; 397+ QPainter p;
405+ p.begin(d->backBuffer, vp); 398+ p.begin(d->backBuffer, vp);
406+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh); 399+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
407+ p.end(); 400+ p.end();
408+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh); 401+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
409+} 402+}
410+ 403+
411+/*! 404+/*!
412+ 405+
413 \reimp 406 \reimp
414 */ 407 */
415 408
416@@ -4855,7 +4901,7 @@ 409@@ -4855,7 +4901,7 @@
417 if ( !d->rubber ) 410 if ( !d->rubber )
418 drawDragShapes( d->oldDragPos ); 411 drawDragShapes( d->oldDragPos );
419 } 412 }
420 - viewportPaintEvent( (QPaintEvent*)e ); 413 - viewportPaintEvent( (QPaintEvent*)e );
421+ bufferedPaintEvent ((QPaintEvent*)e ); 414+ bufferedPaintEvent ((QPaintEvent*)e );
422 if ( d->dragging ) { 415 if ( d->dragging ) {
423 if ( !d->rubber ) 416 if ( !d->rubber )
424 drawDragShapes( d->oldDragPos ); 417 drawDragShapes( d->oldDragPos );
425@@ -5286,11 +5332,19 @@ 418@@ -5286,11 +5332,19 @@
426 return; 419 return;
427 420
428 if ( item->d->container1 && d->firstContainer ) { 421 if ( item->d->container1 && d->firstContainer ) {
429 -item->d->container1->items.removeRef( item ); 422 -item->d->container1->items.removeRef( item );
430+ //Special-case checking of the last item, since this may be 423+ //Special-case checking of the last item, since this may be
431+ //called a few times for the same item. 424+ //called a few times for the same item.
432+ if (item->d->container1->items.last() == item) 425+ if (item->d->container1->items.last() == item)
433+ item->d->container1->items.removeLast(); 426+ item->d->container1->items.removeLast();
434+ else 427+ else
435+ item->d->container1->items.removeRef( item ); 428+ item->d->container1->items.removeRef( item );
436 } 429 }
437 item->d->container1 = 0; 430 item->d->container1 = 0;