summaryrefslogtreecommitdiff
path: root/qt
Side-by-side diff
Diffstat (limited to 'qt') (more/less context) (ignore whitespace changes)
-rw-r--r--qt/README.qt-patches2
-rw-r--r--qt/README.qt-version2
-rw-r--r--qt/qt-2.3.10.patch/daemonize.patch (renamed from qt/qt-2.3.7.patch/qte237-1-daemon.patch)14
-rw-r--r--qt/qt-2.3.10.patch/devfs.patch163
-rw-r--r--qt/qt-2.3.10.patch/encoding.patch34
-rw-r--r--qt/qt-2.3.10.patch/fix-qgfxraster.patch28
-rw-r--r--qt/qt-2.3.10.patch/gcc3.patch27
-rw-r--r--qt/qt-2.3.10.patch/handhelds.patch80
-rw-r--r--qt/qt-2.3.10.patch/qiconview-speed.patch (renamed from qt/qt-2.3.7.patch/qte237-iconviewspeed.patch)46
-rw-r--r--qt/qt-2.3.10.patch/simpad.patch413
-rw-r--r--qt/qt-2.3.10.patch/tslib.patch53
-rw-r--r--qt/qt-2.3.10.patch/vt-switch.patch (renamed from qt/qt-2.3.7.patch/qte237-0-vtswitch.patch)51
-rw-r--r--qt/qt-2.3.5.patch/qte235-all.patch450
-rw-r--r--qt/qt-2.3.7.patch/qte237-adjustsizes.patch64
-rw-r--r--qt/qt-2.3.7.patch/qte237-all-macosx.patch1262
-rw-r--r--qt/qt-2.3.7.patch/qte237-all.patch1463
-rw-r--r--qt/qt-2.3.7.patch/qte237-allowoverride.patch229
-rw-r--r--qt/qt-2.3.7.patch/qte237-encoding.patch49
-rw-r--r--qt/qt-2.3.7.patch/qte237-g++-aslinker.patch161
-rw-r--r--qt/qt-2.3.7.patch/qte237-gcc34.patch510
-rw-r--r--qt/qt-2.3.7.patch/qte237-hancomwordcrash.patch14
-rw-r--r--qt/qt-2.3.7.patch/qte237-keyboard.patch43
-rw-r--r--qt/qt-2.3.7.patch/qte237-lefthand.patch133
-rw-r--r--qt/qt-2.3.8.patch/qte238-adjustsizes.patch64
-rw-r--r--qt/qt-2.3.8.patch/qte238-all.patch1059
-rw-r--r--qt/qt-2.3.8.patch/qte238-allowoverride.patch231
-rw-r--r--qt/qt-2.3.8.patch/qte238-encoding.patch49
-rw-r--r--qt/qt-2.3.8.patch/qte238-gcc34.patch440
-rw-r--r--qt/qt-2.3.8.patch/qte238-hancomwordcrash.patch15
-rw-r--r--qt/qt-2.3.8.patch/qte238-iconviewspeed.patch145
-rw-r--r--qt/qt-2.3.8.patch/qte238-keyboard.patch47
-rw-r--r--qt/qt-2.3.9.patch/qte239-all.patch510
-rw-r--r--qt/qt-2.3.9.patch/qte239-qwsmouse.patch301
33 files changed, 833 insertions, 7319 deletions
diff --git a/qt/README.qt-patches b/qt/README.qt-patches
index e079ba7..fe31bbb 100644
--- a/qt/README.qt-patches
+++ b/qt/README.qt-patches
@@ -1,6 +1,6 @@
The Qt patches are patches generally useful for all platforms.
For specefic Device patches like Keyboard and Mousedrivers see
-http://openembedded.bkbits.net:8080/packages/src/qte/qte-2.3.7?nav=index.html|src/.|src/qte
+http://openembedded.bkbits.net:8080/packages/src/qte/qte-2.3.10?nav=index.html|src/.|src/qte
diff --git a/qt/README.qt-version b/qt/README.qt-version
new file mode 100644
index 0000000..5cc99a9
--- a/dev/null
+++ b/qt/README.qt-version
@@ -0,0 +1,2 @@
+Note: We no longer support anything else than Qt/E 2.3.10
+
diff --git a/qt/qt-2.3.7.patch/qte237-1-daemon.patch b/qt/qt-2.3.10.patch/daemonize.patch
index 1f83398..487a18c 100644
--- a/qt/qt-2.3.7.patch/qte237-1-daemon.patch
+++ b/qt/qt-2.3.10.patch/daemonize.patch
@@ -1,113 +1,113 @@
#
-# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
+# Patch managed by http://www.holgerschurig.de/patcher.html
#
---- qt-2.3.7/src/kernel/qapplication_qws.cpp~daemonize 2004-07-17 22:47:54.840820000 +0200
-+++ qt-2.3.7/src/kernel/qapplication_qws.cpp 2004-07-17 23:34:32.407525912 +0200
-@@ -103,6 +103,7 @@
+--- qt-2.3.9-snapshot-20041211/src/kernel/qapplication_qws.cpp~daemonize
++++ qt-2.3.9-snapshot-20041211/src/kernel/qapplication_qws.cpp
+@@ -104,6 +104,7 @@
#endif
#include <sys/time.h>
+#include <syslog.h>
#if defined(_OS_AIX_) && defined(_CC_GNU_)
#include <sys/select.h>
-@@ -162,6 +163,7 @@
+@@ -163,6 +164,7 @@
//these used to be environment variables, they are initialized from
//environment variables in
+bool qws_daemon = TRUE;
bool qws_savefonts = FALSE;
bool qws_screen_is_interlaced=FALSE; //### should be detected
bool qws_shared_memory = FALSE;
-@@ -1614,6 +1616,10 @@
+@@ -1686,6 +1688,10 @@
mwGeometry = argv[i];
} else if ( arg == "-shared" ) {
qws_shared_memory = TRUE;
+ } else if ( arg == "-daemon" ) {
+ qws_daemon = TRUE;
+ } else if ( arg == "-nodaemon" ) {
+ qws_daemon = FALSE;
} else if ( arg == "-noshared" ) {
qws_shared_memory = FALSE;
} else if ( arg == "-savefonts" ) {
-@@ -1670,6 +1676,78 @@
+@@ -1742,6 +1748,78 @@
qt_appType = type;
qws_single_process = TRUE;
+ /* Daemonize the server process -- (C) Michael 'Mickey' Lauer <mickey@tm.informatik.uni-frankfurt.de>
+ * Added a new command line option which only is relevant if the application is created as a GuiServer.
+ * The option is -daemon respectively -nodaemon. If in daemon mode (which is the default now), the
+ * server will detach from the controlling terminal and continue as a daemon. This is done via the standard
+ * UNIX double fork magic.
+ */
+ if ( qws_daemon )
+ {
+ qWarning( "qt_init() - starting in daemon mode..." );
+
+ int pid1 = fork();
+ if ( pid1 == -1 )
+ {
+ qWarning( "qt_init() - can't perform initial fork: %s", strerror( errno ) );
+ exit( -1 );
+ }
+ if ( pid1 ) _exit( 0 ); // ok, first fork performed
+
+ chdir( "/" );
+ setsid();
+ umask(0);
+ close(0);
+ close(1);
+ close(2);
+
+ int fdnull = ::open( "/dev/null", O_RDWR );
+ if ( fdnull == -1 )
+ {
+ syslog( 3, "qt_init() - can't open /dev/null to redirect std{in|out|err}: %s", strerror( errno ) );
+ exit( -1 );
+ }
+ dup2( fdnull, 0 ); // stdin
+ dup2( fdnull, 1 ); // stdout
+ dup2( fdnull, 2 ); // stderr
+
+ int pid2 = fork();
+ if ( pid2 == -1 )
+ {
+ syslog( 3, "qt_init() - can't perform initial fork: %s", strerror( errno ) );
+ exit( -1 );
+ }
+ if ( pid2 )
+ {
+ syslog( 4, "qt_init() [%d] - successfully entered daemon mode", pid2 );
+ _exit( 0 ); // ok, second fork performed
+ }
+ }
+
+ /*
+ * , ,
+ * /( )`
+ * \ \___ / | B E W A R E !
+ * /- _ `-/ ' We are a DAEMON now!
+ * (/\/ \ \ /\
+ * / / | ` \
+ * O O ) / |
+ * `-^--'`< '
+ * (_.) _ ) /
+ * `.___/` /
+ * `-----' /
+ * <----. __ / __ \
+ * <----|====O)))==) \) /====
+ * <----' `--' `.__,' \
+ * | |
+ * \ /
+ * ______( (_ / \______
+ * (FL) ,' ,-----' | \
+ * `--{__________) \/
+ *
+ */
+
+
/* Allocate a dedicated virtual terminal -- (C) Michael 'Mickey' Lauer <mickey@tm.informatik.uni-frankfurt.de>
* Added a new command line option which only is relevant if the application is created as a GuiServer.
* The option is -terminal <num>, where <num> specifies the virtual terminal to be occupied by the server.
diff --git a/qt/qt-2.3.10.patch/devfs.patch b/qt/qt-2.3.10.patch/devfs.patch
new file mode 100644
index 0000000..27ea423
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/devfs.patch
@@ -0,0 +1,163 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- qt-2.3.9-snapshot-20050114/configure~devfs
++++ qt-2.3.9-snapshot-20050114/configure
+@@ -412,6 +412,9 @@
+ -visibility-hidden)
+ VISIBILITY=YES
+ ;;
++ -devfs)
++ DEVFS=yes
++ ;;
+ -no-g++-exceptions)
+ GPLUSPLUS_EXCEPTIONS=no
+ ;;
+@@ -1302,6 +1305,8 @@
+ -visibility-hidden . Use -fvisibility=hidden as default. This requires GCC 4.0
+ or a special patched GCC to support the visibility attribute
+
++ -devfs ............. Use devfs /dev paths.
++
+ -no-g++-exceptions . Disable exceptions on platforms using the GNU C++
+ compiler by using the -fno-exceptions flag.
+
+@@ -1374,6 +1379,10 @@
+ then
+ QT_CXX="${QT_CXX} -DGCC_SUPPORTS_VISIBILITY -fvisibility=hidden"
+ fi
++if [ "x$DEVFS" = "xyes" ]
++then
++ QT_CXX="${QT_CXX} -DQT_QWS_DEVFS"
++fi
+ if [ "x$THREAD" = "xyes" ]
+ then
+ cat >src-mt.mk <<EOF
+--- qt-2.3.9-snapshot-20050114/src/kernel/qgfxlinuxfb_qws.cpp~devfs
++++ qt-2.3.9-snapshot-20050114/src/kernel/qgfxlinuxfb_qws.cpp
+@@ -101,11 +101,19 @@
+ bool QLinuxFbScreen::connect( const QString &displaySpec )
+ {
+ // Check for explicitly specified device
++#ifdef QT_QWS_DEVFS
++ QRegExp r( "/dev/fb/[0-9]+" );
++#else
+ QRegExp r( "/dev/fb[0-9]+" );
++#endif
+ int len;
+ int m = r.match( displaySpec, 0, &len );
+
++#ifdef QT_QWS_DEVFS
++ QString dev = (m>=0) ? displaySpec.mid( m, len ) : QString("/dev/fb/0");
++#else
+ QString dev = (m>=0) ? displaySpec.mid( m, len ) : QString("/dev/fb0");
++#endif
+
+ fd=open( dev.latin1(), O_RDWR );
+ if (fd<0) {
+@@ -121,14 +129,22 @@
+
+ /* Get fixed screen information */
+ if (ioctl(fd, FBIOGET_FSCREENINFO, &finfo)) {
++#ifdef QT_QWS_DEVFS
++ perror("reading /dev/fb/0");
++#else
+ perror("reading /dev/fb0");
++#endif
+ qWarning("Error reading fixed information");
+ return FALSE;
+ }
+
+ /* Get variable screen information */
+ if (ioctl(fd, FBIOGET_VSCREENINFO, &vinfo)) {
++#ifdef QT_QWS_DEVFS
++ perror("reading /dev/fb/0");
++#else
+ perror("reading /dev/fb0");
++#endif
+ qWarning("Error reading variable information");
+ return FALSE;
+ }
+@@ -165,7 +181,11 @@
+ data += dataoffset;
+
+ if ((int)data == -1) {
+- perror("mapping /dev/fb0");
++#ifdef QT_QWS_DEVFS
++ perror("reading /dev/fb/0");
++#else
++ perror("reading /dev/fb0");
++#endif
+ qWarning("Error: failed to map framebuffer device to memory.");
+ return FALSE;
+ }
+@@ -229,7 +249,11 @@
+
+ static void writeTerm(const char* termctl, int sizeof_termctl)
+ {
++#ifdef QT_QWS_DEVFS
++ const char* tt[]={"/dev/vc/1","/dev/console","/dev/tty",0};
++#else
+ const char* tt[]={"/dev/console","/dev/tty","/dev/tty0",0};
++#endif
+ const char** dev=tt;
+ while (*dev) {
+ int tty=::open(*dev,O_WRONLY);
+@@ -792,7 +816,11 @@
+ fb_var_screeninfo vinfo;
+
+ if (ioctl(fd, FBIOGET_FSCREENINFO, &finfo)) {
++#ifdef QT_QWS_DEVFS
++ perror("reading /dev/fb/0");
++#else
+ perror("reading /dev/fb0");
++#endif
+ qFatal("Error reading fixed information");
+ }
+
+--- qt-2.3.9-snapshot-20050114/src/kernel/qkeyboard_qws.cpp~devfs
++++ qt-2.3.9-snapshot-20050114/src/kernel/qkeyboard_qws.cpp
+@@ -1192,7 +1192,11 @@
+
+ QWSTtyKeyboardHandler::QWSTtyKeyboardHandler(const QString& device)
+ {
++#ifdef QT_QWS_DEVFS
++ kbdFD=open(device.isEmpty() ? "/dev/vc/1" : device.latin1(), O_RDWR | O_NDELAY, 0);
++#else
+ kbdFD=open(device.isEmpty() ? "/dev/tty0" : device.latin1(), O_RDWR | O_NDELAY, 0);
++#endif
+
+ if ( kbdFD >= 0 ) {
+ QSocketNotifier *notifier;
+--- qt-2.3.9-snapshot-20050114/src/kernel/qwindowsystem_qws.cpp~devfs
++++ qt-2.3.9-snapshot-20050114/src/kernel/qwindowsystem_qws.cpp
+@@ -836,7 +836,11 @@
+ void openDevice()
+ {
+ if ( !sn ) {
++#ifdef QT_QWS_DEVFS
++ int fd = ::open("/dev/sound/dsp",O_RDWR);
++#else
+ int fd = ::open("/dev/dsp",O_RDWR);
++#endif
+ if ( fd < 0 ) {
+ // For debugging purposes - defined QT_NO_SOUND if you
+ // don't have sound hardware!
+--- qt-2.3.9-snapshot-20050114/src/kernel/qsoundqss_qws.cpp~devfs
++++ qt-2.3.9-snapshot-20050114/src/kernel/qsoundqss_qws.cpp
+@@ -1088,7 +1088,12 @@
+ // Don't block open right away.
+ //
+ bool openOkay = false;
+- if ((fd = ::open("/dev/dsp", O_WRONLY|O_NONBLOCK)) != -1) {
++#ifdef QT_QWS_DEVFS
++ if ((fd = ::open("/dev/sound/dsp", O_WRONLY|O_NONBLOCK)) != -1)
++#else
++ if ((fd = ::open("/dev/dsp", O_WRONLY|O_NONBLOCK)) != -1)
++#endif
++ {
+ int flags = fcntl(fd, F_GETFL);
+ flags &= ~O_NONBLOCK;
+ openOkay = (fcntl(fd, F_SETFL, flags) == 0);
diff --git a/qt/qt-2.3.10.patch/encoding.patch b/qt/qt-2.3.10.patch/encoding.patch
new file mode 100644
index 0000000..13a4828
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/encoding.patch
@@ -0,0 +1,34 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- qt-2.3.9-snapshot-20041211/src/tools/qstring.cpp~encoding
++++ qt-2.3.9-snapshot-20041211/src/tools/qstring.cpp
+@@ -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 --git a/qt/qt-2.3.10.patch/fix-qgfxraster.patch b/qt/qt-2.3.10.patch/fix-qgfxraster.patch
new file mode 100644
index 0000000..7bc1e2a
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/fix-qgfxraster.patch
@@ -0,0 +1,28 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- qt-2.3.9-snapshot-20041211/src/kernel/qgfxraster_qws.cpp~fix-qgfxraster
++++ qt-2.3.9-snapshot-20041211/src/kernel/qgfxraster_qws.cpp
+@@ -4037,13 +4037,14 @@
+ for( loopc2=0;loopc2<frontadd;loopc2++ )
+ *(alphaptr++)=get_value_32(16,(unsigned char **)&temppos);
+
+- PackType temp2;
+- unsigned char * cp;
++ volatile PackType temp2;
++ volatile unsigned short int * cp;
+ for( loopc2=0;loopc2<count;loopc2++ ) {
+- temp2=*((PackType *)temppos);
+- cp=(unsigned char *)&temp2;
+- *(alphaptr++)=get_value_32(16,&cp);
+- *(alphaptr++)=get_value_32(16,&cp);
++ temp2=*reinterpret_cast<PackType *>(temppos);
++ cp=reinterpret_cast<volatile unsigned short int *>(&temp2);
++ *(alphaptr++)=qt_conv16ToRgb(*cp);
++ cp++;
++ *(alphaptr++)=qt_conv16ToRgb(*cp);
+ temppos += 2;
+ }
+
diff --git a/qt/qt-2.3.10.patch/gcc3.patch b/qt/qt-2.3.10.patch/gcc3.patch
new file mode 100644
index 0000000..fc1656a
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/gcc3.patch
@@ -0,0 +1,27 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- qt-2.3.9-snapshot-20041211/src/tools/qcstring.h~gcc3
++++ qt-2.3.9-snapshot-20041211/src/tools/qcstring.h
+@@ -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
+--- qt-2.3.9-snapshot-20041211/src/kernel/qwsdecoration_qws.h~gcc3
++++ qt-2.3.9-snapshot-20041211/src/kernel/qwsdecoration_qws.h
+@@ -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.10.patch/handhelds.patch b/qt/qt-2.3.10.patch/handhelds.patch
new file mode 100644
index 0000000..3335796
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/handhelds.patch
@@ -0,0 +1,80 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- qt-2.3.10-snapshot-20050131/src/widgets/qcommonstyle.cpp~opie
++++ qt-2.3.10-snapshot-20050131/src/widgets/qcommonstyle.cpp
+@@ -572,7 +572,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);
+--- qt-2.3.10-snapshot-20050131/src/widgets/qlistview.cpp~opie
++++ qt-2.3.10-snapshot-20050131/src/widgets/qlistview.cpp
+@@ -5051,9 +5051,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 );
+--- qt-2.3.10-snapshot-20050131/src/kernel/qwindowsystem_qws.cpp~opie
++++ qt-2.3.10-snapshot-20050131/src/kernel/qwindowsystem_qws.cpp
+@@ -918,6 +918,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
+@@ -1043,6 +1055,7 @@
+ }
+
+ signal(SIGPIPE, ignoreSignal); //we get it when we read
++ signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash
+ #endif
+ focusw = 0;
+ mouseGrabber = 0;
+--- qt-2.3.10-snapshot-20050131/src/widgets/qtoolbutton.cpp~opie
++++ qt-2.3.10-snapshot-20050131/src/widgets/qtoolbutton.cpp
+@@ -332,12 +332,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 --git a/qt/qt-2.3.7.patch/qte237-iconviewspeed.patch b/qt/qt-2.3.10.patch/qiconview-speed.patch
index 81064e1..bac9b97 100644
--- a/qt/qt-2.3.7.patch/qte237-iconviewspeed.patch
+++ b/qt/qt-2.3.10.patch/qiconview-speed.patch
@@ -1,142 +1,122 @@
-Speed up patches backported from
-http://robotics.dei.unipd.it/~koral/KDE/kflicker.html
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
-and
-
-http://lists.kde.org/?l=kde-optimize&m=105382164111363&w=2 (complete thread)
-
-
-
-
-diff -u qt-2.3.7_old/src/iconview/qiconview.cpp qt-2.3.7/src/iconview/qiconview.cpp
---- qt-2.3.7_old/src/iconview/qiconview.cpp 2004-06-13 22:29:56.000000000 +0200
-+++ qt-2.3.7/src/iconview/qiconview.cpp 2004-06-13 22:33:32.000000000 +0200
-@@ -220,6 +220,7 @@
+--- qt-2.3.10-snapshot-20050131/src/iconview/qiconview.cpp~qiconview-speed
++++ qt-2.3.10-snapshot-20050131/src/iconview/qiconview.cpp
+@@ -225,6 +225,7 @@
QIconView::SelectionMode selectionMode;
QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
QRect *rubber;
+ QPixmap *backBuffer;
QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
*fullRedrawTimer;
int rastX, rastY, spacing;
-@@ -2263,6 +2264,7 @@
+@@ -2268,6 +2269,7 @@
d->currentItem = 0;
d->highlightedItem = 0;
d->rubber = 0;
+ d->backBuffer = 0;
d->scrollTimer = 0;
d->startDragItem = 0;
d->tmpCurrentItem = 0;
-@@ -2411,6 +2413,8 @@
+@@ -2416,6 +2418,8 @@
delete item;
item = tmp;
}
+ delete d->backBuffer;
+ d->backBuffer = 0;
delete d->fm;
d->fm = 0;
#ifndef QT_NO_TOOLTIP
-@@ -2877,6 +2881,48 @@
+@@ -2882,6 +2886,48 @@
}
/*!
+ This function grabs all paintevents that otherwise would have been
+ processed by the QScrollView::viewportPaintEvent(). Here we use a
+ doublebuffer to reduce 'on-paint' flickering on QIconView
+ (and of course its childs).
+
+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
+*/
+
+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
+{
+ QWidget* vp = viewport();
+ QRect r = pe->rect() & vp->rect();
+ int ex = r.x() + contentsX();
+ int ey = r.y() + contentsY();
+ int ew = r.width();
+ int eh = r.height();
+
+ if ( !d->backBuffer )
+ d->backBuffer = new QPixmap(vp->size());
+ if ( d->backBuffer->size() != vp->size() ) {
+ //Resize function (with hysteesis). Uses a good compromise between memory
+ //consumption and speed (number) of resizes.
+ float newWidth = (float)vp->width();
+ float newHeight = (float)vp->height();
+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
+ {
+ newWidth *= 1.1892;
+ newHeight *= 1.1892;
+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
+ }
+
+ QPainter p;
+ p.begin(d->backBuffer, vp);
+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
+ p.end();
+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
+}
+
+/*!
+
\reimp
*/
-@@ -4855,7 +4901,7 @@
+@@ -4939,7 +4985,7 @@
if ( !d->rubber )
drawDragShapes( d->oldDragPos );
}
- viewportPaintEvent( (QPaintEvent*)e );
+ bufferedPaintEvent ((QPaintEvent*)e );
if ( d->dragging ) {
if ( !d->rubber )
drawDragShapes( d->oldDragPos );
-@@ -5286,11 +5332,19 @@
+@@ -5377,11 +5423,19 @@
return;
if ( item->d->container1 && d->firstContainer ) {
- item->d->container1->items.removeRef( item );
+ //Special-case checking of the last item, since this may be
+ //called a few times for the same item.
+ if (item->d->container1->items.last() == item)
+ item->d->container1->items.removeLast();
+ else
+ item->d->container1->items.removeRef( item );
}
item->d->container1 = 0;
if ( item->d->container2 && d->firstContainer ) {
- item->d->container2->items.removeRef( item );
+ if (item->d->container2->items.last() == item)
+ item->d->container2->items.removeLast();
+ else
+ item->d->container2->items.removeRef( item );
}
item->d->container2 = 0;
-diff -u qt-2.3.7_old/src/iconview/qiconview.h qt-2.3.7/src/iconview/qiconview.h
---- qt-2.3.7_old/src/iconview/qiconview.h 2004-06-13 22:29:56.000000000 +0200
-+++ qt-2.3.7/src/iconview/qiconview.h 2004-06-13 22:33:32.000000000 +0200
+--- qt-2.3.10-snapshot-20050131/src/iconview/qiconview.h~qiconview-speed
++++ qt-2.3.10-snapshot-20050131/src/iconview/qiconview.h
@@ -444,6 +444,7 @@
virtual void contentsDropEvent( QDropEvent *e );
#endif
+ void bufferedPaintEvent( QPaintEvent* );
virtual void resizeEvent( QResizeEvent* e );
virtual void keyPressEvent( QKeyEvent *e );
virtual void focusInEvent( QFocusEvent *e );
---- qt-2.3.7-old/src/widgets/qscrollview.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/widgets/qscrollview.cpp 2004-07-23 19:23:10.000000000 +0200
-@@ -1266,6 +1277,9 @@
- case QEvent::LayoutHint:
- d->autoResizeHint(this);
- break;
-+ case QEvent::WindowActivate:
-+ case QEvent::WindowDeactivate:
-+ return TRUE;
- default:
- break;
- }
diff --git a/qt/qt-2.3.10.patch/simpad.patch b/qt/qt-2.3.10.patch/simpad.patch
new file mode 100644
index 0000000..1777a94
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/simpad.patch
@@ -0,0 +1,413 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- qt-2.3.10-snapshot-20050131/src/kernel/qkeyboard_qws.cpp~simpad
++++ qt-2.3.10-snapshot-20050131/src/kernel/qkeyboard_qws.cpp
+@@ -37,6 +37,7 @@
+ #include <qapplication.h>
+ #include <qsocketnotifier.h>
+ #include <qnamespace.h>
++#include <qdatetime.h>
+ #include <qtimer.h>
+
+ #include <stdlib.h>
+@@ -80,6 +81,60 @@
+ #include <sys/vt.h>
+ #endif
+
++/*
++ * SIMpad switches handler
++ * (C) 2003-2005 Michael 'Mickey' Lauer <mickey@tm.informatik.uni-frankfurt.de>
++ */
++
++
++
++#include <linux/switches.h>
++#define SIMPAD_SWITCHES_DEVICE "/dev/misc/switches"
++
++// switches from left top to right down over the SIMpad surface
++
++#define SIMPAD_SWITCH_POWER 0x02
++#define SIMPAD_SWITCH_UPPER 0x10
++#define SIMPAD_SWITCH_UP 0x20
++#define SIMPAD_SWITCH_DOWN 0x40
++#define SIMPAD_SWITCH_LEFT 0x80
++#define SIMPAD_SWITCH_RIGHT 0x100
++#define SIMPAD_SWITCH_LOWER 0x8
++
++class QWSsimpadButtonsHandler : public QWSKeyboardHandler
++{
++ Q_OBJECT
++
++ public:
++ QWSsimpadButtonsHandler();
++ virtual ~QWSsimpadButtonsHandler();
++
++ bool isOpen() { return fd > 0; }
++
++ private slots:
++ void readSwitchesData();
++ void autoRepeat();
++
++ private:
++ switches_mask_t switches;
++
++ int fd;
++ int repeatdelay;
++ int repeatperiod;
++
++ int lastCode; // last native code
++ int lastPress; // last press/release state
++
++ int k; // last emitted Qt key code
++ int shiftKeyPressed; // true if one of the SHIFT keys has been pressed and not yet released
++ bool shiftUsed; // true if SHIFT has been used
++
++ QTime eventTimer; // tracks time between raw events
++ QTimer* repeater;
++ QSocketNotifier *notifier;
++};
++
++
+ #ifdef QT_QWS_SL5XXX
+ #include <asm/sharp_char.h>
+ #endif
+@@ -165,9 +220,9 @@
+ current = 0;
+ }
+
+- void setAutoRepeat(int d, int p) { if ( d > 0 ) repeatdelay=d;
++ void setAutoRepeat(int d, int p) { if ( d > 0 ) repeatdelay=d;
+ if ( p > 0 ) repeatperiod=p;}
+- void getAutoRepeat(int *d ,int *p ) { if (d) *d=repeatdelay;
++ void getAutoRepeat(int *d ,int *p ) { if (d) *d=repeatdelay;
+ if (p) *p=repeatperiod; }
+
+ void stop()
+@@ -551,9 +606,9 @@
+
+ void doKey(uchar scancode);
+
+-
++
+ void restoreLeds();
+-
++
+ private:
+ bool shift;
+ bool alt;
+@@ -809,7 +864,7 @@
+
+ #if !defined(QT_QWS_SL5XXX)
+ if (code == 224
+-#if defined(QT_QWS_IPAQ)
++#if defined(QT_QWS_IPAQ)
+ && !ipaq_return_pressed
+ #endif
+ ) {
+@@ -1775,9 +1830,11 @@
+ } else {
+ type = spec;
+ }
+-
+ if ( type == "Buttons" ) {
+-#if defined(QT_QWS_YOPY)
++#if defined(QT_QWS_SIMPAD)
++ qDebug( "QWSKeyboardHandler: using SIMpad switches handler..." );
++ handler = new QWSsimpadButtonsHandler();
++#elif defined(QT_QWS_YOPY)
+ handler = new QWSyopyButtonsHandler();
+ #elif defined(QT_QWS_CASSIOPEIA)
+ handler = new QWSVr41xxButtonsHandler();
+@@ -1812,6 +1869,218 @@
+ return keyM;
+ }
+
+-#endif // QT_NO_QWS_KEYBOARD
+
++/*
++ * SIMpad switches handler
++ * (C) 2003 Michael 'Mickey' Lauer <mickey@tm.informatik.uni-frankfurt.de>
++ */
++
++
++QWSsimpadButtonsHandler::QWSsimpadButtonsHandler()
++ :QWSKeyboardHandler(), fd( -1 ),
++ repeatdelay( 700 ), repeatperiod( 80 ),
++ lastCode( 0 ), lastPress( 0 ),
++ k( -1 ), shiftKeyPressed( 0 ), shiftUsed( false )
++{
++ qDebug( "SimpadButtonsHandler() - V4.1" );
++ fd = ::open( SIMPAD_SWITCHES_DEVICE, O_RDWR | O_NDELAY, 0 );
++ if ( fd < 0 )
++ {
++ qWarning( "SimpadButtonsHandler(): can't open %s", SIMPAD_SWITCHES_DEVICE );
++ return;
++ }
++
++ notifier = new QSocketNotifier( fd, QSocketNotifier::Read, this );
++ connect( notifier, SIGNAL( activated(int) ),this, SLOT( readSwitchesData() ) );
++
++ repeater = new QTimer(this);
++ connect(repeater, SIGNAL(timeout()), this, SLOT(autoRepeat()));
++
++}
+
++
++QWSsimpadButtonsHandler::~QWSsimpadButtonsHandler()
++{
++ qDebug( "~SimpadButtonsHandler()" );
++ if ( fd > 0 )
++ {
++ ::close( fd );
++ fd = -1;
++ }
++}
++
++
++void QWSsimpadButtonsHandler::readSwitchesData()
++{
++ qDebug( "SimpadButtonsHandler() - detected switches action" );
++
++ if ( ::read( fd, &switches, sizeof switches ) < 0 )
++ {
++ qWarning( "SimpadButtonsHandler() - switches read error!" );
++ return;
++ }
++
++ qDebug( "SimpadButtonsHandler() - Shift: %0x [used: %0x] + Event = %0x | %0x",
++ shiftKeyPressed, shiftUsed, switches.events[0], switches.states[0] );
++
++ bool press = switches.states[0]; // == switches.event[0];
++ int code = switches.events[0];
++
++ //=========================================================================
++
++ /**
++ * Work around a bug in the kernel keyboard driver emitting
++ * bogus events when pressing multiple switches at once
++ **/
++
++ if ( lastCode == 0 )
++ {
++ // first press ever
++ eventTimer.start();
++ lastPress = press;
++ lastCode = code;
++ }
++ else
++ {
++ int interval = eventTimer.restart();
++ qDebug( "event interval = %d", interval );
++ if ( code == lastCode && interval < 10 )
++ {
++ qDebug( "event interval too small - ignoring bogus event" );
++ qDebug( "did I say i hate buggy kernel drivers? :-D" );
++ return;
++ }
++
++ lastPress = press;
++ lastCode = code;
++ }
++
++ /**
++ * Actually it may also be a hardware problem, but I really don't like
++ * to review kernel code for further inquiry. So just being lazy and
++ * do the workaround in user space :-D
++ **/
++
++ //=====================================================================
++
++ if ( shiftKeyPressed )
++ {
++ // a shift key obviously is being held
++ qDebug( "while shift key is being held..." );
++
++ if ( code != shiftKeyPressed )
++ {
++ // another key is being touched - that means shift mode for us!
++ qDebug( " another key is being touched -> shift use now = true" );
++
++ shiftUsed = true;
++
++ if ( shiftKeyPressed == SIMPAD_SWITCH_LOWER ) // SHIFT 1
++ {
++ qDebug( " shift mode 1" );
++ switch(code)
++ {
++ case SIMPAD_SWITCH_UP: k = Qt::Key_F9; break; // Shift1-Up = Calendar
++ case SIMPAD_SWITCH_DOWN: k = Qt::Key_F10; break; // Shift1-Down = Contacts
++ case SIMPAD_SWITCH_LEFT: k = Qt::Key_F13; break; // Shift1-Left = Mail
++ case SIMPAD_SWITCH_RIGHT: k = Qt::Key_F11; break; // Shift1-Up = Menu
++ case SIMPAD_SWITCH_UPPER: k = Qt::Key_F12; break; // Shift1-Upper = Home
++ default: k=-1; qWarning( "SimpadButtonsHandler() - unhandled event for Shift 1 !" ); break;
++ }
++ }
++ else if ( shiftKeyPressed == SIMPAD_SWITCH_UPPER ) // SHIFT 2
++ {
++ qDebug( " shift mode 2" );
++ switch(code)
++ {
++ case SIMPAD_SWITCH_UP: k = Qt::Key_F5; break; // Shift2-Up = F5
++ case SIMPAD_SWITCH_DOWN: k = Qt::Key_F6; break; // Shift2-Down = F6
++ case SIMPAD_SWITCH_LEFT: k = Qt::Key_F7; break; // Shift2-Left = F7
++ case SIMPAD_SWITCH_RIGHT: k = Qt::Key_F8; break; // Shift2-Up = F8
++ case SIMPAD_SWITCH_LOWER: k = Qt::Key_F9; break; // Shift2-Lower = F9
++ default: k=-1; qWarning( "SimpadButtonsHandler() - unhandled event for Shift 2!" ); break;
++ }
++ }
++ }
++ else
++ {
++ qDebug( " shift key has been released. checking if being used..." );
++ shiftKeyPressed = 0;
++
++ if ( !shiftUsed )
++ {
++ qDebug( " ... has _not_ being used -> really emit the key" );
++ k = ( code == SIMPAD_SWITCH_UPPER ? Qt::Key_Escape : Qt::Key_Return );
++ qDebug( "Emitting key = %d (pressed)", k );
++ processKeyEvent( 0, k, 0, true, true );
++ qDebug( "Emitting key = %d (released)", k );
++ processKeyEvent( 0, k, 0, false, true );
++ return;
++ }
++ else
++ {
++ qDebug( " ... has being used -> doing nothing" );
++ return;
++ }
++ }
++ }
++ else
++ {
++ qDebug( "standard mode - no shift yet..." );
++
++ switch(code)
++ {
++ case SIMPAD_SWITCH_UP: k = Qt::Key_Up; break;
++ case SIMPAD_SWITCH_DOWN: k = Qt::Key_Down; break;
++ case SIMPAD_SWITCH_LEFT: k = Qt::Key_Left; break;
++ case SIMPAD_SWITCH_RIGHT: k = Qt::Key_Right; break;
++ case SIMPAD_SWITCH_POWER: k = Qt::Key_F34; break; // Power Button
++
++ case SIMPAD_SWITCH_UPPER: k=-1; shiftKeyPressed = press? code:0; shiftUsed = false; qDebug( "shiftkey pressed now = %d", shiftKeyPressed ); return;
++ case SIMPAD_SWITCH_LOWER: k=-1; shiftKeyPressed = press? code:0; shiftUsed = false; qDebug( "shiftkey pressed now = %d", shiftKeyPressed ); return;
++
++ default: k=-1; qWarning( "SimpadButtonsHandler() - unhandled event!" ); break;
++ }
++ }
++
++ if ( k == -1 )
++ {
++ qDebug( "no key to emit - returning." );
++ return;
++ }
++
++ bool repeatable = ( k == Qt::Key_Up || k == Qt::Key_Down ||
++ k == Qt::Key_Right || k == Qt::Key_Left );
++
++ qDebug( "key to emit = %d [%s] [repeat=%s]", k,
++ press ? "press" : "release",
++ repeatable ? "true":"false" );
++
++ if ( qt_screen->isTransformed() && k >= Qt::Key_Left && k <= Qt::Key_Down )
++ {
++ qDebug( "SimpadButtonsHandler() - We are transformed! Correcting..." );
++ int oldK = k;
++ k = xform_dirkey( k );
++ qDebug( "SimpadButtonsHandler() - Old Key: %d - New Key %d", oldK, k );
++ }
++
++ if ( repeatable && press )
++ repeater->start( repeatdelay, true );
++ else
++ repeater->stop();
++
++ qwsServer->processKeyEvent( 0, k, 0, press, false );
++}
++
++
++void QWSsimpadButtonsHandler::autoRepeat()
++{
++ qDebug( "Emitting key = %d (released)", k );
++ processKeyEvent( 0, k, 0, false, true );
++ qDebug( "Emitting key = %d (pressed)", k );
++ processKeyEvent( 0, k, 0, true, true );
++ repeater->start(repeatperiod);
++}
++
++
++#endif // QT_NO_QWS_KEYBOARD
+--- qt-2.3.10-snapshot-20050131/src/kernel/qsoundqss_qws.cpp~simpad
++++ qt-2.3.10-snapshot-20050131/src/kernel/qsoundqss_qws.cpp
+@@ -53,8 +53,8 @@
+
+ extern int errno;
+
+-#define QT_QWS_SOUND_16BIT 1 // or 0, or undefined for always 0
+-#define QT_QWS_SOUND_STEREO 1 // or 0, or undefined for always 0
++#define QT_QWS_SOUND_16BIT 0 // or 0, or undefined for always 0
++#define QT_QWS_SOUND_STEREO 0 // or 0, or undefined for always 0
+
+ // Zaurus SL5000D doesn't seem to return any error if setting to 44000 and it fails,
+ // however 44100 works, 44100 is more common that 44000.
+--- qt-2.3.10-snapshot-20050131/src/kernel/qwsmouse_qws.cpp~simpad
++++ qt-2.3.10-snapshot-20050131/src/kernel/qwsmouse_qws.cpp
+@@ -47,6 +47,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <sys/ioctl.h>
++#include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>
+@@ -73,6 +74,7 @@
+ unsigned short x;
+ unsigned short y;
+ unsigned short pad;
++ struct timeval stamp;
+ } TS_EVENT;
+ #elif defined(QT_QWS_SL5XXX)
+ #define QT_QWS_SL5XXX_RAW
+@@ -1310,6 +1312,11 @@
+ return;
+ }
+ # endif
++#elif defined(QT_QWS_SIMPAD )
++ if ((mouseFD = open( "/dev/touchscreen/ucb1x00", O_RDONLY | O_NONBLOCK )) < 0) {
++ qWarning( "Cannot open /dev/touchscreen/ucb1x00 (%s)", strerror(errno));
++ return;
++ }
+ #endif
+
+ QSocketNotifier *mouseNotifier;
+@@ -1323,7 +1330,7 @@
+
+ QTPanelHandlerPrivate::~QTPanelHandlerPrivate()
+ {
+-#if defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2) || defined(QT_QWS_SLC700)
++#if defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2) || defined(QT_QWS_SLC700) || defined(QT_QWS_SIMPAD)
+ if (mouseFD >= 0)
+ close(mouseFD);
+ #endif
+@@ -1331,7 +1338,7 @@
+
+ void QTPanelHandlerPrivate::readMouseData()
+ {
+-#if defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2) || defined(QT_QWS_SLC700)
++#if defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2) || defined(QT_QWS_SLC700) || defined(QT_QWS_SIMPAD)
+ if(!qt_screen)
+ return;
+
+@@ -2014,7 +2021,7 @@
+ handler = new QTSLibHandlerPrivate();
+ #elif defined(QT_QWS_YOPY)
+ handler = new QYopyTPanelHandlerPrivate(mouseProtocol,mouseDev);
+-#elif defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2) || defined(QT_QWS_SLC700)
++#elif defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2) || defined(QT_QWS_SLC700) || defined(QT_QWS_SIMPAD)
+ handler = new QTPanelHandlerPrivate(mouseProtocol,mouseDev);
+ #elif defined(QT_QWS_CASSIOPEIA)
+ handler = new QVrTPanelHandlerPrivate( mouseProtocol, mouseDev );
diff --git a/qt/qt-2.3.10.patch/tslib.patch b/qt/qt-2.3.10.patch/tslib.patch
new file mode 100644
index 0000000..47837d7
--- a/dev/null
+++ b/qt/qt-2.3.10.patch/tslib.patch
@@ -0,0 +1,53 @@
+Index: qt-2.3.10/src/kernel/qwsmouse_qws.cpp
+===================================================================
+--- qt-2.3.10.orig/src/kernel/qwsmouse_qws.cpp 2005-02-16 00:53:53.090339898 +0100
++++ qt-2.3.10/src/kernel/qwsmouse_qws.cpp 2005-02-16 00:54:43.059069292 +0100
+@@ -1878,30 +1878,33 @@
+ */
+ void QTSLibHandlerPrivate::interpolateSample() {
+ #ifdef QT_QWS_TSLIB
+- static struct ts_sample samples[25];
+- int index = -1;
++#define TSLIB_MAX_SAMPLES 25
++ static struct ts_sample samples[TSLIB_MAX_SAMPLES];
++ int index = 0;
++ int read_samples = 0;
+ int ret;
+
+ do {
+- /* fill only the last sample again */
+- if ( index >= 25 )
+- index = 24;
+-
++ /* do not access negative arrays */
++ if ( index < 0 )
++ index = 0;
++
+ /* we're opened non-blocking */
+- if((ret= ts_read_raw(m_ts, &samples[index], 1 ) ) != 1 ) {
++ if((ret= ts_read_raw(m_ts, &samples[index], 1 ) ) != 1 )
+ /* no event yet, so try again */
+- if (ret==-1 ) {
+- index--;
++ if (ret==-1 )
+ continue;
+- }
+- }
+- }while (samples[index++].pressure != 0);
++
++ read_samples++;
++ index = (index+1)%TSLIB_MAX_SAMPLES;
++ }while (samples[index == 0 ? (TSLIB_MAX_SAMPLES-1) : index-1].pressure != 0);
+
+ /*
+- * index is maximal 25 and we at least one sample
++ * If we've wrapped around each sample is used otherwise
++ * we will use the index
+ */
+- if( index >= 25 )
+- index = 24;
++ index = read_samples >= TSLIB_MAX_SAMPLES ?
++ (TSLIB_MAX_SAMPLES-1 ) : index;
+ int x, y;
+
+ /*
diff --git a/qt/qt-2.3.7.patch/qte237-0-vtswitch.patch b/qt/qt-2.3.10.patch/vt-switch.patch
index be2745c..4007a5d 100644
--- a/qt/qt-2.3.7.patch/qte237-0-vtswitch.patch
+++ b/qt/qt-2.3.10.patch/vt-switch.patch
@@ -1,205 +1,178 @@
#
# Patch managed by http://www.holgerschurig.de/patcher.html
#
---- qt-2.3.7/src/kernel/qapplication_qws.cpp~vt-switch.patch
-+++ qt-2.3.7/src/kernel/qapplication_qws.cpp
-@@ -123,6 +123,12 @@
+--- qt-2.3.9-snapshot-20041221/src/kernel/qapplication_qws.cpp~vt-switch.patch
++++ qt-2.3.9-snapshot-20041221/src/kernel/qapplication_qws.cpp
+@@ -124,6 +124,12 @@
static int qt_thread_pipe[2];
#endif
+#if defined(_OS_LINUX_)
+#include <sys/ioctl.h>
+#include <linux/vt.h>
+#include <linux/kd.h>
+#endif
+
const int qwsSharedRamSize = 32 * 1024; //Small amount to fit on small devices.
// These are in qapplication.cpp in qt/main
-@@ -163,6 +169,8 @@
+@@ -164,6 +170,8 @@
bool qws_accel = TRUE; // ### never set
const char *qws_display_spec = ":0";
int qws_display_id = 0;
+int qws_terminal_id = 0;
+int qws_terminal_old = 0;
int qws_client_id = 0;
QWidget *qt_pressGrab = 0;
QWidget *qt_mouseGrb = 0;
-@@ -1628,6 +1636,15 @@
+@@ -1700,6 +1708,15 @@
type = QApplication::GuiServer;
} else if ( arg == "-interlaced" ) {
qws_screen_is_interlaced = TRUE;
+ } else if ( arg == "-terminal" ) {
+ if ( ++i < argc )
+ {
+ if ( ( qws_terminal_id = atoi( argv[i] ) ) < 1 )
+ {
+ qWarning( "Ignoring Invalid Terminal Specification." );
+ qws_terminal_id = 0;
+ }
+ }
} else if ( arg == "-display" ) {
if ( ++i < argc )
qws_display_spec = argv[i];
-@@ -1652,6 +1669,53 @@
+@@ -1724,6 +1741,53 @@
if ( type == QApplication::GuiServer ) {
qt_appType = type;
qws_single_process = TRUE;
+
+ /* Allocate a dedicated virtual terminal -- (C) Michael 'Mickey' Lauer <mickey@tm.informatik.uni-frankfurt.de>
+ * Added a new command line option which only is relevant if the application is created as a GuiServer.
+ * The option is -terminal <num>, where <num> specifies the virtual terminal to be occupied by the server.
+ * As default in Linux, 0 means the current virtual terminal.
+ */
+ #if defined(_OS_LINUX_)
+ if ( qws_terminal_id )
+ {
+ qDebug( "qt_init() - terminal specification is '%d'.", qws_terminal_id );
+ struct vt_stat console_stat;
+ int console_fd = ::open( QString().sprintf( "/dev/tty%d", qws_terminal_id ).latin1(), O_RDWR );
+ if ( console_fd == -1)
+ {
+ qWarning( "qt_init() - can't open tty: %s", strerror( errno ) );
+ exit( -1 );
+ }
+ if ( ioctl( console_fd, VT_GETSTATE, &console_stat ) == -1 )
+ {
+ qWarning( "qt_init() - can't ioctl(VT_GETSTATE): %s", strerror( errno ) );
+ exit( -1 );
+ }
+ qws_terminal_old = console_stat.v_active;
+ qDebug( "qt_init() - active vt is #%d, switching to #%d as requested...", qws_terminal_old, qws_terminal_id );
+
+ if ( ioctl( console_fd, VT_ACTIVATE, qws_terminal_id ) == -1 )
+ {
+ qWarning( "qt_init() - can't ioctl(VT_ACTIVATE): %s", strerror( errno ) );
+ exit( -1 );
+ }
+ if ( ioctl( console_fd, VT_WAITACTIVE, qws_terminal_id ) == -1 )
+ {
+ qWarning( "qt_init() - can't ioctl(VT_WAITACTIVE): %s", strerror( errno ) );
+ exit( -1 );
+ }
+ if ( ioctl( console_fd, KDSETMODE, KD_GRAPHICS ) == -1 )
+ {
+ qWarning( "qt_init() - can't ioctl(KDSETMODE:KD_GRAPHICS): %s", strerror( errno ) );
+ exit( -1 );
+ }
+ ::close( console_fd );
+ }
+ else
+ {
+ qDebug( "QWSApplication::qt_init() - current terminal specified." );
+ }
+ #endif
QWSServer::startup(flags);
setenv("QWS_DISPLAY", qws_display_spec, 0);
}
-@@ -1702,7 +1766,36 @@
+@@ -1774,7 +1838,36 @@
QFontManager::cleanup();
if ( qws_single_process ) {
- QWSServer::closedown();
+ qDebug( "qt_cleanup() - shutting down QWSServer..." );
+#ifndef QT_NO_QWS_KEYBOARD
+ if ( qwsServer )
+ qwsServer->closeKeyboard();
+#endif
+ QWSServer::closedown();
+#if defined(_OS_LINUX_)
+ if ( qws_terminal_old > 0 )
+ {
+ qDebug( "qt_cleanup() - switching back to virtual terminal #%d", qws_terminal_old );
+
+ int console_fd = ::open( "/dev/tty0", O_RDWR );
+ if ( console_fd == -1)
+ {
+ qWarning( "qt_init() - can't open tty: %s", strerror( errno ) );
+ }
+ else
+ {
+ if ( ioctl( console_fd, KDSETMODE, KD_TEXT ) == -1 )
+ {
+ qWarning( "qt_init() - can't ioctl(KDSETMODE:KD_TEXT): %s", strerror( errno ) );
+ }
+ if ( ioctl( console_fd, VT_ACTIVATE, qws_terminal_old ) == -1 )
+ {
+ qWarning( "qt_init() - can't ioctl(VT_ACTIVATE): %s", strerror( errno ) );
+ }
+ ::close( console_fd );
+ }
+ }
+#endif
}
if ( qt_is_gui_used ) {
delete qt_fbdpy;
-@@ -2584,7 +2677,7 @@
- if ( !widget ) { // don't know this window
- if ( !QWidget::mouseGrabber()
- #ifndef QT_NO_QWS_MANAGER
-- && !QWSManager::grabbedMouse()
-+ && !QWSManager::grabbedMouse()
- #endif
- ) {
- qt_last_cursor = 0xffffffff; // cursor can be changed by another application
-@@ -3394,7 +3487,7 @@
- #ifndef QT_NO_QWS_IM
- if ( mouse.state&button && w != QInputContext::microFocusWidget() ) //button press
- QInputContext::reset( oldFocus );
--#endif
-+#endif
- QFocusEvent::setReason( QFocusEvent::Mouse);
- w->setFocus();
- QFocusEvent::resetReason();
-@@ -3540,7 +3633,7 @@
- QApplication::sendEvent( widget, &enter );
- (*mouseInWidget) = widget;
- #ifndef QT_NO_QWS_IM
-- if ( e.type() == QEvent::MouseButtonPress &&
-+ if ( e.type() == QEvent::MouseButtonPress &&
- !widget->testWFlags( Qt::WStyle_Tool ) &&
- !widget->topLevelWidget()->testWFlags( Qt::WStyle_Tool ) )
- QInputContext::reset( oldFocus );
---- qt-2.3.7/src/kernel/qkeyboard_qws.cpp~vt-switch.patch
-+++ qt-2.3.7/src/kernel/qkeyboard_qws.cpp
-@@ -1068,6 +1068,24 @@
+--- qt-2.3.9-snapshot-20041221/src/kernel/qkeyboard_qws.cpp~vt-switch.patch
++++ qt-2.3.9-snapshot-20041221/src/kernel/qkeyboard_qws.cpp
+@@ -1247,6 +1247,24 @@
{
if (kbdFD >= 0)
{
+
+#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
+ struct vt_mode vtMode;
+ ioctl(kbdFD, VT_GETMODE, &vtMode);
+
+ /* Mickey says: "Better give up control of VT switching.
+ * Hey, I really hate that OS-will-reacquire-resources on process-death
+ * kind of thinking!
+ */
+ vtMode.mode = VT_AUTO;
+ vtMode.relsig = 0;
+ vtMode.acqsig = 0;
+ ioctl(kbdFD, VT_SETMODE, &vtMode);
+
+ signal(VTSWITCHSIG, 0);
+ qDebug( "~QWSTtyKeyboardHandler() - released VT." );
+#endif
+
#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
ioctl(kbdFD, KDSKBMODE, K_XLATE);
#endif
---- qt-2.3.7/src/kernel/qgfxlinuxfb_qws.cpp~vt-switch.patch
-+++ qt-2.3.7/src/kernel/qgfxlinuxfb_qws.cpp
+--- qt-2.3.9-snapshot-20041221/src/kernel/qgfxlinuxfb_qws.cpp~vt-switch.patch
++++ qt-2.3.9-snapshot-20041221/src/kernel/qgfxlinuxfb_qws.cpp
@@ -251,9 +251,9 @@
bool QLinuxFbScreen::initDevice()
{
- // No blankin' screen, no blinkin' cursor!, no cursor!
+ /* Setting up the VT parameters is done in qapplication_qws.cpp
const char termctl[]="\033[9;0]\033[?33l\033[?25l";
- writeTerm(termctl,sizeof(termctl));
+ writeTerm(termctl,sizeof(termctl)); */
// Grab current mode so we can reset it
fb_var_screeninfo vinfo;
diff --git a/qt/qt-2.3.5.patch/qte235-all.patch b/qt/qt-2.3.5.patch/qte235-all.patch
deleted file mode 100644
index 9b58dbe..0000000
--- a/qt/qt-2.3.5.patch/qte235-all.patch
+++ b/dev/null
@@ -1,450 +0,0 @@
-diff -ru qt-2.3.5_fresh/include/qapplication.h qt-2.3.5/include/qapplication.h
---- qt-2.3.5_fresh/include/qapplication.h 2003-05-13 15:56:10.000000000 +0200
-+++ qt-2.3.5/include/qapplication.h 2003-05-13 15:58:18.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ru qt-2.3.5_fresh/include/qfontdatabase.h qt-2.3.5/include/qfontdatabase.h
---- qt-2.3.5_fresh/include/qfontdatabase.h 2003-05-13 15:56:11.000000000 +0200
-+++ qt-2.3.5/include/qfontdatabase.h 2003-05-13 15:58:18.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -ru qt-2.3.5_fresh/src/kernel/qapplication.cpp qt-2.3.5/src/kernel/qapplication.cpp
---- qt-2.3.5_fresh/src/kernel/qapplication.cpp 2003-05-13 15:56:10.000000000 +0200
-+++ qt-2.3.5/src/kernel/qapplication.cpp 2003-05-13 15:58:19.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -933,11 +935,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -958,6 +965,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1184,13 +1193,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1275,6 +1301,12 @@
- void QApplication::setFont( const QFont &font, bool informWidgets,
- const char* className )
- {
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
- bool all = FALSE;
- if ( !className ) {
- if ( !app_font ) {
-Nur in qt-2.3.5/src/kernel: qapplication.cpp.orig.
-diff -ru qt-2.3.5_fresh/src/kernel/qapplication.h qt-2.3.5/src/kernel/qapplication.h
---- qt-2.3.5_fresh/src/kernel/qapplication.h 2003-05-13 15:56:10.000000000 +0200
-+++ qt-2.3.5/src/kernel/qapplication.h 2003-05-13 15:58:18.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ru qt-2.3.5_fresh/src/kernel/qapplication_qws.cpp qt-2.3.5/src/kernel/qapplication_qws.cpp
---- qt-2.3.5_fresh/src/kernel/qapplication_qws.cpp 2003-05-13 15:56:10.000000000 +0200
-+++ qt-2.3.5/src/kernel/qapplication_qws.cpp 2003-05-13 15:58:18.000000000 +0200
-@@ -2737,6 +2737,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
-Nur in qt-2.3.5/src/kernel: qapplication_qws.cpp.orig.
-diff -ru qt-2.3.5_fresh/src/kernel/qfontdatabase.cpp qt-2.3.5/src/kernel/qfontdatabase.cpp
---- qt-2.3.5_fresh/src/kernel/qfontdatabase.cpp 2003-05-13 15:56:11.000000000 +0200
-+++ qt-2.3.5/src/kernel/qfontdatabase.cpp 2003-05-13 15:58:18.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2424,6 +2426,13 @@
- const QString &style,
- const QString &charSet )
- {
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
- QString cs( charSet );
- if ( charSet.isEmpty() ) {
- QStringList lst = charSets( family );
-diff -ru qt-2.3.5_fresh/src/kernel/qfontdatabase.h qt-2.3.5/src/kernel/qfontdatabase.h
---- qt-2.3.5_fresh/src/kernel/qfontdatabase.h 2003-05-13 15:56:11.000000000 +0200
-+++ qt-2.3.5/src/kernel/qfontdatabase.h 2003-05-13 15:58:18.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -ru qt-2.3.5_fresh/src/kernel/qgfxraster_qws.cpp qt-2.3.5/src/kernel/qgfxraster_qws.cpp
---- qt-2.3.5_fresh/src/kernel/qgfxraster_qws.cpp 2003-05-13 15:56:11.000000000 +0200
-+++ qt-2.3.5/src/kernel/qgfxraster_qws.cpp 2003-05-13 15:58:18.000000000 +0200
-@@ -4205,7 +4205,7 @@
- setAlphaType(IgnoreAlpha);
- if ( w <= 0 || h <= 0 || !ncliprect ) return;
- GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
--#ifdef QWS_EXPERIMENTAL_FASTPATH
-+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
- // ### fix for 8bpp
- // This seems to be reliable now, at least for 16bpp
-
-Nur in qt-2.3.5/src/kernel: qgfxraster_qws.cpp.orig.
-diff -ru qt-2.3.5_fresh/src/kernel/qwindowsystem_qws.cpp qt-2.3.5/src/kernel/qwindowsystem_qws.cpp
---- qt-2.3.5_fresh/src/kernel/qwindowsystem_qws.cpp 2003-05-13 15:56:11.000000000 +0200
-+++ qt-2.3.5/src/kernel/qwindowsystem_qws.cpp 2003-05-13 15:58:19.000000000 +0200
-@@ -843,6 +843,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
-@@ -912,6 +924,7 @@
- }
-
- signal(SIGPIPE, ignoreSignal); //we get it when we read
-+ signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash
- #endif
- focusw = 0;
- mouseGrabber = 0;
-diff -ru qt-2.3.5_fresh/src/Makefile.in qt-2.3.5/src/Makefile.in
---- qt-2.3.5_fresh/src/Makefile.in 2003-05-13 15:56:13.000000000 +0200
-+++ qt-2.3.5/src/Makefile.in 2003-05-13 15:58:18.000000000 +0200
-@@ -6,7 +6,7 @@
- CXXFLAGS= $(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS_X11) $(SYSCONF_CXXFLAGS) $(SYSCONF_CXXFLAGS_LIB) -DQT_NO_IMAGEIO_MNG $(QT_CXXFLAGS_OPT)
- CC = $(SYSCONF_CC) $(QT_C_MT)
- CFLAGS = $(SYSCONF_CFLAGS) $(SYSCONF_CFLAGS_LIB) -DQT_NO_IMAGEIO_MNG $(QT_CFLAGS_OPT)
--INCPATH = -I3rdparty/freetype/src -I3rdparty/freetype/include -I3rdparty/freetype/builds/unix -I3rdparty/kernel -I3rdparty/tools
-+INCPATH = -I3rdparty/kernel -I3rdparty/tools
- LFLAGS = $(SYSCONF_LFLAGS) $(QT_LFLAGS_MT)
- LIBS = $(SUBLIBS) $(SYSCONF_LIBS_QTLIB)
- MOC = $(SYSCONF_MOC)
-@@ -44,26 +44,7 @@
- 3rdparty/freetype/src/type1/type1.c \
- 3rdparty/freetype/src/winfonts/winfnt.c \
- allmoc.cpp
--OBJECTS = 3rdparty/freetype/builds/unix/ftsystem.o \
-- 3rdparty/freetype/src/base/ftdebug.o \
-- 3rdparty/freetype/src/base/ftinit.o \
-- 3rdparty/freetype/src/base/ftbase.o \
-- 3rdparty/freetype/src/base/ftglyph.o \
-- 3rdparty/freetype/src/base/ftmm.o \
-- 3rdparty/freetype/src/base/ftbbox.o \
-- 3rdparty/freetype/src/autohint/autohint.o \
-- 3rdparty/freetype/src/cache/ftcache.o \
-- 3rdparty/freetype/src/cff/cff.o \
-- 3rdparty/freetype/src/cid/type1cid.o \
-- 3rdparty/freetype/src/psaux/psaux.o \
-- 3rdparty/freetype/src/psnames/psmodule.o \
-- 3rdparty/freetype/src/raster/raster.o \
-- 3rdparty/freetype/src/sfnt/sfnt.o \
-- 3rdparty/freetype/src/smooth/smooth.o \
-- 3rdparty/freetype/src/truetype/truetype.o \
-- 3rdparty/freetype/src/type1/type1.o \
-- 3rdparty/freetype/src/winfonts/winfnt.o \
-- allmoc.o $(QT_MODULE_OBJ)
-+OBJECTS = allmoc.o $(QT_MODULE_OBJ)
- INTERFACES =
- UICDECLS =
- UICIMPLS =
-diff -ru qt-2.3.5_fresh/src/widgets/qcommonstyle.cpp qt-2.3.5/src/widgets/qcommonstyle.cpp
---- qt-2.3.5_fresh/src/widgets/qcommonstyle.cpp 2003-05-13 15:56:12.000000000 +0200
-+++ qt-2.3.5/src/widgets/qcommonstyle.cpp 2003-05-13 15:58:19.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);
-Nur in qt-2.3.5/src/widgets: qcommonstyle.cpp.orig.
-diff -ru qt-2.3.5_fresh/src/widgets/qlistview.cpp qt-2.3.5/src/widgets/qlistview.cpp
---- qt-2.3.5_fresh/src/widgets/qlistview.cpp 2003-05-13 15:56:12.000000000 +0200
-+++ qt-2.3.5/src/widgets/qlistview.cpp 2003-05-13 15:58:18.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 -ru qt-2.3.5_fresh/src/widgets/qtoolbutton.cpp qt-2.3.5/src/widgets/qtoolbutton.cpp
---- qt-2.3.5_fresh/src/widgets/qtoolbutton.cpp 2003-05-13 15:56:12.000000000 +0200
-+++ qt-2.3.5/src/widgets/qtoolbutton.cpp 2003-05-13 15:58:18.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 --git a/qt/qt-2.3.7.patch/qte237-adjustsizes.patch b/qt/qt-2.3.7.patch/qte237-adjustsizes.patch
deleted file mode 100644
index ac1e31a..0000000
--- a/qt/qt-2.3.7.patch/qte237-adjustsizes.patch
+++ b/dev/null
@@ -1,64 +0,0 @@
-Qt was not created for 240x320 and we adjust some default values to be more
-sane for the usage on handhelds
-
-
-
-
-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/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 --git a/qt/qt-2.3.7.patch/qte237-all-macosx.patch b/qt/qt-2.3.7.patch/qte237-all-macosx.patch
deleted file mode 100644
index 8e42396..0000000
--- a/qt/qt-2.3.7.patch/qte237-all-macosx.patch
+++ b/dev/null
@@ -1,1262 +0,0 @@
-Binary files qt-2.3.7/bin/moc and qte-2.3.7/bin/moc differ
-Binary files qt-2.3.7/bin/uic and qte-2.3.7/bin/uic differ
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/configs/darwin-generic-g++-shared qte-2.3.7/configs/darwin-generic-g++-shared
---- qt-2.3.7/configs/darwin-generic-g++-shared Thu Jan 1 01:00:00 1970
-+++ qte-2.3.7/configs/darwin-generic-g++-shared Mon Oct 27 14:27:25 2003
-@@ -0,0 +1,98 @@
-+# Compiling
-+INTERFACE_DECL_PATH = .
-+SYSCONF_CXX = g++
-+SYSCONF_CC = gcc
-+DASHCROSS =
-+
-+# Compiling with support libraries
-+SYSCONF_CXXFLAGS_X11 = -I/usr/X11R6/include
-+SYSCONF_CXXFLAGS_QT = -I$(QTDIR)/include
-+SYSCONF_CXXFLAGS_QTOPIA = -I$(QPEDIR)/include
-+SYSCONF_CXXFLAGS_OPENGL = -I/usr/X11R6/include
-+
-+# Compiling YACC output
-+SYSCONF_CXXFLAGS_YACC = -Wno-unused -Wno-parentheses
-+
-+# Linking with support libraries
-+SYSCONF_RPATH_X11 = -L/usr/X11R6/lib
-+SYSCONF_RPATH_QT = -L$(QTDIR)/lib
-+SYSCONF_RPATH_QTOPIA = -L$(QPEDIR)/lib
-+SYSCONF_RPATH_OPENGL = -L/usr/X11R6/lib
-+
-+# Linking with support libraries
-+# X11
-+SYSCONF_LFLAGS_X11 = -L/usr/X11R6/lib
-+SYSCONF_LIBS_X11 =
-+# Qt, Qt+OpenGL
-+SYSCONF_LFLAGS_QT = -L$(QTDIR)/lib
-+SYSCONF_LFLAGS_QTOPIA = -L$(QPEDIR)/lib
-+SYSCONF_LIBS_QT = -lqte$(QT_THREAD_SUFFIX)
-+SYSCONF_LIBS_QT_OPENGL =
-+SYSCONF_LIBS_QTOPIA = -lqtopia
-+# OpenGL
-+SYSCONF_LFLAGS_OPENGL = -L/usr/X11R6/lib
-+SYSCONF_LIBS_OPENGL = -lGLU -lGL -lXmu
-+# Yacc
-+SYSCONF_LIBS_YACC =
-+
-+# Linking applications
-+SYSCONF_LINK = g++
-+SYSCONF_LFLAGS =
-+SYSCONF_LIBS =
-+
-+# Link flags for shared objects
-+SYSCONF_LFLAGS_SHOBJ = -dynamiclib
-+
-+# Flags for threading
-+SYSCONF_CFLAGS_THREAD = -pthread -D_THREAD_SAFE
-+SYSCONF_CXXFLAGS_THREAD = -pthread -D_THREAD_SAFE
-+SYSCONF_LFLAGS_THREAD = -pthread
-+SYSCONF_LIBS_THREAD =
-+
-+# Meta-object compiler
-+SYSCONF_MOC = $(QTDIR)/bin/moc
-+
-+# UI compiler
-+SYSCONF_UIC = $(QTDIR)/bin/uic
-+
-+# Linking shared libraries
-+# - Build the $(TARGET) library, eg. lib$(TARGET).so.2.2.2
-+# - Place target in $(DESTDIR) - which has a trailing /
-+# - Usually needs to incorporate $(VER_MAJ), $(VER_MIN) and $(VER_PATCH)
-+#
-+SYSCONF_LINK_SHLIB = g++
-+SYSCONF_LINK_TARGET_SHARED = lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN).$(VER_PATCH)
-+SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) -dynamiclib \
-+ $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \
-+ $(OBJECTS) $(OBJMOC) $(LIBS) && \
-+ mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \
-+ cd $(DESTDIR) && \
-+ rm -f lib$(TARGET).dylib lib$(TARGET).dylib.$(VER_MAJ) lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN); \
-+ ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib; \
-+ ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib.$(VER_MAJ); \
-+ ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN)
-+
-+# Linking static libraries
-+# - Build the $(TARGET) library, eg. lib$(TARGET).a
-+# - Place target in $(DESTDIR) - which has a trailing /
-+#
-+SYSCONF_AR = ar cqs
-+SYSCONF_LINK_TARGET_STATIC = lib$(TARGET).a
-+SYSCONF_LINK_LIB_STATIC = rm -f $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) ; \
-+ $(SYSCONF_AR) $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS) $(OBJMOC)
-+# Compiling application source
-+SYSCONF_CXXFLAGS = -pipe -fno-exceptions -DQWS -fno-rtti -fno-exceptions -DQT_NO_QWS_LINUXFB -DQT_NO_QWS_TRANSFORMED -O0 -Wall -W -DNO_DEBUG
-+SYSCONF_CFLAGS = -pipe -fno-exceptions -O2 -Wall -W
-+# Default link type (static linking is still be used where required)
-+SYSCONF_LINK_LIB = $(SYSCONF_LINK_LIB_SHARED)
-+SYSCONF_LINK_TARGET = $(SYSCONF_LINK_TARGET_SHARED)
-+# Compiling library source
-+SYSCONF_CXXFLAGS_LIB = -fPIC
-+SYSCONF_CFLAGS_LIB = -fPIC
-+# Compiling shared-object source
-+SYSCONF_CXXFLAGS_SHOBJ = -fPIC
-+SYSCONF_CFLAGS_SHOBJ = -fPIC
-+# Linking Qt
-+SYSCONF_LIBS_QTLIB = $(SYSCONF_LFLAGS_X11) $(QT_LIBS_MT) $(QT_LIBS_OPT)
-+# Linking Qt applications
-+SYSCONF_LIBS_QTAPP =
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/include/qapplication.h qte-2.3.7/include/qapplication.h
---- qt-2.3.7/include/qapplication.h Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/include/qapplication.h Mon Oct 27 14:21:28 2003
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/include/qconfig-qpe.h qte-2.3.7/include/qconfig-qpe.h
---- qt-2.3.7/include/qconfig-qpe.h Thu Jan 1 01:00:00 1970
-+++ qte-2.3.7/include/qconfig-qpe.h Sun Dec 14 12:48:43 2003
-@@ -0,0 +1,100 @@
-+/**********************************************************************
-+** Copyright (C) 2000 Trolltech AS. All rights reserved.
-+**
-+** This file is part of Qtopia Environment.
-+**
-+** This file may be distributed and/or modified under the terms of the
-+** GNU General Public License version 2 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.GPL included in the
-+** packaging of this file.
-+**
-+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** See http://www.trolltech.com/gpl/ for GPL licensing information.
-+**
-+** Contact info@trolltech.com if any conditions of this licensing are
-+** not clear to you.
-+**
-+**********************************************************************/
-+#ifndef QT_H
-+#endif // QT_H
-+
-+// Empty leaves all features enabled. See doc/html/features.html for choices.
-+
-+// Note that disabling some features will produce a libqt that is not
-+// compatible with other libqt builds. Such modifications are only
-+// supported on Qt/Embedded where reducing the library size is important
-+// and where the application-suite is often a fixed set.
-+
-+#ifndef QT_DLL
-+#define QT_DLL // Internal
-+#endif
-+
-+#if defined(QT_QWS_IPAQ) || defined(QT_QWS_CASSIOPEIA) || defined(QT_QWS_SL5XXX)
-+# define QT_NO_QWS_CURSOR
-+# define QT_NO_QWS_MOUSE_AUTO
-+#endif
-+#ifndef QT_NO_CODECS
-+#define QT_NO_CODECS
-+#endif
-+#define QT_NO_UNICODETABLES
-+//#define QT_NO_IMAGEIO_BMP
-+#define QT_NO_IMAGEIO_PPM
-+//#define QT_NO_ASYNC_IO
-+//#define QT_NO_ASYNC_IMAGE_IO
-+#define QT_NO_FREETYPE
-+#define QT_NO_BDF
-+//#define QT_NO_FONTDATABASE
-+#define QT_NO_DRAGANDDROP
-+//#define QT_NO_CLIPBOARD
-+#define QT_NO_PROPERTIES
-+#define QT_NO_NETWORKPROTOCOL
-+
-+#define QT_NO_IMAGE_TEXT
-+
-+//#define QT_NO_TOOLTIP
-+#define QT_NO_COLORNAMES
-+#define QT_NO_TRANSFORMATIONS
-+#define QT_NO_TRANSLATION_BUILDER
-+#define QT_NO_COMPLEXTEXT
-+#define QT_NO_PRINTER
-+#define QT_NO_PICTURE
-+//#define QT_NO_ICONVIEW
-+#define QT_NO_DIAL
-+#define QT_NO_SIZEGRIP
-+#define QT_NO_WORKSPACE
-+//#define QT_NO_TABLE
-+//#define QT_NO_ACTION
-+//#define QT_NO_SETTINGS
-+#define QT_NO_STYLE_POCKETPC
-+#ifndef QT_NO_STYLE_AQUA
-+# define QT_NO_STYLE_AQUA
-+#endif
-+#define QT_NO_STYLE_MOTIF
-+#define QT_NO_STYLE_PLATINUM
-+#define QT_NO_FILEDIALOG
-+#define QT_NO_FONTDIALOG
-+#define QT_NO_PRINTDIALOG
-+#define QT_NO_COLORDIALOG
-+#define QT_NO_INPUTDIALOG
-+//#define QT_NO_MESSAGEBOX
-+#define QT_NO_PROGRESSDIALOG
-+//#define QT_NO_TABDIALOG
-+#define QT_NO_WIZARD
-+#define QT_NO_EFFECTS
-+//#define QT_NO_COMPONENT
-+#define QT_NO_DOM
-+#define QT_NO_SEMIMODAL
-+//#define QT_NO_PROGRESSBAR
-+#define QT_NO_SPLITTER
-+
-+//#define QT_NO_QWS_SAVEFONTS
-+//#define QT_NO_QWS_PROPERTIES
-+
-+#define QT_NO_QWS_BEOS_WM_STYLE
-+#define QT_NO_QWS_KDE2_WM_STYLE
-+#define QT_NO_QWS_KDE_WM_STYLE
-+#define QT_NO_QWS_WINDOWS_WM_STYLE
-+
-+#define QT_NO_SOUND
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/include/qconfig.h qte-2.3.7/include/qconfig.h
---- qt-2.3.7/include/qconfig.h Fri Jan 26 14:43:06 2001
-+++ qte-2.3.7/include/qconfig.h Thu Dec 11 12:54:20 2003
-@@ -1,3 +1,26 @@
-+// Copied from qconfig-qpe.h
-+/**********************************************************************
-+** Copyright (C) 2000 Trolltech AS. All rights reserved.
-+**
-+** This file is part of Qtopia Environment.
-+**
-+** This file may be distributed and/or modified under the terms of the
-+** GNU General Public License version 2 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.GPL included in the
-+** packaging of this file.
-+**
-+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** See http://www.trolltech.com/gpl/ for GPL licensing information.
-+**
-+** Contact info@trolltech.com if any conditions of this licensing are
-+** not clear to you.
-+**
-+**********************************************************************/
-+#ifndef QT_H
-+#endif // QT_H
-+
- // Empty leaves all features enabled. See doc/html/features.html for choices.
-
- // Note that disabling some features will produce a libqt that is not
-@@ -8,3 +31,71 @@
- #ifndef QT_DLL
- #define QT_DLL // Internal
- #endif
-+
-+#if defined(QT_QWS_IPAQ) || defined(QT_QWS_CASSIOPEIA) || defined(QT_QWS_SL5XXX)
-+# define QT_NO_QWS_CURSOR
-+# define QT_NO_QWS_MOUSE_AUTO
-+#endif
-+#ifndef QT_NO_CODECS
-+#define QT_NO_CODECS
-+#endif
-+#define QT_NO_UNICODETABLES
-+//#define QT_NO_IMAGEIO_BMP
-+#define QT_NO_IMAGEIO_PPM
-+//#define QT_NO_ASYNC_IO
-+//#define QT_NO_ASYNC_IMAGE_IO
-+#define QT_NO_FREETYPE
-+#define QT_NO_BDF
-+//#define QT_NO_FONTDATABASE
-+#define QT_NO_DRAGANDDROP
-+//#define QT_NO_CLIPBOARD
-+#define QT_NO_PROPERTIES
-+#define QT_NO_NETWORKPROTOCOL
-+
-+#define QT_NO_IMAGE_TEXT
-+
-+//#define QT_NO_TOOLTIP
-+#define QT_NO_COLORNAMES
-+#define QT_NO_TRANSFORMATIONS
-+#define QT_NO_TRANSLATION_BUILDER
-+#define QT_NO_COMPLEXTEXT
-+#define QT_NO_PRINTER
-+#define QT_NO_PICTURE
-+//#define QT_NO_ICONVIEW
-+#define QT_NO_DIAL
-+#define QT_NO_SIZEGRIP
-+#define QT_NO_WORKSPACE
-+//#define QT_NO_TABLE
-+//#define QT_NO_ACTION
-+//#define QT_NO_SETTINGS
-+#define QT_NO_STYLE_POCKETPC
-+#ifndef QT_NO_STYLE_AQUA
-+# define QT_NO_STYLE_AQUA
-+#endif
-+#define QT_NO_STYLE_MOTIF
-+#define QT_NO_STYLE_PLATINUM
-+#define QT_NO_FILEDIALOG
-+#define QT_NO_FONTDIALOG
-+#define QT_NO_PRINTDIALOG
-+#define QT_NO_COLORDIALOG
-+#define QT_NO_INPUTDIALOG
-+//#define QT_NO_MESSAGEBOX
-+#define QT_NO_PROGRESSDIALOG
-+//#define QT_NO_TABDIALOG
-+#define QT_NO_WIZARD
-+#define QT_NO_EFFECTS
-+//#define QT_NO_COMPONENT
-+#define QT_NO_DOM
-+#define QT_NO_SEMIMODAL
-+//#define QT_NO_PROGRESSBAR
-+#define QT_NO_SPLITTER
-+
-+//#define QT_NO_QWS_SAVEFONTS
-+//#define QT_NO_QWS_PROPERTIES
-+
-+#define QT_NO_QWS_BEOS_WM_STYLE
-+#define QT_NO_QWS_KDE2_WM_STYLE
-+#define QT_NO_QWS_KDE_WM_STYLE
-+#define QT_NO_QWS_WINDOWS_WM_STYLE
-+
-+#define QT_NO_SOUND
-\ No newline at end of file
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/include/qfontdatabase.h qte-2.3.7/include/qfontdatabase.h
---- qt-2.3.7/include/qfontdatabase.h Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/include/qfontdatabase.h Mon Oct 27 14:21:28 2003
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/include/qgifimageformat_p.h qte-2.3.7/include/qgifimageformat_p.h
---- qt-2.3.7/include/qgifimageformat_p.h Thu Jul 17 03:20:24 2003
-+++ qte-2.3.7/include/qgifimageformat_p.h Thu Jan 1 01:00:00 1970
-@@ -1,56 +0,0 @@
--/****************************************************************************
--** $Id$
--**
--** Implementation of gif image/movie loading classes
--**
--** Created : 970617
--**
--** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
--**
--** This file is part of the kernel module of the Qt GUI Toolkit.
--**
--** This file may be distributed under the terms of the Q Public License
--** as defined by Trolltech AS of Norway and appearing in the file
--** LICENSE.QPL included in the packaging of this file.
--**
--** This file may be distributed and/or modified under the terms of the
--** GNU General Public License version 2 as published by the Free Software
--** Foundation and appearing in the file LICENSE.GPL included in the
--** packaging of this file.
--**
--** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
--** licenses may use this file in accordance with the Qt Commercial License
--** Agreement provided with the Software.
--**
--** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
--** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
--**
--** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
--** information about Qt Commercial License Agreements.
--** See http://www.trolltech.com/qpl/ for QPL licensing information.
--** See http://www.trolltech.com/gpl/ for GPL licensing information.
--**
--** Contact info@trolltech.com if any conditions of this licensing are
--** not clear to you.
--**
--**********************************************************************/
--
--#ifndef QT_H
--#include "qasyncimageio.h"
--#include "qgif.h"
--#endif // QT_H
--
--#ifndef QT_NO_ASYNC_IMAGE_IO
--
--// See qgif.h for important information regarding this option
--#if defined(QT_BUILTIN_GIF_READER) && QT_BUILTIN_GIF_READER == 1
--
--class Q_EXPORT QGIFFormatType : public QImageFormatType
--{
-- QImageFormat* decoderFor(const uchar* buffer, int length);
-- const char* formatName() const;
--};
--
--#endif // QT_BUILTIN_GIF_READER
--
--#endif // QT_NO_ASYNC_IMAGE_IO
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/include/qmodules.h qte-2.3.7/include/qmodules.h
---- qt-2.3.7/include/qmodules.h Fri Aug 31 17:00:56 2001
-+++ qte-2.3.7/include/qmodules.h Thu Dec 11 12:53:57 2003
-@@ -1,14 +1,12 @@
--#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
-+#define QT_MODULE_OPENGL
-Binary files qt-2.3.7/lib/libqte.dylib and qte-2.3.7/lib/libqte.dylib differ
-Binary files qt-2.3.7/lib/libqte.dylib.2 and qte-2.3.7/lib/libqte.dylib.2 differ
-Binary files qt-2.3.7/lib/libqte.dylib.2.3 and qte-2.3.7/lib/libqte.dylib.2.3 differ
-Binary files qt-2.3.7/lib/libqte.dylib.2.3.7 and qte-2.3.7/lib/libqte.dylib.2.3.7 differ
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qapplication.cpp qte-2.3.7/src/kernel/qapplication.cpp
---- qt-2.3.7/src/kernel/qapplication.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qapplication.cpp Mon Oct 27 14:21:28 2003
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -933,11 +935,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -958,6 +965,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1184,13 +1193,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1273,6 +1299,12 @@
- */
-
- void QApplication::setFont( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
- const char* className )
- {
- bool all = FALSE;
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qapplication.h qte-2.3.7/src/kernel/qapplication.h
---- qt-2.3.7/src/kernel/qapplication.h Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qapplication.h Mon Oct 27 14:21:28 2003
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qapplication_qws.cpp qte-2.3.7/src/kernel/qapplication_qws.cpp
---- qt-2.3.7/src/kernel/qapplication_qws.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qapplication_qws.cpp Mon Oct 27 14:21:28 2003
-@@ -2804,6 +2804,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qfontdatabase.cpp qte-2.3.7/src/kernel/qfontdatabase.cpp
---- qt-2.3.7/src/kernel/qfontdatabase.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qfontdatabase.cpp Mon Oct 27 14:21:28 2003
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2421,6 +2423,13 @@
- */
-
- QValueList<int> QFontDatabase::pointSizes( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
- const QString &style,
- const QString &charSet )
- {
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qfontdatabase.h qte-2.3.7/src/kernel/qfontdatabase.h
---- qt-2.3.7/src/kernel/qfontdatabase.h Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qfontdatabase.h Mon Oct 27 14:21:28 2003
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qgfx_qws.cpp qte-2.3.7/src/kernel/qgfx_qws.cpp
---- qt-2.3.7/src/kernel/qgfx_qws.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qgfx_qws.cpp Mon Oct 27 14:27:25 2003
-@@ -32,7 +32,7 @@
- #include "qgfx_qws.h"
-
- #include <stdio.h>
--#include <dlfcn.h>
-+//#include <dlfcn.h>
- #include <sys/types.h>
- #include <dirent.h>
- #include <stdlib.h>
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qgfxraster_qws.cpp qte-2.3.7/src/kernel/qgfxraster_qws.cpp
---- qt-2.3.7/src/kernel/qgfxraster_qws.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qgfxraster_qws.cpp Mon Oct 27 14:27:25 2003
-@@ -75,7 +75,11 @@
- # if __BYTE_ORDER == __BIG_ENDIAN
- # define QWS_BIG_ENDIAN
- # endif
-+#elif defined(__APPLE__)
-+# define QWS_BIG_ENDIAN
- #endif
-+// AJ: the above (test for __APPLE__) is very hacky, but I can't
-+// think of something better at the moment.
-
- // Pull this private function in from qglobal.cpp
- extern unsigned int qt_int_sqrt( unsigned int n );
-@@ -3770,6 +3774,19 @@
- b = srcval & 0xff;
-
- unsigned char * tmp=(unsigned char *)&alphabuf[loopc];
-+# ifdef QWS_BIG_ENDIAN
-+ if(av==255) {
-+ // Do nothing - we already have source values in r,g,b
-+ } else if(av==0) {
-+ r = *(tmp+1);
-+ g = *(tmp+2);
-+ b = *(tmp+3);
-+ } else {
-+ r = ((r-*(tmp+1)) * av) / 256 + *(tmp+1);
-+ g = ((g-*(tmp+2)) * av) / 256 + *(tmp+2);
-+ b = ((b-*(tmp+3)) * av) / 256 + *(tmp+3);
-+ }
-+# else
- if(av==255) {
- // Do nothing - we already have source values in r,g,b
- } else if(av==0) {
-@@ -3781,6 +3798,7 @@
- g = ((g-*(tmp+1)) * av) / 256 + *(tmp+1);
- b = ((b-*(tmp+0)) * av) / 256 + *(tmp+0);
- }
-+# endif
- *(alphaptr++) = (r << 16) | (g << 8) | b;
- }
-
-@@ -4204,7 +4222,7 @@
-
- } else if ( depth == 1 ) {
- if (srctype==SourceImage) {
-- static int warn;
-+ static int warn = 0;
- if ( warn++ < 5 )
- qDebug( "bitmap alpha-image not implemented" );
- hImageLineUnclipped( x1, x2, l, srcdata, FALSE );
-@@ -4237,7 +4255,7 @@
- setAlphaType(IgnoreAlpha);
- if ( w <= 0 || h <= 0 || !ncliprect ) return;
- GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
--#ifdef QWS_EXPERIMENTAL_FASTPATH
-+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
- // ### fix for 8bpp
- // This seems to be reliable now, at least for 16bpp
-
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qkeyboard_qws.cpp qte-2.3.7/src/kernel/qkeyboard_qws.cpp
---- qt-2.3.7/src/kernel/qkeyboard_qws.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qkeyboard_qws.cpp Mon Oct 27 14:42:11 2003
-@@ -69,7 +69,7 @@
- #if !defined(_OS_QNX6_)
-
- #include <termios.h>
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- #include <sys/kd.h>
- #include <sys/vt.h>
- #endif
-@@ -468,10 +468,12 @@
- void QWSPC101KeyboardHandler::restoreLeds()
- {
- char leds;
-+#if !defined(_OS_MACX_)
- ioctl(0, KDGETLED, &leds);
- leds = leds & ~LED_CAP;
- if ( caps ) leds |= LED_CAP;
- ioctl(0, KDSETLED, leds);
-+#endif
- }
-
- class QWSTtyKeyboardHandler : public QWSPC101KeyboardHandler
-@@ -547,7 +549,7 @@
-
- static void vtSwitchHandler(int /*sig*/)
- {
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- if (vtActive) {
- qwsServer->enablePainting(false);
- qt_screen->save();
-@@ -880,7 +882,7 @@
- if (term && !release) {
- ctrl = false;
- alt = false;
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- ioctl(kbdFD, VT_ACTIVATE, term);
- #endif
- return;
-@@ -1031,7 +1033,7 @@
- struct termios termdata;
- tcgetattr( kbdFD, &termdata );
-
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- ioctl(kbdFD, KDSKBMODE, K_RAW);
- #endif
-
-@@ -1047,7 +1049,7 @@
-
- signal(VTSWITCHSIG, vtSwitchHandler);
-
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- struct vt_mode vtMode;
- ioctl(kbdFD, VT_GETMODE, &vtMode);
-
-@@ -1068,7 +1070,7 @@
- {
- if (kbdFD >= 0)
- {
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- ioctl(kbdFD, KDSKBMODE, K_XLATE);
- #endif
- tcsetattr(kbdFD, TCSANOW, &origTermData);
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qkeyboard_qws.cpp.rej qte-2.3.7/src/kernel/qkeyboard_qws.cpp.rej
---- qt-2.3.7/src/kernel/qkeyboard_qws.cpp.rej Thu Jan 1 01:00:00 1970
-+++ qte-2.3.7/src/kernel/qkeyboard_qws.cpp.rej Mon Oct 27 14:27:25 2003
-@@ -0,0 +1,34 @@
-+***************
-+*** 1023,1029 ****
-+ struct termios termdata;
-+ tcgetattr( kbdFD, &termdata );
-+
-+- #if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+ ioctl(kbdFD, KDSKBMODE, K_RAW);
-+ #endif
-+
-+--- 1023,1029 ----
-+ struct termios termdata;
-+ tcgetattr( kbdFD, &termdata );
-+
-++ #if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+ ioctl(kbdFD, KDSKBMODE, K_RAW);
-+ #endif
-+
-+***************
-+*** 1039,1045 ****
-+
-+ signal(VTSWITCHSIG, vtSwitchHandler);
-+
-+- #if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+ struct vt_mode vtMode;
-+ ioctl(kbdFD, VT_GETMODE, &vtMode);
-+
-+--- 1039,1045 ----
-+
-+ signal(VTSWITCHSIG, vtSwitchHandler);
-+
-++ #if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+ struct vt_mode vtMode;
-+ ioctl(kbdFD, VT_GETMODE, &vtMode);
-+
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qlock_qws.cpp qte-2.3.7/src/kernel/qlock_qws.cpp
---- qt-2.3.7/src/kernel/qlock_qws.cpp Thu Jul 17 03:20:25 2003
-+++ qte-2.3.7/src/kernel/qlock_qws.cpp Mon Oct 27 14:27:25 2003
-@@ -38,7 +38,7 @@
- #include <errno.h>
-
- #if defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED) \
-- || defined _OS_FREEBSD_
-+ || defined(_OS_FREEBSD_) || defined(_OS_MACX_)
- /* union semun is defined by including <sys/sem.h> */
- #else
- /* according to X/OPEN we have to define it ourselves */
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qwindowsystem_qws.cpp qte-2.3.7/src/kernel/qwindowsystem_qws.cpp
---- qt-2.3.7/src/kernel/qwindowsystem_qws.cpp Thu Jul 17 03:20:26 2003
-+++ qte-2.3.7/src/kernel/qwindowsystem_qws.cpp Mon Oct 27 14:27:25 2003
-@@ -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;
-@@ -950,7 +963,7 @@
-
- #ifndef QT_NO_QWS_MULTIPROCESS
- if ( !geteuid() ) {
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- if( mount(0, "/var/shm", "shm", 0, 0) ) {
- /* This just confuses people with 2.2 kernels
- if ( errno != EBUSY )
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/kernel/qwsmouse_qws.cpp qte-2.3.7/src/kernel/qwsmouse_qws.cpp
---- qt-2.3.7/src/kernel/qwsmouse_qws.cpp Thu Jul 17 03:20:26 2003
-+++ qte-2.3.7/src/kernel/qwsmouse_qws.cpp Mon Oct 27 14:27:25 2003
-@@ -336,7 +336,7 @@
- tty.c_oflag = 0;
- tty.c_lflag = 0;
- tty.c_cflag = f | CREAD | CLOCAL | HUPCL;
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- tty.c_line = 0;
- #endif
- tty.c_cc[VTIME] = 0;
-@@ -889,7 +889,7 @@
- tty.c_iflag = IGNBRK | IGNPAR;
- tty.c_oflag = 0;
- tty.c_lflag = 0;
--#if !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
-+#if !defined(_OS_MACX_) && !defined(_OS_FREEBSD_) && !defined(_OS_SOLARIS_)
- tty.c_line = 0;
- #endif // _OS_FREEBSD_
- tty.c_cc[VTIME] = 0;
-Binary files qt-2.3.7/src/moc/moc and qte-2.3.7/src/moc/moc differ
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/network/qdns.cpp qte-2.3.7/src/network/qdns.cpp
---- qt-2.3.7/src/network/qdns.cpp Thu Jul 17 03:20:26 2003
-+++ qte-2.3.7/src/network/qdns.cpp Sun Nov 16 13:44:27 2003
-@@ -1991,7 +1991,7 @@
- domains = new QStrList( TRUE );
- domains->setAutoDelete( TRUE );
-
-- res_init();
-+ // res_init(); (eilers: Caused link problems)
- int i;
- // find the name servers to use
- for( i=0; i < MAXNS && i < _res.nscount; i++ ) {
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/tools/qconfig-qpe.h qte-2.3.7/src/tools/qconfig-qpe.h
---- qt-2.3.7/src/tools/qconfig-qpe.h Thu Jan 1 01:00:00 1970
-+++ qte-2.3.7/src/tools/qconfig-qpe.h Sun Dec 14 12:48:43 2003
-@@ -0,0 +1,100 @@
-+/**********************************************************************
-+** Copyright (C) 2000 Trolltech AS. All rights reserved.
-+**
-+** This file is part of Qtopia Environment.
-+**
-+** This file may be distributed and/or modified under the terms of the
-+** GNU General Public License version 2 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.GPL included in the
-+** packaging of this file.
-+**
-+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** See http://www.trolltech.com/gpl/ for GPL licensing information.
-+**
-+** Contact info@trolltech.com if any conditions of this licensing are
-+** not clear to you.
-+**
-+**********************************************************************/
-+#ifndef QT_H
-+#endif // QT_H
-+
-+// Empty leaves all features enabled. See doc/html/features.html for choices.
-+
-+// Note that disabling some features will produce a libqt that is not
-+// compatible with other libqt builds. Such modifications are only
-+// supported on Qt/Embedded where reducing the library size is important
-+// and where the application-suite is often a fixed set.
-+
-+#ifndef QT_DLL
-+#define QT_DLL // Internal
-+#endif
-+
-+#if defined(QT_QWS_IPAQ) || defined(QT_QWS_CASSIOPEIA) || defined(QT_QWS_SL5XXX)
-+# define QT_NO_QWS_CURSOR
-+# define QT_NO_QWS_MOUSE_AUTO
-+#endif
-+#ifndef QT_NO_CODECS
-+#define QT_NO_CODECS
-+#endif
-+#define QT_NO_UNICODETABLES
-+//#define QT_NO_IMAGEIO_BMP
-+#define QT_NO_IMAGEIO_PPM
-+//#define QT_NO_ASYNC_IO
-+//#define QT_NO_ASYNC_IMAGE_IO
-+#define QT_NO_FREETYPE
-+#define QT_NO_BDF
-+//#define QT_NO_FONTDATABASE
-+#define QT_NO_DRAGANDDROP
-+//#define QT_NO_CLIPBOARD
-+#define QT_NO_PROPERTIES
-+#define QT_NO_NETWORKPROTOCOL
-+
-+#define QT_NO_IMAGE_TEXT
-+
-+//#define QT_NO_TOOLTIP
-+#define QT_NO_COLORNAMES
-+#define QT_NO_TRANSFORMATIONS
-+#define QT_NO_TRANSLATION_BUILDER
-+#define QT_NO_COMPLEXTEXT
-+#define QT_NO_PRINTER
-+#define QT_NO_PICTURE
-+//#define QT_NO_ICONVIEW
-+#define QT_NO_DIAL
-+#define QT_NO_SIZEGRIP
-+#define QT_NO_WORKSPACE
-+//#define QT_NO_TABLE
-+//#define QT_NO_ACTION
-+//#define QT_NO_SETTINGS
-+#define QT_NO_STYLE_POCKETPC
-+#ifndef QT_NO_STYLE_AQUA
-+# define QT_NO_STYLE_AQUA
-+#endif
-+#define QT_NO_STYLE_MOTIF
-+#define QT_NO_STYLE_PLATINUM
-+#define QT_NO_FILEDIALOG
-+#define QT_NO_FONTDIALOG
-+#define QT_NO_PRINTDIALOG
-+#define QT_NO_COLORDIALOG
-+#define QT_NO_INPUTDIALOG
-+//#define QT_NO_MESSAGEBOX
-+#define QT_NO_PROGRESSDIALOG
-+//#define QT_NO_TABDIALOG
-+#define QT_NO_WIZARD
-+#define QT_NO_EFFECTS
-+//#define QT_NO_COMPONENT
-+#define QT_NO_DOM
-+#define QT_NO_SEMIMODAL
-+//#define QT_NO_PROGRESSBAR
-+#define QT_NO_SPLITTER
-+
-+//#define QT_NO_QWS_SAVEFONTS
-+//#define QT_NO_QWS_PROPERTIES
-+
-+#define QT_NO_QWS_BEOS_WM_STYLE
-+#define QT_NO_QWS_KDE2_WM_STYLE
-+#define QT_NO_QWS_KDE_WM_STYLE
-+#define QT_NO_QWS_WINDOWS_WM_STYLE
-+
-+#define QT_NO_SOUND
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/tools/qconfig.h qte-2.3.7/src/tools/qconfig.h
---- qt-2.3.7/src/tools/qconfig.h Fri Jan 26 14:43:06 2001
-+++ qte-2.3.7/src/tools/qconfig.h Thu Dec 11 12:54:20 2003
-@@ -1,3 +1,26 @@
-+// Copied from qconfig-qpe.h
-+/**********************************************************************
-+** Copyright (C) 2000 Trolltech AS. All rights reserved.
-+**
-+** This file is part of Qtopia Environment.
-+**
-+** This file may be distributed and/or modified under the terms of the
-+** GNU General Public License version 2 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.GPL included in the
-+** packaging of this file.
-+**
-+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** See http://www.trolltech.com/gpl/ for GPL licensing information.
-+**
-+** Contact info@trolltech.com if any conditions of this licensing are
-+** not clear to you.
-+**
-+**********************************************************************/
-+#ifndef QT_H
-+#endif // QT_H
-+
- // Empty leaves all features enabled. See doc/html/features.html for choices.
-
- // Note that disabling some features will produce a libqt that is not
-@@ -8,3 +31,71 @@
- #ifndef QT_DLL
- #define QT_DLL // Internal
- #endif
-+
-+#if defined(QT_QWS_IPAQ) || defined(QT_QWS_CASSIOPEIA) || defined(QT_QWS_SL5XXX)
-+# define QT_NO_QWS_CURSOR
-+# define QT_NO_QWS_MOUSE_AUTO
-+#endif
-+#ifndef QT_NO_CODECS
-+#define QT_NO_CODECS
-+#endif
-+#define QT_NO_UNICODETABLES
-+//#define QT_NO_IMAGEIO_BMP
-+#define QT_NO_IMAGEIO_PPM
-+//#define QT_NO_ASYNC_IO
-+//#define QT_NO_ASYNC_IMAGE_IO
-+#define QT_NO_FREETYPE
-+#define QT_NO_BDF
-+//#define QT_NO_FONTDATABASE
-+#define QT_NO_DRAGANDDROP
-+//#define QT_NO_CLIPBOARD
-+#define QT_NO_PROPERTIES
-+#define QT_NO_NETWORKPROTOCOL
-+
-+#define QT_NO_IMAGE_TEXT
-+
-+//#define QT_NO_TOOLTIP
-+#define QT_NO_COLORNAMES
-+#define QT_NO_TRANSFORMATIONS
-+#define QT_NO_TRANSLATION_BUILDER
-+#define QT_NO_COMPLEXTEXT
-+#define QT_NO_PRINTER
-+#define QT_NO_PICTURE
-+//#define QT_NO_ICONVIEW
-+#define QT_NO_DIAL
-+#define QT_NO_SIZEGRIP
-+#define QT_NO_WORKSPACE
-+//#define QT_NO_TABLE
-+//#define QT_NO_ACTION
-+//#define QT_NO_SETTINGS
-+#define QT_NO_STYLE_POCKETPC
-+#ifndef QT_NO_STYLE_AQUA
-+# define QT_NO_STYLE_AQUA
-+#endif
-+#define QT_NO_STYLE_MOTIF
-+#define QT_NO_STYLE_PLATINUM
-+#define QT_NO_FILEDIALOG
-+#define QT_NO_FONTDIALOG
-+#define QT_NO_PRINTDIALOG
-+#define QT_NO_COLORDIALOG
-+#define QT_NO_INPUTDIALOG
-+//#define QT_NO_MESSAGEBOX
-+#define QT_NO_PROGRESSDIALOG
-+//#define QT_NO_TABDIALOG
-+#define QT_NO_WIZARD
-+#define QT_NO_EFFECTS
-+//#define QT_NO_COMPONENT
-+#define QT_NO_DOM
-+#define QT_NO_SEMIMODAL
-+//#define QT_NO_PROGRESSBAR
-+#define QT_NO_SPLITTER
-+
-+//#define QT_NO_QWS_SAVEFONTS
-+//#define QT_NO_QWS_PROPERTIES
-+
-+#define QT_NO_QWS_BEOS_WM_STYLE
-+#define QT_NO_QWS_KDE2_WM_STYLE
-+#define QT_NO_QWS_KDE_WM_STYLE
-+#define QT_NO_QWS_WINDOWS_WM_STYLE
-+
-+#define QT_NO_SOUND
-\ No newline at end of file
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/tools/qmodules.h qte-2.3.7/src/tools/qmodules.h
---- qt-2.3.7/src/tools/qmodules.h Fri Aug 31 17:00:56 2001
-+++ qte-2.3.7/src/tools/qmodules.h Thu Dec 11 12:53:57 2003
-@@ -1,14 +1,12 @@
--#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
-+#define QT_MODULE_OPENGL
-diff -uNr --exclude-from=./diff_ignore qt-2.3.7/src/widgets/qcommonstyle.cpp qte-2.3.7/src/widgets/qcommonstyle.cpp
---- qt-2.3.7/src/widgets/qcommonstyle.cpp Thu Jul 17 03:20:26 2003
-+++ qte-2.3.7/src/widgets/qcommonstyle.cpp Mon Oct 27 14:21:28 2003
-@@ -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 -uNr --exclude-from=./diff_ignore qt-2.3.7/src/widgets/qlistview.cpp qte-2.3.7/src/widgets/qlistview.cpp
---- qt-2.3.7/src/widgets/qlistview.cpp Thu Jul 17 03:20:26 2003
-+++ qte-2.3.7/src/widgets/qlistview.cpp Mon Oct 27 14:21:28 2003
-@@ -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 -uNr --exclude-from=./diff_ignore qt-2.3.7/src/widgets/qtoolbutton.cpp qte-2.3.7/src/widgets/qtoolbutton.cpp
---- qt-2.3.7/src/widgets/qtoolbutton.cpp Thu Jul 17 03:20:27 2003
-+++ qte-2.3.7/src/widgets/qtoolbutton.cpp Mon Oct 27 14:21:28 2003
-@@ -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 -uNr --exclude-from=./diff_ignore qt-2.3.7/src-mt.mk qte-2.3.7/src-mt.mk
---- qt-2.3.7/src-mt.mk Thu Jan 1 01:00:00 1970
-+++ qte-2.3.7/src-mt.mk Thu Dec 11 12:53:57 2003
-@@ -0,0 +1,2 @@
-+all:
-+ @echo "(not building threaded Qt)"
diff --git a/qt/qt-2.3.7.patch/qte237-all.patch b/qt/qt-2.3.7.patch/qte237-all.patch
deleted file mode 100644
index 307e558..0000000
--- a/qt/qt-2.3.7.patch/qte237-all.patch
+++ b/dev/null
@@ -1,1463 +0,0 @@
-
-
-Included patches:
-
-qte237-allowoverride.patch
-qte237-g++-aslinker.patch
-qte237-iconviewspeed.patch
-qte237-adjustsizes.patch
-qte237-encoding.patch
-qte237-keyboard.patch
-qte237-gcc34.patch
-qte237-lefthand.patch
-
-
-
-
-
-
-
-
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-shared qt-2.3.7/configs/linux-generic-g++-shared
---- qt-2.3.7-old/configs/linux-generic-g++-shared 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-shared 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-shared-debug qt-2.3.7/configs/linux-generic-g++-shared-debug
---- qt-2.3.7-old/configs/linux-generic-g++-shared-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-shared-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-static qt-2.3.7/configs/linux-generic-g++-static
---- qt-2.3.7-old/configs/linux-generic-g++-static 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-static 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-static-debug qt-2.3.7/configs/linux-generic-g++-static-debug
---- qt-2.3.7-old/configs/linux-generic-g++-static-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-static-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-shared qt-2.3.7/configs/linux-generic_rtti-g++-shared
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-shared 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-shared 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-shared-debug qt-2.3.7/configs/linux-generic_rtti-g++-shared-debug
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-shared-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-shared-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-static qt-2.3.7/configs/linux-generic_rtti-g++-static
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-static 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-static 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-static-debug qt-2.3.7/configs/linux-generic_rtti-g++-static-debug
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-static-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-static-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-shared qt-2.3.7/configs/linux-x86rtti-g++-shared
---- qt-2.3.7-old/configs/linux-x86rtti-g++-shared 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-shared 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-shared-debug qt-2.3.7/configs/linux-x86rtti-g++-shared-debug
---- qt-2.3.7-old/configs/linux-x86rtti-g++-shared-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-shared-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-static qt-2.3.7/configs/linux-x86rtti-g++-static
---- qt-2.3.7-old/configs/linux-x86rtti-g++-static 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-static 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-static-debug qt-2.3.7/configs/linux-x86rtti-g++-static-debug
---- qt-2.3.7-old/configs/linux-x86rtti-g++-static-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-static-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/include/qapplication.h qt-2.3.7/include/qapplication.h
---- qt-2.3.7-old/include/qapplication.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/qapplication.h 2004-07-23 15:25:42.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ur qt-2.3.7-old/include/qcstring.h qt-2.3.7/include/qcstring.h
---- qt-2.3.7-old/include/qcstring.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/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/include/qfontdatabase.h qt-2.3.7/include/qfontdatabase.h
---- qt-2.3.7-old/include/qfontdatabase.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/qfontdatabase.h 2004-07-23 15:25:42.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -ur qt-2.3.7-old/include/qglobal.h qt-2.3.7/include/qglobal.h
---- qt-2.3.7-old/include/qglobal.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/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/include/qiconview.h qt-2.3.7/include/qiconview.h
---- qt-2.3.7-old/include/qiconview.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/qiconview.h 2004-07-23 15:45:34.000000000 +0200
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
-diff -ur qt-2.3.7-old/include/qsortedlist.h qt-2.3.7/include/qsortedlist.h
---- qt-2.3.7-old/include/qsortedlist.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/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/include/qstring.h qt-2.3.7/include/qstring.h
---- qt-2.3.7-old/include/qstring.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/include/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/iconview/qiconview.cpp qt-2.3.7/src/iconview/qiconview.cpp
---- qt-2.3.7-old/src/iconview/qiconview.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/iconview/qiconview.cpp 2004-07-23 15:45:34.000000000 +0200
-@@ -220,6 +220,7 @@
- QIconView::SelectionMode selectionMode;
- QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
- QRect *rubber;
-+ QPixmap *backBuffer;
- QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
- *fullRedrawTimer;
- int rastX, rastY, spacing;
-@@ -2263,6 +2264,7 @@
- d->currentItem = 0;
- d->highlightedItem = 0;
- d->rubber = 0;
-+ d->backBuffer = 0;
- d->scrollTimer = 0;
- d->startDragItem = 0;
- d->tmpCurrentItem = 0;
-@@ -2411,6 +2413,8 @@
- delete item;
- item = tmp;
- }
-+ delete d->backBuffer;
-+ d->backBuffer = 0;
- delete d->fm;
- d->fm = 0;
- #ifndef QT_NO_TOOLTIP
-@@ -2877,6 +2881,48 @@
- }
-
- /*!
-+ This function grabs all paintevents that otherwise would have been
-+ processed by the QScrollView::viewportPaintEvent(). Here we use a
-+ doublebuffer to reduce 'on-paint' flickering on QIconView
-+ (and of course its childs).
-+
-+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
-+*/
-+
-+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
-+{
-+ QWidget* vp = viewport();
-+ QRect r = pe->rect() & vp->rect();
-+ int ex = r.x() + contentsX();
-+ int ey = r.y() + contentsY();
-+ int ew = r.width();
-+ int eh = r.height();
-+
-+ if ( !d->backBuffer )
-+ d->backBuffer = new QPixmap(vp->size());
-+ if ( d->backBuffer->size() != vp->size() ) {
-+ //Resize function (with hysteesis). Uses a good compromise between memory
-+ //consumption and speed (number) of resizes.
-+ float newWidth = (float)vp->width();
-+ float newHeight = (float)vp->height();
-+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
-+ {
-+ newWidth *= 1.1892;
-+ newHeight *= 1.1892;
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ }
-+
-+ QPainter p;
-+ p.begin(d->backBuffer, vp);
-+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
-+ p.end();
-+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
-+}
-+
-+/*!
-+
- \reimp
- */
-
-@@ -4855,7 +4901,7 @@
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
- }
-- viewportPaintEvent( (QPaintEvent*)e );
-+ bufferedPaintEvent ((QPaintEvent*)e );
- if ( d->dragging ) {
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
-@@ -5286,11 +5332,19 @@
- return;
-
- if ( item->d->container1 && d->firstContainer ) {
-- item->d->container1->items.removeRef( item );
-+ //Special-case checking of the last item, since this may be
-+ //called a few times for the same item.
-+ if (item->d->container1->items.last() == item)
-+ item->d->container1->items.removeLast();
-+ else
-+ item->d->container1->items.removeRef( item );
- }
- item->d->container1 = 0;
- if ( item->d->container2 && d->firstContainer ) {
-- item->d->container2->items.removeRef( item );
-+ if (item->d->container2->items.last() == item)
-+ item->d->container2->items.removeLast();
-+ else
-+ item->d->container2->items.removeRef( item );
- }
- item->d->container2 = 0;
-
-diff -ur qt-2.3.7-old/src/iconview/qiconview.h qt-2.3.7/src/iconview/qiconview.h
---- qt-2.3.7-old/src/iconview/qiconview.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/iconview/qiconview.h 2004-07-23 15:45:34.000000000 +0200
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
-diff -ur qt-2.3.7-old/src/kernel/qapplication.cpp qt-2.3.7/src/kernel/qapplication.cpp
---- qt-2.3.7-old/src/kernel/qapplication.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qapplication.cpp 2004-07-23 15:25:42.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -933,11 +935,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -958,6 +965,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1184,13 +1193,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1275,6 +1301,12 @@
- void QApplication::setFont( const QFont &font, bool informWidgets,
- const char* className )
- {
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
- bool all = FALSE;
- if ( !className ) {
- if ( !app_font ) {
-diff -ur qt-2.3.7-old/src/kernel/qapplication.h qt-2.3.7/src/kernel/qapplication.h
---- qt-2.3.7-old/src/kernel/qapplication.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qapplication.h 2004-07-23 15:25:42.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ur qt-2.3.7-old/src/kernel/qapplication_qws.cpp qt-2.3.7/src/kernel/qapplication_qws.cpp
---- qt-2.3.7-old/src/kernel/qapplication_qws.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qapplication_qws.cpp 2004-07-23 15:25:42.000000000 +0200
-@@ -2804,6 +2804,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
-diff -ur qt-2.3.7-old/src/kernel/qfontdatabase.cpp qt-2.3.7/src/kernel/qfontdatabase.cpp
---- qt-2.3.7-old/src/kernel/qfontdatabase.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qfontdatabase.cpp 2004-07-23 15:25:42.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2424,6 +2426,13 @@
- const QString &style,
- const QString &charSet )
- {
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
- QString cs( charSet );
- if ( charSet.isEmpty() ) {
- QStringList lst = charSets( family );
-diff -ur qt-2.3.7-old/src/kernel/qfontdatabase.h qt-2.3.7/src/kernel/qfontdatabase.h
---- qt-2.3.7-old/src/kernel/qfontdatabase.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qfontdatabase.h 2004-07-23 15:25:42.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-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-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qgfxtransformed_qws.cpp 2004-07-23 15:42:01.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-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-allowoverride.patch b/qt/qt-2.3.7.patch/qte237-allowoverride.patch
deleted file mode 100644
index e0629f6..0000000
--- a/qt/qt-2.3.7.patch/qte237-allowoverride.patch
+++ b/dev/null
@@ -1,229 +0,0 @@
-Qt2.3.5 -> Qt2.3.6 changed the meaning of point sizes they used
-to be multiplied with 10, some apps get confused by that and
-in Opie we allow to work around for specefic application
-
-Courtsey to Robert 'sandman' Griebl
-
-
-
-
-
-
-
-
-diff -ur qt-2.3.7-old/src/kernel/qapplication.cpp qt-2.3.7/src/kernel/qapplication.cpp
---- qt-2.3.7-old/src/kernel/qapplication.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qapplication.cpp 2004-07-23 15:25:42.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -933,11 +935,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -958,6 +965,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1184,13 +1193,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1275,6 +1301,12 @@
- void QApplication::setFont( const QFont &font, bool informWidgets,
- const char* className )
- {
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
- bool all = FALSE;
- if ( !className ) {
- if ( !app_font ) {
-diff -ur qt-2.3.7-old/src/kernel/qapplication.h qt-2.3.7/src/kernel/qapplication.h
---- qt-2.3.7-old/src/kernel/qapplication.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qapplication.h 2004-07-23 15:25:42.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ur qt-2.3.7-old/src/kernel/qapplication_qws.cpp qt-2.3.7/src/kernel/qapplication_qws.cpp
---- qt-2.3.7-old/src/kernel/qapplication_qws.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qapplication_qws.cpp 2004-07-23 15:25:42.000000000 +0200
-@@ -2804,6 +2804,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
-diff -ur qt-2.3.7-old/src/kernel/qfontdatabase.cpp qt-2.3.7/src/kernel/qfontdatabase.cpp
---- qt-2.3.7-old/src/kernel/qfontdatabase.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qfontdatabase.cpp 2004-07-23 15:25:42.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2424,6 +2426,13 @@
- const QString &style,
- const QString &charSet )
- {
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
- QString cs( charSet );
- if ( charSet.isEmpty() ) {
- QStringList lst = charSets( family );
-diff -ur qt-2.3.7-old/src/kernel/qfontdatabase.h qt-2.3.7/src/kernel/qfontdatabase.h
---- qt-2.3.7-old/src/kernel/qfontdatabase.h 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qfontdatabase.h 2004-07-23 15:25:42.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
diff --git a/qt/qt-2.3.7.patch/qte237-encoding.patch b/qt/qt-2.3.7.patch/qte237-encoding.patch
deleted file mode 100644
index c2f5c08..0000000
--- a/qt/qt-2.3.7.patch/qte237-encoding.patch
+++ b/dev/null
@@ -1,49 +0,0 @@
-German umlaute quite likely french, italian, spanish did
-not work due QFile::[decode,encode]Name did call QString
-local8Bit,fromLocal8Bit which plainly tried to use utf8
-encoding even if not useful. So a filename got changed
-and QFileInfo recognized the file not beeing present anymore...
-which lead to files not be shown.
-Also with Year-Names problem exists as the base system sent
-it encoded upstream.
-
-If you want to have UTF-8 encoding use LC_CTYPE as always and
-QTextCodec::codecForLocale will use the right UTF-8 encoding.
-
-As fallback the old behaviour was preserved
-
-
-
-
-
-
-
---- qt-2.3.7-old/src/tools/qstring.cpp 2004-07-23 14:33:02.000000000 +0200
-+++ qt-2.3.7/src/tools/qstring.cpp 2004-07-23 14:32:31.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 --git a/qt/qt-2.3.7.patch/qte237-g++-aslinker.patch b/qt/qt-2.3.7.patch/qte237-g++-aslinker.patch
deleted file mode 100644
index 1ae72e9..0000000
--- a/qt/qt-2.3.7.patch/qte237-g++-aslinker.patch
+++ b/dev/null
@@ -1,161 +0,0 @@
-GCC3 requires libstdc++ for virtual all C++ application
-linking with gcc would trigger unresolved symbols like
-new, delete, pure_virtual etc.
-
-This is the safe one which works with gcc2 and gcc3. If you do
-not want the stdc++ dependency link with gcc and add -lsupc++ to the
-library dependency
-
-
-
-
-
-
-
-
-
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-shared qt-2.3.7/configs/linux-generic-g++-shared
---- qt-2.3.7-old/configs/linux-generic-g++-shared 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-shared 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-shared-debug qt-2.3.7/configs/linux-generic-g++-shared-debug
---- qt-2.3.7-old/configs/linux-generic-g++-shared-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-shared-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-static qt-2.3.7/configs/linux-generic-g++-static
---- qt-2.3.7-old/configs/linux-generic-g++-static 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-static 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic-g++-static-debug qt-2.3.7/configs/linux-generic-g++-static-debug
---- qt-2.3.7-old/configs/linux-generic-g++-static-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic-g++-static-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-shared qt-2.3.7/configs/linux-generic_rtti-g++-shared
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-shared 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-shared 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-shared-debug qt-2.3.7/configs/linux-generic_rtti-g++-shared-debug
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-shared-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-shared-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-static qt-2.3.7/configs/linux-generic_rtti-g++-static
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-static 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-static 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-generic_rtti-g++-static-debug qt-2.3.7/configs/linux-generic_rtti-g++-static-debug
---- qt-2.3.7-old/configs/linux-generic_rtti-g++-static-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-generic_rtti-g++-static-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS =
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-shared qt-2.3.7/configs/linux-x86rtti-g++-shared
---- qt-2.3.7-old/configs/linux-x86rtti-g++-shared 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-shared 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-shared-debug qt-2.3.7/configs/linux-x86rtti-g++-shared-debug
---- qt-2.3.7-old/configs/linux-x86rtti-g++-shared-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-shared-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-static qt-2.3.7/configs/linux-x86rtti-g++-static
---- qt-2.3.7-old/configs/linux-x86rtti-g++-static 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-static 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
-diff -ur qt-2.3.7-old/configs/linux-x86rtti-g++-static-debug qt-2.3.7/configs/linux-x86rtti-g++-static-debug
---- qt-2.3.7-old/configs/linux-x86rtti-g++-static-debug 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/configs/linux-x86rtti-g++-static-debug 2004-07-23 15:23:12.000000000 +0200
-@@ -36,7 +36,7 @@
- SYSCONF_LIBS_YACC =
-
- # Linking applications
--SYSCONF_LINK = gcc
-+SYSCONF_LINK = g++
- SYSCONF_LFLAGS =
- SYSCONF_LIBS = -lm
-
diff --git a/qt/qt-2.3.7.patch/qte237-gcc34.patch b/qt/qt-2.3.7.patch/qte237-gcc34.patch
deleted file mode 100644
index a7f1681..0000000
--- a/qt/qt-2.3.7.patch/qte237-gcc34.patch
+++ b/dev/null
@@ -1,510 +0,0 @@
-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 * );
diff --git a/qt/qt-2.3.7.patch/qte237-hancomwordcrash.patch b/qt/qt-2.3.7.patch/qte237-hancomwordcrash.patch
deleted file mode 100644
index f5b26ea..0000000
--- a/qt/qt-2.3.7.patch/qte237-hancomwordcrash.patch
+++ b/dev/null
@@ -1,14 +0,0 @@
-Not included in the ALL patch
-
-
---- qt-2.3.7-old/src/kernel/qgfxraster_qws.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/kernel/qgfxraster_qws.cpp 2004-07-23 15:29:16.000000000 +0200
-@@ -4237,7 +4237,7 @@
- setAlphaType(IgnoreAlpha);
- if ( w <= 0 || h <= 0 || !ncliprect ) return;
- GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
--#ifdef QWS_EXPERIMENTAL_FASTPATH
-+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
- // ### fix for 8bpp
- // This seems to be reliable now, at least for 16bpp
-
diff --git a/qt/qt-2.3.7.patch/qte237-keyboard.patch b/qt/qt-2.3.7.patch/qte237-keyboard.patch
deleted file mode 100644
index b644fd7..0000000
--- a/qt/qt-2.3.7.patch/qte237-keyboard.patch
+++ b/dev/null
@@ -1,43 +0,0 @@
-Free the Virtual Terminal and Keyboard on a segfault in all cases...
-
-
---- 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;
---- 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 --git a/qt/qt-2.3.7.patch/qte237-lefthand.patch b/qt/qt-2.3.7.patch/qte237-lefthand.patch
deleted file mode 100644
index 1287430..0000000
--- a/qt/qt-2.3.7.patch/qte237-lefthand.patch
+++ b/dev/null
@@ -1,133 +0,0 @@
-Backport of the LeftHand patch from Qt2.3.8
-
-Puts Scrollbar on the left for people using the right hand
-to hold the devices
-
-
-
-diff -u qt-2.3.7_orig/src/widgets/qscrollview.cpp qt-2.3.7/src/widgets/qscrollview.cpp
---- qt-2.3.7_orig/src/widgets/qscrollview.cpp 2004-06-13 20:42:54.000000000 +0200
-+++ qt-2.3.7/src/widgets/qscrollview.cpp 2004-06-13 20:45:16.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 );
-@@ -1675,7 +1686,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 --git a/qt/qt-2.3.8.patch/qte238-adjustsizes.patch b/qt/qt-2.3.8.patch/qte238-adjustsizes.patch
deleted file mode 100644
index b2a7f7e..0000000
--- a/qt/qt-2.3.8.patch/qte238-adjustsizes.patch
+++ b/dev/null
@@ -1,64 +0,0 @@
-Qt was not created for 240x320 and we adjust some default values to be more
-sane for the usage on handhelds
-
-
-diff -ur qt-2.3.8-old/src/widgets/qcommonstyle.cpp qt-2.3.8/src/widgets/qcommonstyle.cpp
---- qt-2.3.8-old/src/widgets/qcommonstyle.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qcommonstyle.cpp 2004-07-23 16:15:16.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.8-old/src/widgets/qlistview.cpp qt-2.3.8/src/widgets/qlistview.cpp
---- qt-2.3.8-old/src/widgets/qlistview.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qlistview.cpp 2004-07-23 16:15:16.000000000 +0200
-@@ -5054,9 +5054,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 );
-Nur in qt-2.3.8/src/widgets/: qlistview.cpp.orig.
-diff -ur qt-2.3.8-old/src/widgets/qtoolbutton.cpp qt-2.3.8/src/widgets/qtoolbutton.cpp
---- qt-2.3.8-old/src/widgets/qtoolbutton.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qtoolbutton.cpp 2004-07-23 16:15:16.000000000 +0200
-@@ -232,7 +232,7 @@
- else
- QToolTip::add( this, textLabel );
- }
--#endif
-+#endif
- }
-
-
-@@ -326,12 +326,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();
-Nur in qt-2.3.8/src/widgets/: qtoolbutton.cpp.orig.
diff --git a/qt/qt-2.3.8.patch/qte238-all.patch b/qt/qt-2.3.8.patch/qte238-all.patch
deleted file mode 100644
index 3266f78..0000000
--- a/qt/qt-2.3.8.patch/qte238-all.patch
+++ b/dev/null
@@ -1,1059 +0,0 @@
-diff -ur qt-2.3.8-old/include/qapplication.h qt-2.3.8/include/qapplication.h
---- qt-2.3.8-old/include/qapplication.h 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/include/qapplication.h 2004-07-23 19:08:46.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ur qt-2.3.8-old/include/qcstring.h qt-2.3.8/include/qcstring.h
---- qt-2.3.8-old/include/qcstring.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/include/qcstring.h 2004-07-23 19:09:55.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.8-old/include/qfontdatabase.h qt-2.3.8/include/qfontdatabase.h
---- qt-2.3.8-old/include/qfontdatabase.h 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/include/qfontdatabase.h 2004-07-23 19:08:46.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -ur qt-2.3.8-old/include/qglobal.h qt-2.3.8/include/qglobal.h
---- qt-2.3.8-old/include/qglobal.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/include/qglobal.h 2004-07-23 19:09:55.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.8-old/include/qiconview.h qt-2.3.8/include/qiconview.h
---- qt-2.3.8-old/include/qiconview.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/include/qiconview.h 2004-07-23 19:13:09.000000000 +0200
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
-diff -ur qt-2.3.8-old/include/qsortedlist.h qt-2.3.8/include/qsortedlist.h
---- qt-2.3.8-old/include/qsortedlist.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/include/qsortedlist.h 2004-07-23 19:09:55.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.8-old/include/qstring.h qt-2.3.8/include/qstring.h
---- qt-2.3.8-old/include/qstring.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/include/qstring.h 2004-07-23 19:09:55.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.8-old/src/iconview/qiconview.cpp qt-2.3.8/src/iconview/qiconview.cpp
---- qt-2.3.8-old/src/iconview/qiconview.cpp 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/iconview/qiconview.cpp 2004-07-23 19:13:09.000000000 +0200
-@@ -224,6 +224,7 @@
- QIconView::SelectionMode selectionMode;
- QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
- QRect *rubber;
-+ QPixmap *backBuffer;
- QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
- *fullRedrawTimer;
- int rastX, rastY, spacing;
-@@ -2267,6 +2268,7 @@
- d->currentItem = 0;
- d->highlightedItem = 0;
- d->rubber = 0;
-+ d->backBuffer = 0;
- d->scrollTimer = 0;
- d->startDragItem = 0;
- d->tmpCurrentItem = 0;
-@@ -2415,6 +2417,8 @@
- delete item;
- item = tmp;
- }
-+ delete d->backBuffer;
-+ d->backBuffer = 0;
- delete d->fm;
- d->fm = 0;
- #ifndef QT_NO_TOOLTIP
-@@ -2881,6 +2885,48 @@
- }
-
- /*!
-+ This function grabs all paintevents that otherwise would have been
-+ processed by the QScrollView::viewportPaintEvent(). Here we use a
-+ doublebuffer to reduce 'on-paint' flickering on QIconView
-+ (and of course its childs).
-+
-+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
-+*/
-+
-+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
-+{
-+ QWidget* vp = viewport();
-+ QRect r = pe->rect() & vp->rect();
-+ int ex = r.x() + contentsX();
-+ int ey = r.y() + contentsY();
-+ int ew = r.width();
-+ int eh = r.height();
-+
-+ if ( !d->backBuffer )
-+ d->backBuffer = new QPixmap(vp->size());
-+ if ( d->backBuffer->size() != vp->size() ) {
-+ //Resize function (with hysteesis). Uses a good compromise between memory
-+ //consumption and speed (number) of resizes.
-+ float newWidth = (float)vp->width();
-+ float newHeight = (float)vp->height();
-+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
-+ {
-+ newWidth *= 1.1892;
-+ newHeight *= 1.1892;
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ }
-+
-+ QPainter p;
-+ p.begin(d->backBuffer, vp);
-+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
-+ p.end();
-+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
-+}
-+
-+/*!
-+
- \reimp
- */
-
-@@ -4937,7 +4983,7 @@
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
- }
-- viewportPaintEvent( (QPaintEvent*)e );
-+ bufferedPaintEvent ((QPaintEvent*)e );
- if ( d->dragging ) {
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
-@@ -5374,11 +5420,19 @@
- return;
-
- if ( item->d->container1 && d->firstContainer ) {
-- item->d->container1->items.removeRef( item );
-+ //Special-case checking of the last item, since this may be
-+ //called a few times for the same item.
-+ if (item->d->container1->items.last() == item)
-+ item->d->container1->items.removeLast();
-+ else
-+ item->d->container1->items.removeRef( item );
- }
- item->d->container1 = 0;
- if ( item->d->container2 && d->firstContainer ) {
-- item->d->container2->items.removeRef( item );
-+ if (item->d->container2->items.last() == item)
-+ item->d->container2->items.removeLast();
-+ else
-+ item->d->container2->items.removeRef( item );
- }
- item->d->container2 = 0;
-
-Nur in qt-2.3.8/src/iconview: qiconview.cpp.orig.
-Nur in qt-2.3.8/src/iconview: qiconview.cpp.rej.
-diff -ur qt-2.3.8-old/src/iconview/qiconview.h qt-2.3.8/src/iconview/qiconview.h
---- qt-2.3.8-old/src/iconview/qiconview.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/iconview/qiconview.h 2004-07-23 19:13:09.000000000 +0200
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
-diff -ur qt-2.3.8-old/src/kernel/qapplication.cpp qt-2.3.8/src/kernel/qapplication.cpp
---- qt-2.3.8-old/src/kernel/qapplication.cpp 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/kernel/qapplication.cpp 2004-07-23 19:08:46.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -936,11 +938,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -961,6 +968,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1187,13 +1196,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1278,6 +1304,12 @@
- void QApplication::setFont( const QFont &font, bool informWidgets,
- const char* className )
- {
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
- bool all = FALSE;
- if ( !className ) {
- if ( !app_font ) {
-Nur in qt-2.3.8/src/kernel: qapplication.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qapplication.h qt-2.3.8/src/kernel/qapplication.h
---- qt-2.3.8-old/src/kernel/qapplication.h 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qapplication.h 2004-07-23 19:08:46.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ur qt-2.3.8-old/src/kernel/qapplication_qws.cpp qt-2.3.8/src/kernel/qapplication_qws.cpp
---- qt-2.3.8-old/src/kernel/qapplication_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qapplication_qws.cpp 2004-07-23 19:08:46.000000000 +0200
-@@ -2896,6 +2896,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
-Nur in qt-2.3.8/src/kernel: qapplication_qws.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qfontdatabase.cpp qt-2.3.8/src/kernel/qfontdatabase.cpp
---- qt-2.3.8-old/src/kernel/qfontdatabase.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qfontdatabase.cpp 2004-07-23 19:08:46.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2424,6 +2426,13 @@
- const QString &style,
- const QString &charSet )
- {
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
- QString cs( charSet );
- if ( charSet.isEmpty() ) {
- QStringList lst = charSets( family );
-diff -ur qt-2.3.8-old/src/kernel/qfontdatabase.h qt-2.3.8/src/kernel/qfontdatabase.h
---- qt-2.3.8-old/src/kernel/qfontdatabase.h 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qfontdatabase.h 2004-07-23 19:08:46.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
-diff -ur qt-2.3.8-old/src/kernel/qgfxraster_qws.cpp qt-2.3.8/src/kernel/qgfxraster_qws.cpp
---- qt-2.3.8-old/src/kernel/qgfxraster_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qgfxraster_qws.cpp 2004-07-23 19:10:03.000000000 +0200
-@@ -4400,7 +4400,7 @@
- setAlphaType(IgnoreAlpha);
- if ( w <= 0 || h <= 0 || !ncliprect ) return;
- GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
--#ifdef QWS_EXPERIMENTAL_FASTPATH
-+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
- // ### fix for 8bpp
- // This seems to be reliable now, at least for 16bpp
-
-Nur in qt-2.3.8/src/kernel: qgfxraster_qws.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qgfxtransformed_qws.cpp qt-2.3.8/src/kernel/qgfxtransformed_qws.cpp
---- qt-2.3.8-old/src/kernel/qgfxtransformed_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qgfxtransformed_qws.cpp 2004-07-23 19:09:55.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.8-old/src/kernel/qgfxvfb_qws.cpp qt-2.3.8/src/kernel/qgfxvfb_qws.cpp
---- qt-2.3.8-old/src/kernel/qgfxvfb_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qgfxvfb_qws.cpp 2004-07-23 19:09:55.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.8-old/src/kernel/qkeyboard_qws.cpp qt-2.3.8/src/kernel/qkeyboard_qws.cpp
---- qt-2.3.8-old/src/kernel/qkeyboard_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qkeyboard_qws.cpp 2004-07-23 19:15:51.000000000 +0200
-@@ -314,7 +314,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
-Nur in qt-2.3.8/src/kernel: qkeyboard_qws.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qwindowsystem_qws.cpp qt-2.3.8/src/kernel/qwindowsystem_qws.cpp
---- qt-2.3.8-old/src/kernel/qwindowsystem_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qwindowsystem_qws.cpp 2004-07-23 19:15:51.000000000 +0200
-@@ -1273,6 +1273,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
-@@ -1365,6 +1377,7 @@
- }
-
- signal(SIGPIPE, ignoreSignal); //we get it when we read
-+ signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash
- #endif
- focusw = 0;
- mouseGrabber = 0;
-Nur in qt-2.3.8/src/kernel: qwindowsystem_qws.cpp.orig.
-diff -ur qt-2.3.8-old/src/tools/qcstring.h qt-2.3.8/src/tools/qcstring.h
---- qt-2.3.8-old/src/tools/qcstring.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/tools/qcstring.h 2004-07-23 19:09:55.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.8-old/src/tools/qglobal.h qt-2.3.8/src/tools/qglobal.h
---- qt-2.3.8-old/src/tools/qglobal.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/tools/qglobal.h 2004-07-23 19:09:55.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.8-old/src/tools/qsortedlist.h qt-2.3.8/src/tools/qsortedlist.h
---- qt-2.3.8-old/src/tools/qsortedlist.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/tools/qsortedlist.h 2004-07-23 19:09:55.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.8-old/src/tools/qstring.cpp qt-2.3.8/src/tools/qstring.cpp
---- qt-2.3.8-old/src/tools/qstring.cpp 2004-07-23 14:34:57.000000000 +0200
-+++ qt-2.3.8/src/tools/qstring.cpp 2004-07-23 19:09:49.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.8-old/src/tools/qstring.h qt-2.3.8/src/tools/qstring.h
---- qt-2.3.8-old/src/tools/qstring.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/tools/qstring.h 2004-07-23 19:09:55.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.8-old/src/widgets/qcommonstyle.cpp qt-2.3.8/src/widgets/qcommonstyle.cpp
---- qt-2.3.8-old/src/widgets/qcommonstyle.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qcommonstyle.cpp 2004-07-23 16:15:16.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.8-old/src/widgets/qlistview.cpp qt-2.3.8/src/widgets/qlistview.cpp
---- qt-2.3.8-old/src/widgets/qlistview.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qlistview.cpp 2004-07-23 16:15:16.000000000 +0200
-@@ -5054,9 +5054,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 );
-Nur in qt-2.3.8/src/widgets: qlistview.cpp.orig.
-diff -ur qt-2.3.8-old/src/widgets/qscrollview.cpp qt-2.3.8/src/widgets/qscrollview.cpp
---- qt-2.3.8-old/src/widgets/qscrollview.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qscrollview.cpp 2004-07-23 19:21:06.000000000 +0200
-@@ -1280,6 +1280,9 @@
- case QEvent::LayoutHint:
- d->autoResizeHint(this);
- break;
-+ case QEvent::WindowActivate:
-+ case QEvent::WindowDeactivate:
-+ return TRUE;
- default:
- break;
- }
-diff -ur qt-2.3.8-old/src/widgets/qtoolbutton.cpp qt-2.3.8/src/widgets/qtoolbutton.cpp
---- qt-2.3.8-old/src/widgets/qtoolbutton.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qtoolbutton.cpp 2004-07-23 16:15:16.000000000 +0200
-@@ -232,7 +232,7 @@
- else
- QToolTip::add( this, textLabel );
- }
--#endif
-+#endif
- }
-
-
-@@ -326,12 +326,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();
-Nur in qt-2.3.8/src/widgets: qtoolbutton.cpp.orig.
diff --git a/qt/qt-2.3.8.patch/qte238-allowoverride.patch b/qt/qt-2.3.8.patch/qte238-allowoverride.patch
deleted file mode 100644
index 8a63710..0000000
--- a/qt/qt-2.3.8.patch/qte238-allowoverride.patch
+++ b/dev/null
@@ -1,231 +0,0 @@
-Qt2.3.5 -> Qt2.3.6 changed the meaning of point sizes they used
-to be multiplied with 10, some apps get confused by that and
-in Opie we allow to work around for specefic application
-
-Courtsey to Robert 'sandman' Griebl
-
-
-
-
-
-
-
-
-diff -ur qt-2.3.8-old/src/kernel/qapplication.cpp qt-2.3.8/src/kernel/qapplication.cpp
---- qt-2.3.8-old/src/kernel/qapplication.cpp 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/kernel/qapplication.cpp 2004-07-23 19:08:46.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -936,11 +938,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -961,6 +968,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1187,13 +1196,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1278,6 +1304,12 @@
- void QApplication::setFont( const QFont &font, bool informWidgets,
- const char* className )
- {
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
- bool all = FALSE;
- if ( !className ) {
- if ( !app_font ) {
-Nur in qt-2.3.8/src/kernel/: qapplication.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qapplication.h qt-2.3.8/src/kernel/qapplication.h
---- qt-2.3.8-old/src/kernel/qapplication.h 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qapplication.h 2004-07-23 19:08:46.000000000 +0200
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
-diff -ur qt-2.3.8-old/src/kernel/qapplication_qws.cpp qt-2.3.8/src/kernel/qapplication_qws.cpp
---- qt-2.3.8-old/src/kernel/qapplication_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qapplication_qws.cpp 2004-07-23 19:08:46.000000000 +0200
-@@ -2896,6 +2896,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
-Nur in qt-2.3.8/src/kernel/: qapplication_qws.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qfontdatabase.cpp qt-2.3.8/src/kernel/qfontdatabase.cpp
---- qt-2.3.8-old/src/kernel/qfontdatabase.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qfontdatabase.cpp 2004-07-23 19:08:46.000000000 +0200
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2424,6 +2426,13 @@
- const QString &style,
- const QString &charSet )
- {
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
- QString cs( charSet );
- if ( charSet.isEmpty() ) {
- QStringList lst = charSets( family );
-diff -ur qt-2.3.8-old/src/kernel/qfontdatabase.h qt-2.3.8/src/kernel/qfontdatabase.h
---- qt-2.3.8-old/src/kernel/qfontdatabase.h 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qfontdatabase.h 2004-07-23 19:08:46.000000000 +0200
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
diff --git a/qt/qt-2.3.8.patch/qte238-encoding.patch b/qt/qt-2.3.8.patch/qte238-encoding.patch
deleted file mode 100644
index 5ddb43c..0000000
--- a/qt/qt-2.3.8.patch/qte238-encoding.patch
+++ b/dev/null
@@ -1,49 +0,0 @@
-German umlaute quite likely french, italian, spanish did
-not work due QFile::[decode,encode]Name did call QString
-local8Bit,fromLocal8Bit which plainly tried to use utf8
-encoding even if not useful. So a filename got changed
-and QFileInfo recognized the file not beeing present anymore...
-which lead to files not be shown.
-Also with Year-Names problem exists as the base system sent
-it encoded upstream.
-
-If you want to have UTF-8 encoding use LC_CTYPE as always and
-QTextCodec::codecForLocale will use the right UTF-8 encoding.
-
-As fallback the old behaviour was preserved
-
-
-
-
-
-
-
---- qt-2.3.8-old/src/tools/qstring.cpp 2004-07-23 14:33:02.000000000 +0200
-+++ qt-2.3.8/src/tools/qstring.cpp 2004-07-23 14:32:31.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 --git a/qt/qt-2.3.8.patch/qte238-gcc34.patch b/qt/qt-2.3.8.patch/qte238-gcc34.patch
deleted file mode 100644
index 770740d..0000000
--- a/qt/qt-2.3.8.patch/qte238-gcc34.patch
+++ b/dev/null
@@ -1,440 +0,0 @@
-diff -ur qt-2.3.8_clean/include/qcstring.h qt-2.3.8/include/qcstring.h
---- qt-2.3.8_clean/include/qcstring.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/include/qcstring.h 2004-06-04 02:24:25.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.8_clean/include/qglobal.h qt-2.3.8/include/qglobal.h
---- qt-2.3.8_clean/include/qglobal.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/include/qglobal.h 2004-06-04 02:29:41.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.8_clean/include/qsortedlist.h qt-2.3.8/include/qsortedlist.h
---- qt-2.3.8_clean/include/qsortedlist.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/include/qsortedlist.h 2004-06-04 02:24:25.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.8_clean/src/kernel/qgfxtransformed_qws.cpp qt-2.3.8/src/kernel/qgfxtransformed_qws.cpp
---- qt-2.3.8_clean/src/kernel/qgfxtransformed_qws.cpp 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/src/kernel/qgfxtransformed_qws.cpp 2004-06-04 02:24:25.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.8_clean/src/kernel/qgfxvfb_qws.cpp qt-2.3.8/src/kernel/qgfxvfb_qws.cpp
---- qt-2.3.8_clean/src/kernel/qgfxvfb_qws.cpp 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/src/kernel/qgfxvfb_qws.cpp 2004-06-04 02:24:25.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.8_clean/src/tools/qcstring.h qt-2.3.8/src/tools/qcstring.h
---- qt-2.3.8_clean/src/tools/qcstring.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/src/tools/qcstring.h 2004-06-04 02:24:25.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.8_clean/src/tools/qglobal.h qt-2.3.8/src/tools/qglobal.h
---- qt-2.3.8_clean/src/tools/qglobal.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/src/tools/qglobal.h 2004-06-04 02:29:41.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_
-Nur in qt-2.3.8/src/tools: qglobal.h~.
-diff -ur qt-2.3.8_clean/src/tools/qsortedlist.h qt-2.3.8/src/tools/qsortedlist.h
---- qt-2.3.8_clean/src/tools/qsortedlist.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/src/tools/qsortedlist.h 2004-06-04 02:24:25.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.8_clean/src/tools/qstring.h qt-2.3.8/src/tools/qstring.h
---- qt-2.3.8_clean/src/tools/qstring.h 2004-06-04 02:17:53.000000000 +0200
-+++ qt-2.3.8/src/tools/qstring.h 2004-06-04 02:54:16.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; }
-
-Nur in qt-2.3.8/src/tools: qstring.h~.
diff --git a/qt/qt-2.3.8.patch/qte238-hancomwordcrash.patch b/qt/qt-2.3.8.patch/qte238-hancomwordcrash.patch
deleted file mode 100644
index 57c752e..0000000
--- a/qt/qt-2.3.8.patch/qte238-hancomwordcrash.patch
+++ b/dev/null
@@ -1,15 +0,0 @@
-Not included in the ALL patch
-
-
-
---- qt-2.3.8-old/src/kernel/qgfxraster_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qgfxraster_qws.cpp 2004-07-23 19:10:03.000000000 +0200
-@@ -4400,7 +4400,7 @@
- setAlphaType(IgnoreAlpha);
- if ( w <= 0 || h <= 0 || !ncliprect ) return;
- GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
--#ifdef QWS_EXPERIMENTAL_FASTPATH
-+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
- // ### fix for 8bpp
- // This seems to be reliable now, at least for 16bpp
-
diff --git a/qt/qt-2.3.8.patch/qte238-iconviewspeed.patch b/qt/qt-2.3.8.patch/qte238-iconviewspeed.patch
deleted file mode 100644
index 3351bbb..0000000
--- a/qt/qt-2.3.8.patch/qte238-iconviewspeed.patch
+++ b/dev/null
@@ -1,145 +0,0 @@
-Speed up patches backported from
-
-http://robotics.dei.unipd.it/~koral/KDE/kflicker.html
-
-and
-
-http://lists.kde.org/?l=kde-optimize&m=105382164111363&w=2 (complete thread)
-
-
-
-
-
-
-
-diff -ur qt-2.3.8-old/src/iconview/qiconview.cpp qt-2.3.8/src/iconview/qiconview.cpp
---- qt-2.3.8-old/src/iconview/qiconview.cpp 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/iconview/qiconview.cpp 2004-07-23 19:13:09.000000000 +0200
-@@ -224,6 +224,7 @@
- QIconView::SelectionMode selectionMode;
- QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
- QRect *rubber;
-+ QPixmap *backBuffer;
- QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
- *fullRedrawTimer;
- int rastX, rastY, spacing;
-@@ -2267,6 +2268,7 @@
- d->currentItem = 0;
- d->highlightedItem = 0;
- d->rubber = 0;
-+ d->backBuffer = 0;
- d->scrollTimer = 0;
- d->startDragItem = 0;
- d->tmpCurrentItem = 0;
-@@ -2415,6 +2417,8 @@
- delete item;
- item = tmp;
- }
-+ delete d->backBuffer;
-+ d->backBuffer = 0;
- delete d->fm;
- d->fm = 0;
- #ifndef QT_NO_TOOLTIP
-@@ -2881,6 +2885,48 @@
- }
-
- /*!
-+ This function grabs all paintevents that otherwise would have been
-+ processed by the QScrollView::viewportPaintEvent(). Here we use a
-+ doublebuffer to reduce 'on-paint' flickering on QIconView
-+ (and of course its childs).
-+
-+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
-+*/
-+
-+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
-+{
-+ QWidget* vp = viewport();
-+ QRect r = pe->rect() & vp->rect();
-+ int ex = r.x() + contentsX();
-+ int ey = r.y() + contentsY();
-+ int ew = r.width();
-+ int eh = r.height();
-+
-+ if ( !d->backBuffer )
-+ d->backBuffer = new QPixmap(vp->size());
-+ if ( d->backBuffer->size() != vp->size() ) {
-+ //Resize function (with hysteesis). Uses a good compromise between memory
-+ //consumption and speed (number) of resizes.
-+ float newWidth = (float)vp->width();
-+ float newHeight = (float)vp->height();
-+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
-+ {
-+ newWidth *= 1.1892;
-+ newHeight *= 1.1892;
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ }
-+
-+ QPainter p;
-+ p.begin(d->backBuffer, vp);
-+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
-+ p.end();
-+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
-+}
-+
-+/*!
-+
- \reimp
- */
-
-@@ -4937,7 +4983,7 @@
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
- }
-- viewportPaintEvent( (QPaintEvent*)e );
-+ bufferedPaintEvent ((QPaintEvent*)e );
- if ( d->dragging ) {
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
-@@ -5374,11 +5420,19 @@
- return;
-
- if ( item->d->container1 && d->firstContainer ) {
-- item->d->container1->items.removeRef( item );
-+ //Special-case checking of the last item, since this may be
-+ //called a few times for the same item.
-+ if (item->d->container1->items.last() == item)
-+ item->d->container1->items.removeLast();
-+ else
-+ item->d->container1->items.removeRef( item );
- }
- item->d->container1 = 0;
- if ( item->d->container2 && d->firstContainer ) {
-- item->d->container2->items.removeRef( item );
-+ if (item->d->container2->items.last() == item)
-+ item->d->container2->items.removeLast();
-+ else
-+ item->d->container2->items.removeRef( item );
- }
- item->d->container2 = 0;
-
-diff -ur qt-2.3.8-old/src/iconview/qiconview.h qt-2.3.8/src/iconview/qiconview.h
---- qt-2.3.8-old/src/iconview/qiconview.h 2004-07-22 01:07:46.000000000 +0200
-+++ qt-2.3.8/src/iconview/qiconview.h 2004-07-23 19:13:09.000000000 +0200
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
---- qt-2.3.8-old/src/widgets/qscrollview.cpp 2004-07-22 01:07:44.000000000 +0200
-+++ qt-2.3.8/src/widgets/qscrollview.cpp 2004-07-23 19:21:06.000000000 +0200
-@@ -1280,6 +1280,9 @@
- case QEvent::LayoutHint:
- d->autoResizeHint(this);
- break;
-+ case QEvent::WindowActivate:
-+ case QEvent::WindowDeactivate:
-+ return TRUE;
- default:
- break;
- }
diff --git a/qt/qt-2.3.8.patch/qte238-keyboard.patch b/qt/qt-2.3.8.patch/qte238-keyboard.patch
deleted file mode 100644
index 0ac321f..0000000
--- a/qt/qt-2.3.8.patch/qte238-keyboard.patch
+++ b/dev/null
@@ -1,47 +0,0 @@
-Free the Virtual Terminal and Keyboard on a segfault in all cases...
-
-
-diff -ur qt-2.3.8-old/src/kernel/qkeyboard_qws.cpp qt-2.3.8/src/kernel/qkeyboard_qws.cpp
---- qt-2.3.8-old/src/kernel/qkeyboard_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qkeyboard_qws.cpp 2004-07-23 19:13:52.000000000 +0200
-@@ -314,7 +314,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
-Nur in qt-2.3.8/src/kernel/: qkeyboard_qws.cpp.orig.
-diff -ur qt-2.3.8-old/src/kernel/qwindowsystem_qws.cpp qt-2.3.8/src/kernel/qwindowsystem_qws.cpp
---- qt-2.3.8-old/src/kernel/qwindowsystem_qws.cpp 2004-07-22 01:07:45.000000000 +0200
-+++ qt-2.3.8/src/kernel/qwindowsystem_qws.cpp 2004-07-23 19:13:52.000000000 +0200
-@@ -1273,6 +1273,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
-@@ -1365,6 +1377,7 @@
- }
-
- signal(SIGPIPE, ignoreSignal); //we get it when we read
-+ signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash
- #endif
- focusw = 0;
- mouseGrabber = 0;
-Nur in qt-2.3.8/src/kernel/: qwindowsystem_qws.cpp.orig.
diff --git a/qt/qt-2.3.9.patch/qte239-all.patch b/qt/qt-2.3.9.patch/qte239-all.patch
deleted file mode 100644
index 533652d..0000000
--- a/qt/qt-2.3.9.patch/qte239-all.patch
+++ b/dev/null
@@ -1,510 +0,0 @@
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- qt-2.3.9-snapshot-20041102/src/iconview/qiconview.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/iconview/qiconview.cpp
-@@ -225,6 +225,7 @@
- QIconView::SelectionMode selectionMode;
- QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
- QRect *rubber;
-+ QPixmap *backBuffer;
- QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
- *fullRedrawTimer;
- int rastX, rastY, spacing;
-@@ -2268,6 +2269,7 @@
- d->currentItem = 0;
- d->highlightedItem = 0;
- d->rubber = 0;
-+ d->backBuffer = 0;
- d->scrollTimer = 0;
- d->startDragItem = 0;
- d->tmpCurrentItem = 0;
-@@ -2416,6 +2418,8 @@
- delete item;
- item = tmp;
- }
-+ delete d->backBuffer;
-+ d->backBuffer = 0;
- delete d->fm;
- d->fm = 0;
- #ifndef QT_NO_TOOLTIP
-@@ -2882,6 +2886,48 @@
- }
-
- /*!
-+ This function grabs all paintevents that otherwise would have been
-+ processed by the QScrollView::viewportPaintEvent(). Here we use a
-+ doublebuffer to reduce 'on-paint' flickering on QIconView
-+ (and of course its childs).
-+
-+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
-+*/
-+
-+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
-+{
-+ QWidget* vp = viewport();
-+ QRect r = pe->rect() & vp->rect();
-+ int ex = r.x() + contentsX();
-+ int ey = r.y() + contentsY();
-+ int ew = r.width();
-+ int eh = r.height();
-+
-+ if ( !d->backBuffer )
-+ d->backBuffer = new QPixmap(vp->size());
-+ if ( d->backBuffer->size() != vp->size() ) {
-+ //Resize function (with hysteesis). Uses a good compromise between memory
-+ //consumption and speed (number) of resizes.
-+ float newWidth = (float)vp->width();
-+ float newHeight = (float)vp->height();
-+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
-+ {
-+ newWidth *= 1.1892;
-+ newHeight *= 1.1892;
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ }
-+
-+ QPainter p;
-+ p.begin(d->backBuffer, vp);
-+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
-+ p.end();
-+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
-+}
-+
-+/*!
-+
- \reimp
- */
-
-@@ -4939,7 +4985,7 @@
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
- }
-- viewportPaintEvent( (QPaintEvent*)e );
-+ bufferedPaintEvent ((QPaintEvent*)e );
- if ( d->dragging ) {
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
-@@ -5377,11 +5423,19 @@
- return;
-
- if ( item->d->container1 && d->firstContainer ) {
-- item->d->container1->items.removeRef( item );
-+ //Special-case checking of the last item, since this may be
-+ //called a few times for the same item.
-+ if (item->d->container1->items.last() == item)
-+ item->d->container1->items.removeLast();
-+ else
-+ item->d->container1->items.removeRef( item );
- }
- item->d->container1 = 0;
- if ( item->d->container2 && d->firstContainer ) {
-- item->d->container2->items.removeRef( item );
-+ if (item->d->container2->items.last() == item)
-+ item->d->container2->items.removeLast();
-+ else
-+ item->d->container2->items.removeRef( item );
- }
- item->d->container2 = 0;
-
---- qt-2.3.9-snapshot-20041102/src/iconview/qiconview.h~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/iconview/qiconview.h
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
---- qt-2.3.9-snapshot-20041102/src/kernel/qapplication.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qapplication.cpp
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qobjectlist.h"
- #include "qobjectdict.h"
- #include "qapplication.h"
-@@ -937,11 +939,16 @@
- #ifndef QT_NO_STYLE
- void QApplication::setStyle( QStyle *style )
- {
-+ setStyle_NonWeak ( style );
-+}
-+
-+void QApplication::setStyle_NonWeak( QStyle *style )
-+{
- QStyle* old = app_style;
-- app_style = style;
-
- if ( startingUp() ) {
- delete old;
-+ app_style = style;
- return;
- }
-
-@@ -962,6 +969,8 @@
- old->unPolish( qApp );
- }
-
-+ app_style = style;
-+
- // take care of possible palette requirements of certain gui
- // styles. Do it before polishing the application since the style
- // might call QApplication::setStyle() itself
-@@ -1188,13 +1197,30 @@
- \sa QWidget::setPalette(), palette(), QStyle::polish()
- */
-
--void QApplication::setPalette( const QPalette &palette, bool informWidgets,
-+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
-+ const char* className )
-+{
-+ setPalette_NonWeak ( palette, informWidgets, className );
-+}
-+
-+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
- const char* className )
- {
- QPalette pal = palette;
- #ifndef QT_NO_STYLE
-- if ( !startingUp() )
-+ if ( !startingUp() ) {
- qApp->style().polish( pal ); // NB: non-const reference
-+ if ( className ) {
-+ // if we just polished a class specific palette (this normally
-+ // only called by qt_fix_tooltips - see below), we better re-
-+ // polish the global palette. Some styles like liquid can get
-+ // confused, because they can not detect if the polished palette
-+ // is the global one or only a class specific one.
-+ // (liquid uses this palette to calculate blending pixmaps)
-+ QPalette p = qApp-> palette ( );
-+ qApp->style().polish ( p );
-+ }
-+ }
- #endif
- bool all = FALSE;
- if ( !className ) {
-@@ -1279,6 +1305,12 @@
- void QApplication::setFont( const QFont &font, bool informWidgets,
- const char* className )
- {
-+ setFont_NonWeak ( font, informWidgets, className );
-+}
-+
-+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
-+ const char* className )
-+{
- bool all = FALSE;
- if ( !className ) {
- if ( !app_font ) {
---- qt-2.3.9-snapshot-20041102/src/kernel/qapplication.h~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qapplication.h
-@@ -61,6 +61,10 @@
- class QSemaphore;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- // REMOVE IN 3.0 (just here for moc source compatibility)
- #define QNonBaseApplication QApplication
-
-@@ -85,7 +89,10 @@
-
- #ifndef QT_NO_STYLE
- static QStyle &style();
-- static void setStyle( QStyle* );
-+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
-+private:
-+ static void setStyle_NonWeak( QStyle* );
-+public:
- #endif
- #if 1 /* OBSOLETE */
- enum ColorMode { NormalColors, CustomColors };
-@@ -106,11 +113,19 @@
- #ifndef QT_NO_PALETTE
- static QPalette palette( const QWidget* = 0 );
- static void setPalette( const QPalette &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- #endif
- static QFont font( const QWidget* = 0 );
- static void setFont( const QFont &, bool informWidgets=FALSE,
-+ const char* className = 0 ) QT_WEAK_SYMBOL;
-+private:
-+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
- const char* className = 0 );
-+public:
- static QFontMetrics fontMetrics();
-
- QWidget *mainWidget() const;
-@@ -207,7 +222,10 @@
- void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
- #ifndef QT_NO_QWS_MANAGER
- static QWSDecoration &qwsDecoration();
-- static void qwsSetDecoration( QWSDecoration *);
-+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
-+private:
-+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
-+public:
- #endif
- #endif
-
---- qt-2.3.9-snapshot-20041102/src/kernel/qapplication_qws.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qapplication_qws.cpp
-@@ -2905,6 +2905,11 @@
- */
- void QApplication::qwsSetDecoration( QWSDecoration *d )
- {
-+ qwsSetDecoration_NonWeak ( d );
-+}
-+
-+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
-+{
- if ( d ) {
- delete qws_decoration;
- qws_decoration = d;
---- qt-2.3.9-snapshot-20041102/src/kernel/qfontdatabase.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qfontdatabase.cpp
-@@ -35,6 +35,8 @@
- **
- **********************************************************************/
-
-+#define QT_WEAK_SYMBOL __attribute__(( weak ))
-+
- #include "qfontdatabase.h"
-
- #ifndef QT_NO_FONTDATABASE
-@@ -2424,6 +2426,13 @@
- const QString &style,
- const QString &charSet )
- {
-+ return pointSizes_NonWeak ( family, style, charSet );
-+}
-+
-+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
-+ const QString &style,
-+ const QString &charSet )
-+{
- QString cs( charSet );
- if ( charSet.isEmpty() ) {
- QStringList lst = charSets( family );
---- qt-2.3.9-snapshot-20041102/src/kernel/qfontdatabase.h~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qfontdatabase.h
-@@ -59,6 +59,10 @@
- class QDiskFont;
- #endif
-
-+#if !defined( QT_WEAK_SYMBOL )
-+#define QT_WEAK_SYMBOL
-+#endif
-+
- class QFontDatabasePrivate;
-
- class Q_EXPORT QFontDatabase
-@@ -67,9 +71,16 @@
- QFontDatabase();
-
- QStringList families( bool onlyForLocale = TRUE ) const;
-+
-+
- QValueList<int> pointSizes( const QString &family,
- const QString &style = QString::null,
-- const QString &charSet = QString::null );
-+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
-+private:
-+ QValueList<int> pointSizes_NonWeak( const QString &family,
-+ const QString &style,
-+ const QString &charSet );
-+public:
- QStringList styles( const QString &family,
- const QString &charSet = QString::null ) const;
- QStringList charSets( const QString &familyName,
---- qt-2.3.9-snapshot-20041102/src/kernel/qgfxraster_qws.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qgfxraster_qws.cpp
-@@ -4408,7 +4408,7 @@
- setAlphaType(IgnoreAlpha);
- if ( w <= 0 || h <= 0 || !ncliprect ) return;
- GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
--#ifdef QWS_EXPERIMENTAL_FASTPATH
-+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
- // ### fix for 8bpp
- // This seems to be reliable now, at least for 16bpp
-
---- qt-2.3.9-snapshot-20041102/src/kernel/qkeyboard_qws.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qkeyboard_qws.cpp
-@@ -314,7 +314,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
---- qt-2.3.9-snapshot-20041102/src/kernel/qwindowsystem_qws.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/kernel/qwindowsystem_qws.cpp
-@@ -913,6 +913,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
-@@ -1038,6 +1050,7 @@
- }
-
- signal(SIGPIPE, ignoreSignal); //we get it when we read
-+ signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash
- #endif
- focusw = 0;
- mouseGrabber = 0;
---- qt-2.3.9-snapshot-20041102/src/tools/qcstring.h~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/tools/qcstring.h
-@@ -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
---- qt-2.3.9-snapshot-20041102/src/tools/qglobal.h~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/tools/qglobal.h
-@@ -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_
---- qt-2.3.9-snapshot-20041102/src/tools/qstring.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/tools/qstring.cpp
-@@ -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
- }
---- qt-2.3.9-snapshot-20041102/src/widgets/qcommonstyle.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/widgets/qcommonstyle.cpp
-@@ -572,7 +572,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);
---- qt-2.3.9-snapshot-20041102/src/widgets/qlistview.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/widgets/qlistview.cpp
-@@ -5051,9 +5051,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 );
---- qt-2.3.9-snapshot-20041102/src/widgets/qscrollview.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/widgets/qscrollview.cpp
-@@ -1285,6 +1285,9 @@
- case QEvent::LayoutHint:
- d->autoResizeHint(this);
- break;
-+ case QEvent::WindowActivate:
-+ case QEvent::WindowDeactivate:
-+ return TRUE;
- default:
- break;
- }
---- qt-2.3.9-snapshot-20041102/src/widgets/qtoolbutton.cpp~qte239-all
-+++ qt-2.3.9-snapshot-20041102/src/widgets/qtoolbutton.cpp
-@@ -238,7 +238,7 @@
- else
- QToolTip::add( this, textLabel );
- }
--#endif
-+#endif
- }
-
-
-@@ -332,12 +332,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 --git a/qt/qt-2.3.9.patch/qte239-qwsmouse.patch b/qt/qt-2.3.9.patch/qte239-qwsmouse.patch
deleted file mode 100644
index 865516e..0000000
--- a/qt/qt-2.3.9.patch/qte239-qwsmouse.patch
+++ b/dev/null
@@ -1,301 +0,0 @@
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- qt-2.3.9-snapshot-20041211/src/kernel/qwsmouse_qws.cpp~tslib.patch
-+++ qt-2.3.9-snapshot-20041211/src/kernel/qwsmouse_qws.cpp
-@@ -7,6 +7,14 @@
- **
- ** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
- **
-+** Portions Copyright (C) 2003 Texas Instruments, Inc.
-+** Rights to said portions for use under the GPL and QPL licenses
-+** are hereby granted to Trolltech AS.
-+**
-+** Portions Copyright (C) 2004 Holger Hans Peter Freyther <freyther@handhelds.org>
-+** Rights to said portions for use under the GPL and QPL licenses
-+** are hereby granted to Trolltech AS.
-+**
- ** This file is part of the kernel module of the Qt GUI Toolkit.
- **
- ** This file may be distributed and/or modified under the terms of the
-@@ -60,6 +68,10 @@
- #include <linux/tpanel.h>
- #endif
-
-+#ifdef QWS_TSLIB
-+#include <tslib.h>
-+#endif
-+
- //#define QT_QWS_K2
-
- #if defined(QT_QWS_IPAQ) || defined(QT_QWS_K2)
-@@ -1124,6 +1136,221 @@
- return sent;
- }
-
-+
-+class QTSLibHandler : public QCalibratedMouseHandler
-+{
-+ Q_OBJECT
-+public:
-+ QTSLibHandler();
-+ ~QTSLibHandler();
-+
-+ virtual void clearCalibration();
-+ virtual void calibrate( QWSPointerCalibrationData * );
-+
-+ static int sortByX( const void*, const void* );
-+ static int sortByY( const void*, const void* );
-+private:
-+ void openTs();
-+ void closeTs();
-+ void interpolateSample();
-+
-+private:
-+ bool raw : 1;
-+#ifdef QWS_TSLIB
-+ struct tsdev *ts;
-+#endif
-+ QSocketNotifier *m_notify;
-+
-+private slots:
-+ void readMouseData();
-+};
-+
-+QTSLibHandler::QTSLibHandler()
-+ : raw(false), m_notify(0l)
-+{
-+ openTs();
-+}
-+
-+QTSLibHandler::~QTSLibHandler()
-+{
-+ closeTs();
-+}
-+
-+void QTSLibHandler::openTs()
-+{
-+#ifdef QWS_TSLIB
-+ char *tsdevice;
-+
-+ if( ( tsdevice = getenv( "TSLIB_TSDEVICE" ) ) != NULL ) {
-+ ts = ts_open( tsdevice, 1 );
-+ } else {
-+ ts = ts_open( "/dev/ts", 1 );
-+ }
-+
-+ if (!ts) {
-+ qWarning( "Cannot open touchscreen (%s)", strerror( errno ) );
-+ return;
-+ }
-+
-+ if (ts_config( ts )) {
-+ qWarning( "Cannot configure touchscreen (%s)", strerror( errno ) );
-+ return;
-+ }
-+
-+
-+ m_notify = new QSocketNotifier( ts_fd(ts), QSocketNotifier::Read, this );
-+ connect( m_notify, SIGNAL(activated(int)), this, SLOT(readMouseData()));
-+#endif
-+}
-+
-+void QTSLibHandler::closeTs()
-+{
-+#ifdef QWS_TSLIB
-+ if (ts)
-+ ts_close(ts);
-+
-+ delete m_notify;
-+ m_notify = 0; ts = 0;
-+ raw = false;
-+#endif
-+
-+}
-+
-+void QTSLibHandler::clearCalibration()
-+{
-+ raw = true;
-+}
-+
-+
-+void QTSLibHandler::calibrate( QWSPointerCalibrationData *cd )
-+{
-+ QPoint dev_tl = cd->devPoints[ QWSPointerCalibrationData::TopLeft ];
-+ QPoint dev_br = cd->devPoints[ QWSPointerCalibrationData::BottomRight ];
-+ QPoint screen_tl = cd->screenPoints[ QWSPointerCalibrationData::TopLeft ];
-+ QPoint screen_br = cd->screenPoints[ QWSPointerCalibrationData::BottomRight ];
-+ int a, b, c, d, e, f, s;
-+
-+ s = 1 << 16;
-+
-+ a = s * (screen_tl.x() - screen_br.x() ) / (dev_tl.x() - dev_br.x());
-+ b = 0;
-+ c = s * screen_tl.x() - a * dev_tl.x();
-+
-+ d = 0;
-+ e = s * (screen_tl.y() - screen_br.y() ) / (dev_tl.y() - dev_br.y());
-+ f = s * screen_tl.y() - e * dev_tl.y();
-+
-+ QString calFile = "/etc/pointercal";
-+#ifndef QT_NO_TEXTSTREAM
-+ QFile file( calFile );
-+ if ( file.open( IO_WriteOnly ) ) {
-+ QTextStream t( &file );
-+ t << a << " " << b << " " << c << " ";
-+ t << d << " " << e << " " << f << " " << s;
-+ file.flush(); closeTs();
-+ openTs();
-+ } else
-+#endif
-+ {
-+ qDebug( "Could not save calibration: %s", calFile.latin1() );
-+ }
-+}
-+
-+void QTSLibHandler::readMouseData()
-+{
-+#ifdef QWS_TSLIB
-+ if(!qt_screen)
-+ return;
-+
-+ /*
-+ * After clear Calibration
-+ * we're in raw mode and do some easy median
-+ * search.
-+ */
-+ if (raw )
-+ return interpolateSample();
-+
-+ static struct ts_sample sample;
-+ static int ret;
-+
-+ /*
-+ * Ok. We need to see if we can read more than one event
-+ * We do this not to lose an update.
-+ */
-+ while ( true ) {
-+ if ((ret = ts_read(ts, &sample, 1)) != 1 )
-+ return;
-+
-+
-+ QPoint pos( sample.x, sample.y );
-+ emit mouseChanged( pos, sample.pressure != 0 ? 1 : 0 );
-+ }
-+#endif
-+}
-+
-+
-+/*
-+ * Lets take all down events and then sort them
-+ * and take the event in the middle.
-+ *
-+ * inspired by testutils.c
-+ */
-+void QTSLibHandler::interpolateSample() {
-+ static struct ts_sample samples[25];
-+ int index = 0;
-+ int ret;
-+
-+ do {
-+ /* fill only the last sample again */
-+ if ( index >= 25 )
-+ index = 24;
-+
-+ /* we're opened non-blocking */
-+ if((ret= ts_read_raw(ts, &samples[index], 1 ) ) != 1 ) {
-+ /* no event yet, so try again */
-+ if (ret==-1 ) {
-+ index--;
-+ continue;
-+ }
-+ }
-+ }while (samples[index++].pressure != 0);
-+
-+ /*
-+ * index is maximal 25 and we at least one sample
-+ */
-+ if( index >= 25 )
-+ index = 24;
-+ int x, y;
-+
-+ /*
-+ * now let us use the median value
-+ * even index does not have an item in the middle
-+ * so let us take the average of n/2 and (n/2)-1 as the middle
-+ */
-+ int m = index/2;
-+ ::qsort(samples, index, sizeof(ts_sample), QTSLibHandler::sortByX);
-+ x = (index % 2 ) ? samples[m].x :
-+ ( samples[m-1].x + samples[m].x )/2;
-+
-+ ::qsort(samples, index, sizeof(ts_sample), QTSLibHandler::sortByY);
-+ y = (index % 2 ) ? samples[m].y :
-+ ( samples[m-1].y + samples[m].y )/2;
-+
-+ emit mouseChanged( QPoint(x, y), 1 );
-+ emit mouseChanged( QPoint(0, 0), 0 );
-+}
-+
-+int QTSLibHandler::sortByX( const void* one, const void* two) {
-+ return reinterpret_cast<const struct ts_sample*>(one)->x -
-+ reinterpret_cast<const struct ts_sample*>(two)->x;
-+}
-+
-+int QTSLibHandler::sortByY( const void* one, const void* two) {
-+ return reinterpret_cast<const struct ts_sample*>(one)->y -
-+ reinterpret_cast<const struct ts_sample*>(two)->y;
-+}
-+
-+
- /*
- * Handler for /dev/tpanel Linux kernel driver
- */
-@@ -1731,7 +1958,9 @@
-
- case TPanel:
- #if defined(QWS_CUSTOMTOUCHPANEL)
-- handler = new QCustomTPanelHandlerPrivate(mouseProtocol,mouseDev);
-+ handler = new QCustomTPanelHandlerPrivate(mouseProtocol,mouseDev);
-+#elif defined(QWS_TSLIB)
-+ handler = new QTSLibHandler();
- #elif defined(QT_QWS_YOPY)
- handler = new QYopyTPanelHandlerPrivate(mouseProtocol,mouseDev);
- #elif defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX) || defined(QT_QWS_K2)
---- qt-2.3.9-snapshot-20041211/configure~tslib.patch
-+++ qt-2.3.9-snapshot-20041211/configure
-@@ -406,6 +406,9 @@
- -kde)
- KDE=yes
- ;;
-+ -tslib)
-+ TSLIB=YES
-+ ;;
- -no-g++-exceptions)
- GPLUSPLUS_EXCEPTIONS=no
- ;;
-@@ -1290,6 +1293,9 @@
- set to point to a KDE 2 installation.
- See http://www.kde.org
-
-+ -tslib ............. Use the TSLib (touchscreen access library) mouse handler
-+ by default, instead of the normal device default.
-+
- -no-g++-exceptions . Disable exceptions on platforms using the GNU C++
- compiler by using the -fno-exceptions flag.
-
-@@ -1353,6 +1359,13 @@
- [ "x$SM" = "xno" ] && QT_CXX="${QT_CXX} -DQT_NO_SM_SUPPORT"
- [ "x$XFT" = "xyes" ] && QT_CXX="${QT_CXX} -DQT_XFT"
- [ "x$XFT" = "xno" ] && QT_CXX="${QT_CXX} -DQT_NO_XKB"
-+
-+if [ "x$TSLIB" = "xyes" ]
-+then
-+ QT_CXX="${QT_CXX} -DQWS_TSLIB"
-+ QT_LIBS="${QT_LIBS} -lts"
-+fi
-+
- if [ "x$THREAD" = "xyes" ]
- then
- cat >src-mt.mk <<EOF