TDE integration

Change-Id: I6f468005c8d8d99d9251a9c4fe4629b98bc4aa5e
This commit is contained in:
Norbert Thiebaud 2012-05-14 20:09:41 -05:00
parent 007f16ef7a
commit 07b3d083b4
62 changed files with 1600 additions and 134 deletions

View File

@ -82,6 +82,9 @@ $(eval $(call gb_Helper_register_executables,OOO, \
HelpLinker \
HelpIndexer \
spadmin.bin \
$(if $(filter $(GUIBASE)$(ENABLE_TDE),unxTRUE), \
tdefilepicker \
) \
$(if $(filter $(GUIBASE)$(ENABLE_KDE),unxTRUE), \
kdefilepicker \
) \
@ -346,6 +349,7 @@ $(eval $(call gb_Helper_register_libraries,OOOLIBS, \
vclplug_gen \
vclplug_gtk \
vclplug_gtk3 \
vclplug_tde \
vclplug_kde \
vclplug_kde4 \
vclplug_svp \

View File

@ -217,6 +217,14 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
cd $FILELISTSDIR
# tde subpackage
test -f $DESTDIR/gid_Module_Optional_Tde && cp $DESTDIR/gid_Module_Optional_Tde tde_list.txt || :
mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/tdefilepicker
mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/fps_tde.uno.so
mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/libvclplug_tdel..so
mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/libtdeabdrv1.so
add_used_directories tde_list.txt common_list.txt
# kde subpackage
test -f $DESTDIR/gid_Module_Optional_Kde && cp $DESTDIR/gid_Module_Optional_Kde kde_list.txt || :
mv_file_between_flists kde_list.txt common_list.txt $INSTALLDIR/program/kdefilepicker
@ -419,6 +427,7 @@ else
create_package_directory gid_Module_Brand_Prg_Base pkg/libreoffice-base
create_package_directory gid_Module_Optional_Pyuno pkg/python-uno
create_package_directory gid_Module_Optional_Gnome pkg/libreoffice-gnome
create_package_directory gid_Module_Optional_Tde pkg/libreoffice-tde
create_package_directory gid_Module_Optional_Kde pkg/libreoffice-kde
create_package_directory gid_Module_Root_Files_2 pkg/libreoffice-common
@ -497,7 +506,7 @@ else
fi &&
( cd pkg/libreoffice-common/$d
find -maxdepth 1 \
-regex '\./\(.*\.so.*\|.*\.bin\|pagein\|nsplugin\|kdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \
-regex '\./\(.*\.so.*\|.*\.bin\|pagein\|nsplugin\|tdefilepicker\|kdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \
-exec mv {} $DESTDIR/pkg/libreoffice-core/$d \;
); \
done

View File

@ -112,6 +112,8 @@ export ENABLE_GTK3=@ENABLE_GTK3@
export ENABLE_GTK=@ENABLE_GTK@
export ENABLE_GTK_PRINT=@ENABLE_GTK_PRINT@
export ENABLE_HEADLESS=@ENABLE_HEADLESS@
export ENABLE_TDEAB=@ENABLE_TDEAB@
export ENABLE_TDE=@ENABLE_TDE@
export ENABLE_KAB=@ENABLE_KAB@
export ENABLE_KDE4=@ENABLE_KDE4@
export ENABLE_KDE=@ENABLE_KDE@
@ -245,6 +247,11 @@ export JDK=@JDK@
export JITC_PROCESSOR_TYPE=@JITC_PROCESSOR_TYPE@
export JFREEREPORT_JAR=@JFREEREPORT_JAR@
export JVM_ONE_PATH_CHECK=@JVM_ONE_PATH_CHECK@
export TDE_CFLAGS=@TDE_CFLAGS@
export TDE_GLIB_CFLAGS=@TDE_GLIB_CFLAGS@
export TDE_GLIB_LIBS=@TDE_GLIB_LIBS@
export TDE_HAVE_GLIB=@TDE_HAVE_GLIB@
export TDE_LIBS=@TDE_LIBS@
export KDE4_CFLAGS=@KDE4_CFLAGS@
export KDE4_LIBS=@KDE4_LIBS@
export KDE_CFLAGS=@KDE_CFLAGS@

View File

@ -166,6 +166,7 @@ case "$host_os" in
solaris*)
test_gtk=yes
build_gstreamer=yes
test_tde=yes
test_kde=yes
test_freetype=yes
test_gstreamer=yes
@ -194,6 +195,7 @@ solaris*)
linux-gnu*|k*bsd*-gnu*)
test_gtk=yes
build_gstreamer=yes
test_tde=yes
test_kde=yes
test_kde4=yes
test_freetype=yes
@ -280,6 +282,7 @@ darwin*) # Mac OS X or iOS
freebsd*)
test_gtk=yes
build_gstreamer=yes
test_tde=yes
test_kde=yes
test_kde4=yes
test_freetype=yes
@ -308,6 +311,7 @@ freebsd*)
*netbsd*)
test_gtk=yes
build_gstreamer=yes
test_tde=no
test_kde=no
test_kde4=yes
test_freetype=yes
@ -324,6 +328,7 @@ aix*)
openbsd*)
test_gtk=yes
test_tde=yes
test_kde=yes
test_freetype=yes
PTHREAD_CFLAGS="-D_THREAD_SAFE"
@ -334,6 +339,7 @@ openbsd*)
dragonfly*)
test_gtk=yes
build_gstreamer=yes
test_tde=yes
test_kde=yes
test_kde4=yes
test_freetype=yes
@ -347,6 +353,7 @@ linux-androideabi*)
test_fontconfig=no
test_freetype=no
test_gtk=no
test_tde=no
test_kde=no
test_kde4=no
test_randr=no
@ -774,6 +781,21 @@ AC_ARG_ENABLE(xmlsec,
[Whether to enable XMLsec for open document signing.]),
)
AC_ARG_ENABLE(tde,
AS_HELP_STRING([--enable-tde],
[Determines whether to use TQt/TDE vclplug on platforms where TQt and
TDE are available.]),
,)
AC_ARG_ENABLE(tdeab,
AS_HELP_STRING([--disable-tdeab],
[Disable the TDE address book support.]),
,
if test "$enable_tde" = "yes"; then
enable_tdeab=yes;
fi
)
AC_ARG_ENABLE(kde,
AS_HELP_STRING([--enable-kde],
[Determines whether to use Qt3/KDE3 vclplug on platforms where Qt3 and
@ -3614,6 +3636,7 @@ if test "$enable_headless" = "yes"; then
test_fontconfig=yes
test_gtk=no
build_gstreamer=no
test_tde=no
test_kde=no
test_kde4=no
test_unix_quickstarter=no
@ -8663,6 +8686,13 @@ if test "x$enable_gtk" = "xyes"; then
fi
AC_SUBST(ENABLE_GTK)
ENABLE_TDE=""
if test "x$enable_tde" = "xyes"; then
ENABLE_TDE="TRUE"
R="$R tde"
fi
AC_SUBST(ENABLE_TDE)
ENABLE_KDE=""
if test "x$enable_kde" = "xyes"; then
ENABLE_KDE="TRUE"
@ -9366,6 +9396,135 @@ x86_64 | powerpc64 | s390x)
;;
esac
dnl ===================================================================
dnl Check whether the TQt and TDE libraries are available.
dnl ===================================================================
TDE_CFLAGS=""
TDE_LIBS=""
if test "$_os" != "OpenBSD"; then
MOC="moc"
fi
if test "$test_tde" = "yes" -a "$ENABLE_TDE" = "TRUE"; then
dnl Search paths for TQt and TDE
if test -z "$supports_multilib"; then
tqt_incdirs="$QTINC /usr/local/tqt3/include /usr/include/tqt3 /usr/include /usr/X11R6/include/X11/tqt3 /usr/X11R6/include/tqt3 /usr/lib/tqt3/include /usr/lib/tqt3/include /usr/share/tqt3/include /usr/local/include/X11/tqt3 $x_includes"
tqt_libdirs="$QTLIB /usr/local/tqt3/lib /usr/lib/tqt3 /usr/lib /usr/X11R6/lib/X11/tqt3 /usr/X11R6/lib/tqt3 /usr/lib/tqt3/lib /usr/lib/tqt3/lib /usr/share/tqt3/lib /usr/local/lib/tqt3 $x_libraries"
else
tqt_incdirs="$QTINC /usr/local/tqt3/include /usr/include/tqt3 /usr/include /usr/X11R6/include/X11/tqt3 /usr/X11R6/include/tqt3 /usr/lib64/tqt3/include /usr/lib64/tqt3/include /usr/share/tqt3/include /usr/lib/tqt3/include /usr/lib/tqt3/include /usr/local/include/X11/tqt3 $x_includes"
tqt_libdirs="$QTLIB /usr/local/tqt3/lib64 /usr/lib64/tqt3 /usr/lib64 /usr/X11R6/lib64/X11/tqt3 /usr/X11R6/lib64/tqt3 /usr/lib64/tqt3/lib64 /usr/lib64/tqt3/lib64 /usr/share/tqt3/lib64 /usr/local/tqt3/lib /usr/lib/tqt3 /usr/lib /usr/X11R6/lib/X11/tqt3 /usr/X11R6/lib/tqt3 /usr/lib/tqt3/lib /usr/lib/tqt3/lib /usr/share/tqt3/lib /usr/local/lib/tqt3 $x_libraries"
fi
if test -n "$TQTDIR"; then
tqt_incdirs="$TQTDIR/include $tqt_incdirs"
if test -z "$supports_multilib"; then
tqt_libdirs="$TQTDIR/lib $tqt_libdirs"
else
tqt_libdirs="$TQTDIR/lib64 $TQTDIR/lib $tqt_libdirs"
fi
fi
if test -z "$supports_multilib"; then
tde_incdirs="/usr/lib/trinity/include /usr/local/trinity/include /usr/local/include /usr/trinity/include /usr/include/trinity /opt/trinity/include /opt/trinity/include $x_includes"
tde_libdirs="/usr/lib/trinity/lib /usr/local/trinity/lib /usr/trinity/lib /usr/lib/trinity /usr/lib/trinity /usr/X11R6/lib /usr/local/lib /opt/trinity/lib /opt/trinity/lib /usr/X11R6/trinity/lib /usr/lib $x_libraries"
else
tde_incdirs="/usr/lib64/trinity/include /usr/lib/trinity/include /usr/local/trinity/include /usr/local/include /usr/trinity/include /usr/include/trinity /opt/trinity/include /opt/trinity/include $x_includes"
tde_libdirs="/usr/lib64/trinity/lib64 /usr/local/trinity/lib64 /usr/trinity/lib64 /usr/lib64/trinity /usr/lib64/trinity /usr/X11R6/lib64 /usr/local/lib64 /opt/trinity/lib64 /opt/trinity/lib64 /usr/X11R6/trinity/lib64 /usr/lib/trinity/lib /usr/local/trinity/lib /usr/trinity/lib /usr/lib/trinity /usr/lib/trinity /usr/lib /usr/X11R6/lib /usr/local/lib /opt/trinity/lib /opt/trinity/lib /usr/X11R6/trinity/lib /usr/lib64 $x_libraries"
fi
if test -n "$TDEDIR"; then
tde_incdirs="$TDEDIR/include $tde_incdirs"
if test -z "$supports_multilib"; then
tde_libdirs="$TDEDIR/lib $tde_libdirs"
else
tde_libdirs="$TDEDIR/lib64 $TDEDIR/lib $tde_libdirs"
fi
fi
dnl What to test
tqt_test_include="ntqstyle.h"
tde_test_include="kapp.h"
if test "$_os" != "OpenBSD"; then
tqt_test_library="libtqt-mt.so"
tde_test_library="libDCOP.so"
else
tqt_test_library="libtqt-mt.so*"
tde_test_library="libDCOP.so*"
fi
dnl Check for TQt headers
AC_MSG_CHECKING([for TQt headers])
tqt_incdir="no"
for tde_check in $tqt_incdirs; do
if test -r "$tde_check/$tqt_test_include"; then
tqt_incdir="$tde_check"
break
fi
done
AC_MSG_RESULT([$tqt_incdir])
if test "x$tqt_incdir" = "xno"; then
AC_MSG_ERROR([TQt headers not found. Please specify the root of
your TQt installation by exporting TQTDIR before running "configure".])
fi
dnl Check for TQt libraries
AC_MSG_CHECKING([for TQt libraries])
tqt_libdir="no"
for tqt_check in $tqt_libdirs; do
if test -r "`ls $tqt_check/$tqt_test_library 2>/dev/null | head -1`"; then
tqt_libdir="$tqt_check"
break
fi
done
AC_MSG_RESULT([$tqt_libdir])
if test "x$tqt_libdir" = "xno"; then
AC_MSG_ERROR([TQt libraries not found. Please specify the root of
your TQt installation by exporting TQTDIR before running "configure".])
fi
dnl Check for Meta Object Compiler
AC_PATH_PROG( MOC, moc, no, [`dirname $tqt_libdir`/bin:$TQTDIR/bin:$PATH] )
if test "$MOC" = "no"; then
AC_MSG_ERROR([TQt Meta Object Compiler not found. Please specify
the root of your TQt installation by exporting TQTDIR before running "configure".])
fi
dnl Check for TDE headers
AC_MSG_CHECKING([for TDE headers])
tde_incdir="no"
for tde_check in $tde_incdirs; do
if test -r "$tde_check/$tde_test_include"; then
tde_incdir="$tde_check"
break
fi
done
AC_MSG_RESULT([$tde_incdir])
if test "x$tde_incdir" = "xno"; then
AC_MSG_ERROR([TDE headers not found. Please specify the root of
your TDE installation by exporting TDEDIR before running "configure".])
fi
dnl Check for TDE libraries
AC_MSG_CHECKING([for TDE libraries])
tde_libdir="no"
for tde_check in $tde_libdirs; do
if test -r "`ls $tde_check/$tde_test_library 2>/dev/null | head -1`"; then
tde_libdir="$tde_check"
break
fi
done
AC_MSG_RESULT([$tde_libdir])
if test "x$tde_libdir" = "xno"; then
AC_MSG_ERROR([TDE libraries not found. Please specify the root of
your TDE installation by exporting TDEDIR before running "configure".])
fi
dnl Set the variables
TDE_CFLAGS="-I$tqt_incdir -I$tde_incdir -I/usr/include/tqt -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT"
TDE_LIBS="-L$tde_libdir -L$tqt_libdir -ltdeui -ltdecore -ltqt -ltqt-mt"
fi
AC_SUBST(TDE_CFLAGS)
AC_SUBST(TDE_LIBS)
AC_SUBST(MOC)
dnl ===================================================================
dnl Check whether the Qt3 and KDE3 libraries are available.
dnl ===================================================================
@ -9699,6 +9858,33 @@ AC_SUBST(ENABLE_EVOAB2)
AC_SUBST(GOBJECT_CFLAGS)
AC_SUBST(GOBJECT_LIBS)
dnl ===================================================================
dnl Test whether to include TDE AB support
dnl ===================================================================
AC_MSG_CHECKING([whether to enable TDE address book support])
if test "$enable_tdeab" = "yes" -a "$enable_tde" = "yes"; then
AC_MSG_RESULT([yes])
AC_LANG_PUSH([C++])
save_CXXFLAGS=$CXXFLAGS
CXXFLAGS="$CXXFLAGS $TDE_CFLAGS"
AC_MSG_CHECKING([whether TDE is at least R14.0])
AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <tdeversion.h>
int main(int argc, char **argv) {
if (TDE_VERSION_MAJOR >= 14) return 0;
else return 1;
}
]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([TDE version too old or too recent, please use another version of TDE or disable TDE address book support])],[])
CXXFLAGS=$save_CXXFLAGS
AC_LANG_POP([C++])
ENABLE_TDEAB=TRUE
else
AC_MSG_RESULT([no])
ENABLE_TDEAB=
fi
AC_SUBST(ENABLE_TDEAB)
dnl ===================================================================
dnl Test whether to include KDE AB support
dnl ===================================================================

View File

@ -11,6 +11,7 @@
..\source\cpool\*.xml %_DEST%\xml\*.xml
..\source\drivers\adabas\*.xml %_DEST%\xml\*.xml
..\source\drivers\ado\*.xml %_DEST%\xml\*.xml
..\source\drivers\tdeab\*.xml %_DEST%\xml\*.xml
..\source\drivers\kab\*.xml %_DEST%\xml\*.xml
..\source\drivers\macab\*.xml %_DEST%\xml\*.xml
..\source\drivers\file\*.xml %_DEST%\xml\*.xml
@ -45,6 +46,7 @@ mkdir: %_DEST%\xml\registry\spool\DataAccess
..\%__SRC%\misc\flat.component %_DEST%\xml\flat.component
..\%__SRC%\misc\hsqldb.component %_DEST%\xml\hsqldb.component
..\%__SRC%\misc\jdbc.component %_DEST%\xml\jdbc.component
..\%__SRC%\misc\tdeab1.component %_DEST%\xml\tdeab1.component
..\%__SRC%\misc\kab1.component %_DEST%\xml\kab1.component
..\%__SRC%\misc\macab1.component %_DEST%\xml\macab1.component
..\%__SRC%\misc\mozab.component %_DEST%\xml\mozab.component

View File

@ -34,6 +34,17 @@
#define KAB_DRIVER_VERSION_MAJOR 0
#define KAB_DRIVER_VERSION_MINOR 2
#ifdef ENABLE_TDE
// the minimum TDE version which is required at runtime
#define MIN_KDE_VERSION_MAJOR 14
#define MIN_KDE_VERSION_MINOR 0
#define MAX_KDE_VERSION_MAJOR 255
#define MAX_KDE_VERSION_MINOR 255
#else // ENABLE_TDE
// the minimum KDE version which is required at runtime
#define MIN_KDE_VERSION_MAJOR 3
#define MIN_KDE_VERSION_MINOR 2
@ -41,6 +52,8 @@
#define MAX_KDE_VERSION_MAJOR 3
#define MAX_KDE_VERSION_MINOR 6
#endif // ENABLE_TDE
#endif // CONNECTIVITY_KAB_KDEINIT_H

View File

@ -28,8 +28,6 @@
PRJ=..$/..$/..
PRJINC=..$/..
PRJNAME=connectivity
TARGET=kab
TARGET2=$(TARGET)drv
ENABLE_EXCEPTIONS=TRUE
VISIBILITY_HIDDEN=TRUE
@ -42,6 +40,9 @@ VISIBILITY_HIDDEN=TRUE
.IF "$(GUI)" == "UNX"
.IF "$(ENABLE_KAB)" == "TRUE"
TARGET=kab
TARGET2=$(TARGET)drv
CFLAGS+=$(KDE_CFLAGS)
.IF "$(KDE_ROOT)"!=""
@ -130,12 +131,113 @@ DEF2NAME= $(SHL2TARGET)
# --- Targets -----------------------------------
.ELSE # "$(ENABLE_KAB)" == "TRUE"
dummy:
# nothing
.IF "$(ENABLE_TDEAB)" == "TRUE"
TARGET=tdeab
TARGET2=$(TARGET)drv
CFLAGS+=$(TDE_CFLAGS)
CFLAGS+=-DENABLE_TDE -I$(SRCDIR)/shell/inc
CFLAGSCXX+=-DENABLE_TDE -I$(SRCDIR)/shell/inc
.IF "$(TDE_ROOT)"!=""
EXTRALIBPATHS+=-L$(TDE_ROOT)$/lib
.IF "$(OS)$(CPU)" == "LINUXX"
EXTRALIBPATHS+=-L$(TDE_ROOT)$/lib64
.ENDIF
.ENDIF
# === TDEAB base library ==========================
# --- Files -------------------------------------
SLOFILES= \
$(SLO)$/KDriver.obj \
$(SLO)$/KServices.obj
DEPOBJFILES= \
$(SLO2FILES)
# --- Library -----------------------------------
SHL1VERSIONMAP=$(SOLARENV)/src/component.map
SHL1TARGET= $(TARGET)$(TDEAB_MAJOR)
SHL1OBJS=$(SLOFILES)
SHL1STDLIBS=\
$(COMPHELPERLIB) \
$(CPPULIB) \
$(CPPUHELPERLIB) \
$(DBTOOLSLIB) \
$(SALLIB) \
$(SALHELPERLIB)
SHL1DEPN=
SHL1IMPLIB= i$(TARGET)
SHL1DEF= $(MISC)$/$(SHL1TARGET).def
DEF1NAME= $(SHL1TARGET)
# === TDEAB impl library ==========================
# --- Files -------------------------------------
SLO2FILES=\
$(SLO)$/KColumns.obj \
$(SLO)$/KTable.obj \
$(SLO)$/KTables.obj \
$(SLO)$/KCatalog.obj \
$(SLO)$/KResultSet.obj \
$(SLO)$/KStatement.obj \
$(SLO)$/KPreparedStatement.obj \
$(SLO)$/KDatabaseMetaData.obj \
$(SLO)$/KConnection.obj \
$(SLO)$/KResultSetMetaData.obj \
$(SLO)$/kcondition.obj \
$(SLO)$/korder.obj \
$(SLO)$/kfields.obj \
$(SLO)$/KDEInit.obj
TDEAB_LIB=$(TDE_LIBS) -lkabc
# --- Library -----------------------------------
SHL2VERSIONMAP=$(TARGET2).map
SHL2TARGET= $(TARGET2)$(TDEAB_MAJOR)
SHL2OBJS=$(SLO2FILES)
SHL2STDLIBS=\
$(CPPULIB) \
$(CPPUHELPERLIB) \
$(SALLIB) \
$(SALHELPERLIB) \
$(DBTOOLSLIB) \
$(COMPHELPERLIB) \
$(TDEAB_LIB)
SHL2DEPN=
SHL2IMPLIB= i$(TARGET2)
SHL2DEF= $(MISC)$/$(SHL2TARGET).def
DEF2NAME= $(SHL2TARGET)
# --- Targets -----------------------------------
.ELSE # "$(ENABLE_TDEAB)" == "TRUE"
TARGET=kab
TARGET2=$(TARGET)drv
dummy:
# nothing
.ENDIF
.ENDIF
.ELSE # "$(GUI)" == "UNX"
TARGET=kab
TARGET2=$(TARGET)drv
dummy:
# nothing
@ -145,10 +247,10 @@ dummy:
.INCLUDE : $(PRJ)$/target.pmk
ALLTAR : $(MISC)/kab1.component
ALLTAR : $(MISC)/$(TARGET)1.component
$(MISC)/kab1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
kab1.component
$(MISC)/$(TARGET)1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
$(TARGET)1.component
$(XSLTPROC) --nonet --stringparam uri \
'$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
$(SOLARENV)/bin/createcomponent.xslt kab1.component
$(SOLARENV)/bin/createcomponent.xslt $(TARGET)1.component

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--***********************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************ -->
<oor:component-data oor:name="Drivers" oor:package="org.openoffice.Office.DataAccess" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<node oor:name="Installed">
<node oor:name="sdbc:address:tdeab" oor:op="replace">
<prop oor:name="Driver">
<value>com.sun.star.comp.sdbc.tdeab.Driver</value>
</prop>
<prop oor:name="DriverTypeDisplayName" oor:type="xs:string">
<value xml:lang="en-US">TDE Address Book</value>
</prop>
<node oor:name="Features">
<node oor:name="EscapeDateTime" oor:op="replace">
<prop oor:name="Value" oor:type="xs:boolean">
<value>true</value>
</prop>
</node>
</node>
</node>
</node>
</oor:component-data>

View File

@ -0,0 +1,77 @@
<?xml version='1.0' encoding="UTF-8"?>
<!DOCTYPE COMPONENTDESCRIPTION PUBLIC "-//W3C//DTD HTML 3.2//EN" "module-description.dtd">
<module-description xmlns:xlink="http://www.w3.org/1999/xlink">
<module-name> tdeab1 </module-name>
<component-description>
<Author>Eric Bischoff</Author>
<Name>com.sun.star.comp.sdbc.tdeab.Driver</Name>
<description>This library implements the database driver for TDE address book formats.</description>
<loader-name>com.sun.star.loader.SharedLibrary</loader-name>
<language>c++</language>
<status value="final"/>
<supported-service>com.sun.star.sdbc.Driver</supported-service>
<service-dependency> ... </service-dependency>
</component-description>
<project-build-dependency> cppuhelper </project-build-dependency>
<project-build-dependency> cppu </project-build-dependency>
<project-build-dependency> sal </project-build-dependency>
<runtime-module-dependency> cppuhelper </runtime-module-dependency>
<runtime-module-dependency> cppu1 </runtime-module-dependency>
<runtime-module-dependency> sal1 </runtime-module-dependency>
<type> com.sun.star.registry.XRegistryKey </type>
<type> com.sun.star.util.XCancellable </type>
<type> com.sun.star.util.XNumberFormatter </type>
<type> com.sun.star.uno.TypeClass </type>
<type> com.sun.star.uno.XWeak </type>
<type> com.sun.star.uno.XAggregation </type>
<type> com.sun.star.uno.XComponentContext </type>
<type> com.sun.star.beans.PropertyAttribute </type>
<type> com.sun.star.beans.XPropertyState </type>
<type> com.sun.star.beans.XPropertySet </type>
<type> com.sun.star.beans.PropertyValue </type>
<type> com.sun.star.beans.XMultiPropertySet </type>
<type> com.sun.star.beans.XFastPropertySet </type>
<type> com.sun.star.lang.XSingleServiceFactory </type>
<type> com.sun.star.lang.XTypeProvider </type>
<type> com.sun.star.lang.XSingleComponentFactory </type>
<type> com.sun.star.lang.EventObject </type>
<type> com.sun.star.lang.XComponent </type>
<type> com.sun.star.lang.IllegalArgumentException </type>
<type> com.sun.star.lang.DisposedException </type>
<type> com.sun.star.lang.XMultiServiceFactory </type>
<type> com.sun.star.lang.XServiceInfo </type>
<type> com.sun.star.lang.XUnoTunnel </type>
<type> com.sun.star.java.XJavaThreadRegister_11 </type>
<type> com.sun.star.java.XJavaVM </type>
<type> com.sun.star.sdbc.FetchDirection </type>
<type> com.sun.star.sdbc.XConnection </type>
<type> com.sun.star.sdbc.XStatement </type>
<type> com.sun.star.sdbc.XResultSet </type>
<type> com.sun.star.sdbc.XResultSetMetaDataSupplier</type>
<type> com.sun.star.sdbc.XColumnLocate </type>
<type> com.sun.star.sdbc.XResultSetUpdate </type>
<type> com.sun.star.sdbc.XWarningsSupplier </type>
<type> com.sun.star.sdbc.XRowUpdate </type>
<type> com.sun.star.sdbc.XMultipleResults </type>
<type> com.sun.star.sdbc.XBatchExecution </type>
<type> com.sun.star.sdbc.XPreparedBatchExecution </type>
<type> com.sun.star.sdbc.XParameters </type>
<type> com.sun.star.sdbc.XOutParameters </type>
<type> com.sun.star.sdbc.DriverPropertyInfo </type>
<type> com.sun.star.sdbc.SQLWarning </type>
<type> com.sun.star.sdbc.XRow </type>
<type> com.sun.star.sdbc.ColumnSearch </type>
<type> com.sun.star.sdbc.ColumnValue </type>
<type> com.sun.star.sdbc.DataType </type>
<type> com.sun.star.sdbc.XDriver </type>
<type> com.sun.star.sdbc.TransactionIsolation </type>
<type> com.sun.star.sdbc.ResultSetType </type>
<type> com.sun.star.sdbc.ResultSetConcurrency </type>
<type> com.sun.star.sdbcx.XRowLocate </type>
<type> com.sun.star.sdbcx.XDeleteRows </type>
<type> com.sun.star.sdbcx.CompareBookmark </type>
<type> com.sun.star.sdb.XColumnUpdate </type>
<type> com.sun.star.sdb.XColumn </type>
</module-description>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--**********************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
**********************************************************************-->
<component loader="com.sun.star.loader.SharedLibrary"
xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.sdbc.tdeab.Driver">
<service name="com.sun.star.sdbc.Driver"/>
</implementation>
</component>

View File

@ -0,0 +1,9 @@
UDK_3_0_0 {
global:
createKabConnection;
initKApplication;
shutdownKApplication;
matchKDEVersion;
local:
*;
};

View File

@ -90,6 +90,17 @@ MYSQL_TARGET=mysql
# target
EVOAB_TARGET=evoab
# ----------------------------TDEab settings-------------------------------------#
# target
TDEAB_TARGET=tdeab
# the major
TDEAB_MAJOR=1
# the minor
TDEAB_MINOR=0
# the micro
TDEAB_MICRO=0
# ----------------------------Kab settings-------------------------------------#
# target
KAB_TARGET=kab

View File

@ -36,6 +36,7 @@ $(eval $(call gb_Library_set_include,cui,\
$(eval $(call gb_Library_add_defs,cui,\
$(if $(filter TRUE,$(ENABLE_GTK)),-DENABLE_GTK) \
$(if $(filter TRUE,$(ENABLE_TDE)),-DENABLE_TDE) \
$(if $(filter TRUE,$(ENABLE_KDE)),-DENABLE_KDE) \
$(if $(filter TRUE,$(ENABLE_KDE4)),-DENABLE_KDE4) \
))

View File

@ -140,6 +140,14 @@ namespace
return rtl::OUString();
#endif
}
else if ( rDesktopEnvironment.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("tde")) )
{
#ifdef ENABLE_TDE
return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.ui.dialogs.TDEFilePicker") );
#else
return rtl::OUString();
#endif
}
#if defined WNT
return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.ui.dialogs.SystemFilePicker") );
#elif (defined MACOSX && defined QUARTZ)

View File

@ -47,6 +47,7 @@ $(eval $(call gb_Pagein_add_objects,common,\
configmgr \
vclplug_gen \
$(if $(findstring TRUE,$(ENABLE_GTK)),vclplug_gtk) \
$(if $(findstring TRUE,$(ENABLE_TDE)),vclplug_tde) \
$(if $(findstring TRUE,$(ENABLE_KDE)),vclplug_kde) \
basegfx \
sot \

View File

@ -245,6 +245,14 @@ my_components += component/ucb/source/ucp/gio/ucpgio
my_components += component/ucb/source/ucp/gvfs/ucpgvfs
.END
.IF "$(ENABLE_TDEAB)" != ""
my_components += tdeab1
.END
.IF "$(ENABLE_TDE)" != ""
my_components += tdebe1
.END
.IF "$(ENABLE_KAB)" != ""
my_components += kab1
.END

View File

@ -332,6 +332,9 @@ MY_FILES_main += \
$(MY_MOD)/DataAccess/hsqldb.xcu \
$(MY_MOD)/DataAccess/jdbc.xcu
.END
.IF "$(ENABLE_TDEAB)" == "TRUE"
MY_FILES_main += $(MY_MOD)/DataAccess/tdeab.xcu
.END
.IF "$(ENABLE_KAB)" == "TRUE"
MY_FILES_main += $(MY_MOD)/DataAccess/kab.xcu
.END

View File

@ -13,6 +13,7 @@ cp scp2\source\gnome nmake - all cp_gnome cp_langmacros cp
cp scp2\source\graphicfilter nmake - all cp_graphicfilter cp_langmacros cp_langtemplates NULL
cp scp2\source\impress nmake - all cp_impress cp_langmacros cp_langtemplates NULL
cp scp2\source\javafilter nmake - all cp_javafilter cp_langmacros cp_langtemplates NULL
cp scp2\source\tde nmake - all cp_tde cp_langmacros cp_langtemplates NULL
cp scp2\source\kde nmake - all cp_kde cp_langmacros cp_langtemplates NULL
cp scp2\source\math nmake - all cp_math cp_langmacros cp_langtemplates NULL
cp scp2\source\ooo nmake - all cp_ooo cp_langmacros cp_langtemplates NULL
@ -27,4 +28,4 @@ cp scp2\source\xsltfilter nmake - all cp_xsltfilter cp_langmacr
cp scp2\source\winexplorerext nmake - all cp_winexplorerext cp_langmacros cp_langtemplates NULL
cp scp2\source\onlineupdate nmake - all cp_update cp_langmacros cp_langtemplates NULL
cp scp2\source\accessories nmake - all cp_accessories cp_langmacros NULL
cp scp2\util nmake - all cp_util cp_activex cp_binfilter cp_calc cp_canvas cp_crashrep cp_draw cp_extensions cp_gnome cp_graphicfilter cp_impress cp_javafilter cp_kde cp_math cp_ooo cp_python cp_quickstart cp_smoketest cp_stdlibs cp_writer cp_base cp_xsltfilter cp_winexplorerext cp_sdkoo cp_update cp_accessories NULL
cp scp2\util nmake - all cp_util cp_activex cp_binfilter cp_calc cp_canvas cp_crashrep cp_draw cp_extensions cp_gnome cp_graphicfilter cp_impress cp_javafilter cp_tde cp_kde cp_math cp_ooo cp_python cp_quickstart cp_smoketest cp_stdlibs cp_writer cp_base cp_xsltfilter cp_winexplorerext cp_sdkoo cp_update cp_accessories NULL

View File

@ -432,6 +432,22 @@ End
#ifdef UNX
#ifdef ENABLE_TDEAB
File gid_File_Lib_Tdeab_1
LIB_FILE_BODY;
Styles = (PACKED);
Dir = SCP2_OOO_BIN_DIR;
Name = STRING(CONCAT2(libtdeab1,UNXSUFFIX));
End
File gid_File_Lib_Tdeab_Drv_1
LIB_FILE_BODY;
Styles = (PACKED);
Dir = SCP2_OOO_BIN_DIR;
Name = STRING(CONCAT2(libtdeabdrv1,UNXSUFFIX));
End
#endif
#ifdef ENABLE_KAB
File gid_File_Lib_Kab_1
LIB_FILE_BODY;
@ -446,7 +462,6 @@ File gid_File_Lib_Kab_Drv_1
Dir = SCP2_OOO_BIN_DIR;
Name = STRING(CONCAT2(libkabdrv1,UNXSUFFIX));
End
#endif
#ifdef MACOSX
@ -463,8 +478,7 @@ File gid_File_Lib_Macab_Drv_1
Dir = SCP2_OOO_BIN_DIR;
Name = STRING(CONCAT2(libmacabdrv1,UNXSUFFIX));
End
#endif // #ifdef ENABLE_KAB
#endif // #ifdef MACOSX
#ifdef ENABLE_EVOAB2
@ -502,6 +516,17 @@ File gid_File_Lib_Desktopbe
Name = STRING(CONCAT2(desktopbe1.uno,UNXSUFFIX));
End
#ifdef ENABLE_TDE
#ifndef MACOSX
File gid_File_Bin_TdeFilePicker
BIN_FILE_BODY;
Styles = (PACKED);
Dir = gid_Brand_Dir_Program;
Name = "tdefilepicker";
End
#endif
#endif
#ifdef ENABLE_KDE
#ifndef MACOSX
File gid_File_Bin_KdeFilePicker
@ -991,6 +1016,16 @@ File gid_File_Lib_Vclplug_Gtk3
Dir = SCP2_OOO_BIN_DIR;
End
#endif
#ifdef ENABLE_TDE
#ifndef MACOSX
File gid_File_Lib_Vclplug_Tde
Name = LIBNAME(vclplug_tde);
LIB_FILE_BODY;
Styles = (PACKED);
Dir = SCP2_OOO_BIN_DIR;
End
#endif
#endif
#ifdef ENABLE_KDE
#ifndef MACOSX
File gid_File_Lib_Vclplug_Kde

View File

@ -181,6 +181,13 @@ File gid_File_Bin_Gnome_Open_Url_Bin
Styles = (PACKED);
End
File gid_File_Bin_Tde_Open_Url
BIN_FILE_BODY;
Dir = gid_Brand_Dir_Program;
Name = "tde-open-url";
Styles = (PACKED);
End
File gid_File_Bin_Kde_Open_Url
BIN_FILE_BODY;
Dir = gid_Brand_Dir_Program;

View File

@ -70,6 +70,10 @@ SCPDEFS+=-DENABLE_NSPLUGIN
SCPDEFS+=-DMERGELIBS
.ENDIF
.IF "$(ENABLE_TDE)" != ""
SCPDEFS+=-DENABLE_TDE
.ENDIF
.IF "$(ENABLE_KDE)" != ""
SCPDEFS+=-DENABLE_KDE
.ENDIF
@ -78,6 +82,10 @@ SCPDEFS+=-DENABLE_KDE
SCPDEFS+=-DENABLE_KDE4
.ENDIF
.IF "$(ENABLE_TDEAB)" != ""
SCPDEFS+=-DENABLE_TDEAB
.ENDIF
.IF "$(ENABLE_KAB)" != ""
SCPDEFS+=-DENABLE_KAB
.ENDIF

View File

@ -83,6 +83,7 @@ Module gid_Module_Root_Files_2
Default = YES;
Styles = (HIDDEN_ROOT);
Files = (gid_File_Bin_Cde_Open_Url,
gid_File_Bin_Tde_Open_Url,
gid_File_Bin_Kde_Open_Url,
gid_File_Bin_Open_Url,
gid_File_Bin_Pagein,
@ -273,6 +274,7 @@ Module gid_Module_Root_Files_4
gid_File_Lib_Odfflatxml,
gid_File_Lib_Zip,
gid_File_Lib_Vclplug_Gen,
gid_File_Lib_Vclplug_Tde,
gid_File_Lib_Vclplug_Kde,
gid_File_Lib_Vclplug_Kde4,
gid_File_Lib_Vclplug_Svp,
@ -347,6 +349,8 @@ Module gid_Module_Root_Files_5
gid_File_Lib_Dbpool,
gid_File_Lib_Embobj,
gid_File_Lib_Emboleobj,
gid_File_Lib_Tdeab_1,
gid_File_Lib_Tdeab_Drv_1,
gid_File_Lib_Kab_1,
gid_File_Lib_Kab_Drv_1,
gid_File_Lib_Macab_1,

View File

@ -0,0 +1,33 @@
/*************************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Initial Developer of the Original Code is
* Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*
************************************************************************/
#include "macros.inc"
#ifdef ENABLE_TDE
File gid_File_Lib_Tdebe
TXT_FILE_BODY;
Styles = (PACKED);
Dir = SCP2_OOO_BIN_DIR;
Name = STRING(CONCAT2(tdebe1.uno,UNXSUFFIX));
End
#endif

View File

@ -0,0 +1,56 @@
#*************************************************************************
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Initial Developer of the Original Code is
# Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
#
#*************************************************************************
PRJ=..$/..
PRJPCH=
PRJNAME=scp2
TARGET=tde
TARGETTYPE=CUI
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
SCP_PRODUCT_TYPE=osl
.IF "$(ENABLE_TDE)" == "TRUE"
.IF "$(ENABLE_TDE)" != ""
SCPDEFS+=-DENABLE_TDE
.ENDIF
PARFILES = \
module_tde.par \
file_tde.par
ULFFILES= \
module_tde.ulf
.ENDIF
# --- File ---------------------------------------------------------
.INCLUDE : target.mk

View File

@ -0,0 +1,41 @@
/*************************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Initial Developer of the Original Code is
* Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*
************************************************************************/
#include "macros.inc"
#if defined( ENABLE_TDE )
Module gid_Module_Optional_Tde
ParentID = gid_Module_Optional;
Default = YES;
PackageInfo = "packinfo_office.txt";
MOD_NAME_DESC(MODULE_OPTIONAL_TDE);
Styles = (DONTSHOWINUSERINSTALL);
Files = (
#ifdef ENABLE_TDE
gid_File_Lib_Tdebe
#endif // ENABLE_TDE
);
End
#endif

View File

@ -0,0 +1,30 @@
/*************************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Initial Developer of the Original Code is
* Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*
************************************************************************/
[STR_NAME_MODULE_OPTIONAL_TDE]
en-US = "TDE Integration"
[STR_DESC_MODULE_OPTIONAL_TDE]
en-US = "System integration of %PRODUCTNAME %PRODUCTVERSION into TDE."

View File

@ -203,6 +203,12 @@ SCP1FILES += \
module_kde.par \
file_kde.par
.ENDIF
.IF "$(ENABLE_TDE)" == "TRUE"
SCP1FILES += \
module_tde.par \
file_tde.par
.ENDIF
.ENDIF
.IF "$(ENABLE_CRASHDUMP)" != ""

View File

@ -32,6 +32,21 @@ destpath = "/opt"
packageversion = "%ABOUTBOXPRODUCTVERSION"
End
Start
module = "gid_Module_Optional_Tde"
solarispackagename = "%BASISPACKAGEPREFIX%WITHOUTDOTPRODUCTVERSION-tde-integration"
solarisrequires = "%BASISPACKAGEPREFIX%WITHOUTDOTPRODUCTVERSION-core01"
packagename = "%BASISPACKAGEPREFIX%PRODUCTVERSION-tde-integration"
freebsdrequires = "%BASISPACKAGEPREFIX%PRODUCTVERSION-core01"
requires = "%BASISPACKAGEPREFIX%PRODUCTVERSION-core01"
copyright = "1999-2012 by OpenOffice.org"
solariscopyright = "solariscopyrightfile"
vendor = "The Document Foundation"
description = "TDE integration module for %PRODUCTNAME %PRODUCTVERSION"
destpath = "/opt"
packageversion = "%ABOUTBOXPRODUCTVERSION"
End
Start
module = "gid_Module_Optional_Kde"
solarispackagename = "%BASISPACKAGEPREFIX%WITHOUTDOTPRODUCTVERSION-kde-integration"

View File

@ -29,6 +29,12 @@
#ifndef INCLUDED_VCL_KDE_HEADERS_H
#define INCLUDED_VCL_KDE_HEADERS_H
#ifdef ENABLE_TDE
#include "shell/tde_headers.h"
#else // ENABLE_TDE
/* ********* Suppress warnings if needed */
#include "sal/config.h"
@ -93,6 +99,8 @@
#include <kabc/field.h>
#include <kabc/stdaddressbook.h>
#endif // ENABLE_TDE
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@ -0,0 +1,93 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*************************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Initial Developer of the Original Code is
* Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*
************************************************************************/
#ifndef INCLUDED_VCL_TDE_DEFINE_HEADERS_H
#define INCLUDED_VCL_TDE_DEFINE_HEADERS_H
#define QObject TQObject
#define QWidget TQWidget
#define QVBox TQVBox
#define QHBox TQHBox
#define QGrid TQGrid
#define QString TQString
#define QStringList TQStringList
#define QCustomEvent TQCustomEvent
#define QMutex TQMutex
#define QEvent TQEvent
#define QFont TQFont
#define QDateTime TQDateTime
#define QThread TQThread
#define QStyle TQStyle
#define QApplication TQApplication
#define QRect TQRect
#define QProgressBar TQProgressBar
#define QPopupMenu TQPopupMenu
#define QMenuBar TQMenuBar
#define QToolButton TQToolButton
#define QToolBar TQToolBar
#define QScrollBar TQScrollBar
#define QListView TQListView
#define QSpinWidget TQSpinWidget
#define QScrollBar TQScrollBar
#define QLineEdit TQLineEdit
#define QComboBox TQComboBox
#define QCheckBox TQCheckBox
#define QRadioButton TQRadioButton
#define QPushButton TQPushButton
#define QPainter TQPainter
#define QResizeEvent TQResizeEvent
#define QShowEvent TQShowEvent
#define QPoint TQPoint
#define QDialog TQDialog
#define QFile TQFile
#define QLabel TQLabel
#define QObjectList TQObjectList
#define QCString TQCString
#define QRegExp TQRegExp
#define QSessionManager TQSessionManager
#define QPaintDevice TQPaintDevice
#define QTextIStream TQTextIStream
#define QTextStream TQTextStream
#define QMutexLocker TQMutexLocker
#define QValueList TQValueList
#define QTab TQTab
#define QTabBar TQTabBar
#define QTabWidget TQTabWidget
#define QMainWindow TQMainWindow
#define QPixmap TQPixmap
#define QColorGroup TQColorGroup
#define QStyleOption TQStyleOption
#define QSize TQSize
#define QMenuItem TQMenuItem
#define QFontInfo TQFontInfo
#define qSwap tqSwap
#define qt_cast tqt_cast
#define qt_xdisplay tqt_xdisplay
#define qVersion tqVersion
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@ -0,0 +1,97 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*************************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Initial Developer of the Original Code is
* Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*
************************************************************************/
#ifndef INCLUDED_VCL_TDE_HEADERS_H
#define INCLUDED_VCL_TDE_HEADERS_H
/* ********* Suppress warnings if needed */
#include "sal/config.h"
#include <cstddef>
#if defined __GNUC__
#pragma GCC system_header
#endif
/* ********* Hack, but needed because of conflicting types... */
#define Region TQtXRegion
/* ********* TQt headers */
#include <tqaccessible.h>
#include <tqcheckbox.h>
#include <tqcombobox.h>
#include <tqfont.h>
#include <tqframe.h>
#include <tqlineedit.h>
#include <tqlistview.h>
#include <tqmainwindow.h>
#include <tqmenudata.h>
#include <tqpaintdevice.h>
#include <tqpainter.h>
#include <tqpushbutton.h>
#include <tqradiobutton.h>
#include <tqrangecontrol.h>
#include <tqstring.h>
#include <tqtabbar.h>
#include <tqtabwidget.h>
#include <tqtoolbar.h>
#include <tqtoolbutton.h>
#include <tqwidget.h>
#include <tqprogressbar.h>
/* ********* See hack on top of this file */
#undef Region
/* ********* TDE base headers */
#include <kaboutdata.h>
#include <kapplication.h>
#include <kcmdlineargs.h>
#include <kconfig.h>
#include <tdeversion.h>
#include <kemailsettings.h>
#include <kglobal.h>
#include <kglobalsettings.h>
#include <klocale.h>
#include <kmainwindow.h>
#include <kmenubar.h>
#include <kprotocolmanager.h>
#include <kstartupinfo.h>
#include <kstyle.h>
/* ********* TDE address book connectivity headers */
#include <kabc/addressbook.h>
#include <kabc/addressee.h>
#include <kabc/field.h>
#include <kabc/stdaddressbook.h>
#include "tde_defines.h"
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@ -14,6 +14,7 @@
..\%__SRC%\bin\open-url %_DEST%\bin\open-url
..\%__SRC%\bin\cde-open-url %_DEST%\bin\cde-open-url
..\%__SRC%\bin\tde-open-url %_DEST%\bin\tde-open-url
..\%__SRC%\bin\kde-open-url %_DEST%\bin\kde-open-url
..\%__SRC%\bin\gnome-open-url %_DEST%\bin\gnome-open-url
..\%__SRC%\bin\gnome-open-url.bin %_DEST%\bin\gnome-open-url.bin
@ -25,9 +26,12 @@
..\%__SRC%\misc\desktopbe1.component %_DEST%\xml\desktopbe1.component
..\%__SRC%\misc\gconfbe1.component %_DEST%\xml\gconfbe1.component
..\%__SRC%\misc\tdebe1.component %_DEST%\xml\tdebe1.component
..\%__SRC%\misc\kde4be1.component %_DEST%\xml\kde4be1.component
..\%__SRC%\misc\kdebe1.component %_DEST%\xml\kdebe1.component
..\inc\kde_headers.h %_DEST%\inc\shell\kde_headers.h
..\inc\shell\tde_headers.h %_DEST%\inc\shell\tde_headers.h
..\inc\shell\tde_defines.h %_DEST%\inc\shell\tde_defines.h
..\inc\shell\kde_headers.h %_DEST%\inc\shell\kde_headers.h
..\%__SRC%\misc\localebe1.component %_DEST%\xml\localebe1.component
..\%__SRC%\misc\macbe1.component %_DEST%\xml\macbe1.component
..\%__SRC%\misc\smplmail.component %_DEST%\xml\smplmail.component

View File

@ -35,7 +35,7 @@
#include "rtl/string.h"
#include "rtl/ustring.hxx"
#include "kde_headers.h"
#include "shell/kde_headers.h"
#include "kdeaccess.hxx"

View File

@ -58,7 +58,7 @@
#include "uno/current_context.hxx"
#include "uno/lbnames.h"
#include "kde_headers.h"
#include "shell/kde_headers.h"
#include "kdeaccess.hxx"

View File

@ -27,8 +27,8 @@
PRJ=..$/..$/..
PRJNAME=shell
TARGET=kdebe
TARGET=kdebe
LIBTARGET=NO
ENABLE_EXCEPTIONS=TRUE
VISIBILITY_HIDDEN=TRUE
@ -47,7 +47,39 @@ CFLAGSCXX+=-Wno-shadow
# no "lib" prefix
DLLPRE =
.IF "$(ENABLE_TDE)" == "TRUE"
TARGET=tdebe
CFLAGS+=$(TDE_CFLAGS)
CFLAGS+=-DENABLE_TDE
CFLAGSCXX+=-DENABLE_TDE
# --- Files ---
SLOFILES=\
$(SLO)$/kdeaccess.obj \
$(SLO)$/kdebackend.obj
SHL1NOCHECK=TRUE
SHL1TARGET=$(TARGET)1.uno
SHL1OBJS=$(SLOFILES)
SHL1DEF=$(MISC)$/$(SHL1TARGET).def
SHL1IMPLIB=i$(SHL1TARGET)
SHL1STDLIBS= \
$(CPPUHELPERLIB) \
$(CPPULIB) \
$(SALLIB) \
$(TDE_LIBS) \
-lkio
SHL1DEF=$(MISC)$/$(SHL1TARGET).def
DEF1NAME=$(SHL1TARGET)
.ENDIF # "$(ENABLE_TDE)" == "TRUE"
.IF "$(ENABLE_KDE)" == "TRUE"
TARGET=kdebe
CFLAGS+=$(KDE_CFLAGS)
@ -79,10 +111,13 @@ DEF1NAME=$(SHL1TARGET)
.INCLUDE : target.mk
ALLTAR : $(MISC)/kdebe1.component
.IF "$(ENABLE_KDE)" == "TRUE" || "$(ENABLE_TDE)" == "TRUE"
$(MISC)/kdebe1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
kdebe1.component
ALLTAR : $(MISC)/$(TARGET)1.component
$(MISC)/$(TARGET)1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
$(TARGET)1.component
$(XSLTPROC) --nonet --stringparam uri \
'$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
$(SOLARENV)/bin/createcomponent.xslt kdebe1.component
$(SOLARENV)/bin/createcomponent.xslt $(TARGET)1.component
.ENDIF

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--**********************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
**********************************************************************-->
<component loader="com.sun.star.loader.SharedLibrary"
xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.configuration.backend.TDEBackend">
<service name="com.sun.star.configuration.backend.TDEBackend"/>
</implementation>
</component>

View File

@ -52,6 +52,7 @@ SCRIPTFILES = \
$(BIN)$/open-url \
$(BIN)$/cde-open-url \
$(BIN)$/gnome-open-url \
$(BIN)$/tde-open-url \
$(BIN)$/kde-open-url
APP1TARGET = gnome-open-url.bin

View File

@ -0,0 +1,10 @@
#!/bin/sh
# special handling for mailto: uris
if echo $1 | grep '^mailto:' > /dev/null; then
kmailservice "$1" &
else
kfmclient openURL "$1" &
fi
exit 0

View File

@ -228,6 +228,10 @@ ifneq ($(strip $(ENABLE_GTK)),)
gb_GLOBALDEFS += -DENABLE_GTK
endif
ifneq ($(strip $(ENABLE_TDE)),)
gb_GLOBALDEFS += -DENABLE_TDE
endif
ifneq ($(strip $(ENABLE_KDE)),)
gb_GLOBALDEFS += -DENABLE_KDE
endif

View File

@ -167,6 +167,18 @@ DLLPOST!:=$(DLLPOST).$($(UNIXVERSIONNAMES)_MAJOR)
.ENDIF
.ENDIF # "$(UNIXVERSIONNAMES)"!=""
# enable building/linking TDE-dependent code in both OOo and SO build environment
.IF "$(ENABLE_TDE)" != ""
.IF "$(TDE_ROOT)"!=""
TDE_CFLAGS:=-I$(TDE_ROOT)/include -I/usr/include/tqt -DQT_CLEAN_NAMESPACE
TDE_LIBS:=-ltdeui -ltdecore -ltqt -ltqt-mt
SOLARLIB+=-L$(TDE_ROOT)/lib
.IF "$(OS)$(CPU)" == "LINUXX"
SOLARLIB+=-L$(TDE_ROOT)/lib64
.ENDIF # "$(OS)$(CPU)" == "LINUXX"
.ENDIF # "$(TDE_ROOT)"!=""
.ENDIF # "$(ENABLE_TDE)" != ""
# enable building/linking KDE-dependent code in both OOo and SO build environment
.IF "$(ENABLE_KDE)" != ""
.IF "$(KDE_ROOT)"!=""

View File

@ -0,0 +1,39 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License or as specified alternatively below. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# Copyright (C) 2010 Red Hat, Inc., David Tardon <dtardon@redhat.com>
# (initial developer)
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
$(eval $(call gb_CustomTarget_CustomTarget,vcl/unx/kde/fpicker))
$(call gb_CustomTarget_get_target,vcl/unx/kde/fpicker) : \
$(call gb_CustomTarget_get_workdir,vcl/unx/kde/fpicker)/kdefilepicker.moc.cxx
$(call gb_CustomTarget_get_workdir,vcl/unx/kde/fpicker)/kdefilepicker.moc.cxx :\
$(SRCDIR)/vcl/unx/kde/fpicker/kdefilepicker.hxx \
| $(call gb_CustomTarget_get_workdir,vcl/unx/kde/fpicker)/.dir
$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),MOC,1)
$(MOC) -o $@ $<
# vim:set shiftwidth=4 tabstop=4 noexpandtab:

View File

@ -0,0 +1,71 @@
# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License or as specified alternatively below. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# Copyright (C) 2011 Matúš Kukan <matus.kukan@gmail.com> (initial developer)
# Copyright (C) 2012 Timothy Pearson (TDE)
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
$(eval $(call gb_Executable_Executable,tdefilepicker))
$(eval $(call gb_Executable_add_defs,tdefilepicker,\
$(TDE_CFLAGS) \
-DENABLE_TDE \
))
$(eval $(call gb_Executable_set_include,tdefilepicker,\
$$(INCLUDE) \
-I$(SRCDIR)/vcl/inc \
-I$(SRCDIR)/solenv/inc \
-I$(SRCDIR)/vcl/inc/unx/tde \
))
$(eval $(call gb_Executable_use_libraries,tdefilepicker,\
sal \
$(gb_STDLIBS) \
))
$(eval $(call gb_Executable_add_libs,tdefilepicker,\
$(TDE_LIBS) \
-lkio -lX11 \
))
$(eval $(call gb_Executable_add_exception_objects,tdefilepicker,\
vcl/unx/kde/fpicker/kdecommandthread \
vcl/unx/kde/fpicker/kdefilepicker \
vcl/unx/kde/fpicker/kdefpmain \
vcl/unx/kde/fpicker/kdemodalityfilter \
))
$(eval $(call gb_Executable_add_generated_cxxobjects,tdefilepicker,\
CustomTarget/vcl/unx/kde/fpicker/kdefilepicker.moc \
))
$(eval $(call gb_Executable_set_warnings_not_errors,tdefilepicker))
# TDE/TQt consider -Wshadow more trouble than benefit
$(eval $(call gb_Executable_add_cxxflags,kdefilepicker,\
-Wno-shadow \
))
# vim: set noet sw=4 ts=4:

107
vcl/Library_vclplug_tde.mk Normal file
View File

@ -0,0 +1,107 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#*************************************************************************
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Initial Developer of the Original Code is
# Timothy Pearson <kb9vqf@pearsoncomputing.net> (C) 2012, All Rights Reserved.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
#
#*************************************************************************
$(eval $(call gb_Library_Library,vclplug_tde))
$(eval $(call gb_Library_use_packages,vclplug_tde,\
fpicker_inc \
))
$(eval $(call gb_Library_set_include,vclplug_tde,\
$$(INCLUDE) \
-I$(SRCDIR)/vcl/inc \
-I$(SRCDIR)/solenv/inc \
-I$(SRCDIR)/vcl/inc/unx/tde \
))
$(eval $(call gb_Library_set_include,vclplug_tde,\
$$(INCLUDE) \
$$(TDE_CFLAGS) \
))
$(eval $(call gb_Library_add_defs,vclplug_tde,\
-DVCLPLUG_TDE_IMPLEMENTATION \
))
$(eval $(call gb_Library_use_api,vclplug_tde,\
offapi \
udkapi \
))
$(eval $(call gb_Library_add_libs,vclplug_tde,\
$$(TDE_LIBS) \
))
$(eval $(call gb_Library_use_libraries,vclplug_tde,\
vclplug_gen \
vcl \
tl \
utl \
sot \
ucbhelper \
basegfx \
comphelper \
cppuhelper \
i18nisolang1 \
i18nutil \
jvmaccess \
cppu \
sal \
X11 \
Xext \
SM \
ICE \
$(gb_STDLIBS) \
))
$(eval $(call gb_Library_use_externals,vclplug_tde,\
icule \
icuuc \
))
$(eval $(call gb_Library_add_exception_objects,vclplug_tde,\
vcl/unx/kde/kdedata \
vcl/unx/kde/salnativewidgets-kde \
vcl/unx/kde/UnxCommandThread \
vcl/unx/kde/UnxFilePicker \
vcl/unx/kde/UnxNotifyThread \
))
# TDE/TQt consider -Wshadow more trouble than benefit
$(eval $(call gb_Library_add_cxxflags,vclplug_tde,\
-Wno-shadow \
))
$(eval $(call gb_Library_set_warnings_not_errors,vclplug_tde))
ifeq ($(OS),LINUX)
$(eval $(call gb_Library_use_libraries,vclplug_tde,\
dl \
m \
pthread \
))
endif
# vim: set noet sw=4 ts=4:

View File

@ -55,6 +55,13 @@ $(eval $(call gb_Module_add_targets,vcl,\
Library_vclplug_gtk3 \
))
endif
ifneq ($(ENABLE_TDE),)
$(eval $(call gb_Module_add_targets,vcl,\
CustomTarget_tde_moc \
Executable_tdefilepicker \
Library_vclplug_tde \
))
endif
ifneq ($(ENABLE_KDE),)
$(eval $(call gb_Module_add_targets,vcl,\
CustomTarget_kde_moc \

View File

@ -38,7 +38,7 @@ class SalGenericDisplay;
class SalDisplay;
class GtkSalDisplay;
enum SalGenericDataType { SAL_DATA_GTK, SAL_DATA_GTK3,
SAL_DATA_KDE3, SAL_DATA_KDE4,
SAL_DATA_TDE3, SAL_DATA_KDE3, SAL_DATA_KDE4,
SAL_DATA_UNX, SAL_DATA_SVP,
SAL_DATA_ANDROID, SAL_DATA_IOS,
SAL_DATA_HEADLESS };

View File

@ -33,6 +33,7 @@ enum DesktopType {
DESKTOP_NONE, // headless, i.e. no X connection at all
DESKTOP_UNKNOWN, // unknown desktop, simple WM, etc.
DESKTOP_GNOME,
DESKTOP_TDE,
DESKTOP_KDE,
DESKTOP_KDE4,
DESKTOP_CDE

View File

@ -1,98 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
#ifndef INCLUDED_VCL_KDE_HEADERS_H
#define INCLUDED_VCL_KDE_HEADERS_H
/* ********* Suppress warnings if needed */
#include "sal/config.h"
#include <cstddef>
#if defined __GNUC__
#pragma GCC system_header
#endif
/* ********* Hack, but needed because of conflicting types... */
#define Region QtXRegion
/* ********* Qt headers */
#include <qaccessible.h>
#include <qcheckbox.h>
#include <qcombobox.h>
#include <qfont.h>
#include <qframe.h>
#include <qlineedit.h>
#include <qlistview.h>
#include <qmainwindow.h>
#include <qmenudata.h>
#include <qpaintdevice.h>
#include <qpainter.h>
#include <qpushbutton.h>
#include <qradiobutton.h>
#include <qrangecontrol.h>
#include <qstring.h>
#include <qtabbar.h>
#include <qtabwidget.h>
#include <qtoolbar.h>
#include <qtoolbutton.h>
#include <qwidget.h>
#include <qprogressbar.h>
/* ********* See hack on top of this file */
#undef Region
/* ********* KDE base headers */
#include <kaboutdata.h>
#include <kapplication.h>
#include <kcmdlineargs.h>
#include <kconfig.h>
#include <kdeversion.h>
#include <kemailsettings.h>
#include <kglobal.h>
#include <kglobalsettings.h>
#include <klocale.h>
#include <kmainwindow.h>
#include <kmenubar.h>
#include <kprotocolmanager.h>
#include <kstartupinfo.h>
#include <kstyle.h>
/* ********* KDE address book connectivity headers */
#include <kabc/addressbook.h>
#include <kabc/addressee.h>
#include <kabc/field.h>
#include <kabc/stdaddressbook.h>
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

114
vcl/inc/unx/tde/tdedata.hxx Normal file
View File

@ -0,0 +1,114 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
* Copyright 2012 Timothy Pearson
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
#ifndef _VCL_TDEDATA_HXX
#define _VCL_TDEDATA_HXX
#include <unx/saldisp.hxx>
#include <unx/saldata.hxx>
#include <unx/salframe.h>
class TDEData : public X11SalData
{
public:
TDEData( SalInstance *pInstance ) : X11SalData( SAL_DATA_TDE, pInstance ) {}
virtual ~TDEData();
virtual void Init();
virtual void initNWF();
virtual void deInitNWF();
};
class SalTDEDisplay : public SalX11Display
{
public:
SalTDEDisplay( Display* pDisp );
virtual ~SalTDEDisplay();
};
class TDESalFrame : public X11SalFrame
{
static const int nMaxGraphics = 2;
struct GraphicsHolder
{
X11SalGraphics* pGraphics;
bool bInUse;
GraphicsHolder()
: pGraphics( NULL ),
bInUse( false )
{}
~GraphicsHolder();
};
GraphicsHolder m_aGraphics[ nMaxGraphics ];
public:
TDESalFrame( SalFrame* pParent, sal_uLong );
virtual ~TDESalFrame();
virtual SalGraphics* GetGraphics();
virtual void ReleaseGraphics( SalGraphics *pGraphics );
virtual void updateGraphics( bool bClear );
virtual void UpdateSettings( AllSettings& rSettings );
virtual void Show( sal_Bool bVisible, sal_Bool bNoActivate );
};
class TDESalInstance : public X11SalInstance
{
public:
TDESalInstance( SalYieldMutex* pMutex )
: X11SalInstance( pMutex ) {}
virtual ~TDESalInstance() {}
virtual SalFrame* CreateFrame( SalFrame* pParent, sal_uLong nStyle );
};
class TDEXLib : public SalXLib
{
bool m_bStartupDone;
void* m_pApplication;
char** m_pFreeCmdLineArgs;
char** m_pAppCmdLineArgs;
int m_nFakeCmdLineArgs;
public:
TDEXLib() : SalXLib(),
m_bStartupDone( false ),
m_pApplication( NULL ),
m_pFreeCmdLineArgs( NULL ),
m_pAppCmdLineArgs( NULL ),
m_nFakeCmdLineArgs( 0 )
{}
virtual ~TDEXLib();
virtual void Init();
void doStartup();
};
#endif // _VCL_TDEDATA_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@ -44,6 +44,12 @@
#define VCLPLUG_GTK_PUBLIC SAL_DLLPUBLIC_IMPORT
#endif
#if defined VCLPLUG_TDE_IMPLEMENTATION
#define VCLPLUG_TDE_PUBLIC SAL_DLLPUBLIC_EXPORT
#else
#define VCLPLUG_TDE_PUBLIC SAL_DLLPUBLIC_IMPORT
#endif
#if defined VCLPLUG_KDE_IMPLEMENTATION
#define VCLPLUG_KDE_PUBLIC SAL_DLLPUBLIC_EXPORT
#else

View File

@ -1,4 +1,4 @@
vc vcl : TRANSLATIONS:translations apple_remote BOOST:boost officecfg DESKTOP:rsc sot ucbhelper unotools ICU:icu GRAPHITE:graphite i18npool i18nutil unoil ridljar X11_EXTENSIONS:x11_extensions offapi basegfx basebmp tools DESKTOP:l10ntools icc cpputools svl LIBXSLT:libxslt CAIRO:cairo FREETYPE:freetype FONTCONFIG:fontconfig fpicker NULL
vc vcl : TRANSLATIONS:translations apple_remote BOOST:boost officecfg DESKTOP:rsc sot ucbhelper unotools ICU:icu GRAPHITE:graphite i18npool i18nutil unoil ridljar X11_EXTENSIONS:x11_extensions offapi basegfx basebmp tools DESKTOP:l10ntools icc cpputools svl LIBXSLT:libxslt CAIRO:cairo FREETYPE:freetype FONTCONFIG:fontconfig fpicker shell NULL
vc vcl usr1 - all vc_mkout NULL
vc vcl\prj nmake - all vc_prj NULL

View File

@ -616,6 +616,8 @@ sal_uLong StyleSettings::GetAutoSymbolsStyle() const
( env.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("gnome")) ||
env.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("windows")) )
? STYLE_SYMBOLS_TANGO
: env.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("tde"))
? STYLE_SYMBOLS_CRYSTAL
: env.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("kde"))
? STYLE_SYMBOLS_CRYSTAL
: env.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("kde4"))

View File

@ -145,6 +145,47 @@ extern "C"
typedef int(* XErrorHandler)(Display*,XErrorEvent*);
}
static int TDEVersion( Display* pDisplay )
{
int nRet = 0;
Atom nFullSession = XInternAtom( pDisplay, "TDE_FULL_SESSION", True );
Atom nTDEVersion = XInternAtom( pDisplay, "TDE_SESSION_VERSION", True );
if( nFullSession )
{
if( !nTDEVersion )
return 14;
Atom aRealType = None;
int nFormat = 8;
unsigned long nItems = 0;
unsigned long nBytesLeft = 0;
unsigned char* pProperty = NULL;
XGetWindowProperty( pDisplay,
DefaultRootWindow( pDisplay ),
nTDEVersion,
0, 1,
False,
AnyPropertyType,
&aRealType,
&nFormat,
&nItems,
&nBytesLeft,
&pProperty );
if( !WasXError() && nItems != 0 && pProperty )
{
nRet = *reinterpret_cast< sal_Int32* >( pProperty );
}
if( pProperty )
{
XFree( pProperty );
pProperty = NULL;
}
}
return nRet;
}
static int KDEVersion( Display* pDisplay )
{
int nRet = 0;
@ -186,6 +227,19 @@ static int KDEVersion( Display* pDisplay )
return nRet;
}
static bool is_tde_desktop( Display* pDisplay )
{
if ( NULL != getenv( "TDE_FULL_SESSION" ) )
{
return true; // TDE
}
if ( TDEVersion( pDisplay ) >= 14 )
return true;
return false;
}
static bool is_kde_desktop( Display* pDisplay )
{
if ( NULL != getenv( "KDE_FULL_SESSION" ) )
@ -237,6 +291,8 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment()
{
OString aOver( pOverride );
if ( aOver.equalsIgnoreAsciiCase( "tde" ) )
return DESKTOP_TDE;
if ( aOver.equalsIgnoreAsciiCase( "kde4" ) )
return DESKTOP_KDE4;
if ( aOver.equalsIgnoreAsciiCase( "gnome" ) )
@ -295,7 +351,9 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment()
XErrorHandler pOldHdl = XSetErrorHandler( autodect_error_handler );
if ( is_kde4_desktop( pDisplay ) )
if ( is_tde_desktop( pDisplay ) )
ret = DESKTOP_TDE;
else if ( is_kde4_desktop( pDisplay ) )
ret = DESKTOP_KDE4;
else if ( is_gnome_desktop( pDisplay ) )
ret = DESKTOP_GNOME;

View File

@ -98,7 +98,7 @@ static SalInstance* tryInstance( const OUString& rModuleBase, bool bForce = fals
* #i109007# KDE3 seems to have the same problem.
* And same applies for KDE4.
*/
if( rModuleBase == "gtk" || rModuleBase == "gtk3" || rModuleBase == "kde" || rModuleBase == "kde4" )
if( rModuleBase == "gtk" || rModuleBase == "gtk3" || rModuleBase == "tde" || rModuleBase == "kde" || rModuleBase == "kde4" )
{
pCloseModule = NULL;
}
@ -159,6 +159,11 @@ static DesktopType get_desktop_environment()
static SalInstance* autodetect_plugin()
{
static const char* pTDEFallbackList[] =
{
"tde", "kde4", "kde", "gtk3", "gtk", "gen", 0
};
static const char* pKDEFallbackList[] =
{
"kde4", "kde", "gtk3", "gtk", "gen", 0
@ -183,6 +188,11 @@ static SalInstance* autodetect_plugin()
pList = pHeadlessFallbackList;
else if ( desktop == DESKTOP_GNOME )
pList = pStandardFallbackList;
else if( desktop == DESKTOP_TDE )
{
pList = pTDEFallbackList;
nListEntry = 1;
}
else if( desktop == DESKTOP_KDE )
{
pList = pKDEFallbackList;
@ -236,7 +246,7 @@ SalInstance *CreateSalInstance()
pInst = autodetect_plugin();
// fallback, try everything
const char* pPlugin[] = { "gtk3", "gtk", "kde4", "kde", "gen", 0 };
const char* pPlugin[] = { "gtk3", "gtk", "tde", "kde4", "kde", "gen", 0 };
for ( int i = 0; !pInst && pPlugin[ i ]; ++i )
pInst = tryInstance( OUString::createFromAscii( pPlugin[ i ] ) );
@ -291,7 +301,7 @@ void SalAbort( const rtl::OUString& rErrorText, bool bDumpCore )
_exit(1);
}
static const char * desktop_strings[] = { "none", "unknown", "GNOME", "KDE", "KDE4" };
static const char * desktop_strings[] = { "none", "unknown", "GNOME", "TDE", "KDE", "KDE4" };
const OUString& SalGetDesktopEnvironment()
{

View File

@ -30,18 +30,33 @@
#ifndef _FPSERVICEINFO_HXX_
#define _FPSERVICEINFO_HXX_
#ifdef ENABLE_TDE
// the service names
#define FILE_PICKER_SERVICE_NAME "com.sun.star.ui.dialogs.TDEFilePicker"
// the registry key names
// a key under which this service will be registered,
// Format: -> "/ImplName/UNO/SERVICES/ServiceName"
// <Implementation-Name></UNO/SERVICES/><Service-Name>
#define FILE_PICKER_REGKEY_NAME "/com.sun.star.ui.dialogs.UnxFilePicker/UNO/SERVICES/com.sun.star.ui.dialogs.TDEFilePicker"
#else // ENABLE_TDE
// the service names
#define FILE_PICKER_SERVICE_NAME "com.sun.star.ui.dialogs.KDEFilePicker"
// the implementation names
#define FILE_PICKER_IMPL_NAME "com.sun.star.ui.dialogs.UnxFilePicker"
// the registry key names
// a key under which this service will be registered,
// Format: -> "/ImplName/UNO/SERVICES/ServiceName"
// <Implementation-Name></UNO/SERVICES/><Service-Name>
#define FILE_PICKER_REGKEY_NAME "/com.sun.star.ui.dialogs.UnxFilePicker/UNO/SERVICES/com.sun.star.ui.dialogs.KDEFilePicker"
#endif // ENABLE_TDE
// the implementation names
#define FILE_PICKER_IMPL_NAME "com.sun.star.ui.dialogs.UnxFilePicker"
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@ -30,7 +30,11 @@
#include <kdecommandthread.hxx>
#ifdef ENABLE_TDE
#include <tqstringlist.h>
#else // ENABLE_TDE
#include <qstringlist.h>
#endif // ENABLE_TDE
#include <kapplication.h>

View File

@ -29,9 +29,19 @@
#ifndef _KDECOMMANDTHREAD_HXX_
#define _KDECOMMANDTHREAD_HXX_
#ifdef ENABLE_TDE
#include <shell/tde_defines.h>
#endif // ENABLE_TDE
#ifdef ENABLE_TDE
#include <tqevent.h>
#include <tqmutex.h>
#include <tqthread.h>
#else // ENABLE_TDE
#include <qevent.h>
#include <qmutex.h>
#include <qthread.h>
#endif // ENABLE_TDE
class KDECommandEvent : public QCustomEvent
{

View File

@ -31,6 +31,34 @@
#include <kdecommandthread.hxx>
#include <kdefilepicker.hxx>
#ifdef ENABLE_TDE
#include <tqcheckbox.h>
#include <tqcombobox.h>
#include <tqgrid.h>
#include <tqhbox.h>
#include <tqlabel.h>
#include <tqlayout.h>
#include <tqobjectlist.h>
#include <tqpushbutton.h>
#include <tqregexp.h>
#include <tqvbox.h>
#ifdef TQT_NO_EMIT
#define emit
#endif
#include <tdeversion.h>
#include <kdiroperator.h>
#include <kfiledialog.h>
#include <kfilefiltercombo.h>
#include <kio/netaccess.h>
#include <klocale.h>
#include <kmessagebox.h>
#include <ktempfile.h>
#else // ENABLE_TDE
#include <qcheckbox.h>
#include <qcombobox.h>
#include <qgrid.h>
@ -55,6 +83,8 @@
#include <kmessagebox.h>
#include <ktempfile.h>
#endif // ENABLE_TDE
#include <algorithm>
#include <iostream>

View File

@ -29,6 +29,10 @@
#ifndef _KDEFILEPICKER_HXX_
#define _KDEFILEPICKER_HXX_
#ifdef ENABLE_TDE
#include <shell/tde_defines.h>
#endif // ENABLE_TDE
#include <cstddef>
#include <kfiledialog.h>
@ -40,7 +44,11 @@ class QVBox;
class KDEFileDialog : public KFileDialog
{
#ifdef ENABLE_TDE
TQ_OBJECT
#else // ENABLE_TDE
Q_OBJECT
#endif // ENABLE_TDE
protected:
typedef QPair< QString, QString > FilterEntry;

View File

@ -39,6 +39,14 @@
#include <iostream>
#include <stdlib.h>
#ifdef ENABLE_TDE
#define THIS_DESKENV_NAME_CAP "TDE"
#define THIS_DESKENV_NAME_LOW "tde"
#else // ENABLE_TDE
#define THIS_DESKENV_NAME_CAP "KDE"
#define THIS_DESKENV_NAME_LOW "kde"
#endif // ENABLE_TDE
//////////////////////////////////////////////////////////////////////////
// Main
//////////////////////////////////////////////////////////////////////////
@ -54,13 +62,13 @@ int main( int argc, char* argv[] )
// we fake the name of the application to have "LibreOffice" in the
// title
KAboutData qAboutData( "kdefilepicker", I18N_NOOP( "LibreOffice" ),
"0.1", I18N_NOOP( "kdefilepicker is an implementation of the KDE file dialog for LibreOffice." ),
"0.1", I18N_NOOP( "kdefilepicker is an implementation of the " THIS_DESKENV_NAME_CAP " file dialog for LibreOffice." ),
KAboutData::License_LGPL,
"(c) 2004, Jan Holesovsky" );
qAboutData.addAuthor( "Jan Holesovsky", I18N_NOOP("Original author and current maintainer"), "kendy@openoffice.org" );
// Let the user see that this does something...
::std::cerr << "kdefilepicker, an implementation of KDE file dialog for OOo." << ::std::endl
::std::cerr << "kdefilepicker, an implementation of a " THIS_DESKENV_NAME_CAP " file dialog for OOo." << ::std::endl
<< "Type 'exit' and press Enter to finish." << ::std::endl;
KCmdLineArgs::addCmdLineOptions( sOptions );
@ -77,7 +85,7 @@ int main( int argc, char* argv[] )
KDEModalityFilter qModalityFilter( nWinId );
KDEFileDialog aFileDialog( NULL, QString(), NULL, "kdefiledialog" );
KDEFileDialog aFileDialog( NULL, QString(), NULL, THIS_DESKENV_NAME_LOW "filedialog" );
KDECommandThread qCommandThread( &aFileDialog );
qCommandThread.start();

View File

@ -29,7 +29,15 @@
#ifndef _KDEMODALITYFILTER_HXX_
#define _KDEMODALITYFILTER_HXX_
#ifdef ENABLE_TDE
#include <shell/tde_defines.h>
#endif // ENABLE_TDE
#ifdef ENABLE_TDE
#include <tqobject.h>
#else // ENABLE_TDE
#include <qobject.h>
#endif // ENABLE_TDE
class KDEModalityFilter : public QObject
{

View File

@ -28,7 +28,8 @@
#define _SV_SALDATA_CXX
#include <unx/kde/kde_headers.h>
#include <shell/kde_headers.h>
#include <unistd.h>
#include <fcntl.h>
@ -56,6 +57,14 @@
#include "vclpluginapi.h"
#ifdef ENABLE_TDE
#define THIS_DESKENV_NAME_CAP "TDE"
#define THIS_DESKENV_NAME_LOW "tde"
#else // ENABLE_TDE
#define THIS_DESKENV_NAME_CAP "KDE"
#define THIS_DESKENV_NAME_LOW "kde"
#endif // ENABLE_TDE
/* #i59042# override KApplications method for session management
* since it will interfere badly with our own.
*/
@ -123,7 +132,7 @@ void KDEXLib::Init()
KAboutData *kAboutData = new KAboutData( "LibreOffice",
I18N_NOOP( "LibreOffice" ),
"1.1.0",
I18N_NOOP( "LibreOffice with KDE Native Widget Support." ),
I18N_NOOP( "LibreOffice with " THIS_DESKENV_NAME_CAP " Native Widget Support." ),
KAboutData::License_LGPL,
"(c) 2003, 2004 Novell, Inc",
I18N_NOOP( "LibreOffice is an office suite.\n" ),

View File

@ -28,7 +28,9 @@
#define _SV_SALNATIVEWIDGETS_KDE_CXX
#include <unx/kde/kde_headers.h>
#include <shell/kde_headers.h>
#include "UnxFilePicker.hxx"
#include <unx/salunx.h>