Index: config_office/configure
===================================================================
RCS file: /cvs/tools/config_office/configure,v
retrieving revision 1.36.6.1
diff -u -r1.36.6.1 configure
--- config_office/configure	15 Aug 2003 11:32:57 -0000	1.36.6.1
+++ config_office/configure	17 Sep 2003 16:38:35 -0000
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 1.55.2.11  .
+# From configure.in Revision: 1.55.6.2  .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.57.
 #
@@ -271,7 +271,7 @@
 PACKAGE_STRING=
 PACKAGE_BUGREPORT=
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS AWK SED PTHREAD_CFLAGS PTHREAD_LIBS ENABLE_CRASHDUMP ENABLE_DEBUG ENABLE_SYMBOLS USE_SHELL CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT COMPATH USE_GCC3 GNUMAKE _cc MSPDB_PATH COMEX MIDL_PATH WDEVENV_PATH CPP EGREP CXX CXXFLAGS ac_ct_CXX GXX_INCLUDE_PATH EXCEPTIONS CXXCPP STLPORT4 SOLAR_JAVA JAVAC JAVA JAVA_HOME JDK XMKMF PERL TCSH PKG_CONFIG GTK_CFLAGS GTK_LIBS X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS XINC XLIB PSDK_HOME BISON FLEX PATCH GNUPATCH GNUCP CYGWIN ML_EXE ASM_HOME ZIP ZIP_HOME LIBART_CFLAGS LIBART_LIBS WITH_LIBART WITH_GPC LIBSN_CFLAGS LIBSN_LIBS WITH_LIBSN ANT ANT_HOME UPD LOCAL_SOLENV LOCAL_SOLVER WITH_LANG WITH_DICT ENABLE_STATIC_GTK GCC_HOME WITH_MINGWIN OSVERSION LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS AWK SED PTHREAD_CFLAGS PTHREAD_LIBS ENABLE_CRASHDUMP ENABLE_DEBUG ENABLE_SYMBOLS USE_SHELL CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT COMPATH USE_GCC3 GNUMAKE _cc MSPDB_PATH COMEX MIDL_PATH WDEVENV_PATH CPP EGREP CXX CXXFLAGS ac_ct_CXX GXX_INCLUDE_PATH EXCEPTIONS CXXCPP STLPORT4 SOLAR_JAVA JAVAC JAVA JAVA_HOME JDK XMKMF PERL TCSH PKG_CONFIG GTK_CFLAGS GTK_LIBS X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS XINC XLIB PSDK_HOME BISON FLEX PATCH GNUPATCH GNUCP CYGWIN ML_EXE ASM_HOME ZIP ZIP_HOME LIBART_CFLAGS LIBART_LIBS WITH_LIBART WITH_GPC LIBSN_CFLAGS LIBSN_LIBS WITH_LIBSN ANT ANT_HOME UPD LOCAL_SOLENV LOCAL_SOLVER WITH_LANG WITH_DICT ENABLE_STATIC_GTK GCC_HOME WITH_MINGWIN OSVERSION GUIBASE QT_HOME QT_LIB LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 
 # Initialize some variables set by options.
@@ -878,6 +878,17 @@
                           This is required to allow some strict packagers to
                           comply with their distrubution policy.
 
+  --with-guibase:         On Linux, you can choose alternative GUI
+                          implementation by setting this value to "qt".
+                          You do not want to change the default "unx", unless
+                          you are a developer interested in development of
+                          Qt version of VCL.
+
+                          WARNING: This is highly experimental!
+
+  --with-qt-home          The location that Qt is installed in. Useful only
+                          if --with-guibase is set to "qt".
+
   --with-stlport4-home    The location that STLport4 is installed in. The STL
                           header files are assumed to be in stlport4-home/stlport
                           and the STLport4 library in stlport4-home/lib.
@@ -1469,6 +1480,18 @@
 
 fi;
 
+# Check whether --with-guibase or --without-guibase was given.
+if test "${with_guibase+set}" = set; then
+  withval="$with_guibase"
+
+fi;
+
+# Check whether --with-qt-home or --without-qt-home was given.
+if test "${with_qt_home+set}" = set; then
+  withval="$with_qt_home"
+
+fi;
+
 # Check whether --with-stlport4-home or --without-stlport4-home was given.
 if test "${with_stlport4_home+set}" = set; then
   withval="$with_stlport4_home"
@@ -5823,6 +5846,69 @@
   fi
 fi
 
+case "$with_guibase" in
+	"qt")
+		{ echo "$as_me:$LINENO: WARNING: Qt GUI is experimental --- Use at own risk!" >&5
+echo "$as_me: WARNING: Qt GUI is experimental --- Use at own risk!" >&2;}
+		GUIBASE="qt"
+		;;
+	*)
+		GUIBASE="unx"
+		;;
+esac
+
+if test "x$GUIBASE" = "xqt" ; then
+  # Just a very simple check for moc and Qt library.
+  ac_qt_found=no
+  echo "$as_me:$LINENO: checking for Qt moc (meta object compiler)" >&5
+echo $ECHO_N "checking for Qt moc (meta object compiler)... $ECHO_C" >&6
+  for ac_qt_path in "$with_qt_home" "$QTDIR" "/usr/local" "/usr" "" ; do
+    if test -x "$ac_qt_path"/bin/moc ; then
+      QT_HOME="$ac_qt_path"
+      echo "$as_me:$LINENO: result: $QT_HOME/bin/moc" >&5
+echo "${ECHO_T}$QT_HOME/bin/moc" >&6
+      ac_qt_found=yes
+      break
+    fi
+  done
+  if test "x$ac_qt_found" = "xno" ; then
+    echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+    { { echo "$as_me:$LINENO: error: Qt moc (meta object compiler) not found.
+Either provide full path with --with-qt-home=<path>, or disable
+Qt support with --with-guibase=unx" >&5
+echo "$as_me: error: Qt moc (meta object compiler) not found.
+Either provide full path with --with-qt-home=<path>, or disable
+Qt support with --with-guibase=unx" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+
+  ac_qt_found=no
+  echo "$as_me:$LINENO: checking for Qt library" >&5
+echo $ECHO_N "checking for Qt library... $ECHO_C" >&6
+  for ac_qt_lib in "qt-mt" "qt"; do
+    if test -f "$QT_HOME"/lib/lib"$ac_qt_lib".so ; then
+      # any of them is sufficient
+      ac_qt_found=yes
+      QT_LIB="$ac_qt_lib"
+      echo "$as_me:$LINENO: result: $QT_LIB" >&5
+echo "${ECHO_T}$QT_LIB" >&6
+      break
+    fi
+  done
+  if test "x$ac_qt_found" = "xno" ; then
+    echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+    { { echo "$as_me:$LINENO: error: Qt library not found.
+Either provide full path with --with-qt-home=<path>, or disable
+Qt support with --with-guibase=unx" >&5
+echo "$as_me: error: Qt library not found.
+Either provide full path with --with-qt-home=<path>, or disable
+Qt support with --with-guibase=unx" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+fi
+
 
 if test  "$_os" = "Darwin"  -a  "x$with_x" != "xyes"  -a  "x$x_includes" = "xNONE"  -a  "x$x_libraries" = "xNONE"; then
          echo "$as_me:$LINENO: checking for /System/Library/Frameworks/AppKit.framework" >&5
@@ -7619,20 +7705,20 @@
 if test "$_os" = "WINNT" -a "$COMEX" = "8"; then
    echo "$as_me:$LINENO: checking msvcp70.dll" >&5
 echo $ECHO_N "checking msvcp70.dll... $ECHO_C" >&6
-   if test -f ../external/msvcp70/msvcp70.dll; then
+   if test -f ../external/msvcp70/msvcp70.dll -a -f ../external/msvcp70/msvcr70.dll; then
       echo "$as_me:$LINENO: result: found" >&5
 echo "${ECHO_T}found" >&6
    else
-      { { echo "$as_me:$LINENO: error: The msvcp70.dll is missing in external/msvcp70/.
-The dll is part of the .NET installation and can be found in a directory
+      { { echo "$as_me:$LINENO: error: msvcp70.dll and/or msvcr70.dll are/is missing in external/msvcp70/.
+These dlls are part of the .NET installation and can be found in a directory
 similar to:
 \"c:\\Program Files\\Microsoft Visual Studio .NET\\Visual C++ .NET Professional - English\\\"
-Please copy the file to external/msvcp70." >&5
-echo "$as_me: error: The msvcp70.dll is missing in external/msvcp70/.
-The dll is part of the .NET installation and can be found in a directory
+Please copy the files to external/msvcp70." >&5
+echo "$as_me: error: msvcp70.dll and/or msvcr70.dll are/is missing in external/msvcp70/.
+These dlls are part of the .NET installation and can be found in a directory
 similar to:
 \"c:\\Program Files\\Microsoft Visual Studio .NET\\Visual C++ .NET Professional - English\\\"
-Please copy the file to external/msvcp70." >&2;}
+Please copy the files to external/msvcp70." >&2;}
    { (exit 1); exit 1; }; }
    fi
 fi
@@ -8089,6 +8175,12 @@
 OSVERSION="$with_os_version"
 
 
+
+
+
+
+
+
           ac_config_files="$ac_config_files set_soenv"
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -8801,6 +8893,9 @@
 s,@GCC_HOME@,$GCC_HOME,;t t
 s,@WITH_MINGWIN@,$WITH_MINGWIN,;t t
 s,@OSVERSION@,$OSVERSION,;t t
+s,@GUIBASE@,$GUIBASE,;t t
+s,@QT_HOME@,$QT_HOME,;t t
+s,@QT_LIB@,$QT_LIB,;t t
 s,@LIBOBJS@,$LIBOBJS,;t t
 s,@LTLIBOBJS@,$LTLIBOBJS,;t t
 CEOF
Index: config_office/configure.in
===================================================================
RCS file: /cvs/tools/config_office/configure.in,v
retrieving revision 1.55.6.2
diff -u -r1.55.6.2 configure.in
--- config_office/configure.in	18 Aug 2003 15:08:49 -0000	1.55.6.2
+++ config_office/configure.in	17 Sep 2003 16:38:36 -0000
@@ -62,6 +62,19 @@
                           the static libraries instead of the dynmaic ones. 
                           (enables -Bstatic linker flag for gtk libraries)
 ],,)
+AC_ARG_WITH(guibase,
+[  --with-guibase:         On Linux, you can choose alternative GUI
+                          implementation by setting this value to "qt".
+                          You do not want to change the default "unx", unless
+                          you are a developer interested in development of
+                          Qt version of VCL.
+
+                          WARNING: This is highly experimental!
+],,)
+AC_ARG_WITH(qt-home,
+[  --with-qt-home          The location that Qt is installed in. Useful only
+                          if --with-guibase is set to "qt".
+],,)
 AC_ARG_WITH(stlport4-home,
 [  --with-stlport4-home    The location that STLport4 is installed in. The STL
                           header files are assumed to be in stlport4-home/stlport
@@ -1269,6 +1282,60 @@
 fi
 
 dnl ===================================================================
+dnl Check whether to use alternative GUI implementation.
+dnl ===================================================================
+case "$with_guibase" in
+	"qt")
+		AC_MSG_WARN([Qt GUI is experimental --- Use at own risk!])
+		GUIBASE="qt"
+		;;
+	*)
+		GUIBASE="unx"
+		;;
+esac
+
+dnl ===================================================================
+dnl Check whether Qt library is available
+dnl ===================================================================
+if test "x$GUIBASE" = "xqt" ; then
+  # Just a very simple check for moc and Qt library.
+  ac_qt_found=no
+  AC_MSG_CHECKING([for Qt moc (meta object compiler)])
+  for ac_qt_path in "$with_qt_home" "$QTDIR" "/usr/local" "/usr" "" ; do
+    if test -x "$ac_qt_path"/bin/moc ; then
+      QT_HOME="$ac_qt_path"
+      AC_MSG_RESULT([$QT_HOME/bin/moc])
+      ac_qt_found=yes
+      break
+    fi
+  done
+  if test "x$ac_qt_found" = "xno" ; then
+    AC_MSG_RESULT([no])
+    AC_MSG_ERROR([Qt moc (meta object compiler) not found.
+Either provide full path with --with-qt-home=<path>, or disable
+Qt support with --with-guibase=unx])
+  fi
+  
+  ac_qt_found=no
+  AC_MSG_CHECKING([for Qt library])
+  for ac_qt_lib in "qt-mt" "qt"; do
+    if test -f "$QT_HOME"/lib/lib"$ac_qt_lib".so ; then
+      # any of them is sufficient
+      ac_qt_found=yes
+      QT_LIB="$ac_qt_lib"
+      AC_MSG_RESULT([$QT_LIB])
+      break
+    fi
+  done
+  if test "x$ac_qt_found" = "xno" ; then
+    AC_MSG_RESULT([no])
+    AC_MSG_ERROR([Qt library not found.
+Either provide full path with --with-qt-home=<path>, or disable
+Qt support with --with-guibase=unx])
+  fi
+fi
+
+dnl ===================================================================
 dnl Checks for libraries.
 dnl ===================================================================
 dnl Check for Mac OS X native GUI, which may be used instead of X11.
@@ -1711,6 +1778,16 @@
 AC_SUBST(WITH_MINGWIN)
 OSVERSION="$with_os_version"
 AC_SUBST(OSVERSION)
+
+dnl ===================================================================
+dnl Alternative GUIBASE to be set in set_soenv.in
+dnl (currently just for Linux)
+dnl ===================================================================
+
+AC_SUBST(GUIBASE)
+
+AC_SUBST(QT_HOME)
+AC_SUBST(QT_LIB)
 
 AC_OUTPUT([set_soenv])
 
Index: config_office/set_soenv.in
===================================================================
RCS file: /cvs/tools/config_office/set_soenv.in,v
retrieving revision 1.10.6.2
diff -u -r1.10.6.2 set_soenv.in
--- config_office/set_soenv.in	18 Aug 2003 14:36:16 -0000	1.10.6.2
+++ config_office/set_soenv.in	17 Sep 2003 16:38:39 -0000
@@ -419,7 +419,7 @@
       $COMPATH        = '@COMPATH@'; 
       $GLIBC          = "2REDHAT60";
       $GUI            = "UNX";
-      $GUIBASE        = "unx";
+      $GUIBASE        = "@GUIBASE@";
       $GUIENV         = "sal";
       $GVER           = "VCL";
       $INPATH         = $OUTPATH.$PROEXT;
@@ -1619,6 +1619,11 @@
 ToFile( "GUI",               $GUI,               "e" );
 ToFile( "GLIBC",             $GLIBC,             "e" );
 ToFile( "GUIBASE",           $GUIBASE,           "e" );
+if ($GUIBASE eq "qt")
+{
+  ToFile("QT_HOME",          "@QT_HOME@",        "e" );
+  ToFile("QT_LIB",           "@QT_LIB@",         "e" );
+}
 ToFile( "GUIENV",            $GUIENV,            "e" );
 ToFile( "GVER",              $GVER,              "e" );
 ToFile( "OS",                $OS,                "e" );
Index: vcl/prj/build.lst
===================================================================
RCS file: /cvs/gsl/vcl/prj/build.lst,v
retrieving revision 1.20
diff -u -r1.20 build.lst
--- vcl/prj/build.lst	12 Jun 2003 10:24:40 -0000	1.20
+++ vcl/prj/build.lst	17 Sep 2003 16:38:39 -0000
@@ -23,6 +23,10 @@
 vc	vcl\unx\source\gdi\native-msgbox		nmake	-	u	vc__gdun vc_unot NULL
 vc	vcl\unx\source\window					nmake	-	u	vc__winu vc_unot NULL
 vc	vcl\unx\source\src						nmake	-	u	vc__srcu vc_unot NULL
+vc	vcl\qt\source\app						nmake	-	u	vc__appq vc_unot NULL
+vc	vcl\qt\source\gdi						nmake	-	u	vc__gdiq vc_unot NULL
+vc	vcl\qt\source\window					nmake	-	u	vc__winq vc_unot NULL
+vc	vcl\qt\source\src						nmake	-	u	vc__srcq vc_unot NULL
 vc	vcl\aqua\source\app						nmake	-	u	vc__appa vc_unot NULL
 vc	vcl\aqua\source\gdi						nmake	-	u	vc__gdia vc_unot NULL
 vc	vcl\aqua\source\window					nmake	-	u	vc__wina vc_unot NULL
@@ -31,5 +35,5 @@
 vc	vcl\mac\source\gdi						nmake	-	m	vc__gdim vc_unot NULL
 vc	vcl\mac\source\window					nmake	-	m	vc__winm vc_unot NULL
 vc	vcl\mac\source\src						nmake	-	m	vc__srcm vc_unot NULL
-vc	vcl\util								nmake	-	all	vc_util vc__appa.u vc__appm.m vc__appp.p vc__appu.u vc__appw.w vc__gdim.m vc__gdip.p vc__gdiu.u vc__gdiw.w vc__srcm.m vc__srcp.p vc__srcu.u vc__srcw.w vc__wina.u vc__winm.m vc__winp.p vc__winu.u vc__winw.w vc_app vc_ctrl vc_gdi vc_hlp vc_remo vc_src vc_win NULL
+vc	vcl\util								nmake	-	all	vc_util vc__appa.u vc__appm.m vc__appp.p vc__appq.u vc__appu.u vc__appw.w vc__gdim.m vc__gdip.p vc__gdiq.u vc__gdiu.u vc__gdiw.w vc__srcm.m vc__srcp.p vc__srcq.u vc__srcu.u vc__srcw.w vc__wina.u vc__winm.m vc__winp.p vc__winq.u vc__winu.u vc__winw.w vc_app vc_ctrl vc_gdi vc_hlp vc_remo vc_src vc_win NULL
 vc	vcl\workben								nmake	-	all	vc_wrkb vc_util NULL
Index: vcl/source/app/makefile.mk
===================================================================
RCS file: /cvs/gsl/vcl/source/app/makefile.mk,v
retrieving revision 1.10
diff -u -r1.10 makefile.mk
--- vcl/source/app/makefile.mk	14 Jun 2002 12:42:21 -0000	1.10
+++ vcl/source/app/makefile.mk	17 Sep 2003 16:38:39 -0000
@@ -75,6 +75,10 @@
 
 CDEFS+=-DDLLSUFFIX=$(DLLSUFFIX)
 
+.IF "$(GUIBASE)"=="qt"
+ENVCDEFS+= -DUNX_NO_INTEGRATOR
+.ENDIF
+
 # --- Files --------------------------------------------------------
 
 SLOFILES=	$(SLO)$/access.obj		\
Index: vcl/source/app/settings.cxx
===================================================================
RCS file: /cvs/gsl/vcl/source/app/settings.cxx,v
retrieving revision 1.38
diff -u -r1.38 settings.cxx
--- vcl/source/app/settings.cxx	11 Apr 2003 17:27:37 -0000	1.38
+++ vcl/source/app/settings.cxx	17 Sep 2003 16:38:40 -0000
@@ -98,10 +98,12 @@
 #endif
 
 #ifdef UNX
+#ifndef UNX_NO_INTEGRATOR
 #include <prex.h>
 #include <postx.h>
 #include <dtint.hxx>
 #include <stdio.h>
+#endif // UNX_NO_INTEGRATOR
 #endif
 
 #ifdef WNT
@@ -1220,6 +1222,11 @@
 #ifdef UNX
         mpData->mnEnableATT = 0;
 
+#ifndef UNX_NO_INTEGRATOR
+	// ??? The original code seems not to even honor SAL_ACCESSIBILITY_ENABLED
+	//     for KDE...
+	// BTW: Shouldn't all this MiscSettings::GetEnableATToolSupport()
+	//      be somewhere in the SAL part?
         DtIntegrator* pIntegrator = DtIntegrator::CreateDtIntegrator( NULL );
         static const char* pEnv = getenv("SAL_ACCESSIBILITY_ENABLED" );
         if( ( pIntegrator && pIntegrator->GetDtType() == DtGNOME ) ||
@@ -1239,6 +1246,7 @@
                 pclose( fp );
             }
         }
+#endif // UNX_NO_INTEGRATOR
 #else
         static const char* pEnv = getenv("SAL_ACCESSIBILITY_ENABLED" );
         if( !pEnv || !*pEnv )
Index: vcl/util/makefile.mk
===================================================================
RCS file: /cvs/gsl/vcl/util/makefile.mk,v
retrieving revision 1.47.10.1
diff -u -r1.47.10.1 makefile.mk
--- vcl/util/makefile.mk	15 Aug 2003 11:26:42 -0000	1.47.10.1
+++ vcl/util/makefile.mk	17 Sep 2003 16:38:45 -0000
@@ -273,6 +273,10 @@
 SHL1STDLIBS += -framework Cocoa
 .ENDIF
 
+.IF "$(GUIBASE)"=="qt"
+SHL1STDLIBS += -L$(QT_HOME)/lib -l$(QT_LIB)
+.ENDIF
+
 .IF "$(GUIBASE)"=="unx"
 
 .IF "$(WITH_LIBSN)"=="YES"
Index: vcl/util/makefile.pmk
===================================================================
RCS file: /cvs/gsl/vcl/util/makefile.pmk,v
retrieving revision 1.14
diff -u -r1.14 makefile.pmk
--- vcl/util/makefile.pmk	16 Jul 2003 17:47:17 -0000	1.14
+++ vcl/util/makefile.pmk	17 Sep 2003 16:38:45 -0000
@@ -80,3 +80,7 @@
 ENVCDEFS += -DENABLE_CTL
 .ENDIF
 
+.IF "$(GUIBASE)" == "qt"
+ENVCFLAGS += -I$(QT_HOME)/include
+ENVCDEFS += -DQT_CLEAN_NAMESPACE -DQT_NO_EMIT
+.ENDIF

