[Libreoffice-commits] .: Branch 'feature/calc-key-binding-compat' - 36 commits - l10ntools/java l10ntools/prj l10ntools/scripts l10ntools/source padmin/source svtools/inc svtools/source toolkit/inc toolkit/source tools/source unotools/inc unotools/source vcl/aqua vcl/inc vcl/source vcl/unx
Kohei Yoshida
kohei at kemper.freedesktop.org
Mon Nov 1 13:08:20 PDT 2010
l10ntools/java/jpropex/java/JPropEx.java | 11 -
l10ntools/java/jpropex/java/SdfData.java | 2
l10ntools/java/jpropex/java/SdfEntity.java | 1
l10ntools/prj/d.lst | 3
l10ntools/scripts/localize.pl | 124 +------------
l10ntools/scripts/tool/l10ntool.py | 3
l10ntools/scripts/tool/xhtex.py | 7
l10ntools/source/help/HelpLinker.cxx | 12 -
padmin/source/spadmin.sh | 13 +
svtools/inc/bindablecontrolhelper.hxx | 61 ++++++
svtools/inc/filterutils.hxx | 22 ++
svtools/source/brwbox/brwbox2.cxx | 7
svtools/source/control/tabbar.cxx | 3
svtools/source/misc/bindablecontrolhelper.cxx | 161 +++++++++++++++++
svtools/source/misc/filterutils.cxx | 55 ++++++
svtools/source/misc/makefile.mk | 2
toolkit/inc/toolkit/awt/vclxmenu.hxx | 2
toolkit/inc/toolkit/awt/vclxwindows.hxx | 8
toolkit/inc/toolkit/controls/dialogcontrol.hxx | 44 +++-
toolkit/inc/toolkit/controls/unocontrols.hxx | 39 ++++
toolkit/inc/toolkit/helper/property.hxx | 3
toolkit/inc/toolkit/helper/servicenames.hxx | 2
toolkit/source/awt/vclxmenu.cxx | 13 +
toolkit/source/awt/vclxwindows.cxx | 83 ++++++---
toolkit/source/controls/dialogcontrol.cxx | 227 +++++++++++++++++--------
toolkit/source/controls/unocontrolmodel.cxx | 1
toolkit/source/controls/unocontrols.cxx | 77 ++++++++
toolkit/source/helper/property.cxx | 2
toolkit/source/helper/registerservices.cxx | 6
toolkit/source/helper/servicenames.cxx | 4
tools/source/stream/strmunx.cxx | 2
tools/source/string/makefile.mk | 2
unotools/inc/unotools/configmgr.hxx | 4
unotools/inc/unotools/fltrcfg.hxx | 2
unotools/source/config/configitem.cxx | 2
unotools/source/config/configmgr.cxx | 22 --
unotools/source/config/docinfohelper.cxx | 41 ++--
unotools/source/config/fltrcfg.cxx | 62 ++++++
unotools/source/config/pathoptions.cxx | 2
unotools/source/config/useroptions.cxx | 2
vcl/aqua/inc/salframeview.h | 4
vcl/aqua/source/app/salinst.cxx | 4
vcl/aqua/source/window/salframeview.mm | 65 ++++---
vcl/inc/vcl/bitmap.hxx | 6
vcl/inc/vcl/bitmapex.hxx | 1
vcl/inc/vcl/dialog.hxx | 4
vcl/inc/vcl/svapp.hxx | 1
vcl/source/app/svapp.cxx | 5
vcl/source/control/combobox.cxx | 27 +-
vcl/source/gdi/bitmap2.cxx | 30 ++-
vcl/source/gdi/bitmapex.cxx | 56 ++++++
vcl/source/gdi/metaact.cxx | 2
vcl/source/gdi/outdev2.cxx | 11 -
vcl/source/window/dialog.cxx | 27 ++
vcl/source/window/toolbox2.cxx | 2
vcl/source/window/window.cxx | 31 ++-
vcl/unx/gtk/a11y/atklistener.cxx | 6
vcl/unx/gtk/a11y/atktextattributes.cxx | 2
vcl/unx/gtk/a11y/atkutil.cxx | 6
vcl/unx/gtk/app/gtksys.cxx | 6
vcl/unx/gtk/window/gtkobject.cxx | 6
vcl/unx/source/app/keysymnames.cxx | 6
vcl/unx/source/app/saldisp.cxx | 2
vcl/unx/source/fontmanager/fontconfig.cxx | 19 +-
vcl/unx/source/window/salframe.cxx | 10 -
65 files changed, 1092 insertions(+), 386 deletions(-)
New commits:
commit e9bcdc225d05ac6afe6ac16e335a53f5cc24737d
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Oct 13 15:41:23 2010 +0100
tweaks for AIX
diff --git a/vcl/unx/gtk/a11y/atklistener.cxx b/vcl/unx/gtk/a11y/atklistener.cxx
index 7b63d25..4790585 100644
--- a/vcl/unx/gtk/a11y/atklistener.cxx
+++ b/vcl/unx/gtk/a11y/atklistener.cxx
@@ -28,6 +28,12 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_vcl.hxx"
+#ifdef AIX
+#define _LINUX_SOURCE_COMPAT
+#include <sys/timer.h>
+#undef _LINUX_SOURCE_COMPAT
+#endif
+
#include <com/sun/star/accessibility/TextSegment.hpp>
#include <com/sun/star/accessibility/AccessibleEventId.hpp>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
diff --git a/vcl/unx/gtk/a11y/atktextattributes.cxx b/vcl/unx/gtk/a11y/atktextattributes.cxx
index 0449881..6460dea 100644
--- a/vcl/unx/gtk/a11y/atktextattributes.cxx
+++ b/vcl/unx/gtk/a11y/atktextattributes.cxx
@@ -1092,7 +1092,7 @@ TabStopList2String( const uno::Any& rAny, bool default_tabs )
if( ret )
{
gchar * old_tab_str = ret;
- ret = g_strconcat(old_tab_str, " ", tab_str, NULL /* terminated */);
+ ret = g_strconcat(old_tab_str, " ", tab_str, (const char*)NULL);
g_free( old_tab_str );
}
else
diff --git a/vcl/unx/gtk/a11y/atkutil.cxx b/vcl/unx/gtk/a11y/atkutil.cxx
index fce5916..71a6be6 100644
--- a/vcl/unx/gtk/a11y/atkutil.cxx
+++ b/vcl/unx/gtk/a11y/atkutil.cxx
@@ -28,6 +28,12 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_vcl.hxx"
+#ifdef AIX
+#define _LINUX_SOURCE_COMPAT
+#include <sys/timer.h>
+#undef _LINUX_SOURCE_COMPAT
+#endif
+
#include <com/sun/star/accessibility/XAccessibleContext.hpp>
#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
diff --git a/vcl/unx/gtk/app/gtksys.cxx b/vcl/unx/gtk/app/gtksys.cxx
index c928b6f..1a4f97f 100644
--- a/vcl/unx/gtk/app/gtksys.cxx
+++ b/vcl/unx/gtk/app/gtksys.cxx
@@ -28,6 +28,12 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_vcl.hxx"
+#ifdef AIX
+#define _LINUX_SOURCE_COMPAT
+#include <sys/timer.h>
+#undef _LINUX_SOURCE_COMPAT
+#endif
+
#include <svunx.h>
#include <vcl/svdata.hxx>
#include <vcl/window.hxx>
diff --git a/vcl/unx/gtk/window/gtkobject.cxx b/vcl/unx/gtk/window/gtkobject.cxx
index b7b5406..64ca348 100644
--- a/vcl/unx/gtk/window/gtkobject.cxx
+++ b/vcl/unx/gtk/window/gtkobject.cxx
@@ -28,6 +28,12 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_vcl.hxx"
+#ifdef AIX
+#define _LINUX_SOURCE_COMPAT
+#include <sys/timer.h>
+#undef _LINUX_SOURCE_COMPAT
+#endif
+
#include <plugins/gtk/gtkobject.hxx>
#include <plugins/gtk/gtkframe.hxx>
#include <plugins/gtk/gtkdata.hxx>
diff --git a/vcl/unx/source/app/keysymnames.cxx b/vcl/unx/source/app/keysymnames.cxx
index 7a4f984..5ef9e5a 100644
--- a/vcl/unx/source/app/keysymnames.cxx
+++ b/vcl/unx/source/app/keysymnames.cxx
@@ -28,7 +28,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_vcl.hxx"
-#ifndef SOLARIS
+#if !defined(SOLARIS) && !defined(AIX)
#include <tools/prex.h>
#include <X11/XKBlib.h>
#include <tools/postx.h>
@@ -601,7 +601,7 @@ const char* SalDisplay::GetKeyboardName( bool bRefresh )
{
if( bRefresh || ! m_aKeyboardName.Len() )
{
-#ifdef SOLARIS
+#if defined(SOLARIS)
if( IsLocal() )
{
int kbd = open( "/dev/kbd", O_RDONLY );
@@ -640,7 +640,7 @@ const char* SalDisplay::GetKeyboardName( bool bRefresh )
close(kbd);
}
}
-#else
+#elif !defined(AIX)
int opcode, event, error;
int major = XkbMajorVersion, minor = XkbMinorVersion;
if( XkbQueryExtension( GetDisplay(), &opcode, &event,&error, &major, &minor ) )
diff --git a/vcl/unx/source/app/saldisp.cxx b/vcl/unx/source/app/saldisp.cxx
index 2a17766..6251781 100644
--- a/vcl/unx/source/app/saldisp.cxx
+++ b/vcl/unx/source/app/saldisp.cxx
@@ -41,7 +41,7 @@
#include <ctype.h>
#include <string.h>
-#if defined(SOLARIS)
+#if defined(SOLARIS) || defined(AIX)
#include <sal/alloca.h>
#include <osl/module.h>
#endif
diff --git a/vcl/unx/source/window/salframe.cxx b/vcl/unx/source/window/salframe.cxx
index ddadc77..99ae82e 100644
--- a/vcl/unx/source/window/salframe.cxx
+++ b/vcl/unx/source/window/salframe.cxx
@@ -38,7 +38,7 @@
#include <X11/keysym.h>
#include "FWS.hxx"
#include <X11/extensions/shape.h>
-#ifndef SOLARIS
+#if !defined(SOLARIS) && !defined(AIX)
#include <X11/extensions/dpms.h>
#endif
#include <tools/postx.h>
@@ -2360,7 +2360,7 @@ void X11SalFrame::StartPresentation( BOOL bStart )
// needs static here to save DPMS settings
int dummy;
static bool DPMSExtensionAvailable =
-#ifndef SOLARIS
+#if !defined(SOLARIS) && !defined(AIX)
(DPMSQueryExtension(GetXDisplay(), &dummy, &dummy) != 0);
static XLIB_BOOL DPMSEnabled = false;
#else
@@ -2395,7 +2395,7 @@ void X11SalFrame::StartPresentation( BOOL bStart )
// get the DPMS state right before the start
if (DPMSExtensionAvailable)
{
-#ifndef SOLARIS
+#if !defined(SOLARIS) && !defined(AIX)
CARD16 state; // card16 is defined in Xdm.h
DPMSInfo( GetXDisplay(),
&state,
@@ -2414,7 +2414,7 @@ void X11SalFrame::StartPresentation( BOOL bStart )
prefer_blanking,
allow_exposures );
}
-#ifndef SOLARIS
+#if !defined(SOLARIS) && !defined(AIX)
if( DPMSEnabled )
{
if ( DPMSExtensionAvailable )
@@ -2439,7 +2439,7 @@ void X11SalFrame::StartPresentation( BOOL bStart )
allow_exposures );
nScreenSaversTimeout_ = 0;
}
-#ifndef SOLARIS
+#if !defined(SOLARIS) && !defined(AIX)
if ( DPMSEnabled )
{
if ( DPMSExtensionAvailable )
commit 2f6c52290594fa8fc15e28cb564d129f9d053487
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Oct 13 15:37:04 2010 +0100
fixes for AIX
diff --git a/tools/source/stream/strmunx.cxx b/tools/source/stream/strmunx.cxx
index 753b9a6..2212861 100644
--- a/tools/source/stream/strmunx.cxx
+++ b/tools/source/stream/strmunx.cxx
@@ -209,7 +209,7 @@ static sal_uInt32 GetSvError( int nErrno )
{ 0, SVSTREAM_OK },
{ EACCES, SVSTREAM_ACCESS_DENIED },
{ EBADF, SVSTREAM_INVALID_HANDLE },
-#if defined( RS6000 ) || defined( ALPHA ) || defined( HP9000 ) || defined( NETBSD ) || defined(FREEBSD) || defined(MACOSX) || defined(__FreeBSD_kernel__)
+#if defined( RS6000 ) || defined( ALPHA ) || defined( HP9000 ) || defined( NETBSD ) || defined(FREEBSD) || defined(MACOSX) || defined(__FreeBSD_kernel__) || defined ( AIX )
{ EDEADLK, SVSTREAM_LOCKING_VIOLATION },
#else
{ EDEADLOCK, SVSTREAM_LOCKING_VIOLATION },
diff --git a/tools/source/string/makefile.mk b/tools/source/string/makefile.mk
index 4caa316..255feac 100644
--- a/tools/source/string/makefile.mk
+++ b/tools/source/string/makefile.mk
@@ -37,7 +37,9 @@ TARGET=str
# --- Files --------------------------------------------------------
+.IF "$(OS)"!="AIX"
ALWAYSDBGFILES = $(SLO)$/debugprint.obj
+.ENDIF
.IF "$(ALWAYSDBGFILES)" != ""
ALWAYSDBGTARGET=do_it_alwaysdebug
commit 4e498609410348cdb67675d58523012c64ffc3c1
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Oct 13 13:55:18 2010 +0100
tweak this for AIX
diff --git a/padmin/source/spadmin.sh b/padmin/source/spadmin.sh
index 01b1964..b57fd63 100644
--- a/padmin/source/spadmin.sh
+++ b/padmin/source/spadmin.sh
@@ -57,8 +57,17 @@ if [ -x "$sd_prog/../basis-link/ure-link/bin/javaldx" ] ; then
my_path=`"$sd_prog/../basis-link/ure-link/bin/javaldx" $BOOTSTRAPVARS \
"-env:INIFILENAME=vnd.sun.star.pathname:$sd_prog/redirectrc"`
if [ -n "$my_path" ] ; then
- LD_LIBRARY_PATH=$my_path${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
- export LD_LIBRARY_PATH
+ sd_platform=`uname -s`
+ case $sd_platform in
+ AIX)
+ LIBPATH=$my_path${LIBPATH:+:$LIBPATH}
+ export LIBPATH
+ ;;
+ *)
+ LD_LIBRARY_PATH=$my_path${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
+ export LD_LIBRARY_PATH
+ ;;
+ esac
fi
fi
commit e5c8ed4e7c05f980be4093c085c15f72088649a5
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Oct 13 13:31:43 2010 +0100
hackaround for AIX
diff --git a/l10ntools/source/help/HelpLinker.cxx b/l10ntools/source/help/HelpLinker.cxx
index 512c1de..847efb9 100644
--- a/l10ntools/source/help/HelpLinker.cxx
+++ b/l10ntools/source/help/HelpLinker.cxx
@@ -25,6 +25,10 @@
*
************************************************************************/
+#ifdef AIX
+# undef _THREAD_SAFE
+#endif
+
#include "HelpCompiler.hxx"
#include <map>
commit f58bfd38df7ccc80cd6abce3b69a75e86cb5e863
Merge: 3e1bb90... faf640e...
Author: Noel Power <noel.power at novell.com>
Date: Wed Oct 13 15:17:38 2010 +0100
Merge branch 'master' of ssh://noelp@git.freedesktop.org/git/libreoffice/libs-gui
commit 3e1bb901d307619e7d9ddd9d8ea08e0c0193db04
Merge: 3a48a38... ce8ec7e...
Author: Noel Power <noel.power at novell.com>
Date: Wed Oct 13 13:14:57 2010 +0100
Merge commit 'origin/master'
commit 3a48a38e269185a7a114d540ecb79587cd3d58d0
Merge: 824b7fb... e7afd1f...
Author: Noel Power <noel.power at novell.com>
Date: Wed Oct 13 10:55:27 2010 +0100
Merge branch 'vba' fix conflics, trailing ws & tab issues
Conflicts:
unotools/source/config/fltrcfg.cxx
diff --cc svtools/inc/bindablecontrolhelper.hxx
index 0000000,e9cd3e6..d154ea4
mode 000000,100644..100644
--- a/svtools/inc/bindablecontrolhelper.hxx
+++ b/svtools/inc/bindablecontrolhelper.hxx
@@@ -1,0 -1,62 +1,61 @@@
+ /*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
++ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: imageresourceaccess.hxx,v $
+ * $Revision: 1.5 $
+ *
+ * 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 SVTOOLS_INC_BINDABLECONTROL_HXX
+ #define SVTOOLS_INC_BINDABLECONTROL_HXX
+
+ #include "svtools/svtdllapi.h"
+
+ #include <com/sun/star/frame/XModel.hpp>
+ //........................................................................
+ namespace svt
+ {
+ //........................................................................
+
+ //====================================================================
+ //= GraphicAccess
+ //====================================================================
+ /** helper class for obtaining streams (which also can be used with the ImageProducer)
+ from a resource
+ */
+ class BindableControlHelper
+ {
+ private:
+ BindableControlHelper(); // never implemented
+
+ public:
+ SVT_DLLPUBLIC static void ApplyListSourceAndBindableData( const com::sun::star::uno::Reference< com::sun::star::frame::XModel >& xModel, const com::sun::star::uno::Reference< com::sun::star::uno::XInterface >& rObj, const rtl::OUString& rsCtrlSource, const rtl::OUString& rsRowSource );
+ };
+
+ //........................................................................
+ } // namespace svt
+ //........................................................................
+
-#endif // DBA14_SVTOOLS_INC_IMAGERESOURCEACCESS_HXX
-
++#endif // SVTOOLS_INC_BINDABLECONTROL_HXX
diff --cc svtools/inc/filterutils.hxx
index 0000000,a05025f..e10eb2a
mode 000000,100644..100644
--- a/svtools/inc/filterutils.hxx
+++ b/svtools/inc/filterutils.hxx
@@@ -1,0 -1,22 +1,22 @@@
+ #ifndef SVTOOLS_INC_FILTERUTILS_HXX
+ #define SVTOOLS_INC_FILTERUTILS_HXX
+
+ #include "svtools/svtdllapi.h"
+ #include <com/sun/star/uno/RuntimeException.hpp>
+ namespace svt
+ {
+ class BinFilterUtils
+ {
+ private:
+ BinFilterUtils(); // never implemented
+
+ public:
+ SVT_DLLPUBLIC static rtl::OUString CreateOUStringFromUniStringArray( const char* pcCharArr, sal_uInt32 nBufSize );
+ SVT_DLLPUBLIC static rtl::OUString CreateOUStringFromStringArray( const char* pcCharArr, sal_uInt32 nBufSize );
+ };
+
+ //........................................................................
+ } // namespace svt
+ //........................................................................
+
-#endif
++#endif
diff --cc svtools/source/misc/bindablecontrolhelper.cxx
index 0000000,ba842f0..4dac025
mode 000000,100644..100644
--- a/svtools/source/misc/bindablecontrolhelper.cxx
+++ b/svtools/source/misc/bindablecontrolhelper.cxx
@@@ -1,0 -1,162 +1,161 @@@
+ /*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
++ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: imageresourceaccess.cxx,v $
+ * $Revision: 1.5 $
+ *
+ * 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.
+ *
+ ************************************************************************/
+
+ // MARKER(update_precomp.py): autogen include statement, do not remove
+ #include "precompiled_svtools.hxx"
+ #include "bindablecontrolhelper.hxx"
+ #include <com/sun/star/form/binding/XBindableValue.hpp>
+ #include <com/sun/star/form/binding/XValueBinding.hpp>
+ #include <com/sun/star/form/binding/XListEntrySink.hpp>
+ #include <com/sun/star/form/binding/XListEntrySource.hpp>
+ #include <com/sun/star/beans/XPropertySet.hpp>
+ #include <com/sun/star/container/XNameAccess.hpp>
+ #include <com/sun/star/table/CellRangeAddress.hpp>
+ #include <com/sun/star/sheet/XCellRangeReferrer.hpp>
+ #include <com/sun/star/sheet/XCellRangeAddressable.hpp>
+ #include <com/sun/star/lang/XMultiServiceFactory.hpp>
+ #include <com/sun/star/table/CellAddress.hpp>
+ #include <com/sun/star/beans/NamedValue.hpp>
+
+ //........................................................................
+ namespace svt
+ {
+ //........................................................................
+
+ #ifndef C2U
+ #define C2U(cChar) rtl::OUString::createFromAscii(cChar)
+ #endif
+
+ using namespace ::com::sun::star;
+
+ bool lcl_isNamedRange( const rtl::OUString& sAddress, const uno::Reference< frame::XModel >& xModel, table::CellRangeAddress& aAddress )
+ {
+ bool bRes = false;
+ const static rtl::OUString sNamedRanges( RTL_CONSTASCII_USTRINGPARAM("NamedRanges"));
+ uno::Reference< sheet::XCellRangeReferrer > xReferrer;
+ try
+ {
+ uno::Reference< beans::XPropertySet > xPropSet( xModel, uno::UNO_QUERY_THROW );
+ uno::Reference< container::XNameAccess > xNamed( xPropSet->getPropertyValue( sNamedRanges ), uno::UNO_QUERY_THROW );
+ xReferrer.set ( xNamed->getByName( sAddress ), uno::UNO_QUERY );
+ }
+ catch( uno::Exception& /*e*/ )
+ {
+ // do nothing
+ }
+ if ( xReferrer.is() )
+ {
+ uno::Reference< sheet::XCellRangeAddressable > xRangeAddressable( xReferrer->getReferredCells(), uno::UNO_QUERY );
+ if ( xRangeAddressable.is() )
+ {
+ aAddress = xRangeAddressable->getRangeAddress();
+ bRes = true;
+ }
+ }
+ return bRes;
+ }
+
+
+ void
+ BindableControlHelper::ApplyListSourceAndBindableData( const com::sun::star::uno::Reference< com::sun::star::frame::XModel >& xModel, const com::sun::star::uno::Reference< com::sun::star::uno::XInterface >& rObj, const rtl::OUString& rsCtrlSource, const rtl::OUString& rsRowSource )
+ {
+ // XBindable etc.
+ uno::Reference< lang::XMultiServiceFactory > xFac;
+ if ( xModel.is() )
+ xFac.set( xModel, uno::UNO_QUERY );
+ uno::Reference< form::binding::XBindableValue > xBindable( rObj, uno::UNO_QUERY );
+ if ( xFac.is() && rsCtrlSource.getLength() && xBindable.is() )
+ {
-
++
+ // OOo address structures
+ // RefCell - convert from XL
+ // pretend we converted the imported string address into the
+ // appropriate address structure
+ uno::Reference< beans::XPropertySet > xConvertor( xFac->createInstance( C2U( "com.sun.star.table.CellAddressConversion" )), uno::UNO_QUERY );
+ table::CellAddress aAddress;
+ if ( xConvertor.is() )
+ {
+ // we need this service to properly convert XL notation also
+ // Should be easy to extend
+ xConvertor->setPropertyValue( C2U( "XL_A1_Representation" ), uno::makeAny( rsCtrlSource ) );
- xConvertor->getPropertyValue( C2U( "Address" ) ) >>= aAddress;
++ xConvertor->getPropertyValue( C2U( "Address" ) ) >>= aAddress;
+ }
-
++
+ beans::NamedValue aArg1;
+ aArg1.Name = C2U("BoundCell");
+ aArg1.Value <<= aAddress;
+
+ uno::Sequence< uno::Any > aArgs(1);
+ aArgs[ 0 ] <<= aArg1;
+
+ uno::Reference< form::binding::XValueBinding > xBinding( xFac->createInstanceWithArguments( C2U("com.sun.star.table.CellValueBinding" ), aArgs ), uno::UNO_QUERY );
+ xBindable->setValueBinding( xBinding );
+ }
+ else if ( xBindable.is() ) // reset it
+ xBindable->setValueBinding( uno::Reference< form::binding::XValueBinding >() );
+ uno::Reference< form::binding::XListEntrySink > xListEntrySink( rObj, uno::UNO_QUERY );
+ if ( xFac.is() && rsRowSource.getLength() && xListEntrySink.is() )
+ {
-
++
+ // OOo address structures
+ // RefCell - convert from XL
+ // pretend we converted the imported string address into the
+ // appropriate address structure
+ uno::Reference< beans::XPropertySet > xConvertor( xFac->createInstance( C2U( "com.sun.star.table.CellRangeAddressConversion" )), uno::UNO_QUERY );
+ table::CellRangeAddress aAddress;
+ if ( xConvertor.is() )
+ {
+ if ( !lcl_isNamedRange( rsRowSource, xModel, aAddress ) )
+ {
+ // we need this service to properly convert XL notation also
+ // Should be easy to extend
+ xConvertor->setPropertyValue( C2U( "XL_A1_Representation" ), uno::makeAny( rsRowSource ) );
+ xConvertor->getPropertyValue( C2U( "Address" ) ) >>= aAddress;
+ }
+ }
-
++
+ beans::NamedValue aArg1;
+ aArg1.Name = C2U("CellRange");
+ aArg1.Value <<= aAddress;
+
+ uno::Sequence< uno::Any > aArgs(1);
+ aArgs[ 0 ] <<= aArg1;
+
+ uno::Reference< form::binding::XListEntrySource > xSource( xFac->createInstanceWithArguments( C2U("com.sun.star.table.CellRangeListSource" ), aArgs ), uno::UNO_QUERY );
+ xListEntrySink->setListEntrySource( xSource );
+ }
+ else if ( xListEntrySink.is() ) // reset
+ xListEntrySink->setListEntrySource( uno::Reference< form::binding::XListEntrySource >() );
+
+ }
+
+ //........................................................................
+ } // namespace svt
+ //........................................................................
-
diff --cc svtools/source/misc/filterutils.cxx
index 0000000,91a6ca4..5a31070
mode 000000,100644..100644
--- a/svtools/source/misc/filterutils.cxx
+++ b/svtools/source/misc/filterutils.cxx
@@@ -1,0 -1,56 +1,55 @@@
+ // MARKER(update_precomp.py): autogen include statement, do not remove
+ #include "precompiled_svtools.hxx"
+ #include "filterutils.hxx"
+ #include <rtl/ustrbuf.hxx>
+
+ namespace svt
+ {
+ //........................................................................
+
+ using namespace ::com::sun::star;
+
+ rtl::OUString lcl_createStringFromArray( const char* pcCharArr, sal_uInt32 nBufSize, bool bIsCompressed )
+ {
+ rtl::OUStringBuffer aBuffer;
+ if( bIsCompressed )
+ {
+ // buffer contains compressed Unicode, not encoded bytestring
+ sal_Int32 nStrLen = static_cast< sal_Int32 >( nBufSize );
+ aBuffer.setLength( nStrLen );
+ const char* pcCurrChar = pcCharArr;
+ for( sal_Int32 nChar = 0; nChar < nStrLen; ++nChar, ++pcCurrChar )
+ /* *pcCurrChar may contain negative values and therefore MUST be
+ casted to unsigned char, before assigned to a sal_Unicode. */
+ aBuffer.setCharAt( nChar, static_cast< unsigned char >( *pcCurrChar ) );
+ }
+ else
+ {
+ // buffer contains Little-Endian Unicode
+ sal_Int32 nStrLen = static_cast< sal_Int32 >( nBufSize ) / 2;
+ aBuffer.setLength( nStrLen );
+ const char* pcCurrChar = pcCharArr;
+ for( sal_Int32 nChar = 0; nChar < nStrLen; ++nChar )
+ {
+ /* *pcCurrChar may contain negative values and therefore MUST be
+ casted to unsigned char, before assigned to a sal_Unicode. */
+ sal_Unicode cChar = static_cast< unsigned char >( *pcCurrChar++ );
+ cChar |= (static_cast< unsigned char >( *pcCurrChar++ ) << 8);
+ aBuffer.setCharAt( nChar, cChar );
+ }
+ }
+ return aBuffer.makeStringAndClear();
+ }
+
+ rtl::OUString BinFilterUtils::CreateOUStringFromUniStringArray( const char* pcCharArr, sal_uInt32 nBufSize )
+ {
+ return lcl_createStringFromArray( pcCharArr, nBufSize, false );
+ }
+
+ rtl::OUString BinFilterUtils::CreateOUStringFromStringArray( const char* pcCharArr, sal_uInt32 nBufSize )
+ {
+ return lcl_createStringFromArray( pcCharArr, nBufSize, true );
- }
++ }
+ //........................................................................
+ } // namespace svt
+ //........................................................................
-
diff --cc toolkit/inc/toolkit/awt/vclxmenu.hxx
index 590f7b8,88be605..7bb19e9
--- a/toolkit/inc/toolkit/awt/vclxmenu.hxx
+++ b/toolkit/inc/toolkit/awt/vclxmenu.hxx
@@@ -181,6 -182,7 +182,7 @@@ class TOOLKIT_DLLPUBLIC VCLXPopupMenu
{
public:
VCLXPopupMenu();
- VCLXPopupMenu( PopupMenu* pPopMenu );
++ VCLXPopupMenu( PopupMenu* pPopMenu );
};
#endif // _TOOLKIT_AWT_VCLXMENU_HXX_
diff --cc toolkit/inc/toolkit/awt/vclxwindows.hxx
index 657cc19,33bd033..97d55c8
--- a/toolkit/inc/toolkit/awt/vclxwindows.hxx
+++ b/toolkit/inc/toolkit/awt/vclxwindows.hxx
@@@ -1,7 -1,7 +1,7 @@@
/*************************************************************************
*
* 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
@@@ -376,6 -379,7 +377,7 @@@ public
// class VCLXDialog
// ----------------------------------------------------
class VCLXDialog : public ::com::sun::star::awt::XDialog2,
- public ::com::sun::star::document::XVbaMethodParameter, //liuchen 2009-6-22, add the support of input/output parameters to VBA UserForm_QueryClose event
++ public ::com::sun::star::document::XVbaMethodParameter, //liuchen 2009-6-22, add the support of input/output parameters to VBA UserForm_QueryClose event
public VCLXTopWindow
{
public:
@@@ -413,6 -417,10 +415,10 @@@
// ::com::sun::star::awt::XVclWindowPeer
void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
- //liuchen 2009-6-23, support Excel VBA UserForm_QueryClose event
- // ::com::sun::star::document::XVBAMethodParameter
- void SAL_CALL setVbaMethodParameter( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Any SAL_CALL getVbaMethodParameter( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
++ //liuchen 2009-6-23, support Excel VBA UserForm_QueryClose event
++ // ::com::sun::star::document::XVBAMethodParameter
++ void SAL_CALL setVbaMethodParameter( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
++ ::com::sun::star::uno::Any SAL_CALL getVbaMethodParameter( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
};
// ----------------------------------------------------
diff --cc toolkit/inc/toolkit/controls/dialogcontrol.hxx
index 7b8e025,a1725f2..7610fa7
--- a/toolkit/inc/toolkit/controls/dialogcontrol.hxx
+++ b/toolkit/inc/toolkit/controls/dialogcontrol.hxx
@@@ -1,7 -1,7 +1,7 @@@
/*************************************************************************
*
* 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
@@@ -73,7 -75,7 +75,7 @@@ private
typedef ::std::list< UnoControlModelHolder > UnoControlModelHolderList;
// for grouping control models (XTabControllerModel::getGroupXXX)
-- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >
++ typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >
ModelGroup;
typedef ::std::vector< ModelGroup > AllGroups;
@@@ -88,8 -90,10 +90,10 @@@ private
AllGroups maGroups;
sal_Bool mbGroupsUpToDate;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphicObject > mxGrfObj;
- bool mbAdjustingGraphic;
-protected:
+
- protected:
++ ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphicObject > mxGrfObj;
++ bool mbAdjustingGraphic;
++protected:
::com::sun::star::uno::Any ImplGetDefaultValue( sal_uInt16 nPropId ) const;
::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper();
@@@ -99,7 -103,7 +103,7 @@@ public
UnoControlDialogModel();
UnoControlDialogModel( const UnoControlDialogModel& rModel );
~UnoControlDialogModel();
--
++
UnoControlModel* Clone() const;
::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException) { return UnoControlModel::queryInterface(rType); }
@@@ -118,14 -122,14 +122,14 @@@
// ::com::sun::star::container::XElementAcces
::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException);
sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException);
--
++
// ::com::sun::star::container::XIndexContainer, XIndexReplace, XIndexAcces
// void SAL_CALL replaceByIndex( sal_Int32 Index, const ::com::sun::star::uno::Any& Element ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) = 0;
// sal_Int32 SAL_CALL getCount( ) throw(::com::sun::star::uno::RuntimeException) = 0;
// ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index ) throw(::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) = 0;
// void SAL_CALL insertByIndex( sal_Int32 Index, const ::com::sun::star::uno::Any& Element ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) = 0;
// void SAL_CALL removeByIndex( sal_Int32 Index ) throw(::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) = 0;
--
++
// ::com::sun::star::container::XNameContainer, XNameReplace, XNameAccess
void SAL_CALL replaceByName( const ::rtl::OUString& aName, const ::com::sun::star::uno::Any& aElement ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName ) throw(::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
@@@ -136,12 -140,12 +140,12 @@@
// ::com::sun::star::beans::XMultiPropertySet
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException);
--
++
// ::com::sun::star::lang::XMultiServiceFactory
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstance( const ::rtl::OUString& aServiceSpecifier ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstanceWithArguments( const ::rtl::OUString& ServiceSpecifier, const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableServiceNames( ) throw(::com::sun::star::uno::RuntimeException);
--
++
// ::com::sun::star::io::XPersistObject
::rtl::OUString SAL_CALL getServiceName() throw(::com::sun::star::uno::RuntimeException);
@@@ -175,6 -179,8 +179,8 @@@
protected:
void startControlListening( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxChildModel );
void stopControlListening( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxChildModel );
+ // ::cppu::OPropertySetHelper
- void SAL_CALL setFastPropertyValue_NoBroadcast( sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) throw (::com::sun::star::uno::Exception);
++ void SAL_CALL setFastPropertyValue_NoBroadcast( sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) throw (::com::sun::star::uno::Exception);
void implNotifyTabModelChange( const ::rtl::OUString& _rAccessor );
@@@ -207,13 -221,13 +221,13 @@@ class ResourceListener :public ::com::
virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL acquire() throw ();
virtual void SAL_CALL release() throw ();
--
++
// XModifyListener
virtual void SAL_CALL modified( const ::com::sun::star::lang::EventObject& aEvent ) throw (::com::sun::star::uno::RuntimeException);
// XEventListener
virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw (::com::sun::star::uno::RuntimeException);
--
++
private:
::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceResolver > m_xResource;
::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xListener;
@@@ -226,14 -240,14 +240,14 @@@ class UnoDialogControl :public UnoContr
private:
::com::sun::star::uno::Reference< ::com::sun::star::awt::XMenuBar > mxMenuBar;
::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabController > mxTabController;
-- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > mxListener;
++ ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > mxListener;
TopWindowListenerMultiplexer maTopWindowListeners;
bool mbWindowListener;
bool mbSizeModified;
bool mbPosModified;
protected:
--
++
void ImplInsertControl( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& rxModel, const ::rtl::OUString& rName );
void ImplRemoveControl( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& rxModel );
void ImplSetPosSize( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& rxCtrl );
@@@ -266,12 -280,12 +280,12 @@@ public
virtual void SAL_CALL windowMoved( const ::com::sun::star::awt::WindowEvent& e ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL windowShown( const ::com::sun::star::lang::EventObject& e ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL windowHidden( const ::com::sun::star::lang::EventObject& e ) throw (::com::sun::star::uno::RuntimeException);
--
++
// ::com::sun::star::container::XContainerListener
void SAL_CALL elementInserted( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException);
void SAL_CALL elementRemoved( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException);
void SAL_CALL elementReplaced( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException);
--
++
// ::com::sun::star::awt::XDialog2
virtual void SAL_CALL endDialog( ::sal_Int32 Result ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setHelpId( ::sal_Int32 Id ) throw (::com::sun::star::uno::RuntimeException);
@@@ -295,7 -309,7 +309,7 @@@
// XModifyListener
virtual void SAL_CALL modified( const ::com::sun::star::lang::EventObject& aEvent ) throw (::com::sun::star::uno::RuntimeException);
--
++
// ::com::sun::star::lang::XServiceInfo
DECLIMPL_SERVICEINFO( UnoDialogControl, szServiceName2_UnoControlDialog )
diff --cc toolkit/inc/toolkit/controls/unocontrols.hxx
index 8358389,fadec7d..ff33b49
--- a/toolkit/inc/toolkit/controls/unocontrols.hxx
+++ b/toolkit/inc/toolkit/controls/unocontrols.hxx
@@@ -637,6 -636,44 +636,44 @@@ public
};
+ class UnoMultiPageModel : public UnoControlModel
+ {
+ protected:
- ::com::sun::star::uno::Any ImplGetDefaultValue( sal_uInt16 nPropId ) const;
- ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper();
++ ::com::sun::star::uno::Any ImplGetDefaultValue( sal_uInt16 nPropId ) const;
++ ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper();
+
+ public:
- UnoMultiPageModel();
- UnoMultiPageModel( const UnoMultiPageModel& rModel ) : UnoControlModel( rModel ) {;}
++ UnoMultiPageModel();
++ UnoMultiPageModel( const UnoMultiPageModel& rModel ) : UnoControlModel( rModel ) {;}
+
- UnoControlModel* Clone() const { return new UnoMultiPageModel( *this ); }
++ UnoControlModel* Clone() const { return new UnoMultiPageModel( *this ); }
+
- // ::com::sun::star::io::XPersistObject
++ // ::com::sun::star::io::XPersistObject
+ ::rtl::OUString SAL_CALL getServiceName() throw(::com::sun::star::uno::RuntimeException);
+
- // ::com::sun::star::beans::XMultiPropertySet
++ // ::com::sun::star::beans::XMultiPropertySet
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException);
+
- // ::com::sun::star::lang::XServiceInfo
- DECLIMPL_SERVICEINFO_DERIVED( UnoMultiPageModel, UnoControlModel, szServiceName_UnoMultiPageModel )
++ // ::com::sun::star::lang::XServiceInfo
++ DECLIMPL_SERVICEINFO_DERIVED( UnoMultiPageModel, UnoControlModel, szServiceName_UnoMultiPageModel )
+
+ };
+ // ----------------------------------------------------
+ // class UnoGroupBoxControl
+ // ----------------------------------------------------
+ class UnoMultiPageControl : public UnoControlBase
+ {
+ public:
- UnoMultiPageControl();
- ::rtl::OUString GetComponentServiceName();
++ UnoMultiPageControl();
++ ::rtl::OUString GetComponentServiceName();
+
+ sal_Bool SAL_CALL isTransparent( ) throw(::com::sun::star::uno::RuntimeException);
+
- // ::com::sun::star::lang::XServiceInfo
- DECLIMPL_SERVICEINFO_DERIVED( UnoMultiPageControl, UnoControlBase, szServiceName_UnoMultiPageControl )
++ // ::com::sun::star::lang::XServiceInfo
++ DECLIMPL_SERVICEINFO_DERIVED( UnoMultiPageControl, UnoControlBase, szServiceName_UnoMultiPageControl )
+
+ };
+
// ----------------------------------------------------
// class UnoFixedTextControl
// ----------------------------------------------------
diff --cc toolkit/source/awt/vclxmenu.cxx
index c6294c8,eb5cb3b..004b2c8
--- a/toolkit/source/awt/vclxmenu.cxx
+++ b/toolkit/source/awt/vclxmenu.cxx
@@@ -539,6 -539,14 +539,14 @@@ void VCLXMenu::setPopupMenu( sal_Int16
break;
}
}
+ // it seems the popup menu is not insert into maPopupMenueRefs
+ // if the popup men is not created by stardiv.Toolkit.VCLXPopupMenu
+ if( !aRef.is() )
+ {
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPopupMenu > * pNewRef = new ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPopupMenu > ;
++ ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPopupMenu > * pNewRef = new ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPopupMenu > ;
+ *pNewRef = new VCLXPopupMenu( (PopupMenu*)pMenu );
+ aRef = *pNewRef;
+ }
}
return aRef;
}
diff --cc toolkit/source/awt/vclxwindows.cxx
index 9540aa7,8864d75..10af294
--- a/toolkit/source/awt/vclxwindows.cxx
+++ b/toolkit/source/awt/vclxwindows.cxx
@@@ -1,7 -1,7 +1,7 @@@
/*************************************************************************
*
* 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
@@@ -2172,7 -2175,7 +2173,7 @@@ void SAL_CALL VCLXListBox::itemListChan
uno::UNO_QUERY
);
}
--
++
Reference< XItemList > xItemList( i_rEvent.Source, uno::UNO_QUERY_THROW );
uno::Sequence< beans::Pair< ::rtl::OUString, ::rtl::OUString > > aItems = xItemList->getAllItems();
@@@ -2301,6 -2304,7 +2302,7 @@@ VCLXDialog::~VCLXDialog(
::com::sun::star::uno::Any VCLXDialog::queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException)
{
::com::sun::star::uno::Any aRet = ::cppu::queryInterface( rType,
- SAL_STATIC_CAST( ::com::sun::star::document::XVbaMethodParameter*, this ), //liuchen 2009-6-23
++ SAL_STATIC_CAST( ::com::sun::star::document::XVbaMethodParameter*, this ), //liuchen 2009-6-23
SAL_STATIC_CAST( ::com::sun::star::awt::XDialog2*, this ),
SAL_STATIC_CAST( ::com::sun::star::awt::XDialog*, this ) );
return (aRet.hasValue() ? aRet : VCLXTopWindow::queryInterface( rType ));
@@@ -2308,6 -2312,7 +2310,7 @@@
// ::com::sun::star::lang::XTypeProvider
IMPL_XTYPEPROVIDER_START( VCLXDialog )
- getCppuType( ( ::com::sun::star::uno::Reference< ::com::sun::star::document::XVbaMethodParameter>* ) NULL ), //liuchen 2009-6-23
++ getCppuType( ( ::com::sun::star::uno::Reference< ::com::sun::star::document::XVbaMethodParameter>* ) NULL ), //liuchen 2009-6-23
getCppuType( ( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XDialog2>* ) NULL ),
getCppuType( ( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XDialog>* ) NULL ),
VCLXTopWindow::getTypes()
@@@ -2418,6 -2423,40 +2421,40 @@@ void SAL_CALL VCLXDialog::draw( sal_Int
return aInfo;
}
+ //liuchen 2009-7-22
+ // ::com::sun::star::document::XVbaMethodParameter
+ void SAL_CALL VCLXDialog::setVbaMethodParameter(
- const ::rtl::OUString& PropertyName,
- const ::com::sun::star::uno::Any& Value )
++ const ::rtl::OUString& PropertyName,
++ const ::com::sun::star::uno::Any& Value )
+ throw(::com::sun::star::uno::RuntimeException)
+ {
- if (rtl::OUString::createFromAscii( "Cancel" ) == PropertyName)
- {
- ::vos::OGuard aGuard( GetMutex() );
- if ( GetWindow() )
- {
- sal_Int8 nCancel;
- Value >>= nCancel;
-
- Dialog* pDlg = (Dialog*) GetWindow();
- pDlg->SetCloseFlag(nCancel);
- }
- }
++ if (rtl::OUString::createFromAscii( "Cancel" ) == PropertyName)
++ {
++ ::vos::OGuard aGuard( GetMutex() );
++ if ( GetWindow() )
++ {
++ sal_Int8 nCancel;
++ Value >>= nCancel;
++
++ Dialog* pDlg = (Dialog*) GetWindow();
++ pDlg->SetCloseFlag(nCancel);
++ }
++ }
+ }
+
+ ::com::sun::star::uno::Any SAL_CALL VCLXDialog::getVbaMethodParameter(
- const ::rtl::OUString& PropertyName )
++ const ::rtl::OUString& PropertyName )
+ throw(::com::sun::star::uno::RuntimeException)
+ {
- ::vos::OGuard aGuard( GetMutex() );
++ ::vos::OGuard aGuard( GetMutex() );
+
- ::com::sun::star::uno::Any aRet;
- return aRet;
++ ::com::sun::star::uno::Any aRet;
++ return aRet;
+ }
+ //liuchen 2009-7-22
+
+
+
void SAL_CALL VCLXDialog::setProperty(
const ::rtl::OUString& PropertyName,
@@@ -3481,27 -3520,27 +3518,27 @@@ void VCLXScrollBar::ProcessWindowEvent
void VCLXEdit::ImplGetPropertyIds( std::list< sal_uInt16 > &rIds )
{
PushPropertyIds( rIds,
-- BASEPROPERTY_ALIGN,
-- BASEPROPERTY_BACKGROUNDCOLOR,
-- BASEPROPERTY_BORDER,
-- BASEPROPERTY_BORDERCOLOR,
-- BASEPROPERTY_DEFAULTCONTROL,
-- BASEPROPERTY_ECHOCHAR,
-- BASEPROPERTY_ENABLED,
++ BASEPROPERTY_ALIGN,
++ BASEPROPERTY_BACKGROUNDCOLOR,
++ BASEPROPERTY_BORDER,
++ BASEPROPERTY_BORDERCOLOR,
++ BASEPROPERTY_DEFAULTCONTROL,
++ BASEPROPERTY_ECHOCHAR,
++ BASEPROPERTY_ENABLED,
BASEPROPERTY_ENABLEVISIBLE,
-- BASEPROPERTY_FONTDESCRIPTOR,
-- BASEPROPERTY_HARDLINEBREAKS,
-- BASEPROPERTY_HELPTEXT,
-- BASEPROPERTY_HELPURL,
-- BASEPROPERTY_HSCROLL,
-- BASEPROPERTY_LINE_END_FORMAT,
-- BASEPROPERTY_MAXTEXTLEN,
-- BASEPROPERTY_MULTILINE,
-- BASEPROPERTY_PRINTABLE,
-- BASEPROPERTY_READONLY,
-- BASEPROPERTY_TABSTOP,
-- BASEPROPERTY_TEXT,
-- BASEPROPERTY_VSCROLL,
++ BASEPROPERTY_FONTDESCRIPTOR,
++ BASEPROPERTY_HARDLINEBREAKS,
++ BASEPROPERTY_HELPTEXT,
++ BASEPROPERTY_HELPURL,
++ BASEPROPERTY_HSCROLL,
++ BASEPROPERTY_LINE_END_FORMAT,
++ BASEPROPERTY_MAXTEXTLEN,
++ BASEPROPERTY_MULTILINE,
++ BASEPROPERTY_PRINTABLE,
++ BASEPROPERTY_READONLY,
++ BASEPROPERTY_TABSTOP,
++ BASEPROPERTY_TEXT,
++ BASEPROPERTY_VSCROLL,
BASEPROPERTY_HIDEINACTIVESELECTION,
BASEPROPERTY_PAINTTRANSPARENT,
BASEPROPERTY_AUTOHSCROLL,
@@@ -4324,7 -4363,7 +4361,7 @@@ void SAL_CALL VCLXComboBox::itemListCha
uno::UNO_QUERY
);
}
--
++
Reference< XItemList > xItemList( i_rEvent.Source, uno::UNO_QUERY_THROW );
uno::Sequence< beans::Pair< ::rtl::OUString, ::rtl::OUString > > aItems = xItemList->getAllItems();
diff --cc toolkit/source/controls/dialogcontrol.cxx
index cf37e10,1fe21d2..ed00046
--- a/toolkit/source/controls/dialogcontrol.cxx
+++ b/toolkit/source/controls/dialogcontrol.cxx
@@@ -1,7 -1,7 +1,7 @@@
/*************************************************************************
*
* 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
@@@ -141,6 -146,18 +144,18 @@@ namespac
return xGraphic;
}
+ static ::rtl::OUString lcl_GetStringProperty( const ::rtl::OUString& sProperty, const Reference< XPropertySet >& xSet )
+ {
+ ::rtl::OUString sValue;
+ Reference< XPropertySetInfo > xPSI;
- if (xSet.is() && (xPSI = xSet->getPropertySetInfo()).is() &&
++ if (xSet.is() && (xPSI = xSet->getPropertySetInfo()).is() &&
+ xPSI->hasPropertyByName( sProperty ) )
+ {
+ xSet->getPropertyValue( sProperty ) >>= sValue;
+ }
+ return sValue;
+ }
+
}
// ----------------------------------------------------------------------------
@@@ -252,7 -269,7 +267,7 @@@ static const ::rtl::OUString& getStepPr
UnoControlDialogModel::UnoControlDialogModel()
:maContainerListeners( *this )
,maChangeListeners ( GetMutex() )
- ,mbGroupsUpToDate( sal_False )
- ,mbGroupsUpToDate( sal_False ), mbAdjustingGraphic( false )
++ ,mbGroupsUpToDate( sal_False ), mbAdjustingGraphic( false )
{
ImplRegisterProperty( BASEPROPERTY_BACKGROUNDCOLOR );
// ImplRegisterProperty( BASEPROPERTY_BORDER );
@@@ -274,6 -291,8 +289,8 @@@
aBool <<= (sal_Bool) sal_True;
ImplRegisterProperty( BASEPROPERTY_MOVEABLE, aBool );
ImplRegisterProperty( BASEPROPERTY_CLOSEABLE, aBool );
- aBool <<= (sal_Bool) sal_False;
- ImplRegisterProperty( BASEPROPERTY_VBAFORM, aBool );
++ aBool <<= (sal_Bool) sal_False;
++ ImplRegisterProperty( BASEPROPERTY_VBAFORM, aBool );
}
UnoControlDialogModel::UnoControlDialogModel( const UnoControlDialogModel& rModel )
@@@ -281,7 -300,7 +298,7 @@@
, UnoControlDialogModel_Base( rModel )
, maContainerListeners( *this )
, maChangeListeners ( GetMutex() )
- , mbGroupsUpToDate( sal_False )
- , mbGroupsUpToDate( sal_False ), mbAdjustingGraphic( false )
++ , mbGroupsUpToDate( sal_False ), mbAdjustingGraphic( false )
{
}
@@@ -312,6 -331,40 +329,40 @@@ Sequence< Type > UnoControlDialogModel:
return ::rtl::OUString::createFromAscii( szServiceName_UnoControlDialogModel );
}
+ void SAL_CALL UnoControlDialogModel::setFastPropertyValue_NoBroadcast( sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) throw (::com::sun::star::uno::Exception)
+ {
+ UnoControlModel::setFastPropertyValue_NoBroadcast( nHandle, rValue );
+ try
+ {
+ switch ( nHandle )
+ {
+ case BASEPROPERTY_IMAGEURL:
+ if ( !mbAdjustingGraphic && ImplHasProperty( BASEPROPERTY_GRAPHIC ) )
+ {
+ mbAdjustingGraphic = true;
+ ::rtl::OUString sImageURL;
+ OSL_VERIFY( rValue >>= sImageURL );
+ setPropertyValue( GetPropertyName( BASEPROPERTY_GRAPHIC ), uno::makeAny( getGraphicFromURL_nothrow( mxGrfObj, sImageURL ) ) );
+ mbAdjustingGraphic = false;
+ }
+ break;
+
+ case BASEPROPERTY_GRAPHIC:
+ if ( !mbAdjustingGraphic && ImplHasProperty( BASEPROPERTY_IMAGEURL ) )
+ {
+ mbAdjustingGraphic = true;
+ setPropertyValue( GetPropertyName( BASEPROPERTY_IMAGEURL ), uno::makeAny( ::rtl::OUString() ) );
+ mbAdjustingGraphic = false;
+ }
+ break;
- }
++ }
+ }
+ catch( const ::com::sun::star::uno::Exception& )
+ {
+ OSL_ENSURE( sal_False, "UnoControlDialogModel::setFastPropertyValue_NoBroadcast: caught an exception while setting Graphic/ImageURL properties!" );
+ }
+ }
+
Any UnoControlDialogModel::ImplGetDefaultValue( sal_uInt16 nPropId ) const
{
Any aAny;
@@@ -904,6 -957,63 +955,63 @@@ void UnoControlDialogModel::implNotifyT
}
}
+ // ----------------------------------------------------------------------------
-void UnoControlDialogModel::AddRadioButtonGroup (
++void UnoControlDialogModel::AddRadioButtonGroup (
+ ::std::map< ::rtl::OUString, ModelGroup >& rNamedGroups )
+ {
+ if ( rNamedGroups.size() == 0 )
+ return;
+
+ size_t nGroups = maGroups.size();
+ maGroups.reserve( nGroups + rNamedGroups.size() );
+ ::std::map< ::rtl::OUString, ModelGroup >::const_iterator i = rNamedGroups.begin(), e = rNamedGroups.end();
+ for( ; i != e; ++i)
+ {
+ maGroups.push_back( i->second );
+ }
+
+ rNamedGroups.clear();
+ }
+
-void UnoControlDialogModel::AddRadioButtonToGroup (
++void UnoControlDialogModel::AddRadioButtonToGroup (
+ const Reference< XControlModel >& rControlModel,
+ const ::rtl::OUString& rPropertyName,
+ ::std::map< ::rtl::OUString, ModelGroup >& rNamedGroups,
+ ModelGroup*& rpCurrentGroup )
+ {
+ Reference< XPropertySet > xCurProps( rControlModel, UNO_QUERY );
+ ::rtl::OUString sGroup = lcl_GetStringProperty( rPropertyName, xCurProps );
+ const sal_Int32 nControlModelStep = lcl_getDialogStep( rControlModel );
+
+ if ( sGroup.getLength() == 0 )
+ {
+ // Create a new group if:
+ if ( maGroups.size() == 0 || // no groups
+ rpCurrentGroup == NULL || // previous group was closed
+ (nControlModelStep != 0 && // control step matches current group
+ maGroups.back().size() > 0 && // (group 0 == display everywhere)
+ nControlModelStep != lcl_getDialogStep( maGroups.back().back() ) ) )
+ {
+ size_t nGroups = maGroups.size();
+ maGroups.resize( nGroups + 1 );
+ }
+ rpCurrentGroup = &maGroups.back();
+ }
+ else
+ {
+ // Different steps get different sets of named groups
+ if ( rNamedGroups.size() > 0 &&
+ rNamedGroups.begin()->second.size() > 0 )
+ {
+ const sal_Int32 nPrevStep = lcl_getDialogStep( rNamedGroups.begin()->second.front() );
+ if ( nControlModelStep != nPrevStep )
+ AddRadioButtonGroup( rNamedGroups );
+ }
+
+ rpCurrentGroup = &rNamedGroups[ sGroup ];
+ }
+ rpCurrentGroup->push_back( rControlModel );
+ }
// ----------------------------------------------------------------------------
void UnoControlDialogModel::implUpdateGroupStructure()
@@@ -928,10 -1038,13 +1036,13 @@@
GroupingMachineState eState = eLookingForGroup; // the current state of our machine
Reference< XServiceInfo > xModelSI; // for checking for a radion button
- AllGroups::iterator aCurrentGroup = maGroups.end(); // the group which we're currently building
- sal_Int32 nCurrentGroupStep = -1; // the step which all controls of the current group belong to
- ModelGroup* aCurrentGroup = NULL; // the group which we're currently building
++ ModelGroup* aCurrentGroup = NULL; // the group which we're currently building
sal_Bool bIsRadioButton; // is it a radio button?
+ const ::rtl::OUString GROUP_NAME( RTL_CONSTASCII_USTRINGPARAM( "GroupName" ) );
+
+ ::std::map< ::rtl::OUString, ModelGroup > aNamedGroups;
+
#if OSL_DEBUG_LEVEL > 1
::std::vector< ::rtl::OUString > aCurrentGroupLabels;
#endif
@@@ -977,7 -1084,7 +1082,7 @@@
{
if ( !bIsRadioButton )
{ // no radio button -> the group is done
- aCurrentGroup = maGroups.end();
- aCurrentGroup = NULL;
++ aCurrentGroup = NULL;
eState = eLookingForGroup;
#if OSL_DEBUG_LEVEL > 1
aCurrentGroupLabels.clear();
@@@ -1418,17 -1487,32 +1485,32 @@@ void UnoDialogControl::ImplSetPosSize(
xP->getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Width" ) ) ) >>= nWidth;
xP->getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Height" ) ) ) >>= nHeight;
- // Currentley we are simply using MAP_APPFONT
- // Currentley we are simply using MAP_APPFONT ( for normal Dialogs )
- // and MAP_100TH_MM for imported Userforms
- MapMode aMode( MAP_APPFONT );
- sal_Bool bVBAForm = sal_False;
- Reference< XPropertySet > xDlgModelProps( getModel(), UNO_QUERY );
- if ( xDlgModelProps.is() )
- {
- try
- {
- xDlgModelProps->getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "VBAForm" ) ) ) >>= bVBAForm;
- }
- catch( Exception& )
- {
- }
- }
- if ( bVBAForm )
- aMode = MapMode( MAP_100TH_MM );
++ // Currentley we are simply using MAP_APPFONT ( for normal Dialogs )
++ // and MAP_100TH_MM for imported Userforms
++ MapMode aMode( MAP_APPFONT );
++ sal_Bool bVBAForm = sal_False;
++ Reference< XPropertySet > xDlgModelProps( getModel(), UNO_QUERY );
++ if ( xDlgModelProps.is() )
++ {
++ try
++ {
++ xDlgModelProps->getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "VBAForm" ) ) ) >>= bVBAForm;
++ }
++ catch( Exception& )
++ {
++ }
++ }
++ if ( bVBAForm )
++ aMode = MapMode( MAP_100TH_MM );
OutputDevice*pOutDev = Application::GetDefaultDevice();
if ( pOutDev )
{
::Size aTmp( nX, nY );
- aTmp = pOutDev->LogicToPixel( aTmp, MAP_APPFONT );
- aTmp = pOutDev->LogicToPixel( aTmp, aMode );
++ aTmp = pOutDev->LogicToPixel( aTmp, aMode );
nX = aTmp.Width();
nY = aTmp.Height();
aTmp = ::Size( nWidth, nHeight );
- aTmp = pOutDev->LogicToPixel( aTmp, MAP_APPFONT );
- aTmp = pOutDev->LogicToPixel( aTmp, aMode );
++ aTmp = pOutDev->LogicToPixel( aTmp, aMode );
nWidth = aTmp.Width();
nHeight = aTmp.Height();
}
@@@ -1650,8 -1734,7 +1732,7 @@@ void UnoDialogControl::PrepareWindowDes
if (( ImplGetPropertyValue( PROPERTY_IMAGEURL ) >>= aImageURL ) &&
( aImageURL.getLength() > 0 ))
{
- ::rtl::OUString absoluteUrl =
- aImageURL =
++ aImageURL =
getPhysicalLocation( ImplGetPropertyValue( PROPERTY_DIALOGSOURCEURL ),
ImplGetPropertyValue( PROPERTY_IMAGEURL ));
@@@ -2110,9 -2194,16 +2192,16 @@@ throw (RuntimeException
::rtl::OUString absoluteURL( url );
if ( url.getLength() > 0 )
{
- INetURLObject urlObj(baseLocation);
- urlObj.removeSegment();
- baseLocation = urlObj.GetMainURL( INetURLObject::NO_DECODE );
- // Don't adjust GraphicObject url(s)
- if ( url.compareToAscii( UNO_NAME_GRAPHOBJ_URLPREFIX, RTL_CONSTASCII_LENGTH( UNO_NAME_GRAPHOBJ_URLPREFIX ) ) != 0 )
- {
- INetURLObject urlObj(baseLocation);
- urlObj.removeSegment();
- baseLocation = urlObj.GetMainURL( INetURLObject::NO_DECODE );
- ::osl::FileBase::getAbsoluteFileURL( baseLocation, url, ret );
- }
- else
- ret = url;
++ // Don't adjust GraphicObject url(s)
++ if ( url.compareToAscii( UNO_NAME_GRAPHOBJ_URLPREFIX, RTL_CONSTASCII_LENGTH( UNO_NAME_GRAPHOBJ_URLPREFIX ) ) != 0 )
++ {
++ INetURLObject urlObj(baseLocation);
++ urlObj.removeSegment();
++ baseLocation = urlObj.GetMainURL( INetURLObject::NO_DECODE );
++ ::osl::FileBase::getAbsoluteFileURL( baseLocation, url, ret );
++ }
++ else
++ ret = url;
const INetURLObject protocolCheck( url );
const INetProtocol protocol = protocolCheck.GetProtocol();
diff --cc toolkit/source/controls/unocontrols.cxx
index 19196ef,80c5f63..c4cc8bd
--- a/toolkit/source/controls/unocontrols.cxx
+++ b/toolkit/source/controls/unocontrols.cxx
@@@ -1728,6 -1730,75 +1728,75 @@@ sal_Bool UnoGroupBoxControl::isTranspar
return sal_True;
}
+ // MultiPage
+
+ UnoMultiPageModel::UnoMultiPageModel()
+ {
- ImplRegisterProperty( BASEPROPERTY_DEFAULTCONTROL );
- ImplRegisterProperty( BASEPROPERTY_ENABLED );
- ImplRegisterProperty( BASEPROPERTY_FONTDESCRIPTOR );
- ImplRegisterProperty( BASEPROPERTY_HELPTEXT );
- ImplRegisterProperty( BASEPROPERTY_HELPURL );
- ImplRegisterProperty( BASEPROPERTY_LABEL );
- ImplRegisterProperty( BASEPROPERTY_PRINTABLE );
- ImplRegisterProperty( BASEPROPERTY_PROGRESSVALUE );
- ImplRegisterProperty( BASEPROPERTY_PROGRESSVALUE_MAX );
++ ImplRegisterProperty( BASEPROPERTY_DEFAULTCONTROL );
++ ImplRegisterProperty( BASEPROPERTY_ENABLED );
++ ImplRegisterProperty( BASEPROPERTY_FONTDESCRIPTOR );
++ ImplRegisterProperty( BASEPROPERTY_HELPTEXT );
++ ImplRegisterProperty( BASEPROPERTY_HELPURL );
++ ImplRegisterProperty( BASEPROPERTY_LABEL );
++ ImplRegisterProperty( BASEPROPERTY_PRINTABLE );
++ ImplRegisterProperty( BASEPROPERTY_PROGRESSVALUE );
++ ImplRegisterProperty( BASEPROPERTY_PROGRESSVALUE_MAX );
+ }
+
+ ::rtl::OUString UnoMultiPageModel::getServiceName() throw(::com::sun::star::uno::RuntimeException)
+ {
- return ::rtl::OUString::createFromAscii( szServiceName_UnoMultiPageModel );
++ return ::rtl::OUString::createFromAscii( szServiceName_UnoMultiPageModel );
+ }
+
+ uno::Any UnoMultiPageModel::ImplGetDefaultValue( sal_uInt16 nPropId ) const
+ {
- if ( nPropId == BASEPROPERTY_DEFAULTCONTROL )
- {
- uno::Any aAny;
- aAny <<= ::rtl::OUString::createFromAscii( szServiceName_UnoControlGroupBox );
- //aAny <<= ::rtl::OUString::createFromAscii( szServiceName_UnoMultiPageControl );
- return aAny;
- }
- return UnoControlModel::ImplGetDefaultValue( nPropId );
++ if ( nPropId == BASEPROPERTY_DEFAULTCONTROL )
++ {
++ uno::Any aAny;
++ aAny <<= ::rtl::OUString::createFromAscii( szServiceName_UnoControlGroupBox );
++ //aAny <<= ::rtl::OUString::createFromAscii( szServiceName_UnoMultiPageControl );
++ return aAny;
++ }
++ return UnoControlModel::ImplGetDefaultValue( nPropId );
+ }
+
+ ::cppu::IPropertyArrayHelper& UnoMultiPageModel::getInfoHelper()
+ {
- static UnoPropertyArrayHelper* pHelper = NULL;
- if ( !pHelper )
- {
- uno::Sequence<sal_Int32> aIDs = ImplGetPropertyIds();
- pHelper = new UnoPropertyArrayHelper( aIDs );
- }
- return *pHelper;
++ static UnoPropertyArrayHelper* pHelper = NULL;
++ if ( !pHelper )
++ {
++ uno::Sequence<sal_Int32> aIDs = ImplGetPropertyIds();
++ pHelper = new UnoPropertyArrayHelper( aIDs );
++ }
++ return *pHelper;
+ }
+
+ // beans::XMultiPropertySet
+ uno::Reference< beans::XPropertySetInfo > UnoMultiPageModel::getPropertySetInfo( ) throw(uno::RuntimeException)
+ {
- static uno::Reference< beans::XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) );
- return xInfo;
++ static uno::Reference< beans::XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) );
++ return xInfo;
+ }
+
+ // ----------------------------------------------------
+ // class MultiPageControl
+ // ----------------------------------------------------
+ UnoMultiPageControl::UnoMultiPageControl()
+ {
- maComponentInfos.nWidth = 100;
- maComponentInfos.nHeight = 100;
++ maComponentInfos.nWidth = 100;
++ maComponentInfos.nHeight = 100;
+ }
+
+ ::rtl::OUString UnoMultiPageControl::GetComponentServiceName()
+ {
- return ::rtl::OUString::createFromAscii( "multipage" );
++ return ::rtl::OUString::createFromAscii( "multipage" );
+ }
+
+ sal_Bool UnoMultiPageControl::isTransparent() throw(uno::RuntimeException)
+ {
- return sal_True;
++ return sal_True;
+ }
+
// =====================================================================================================================
// = UnoControlListBoxModel_Data
// =====================================================================================================================
diff --cc unotools/source/config/fltrcfg.cxx
index e42343f,2b8b0d1..7c3e4fd
--- a/unotools/source/config/fltrcfg.cxx
+++ b/unotools/source/config/fltrcfg.cxx
@@@ -410,7 -459,18 +459,18 @@@ sal_Bool SvtFilterOptions::IsLoadWordBa
return pImp->IsFlag( FILTERCFG_WORD_CODE );
}
-void SvtFilterOptions::SetLoadWordBasicExecutable( BOOL bFlag )
++void SvtFilterOptions::SetLoadWordBasicExecutable( sal_Bool bFlag )
+ {
+ pImp->SetFlag( FILTERCFG_WORD_WBCTBL, bFlag );
+ SetModified();
+ }
+
+ BOOL SvtFilterOptions::IsLoadWordBasicExecutable() const
+ {
+ return pImp->IsFlag( FILTERCFG_WORD_WBCTBL );
+ }
+
-void SvtFilterOptions::SetLoadWordBasicStorage( BOOL bFlag )
+void SvtFilterOptions::SetLoadWordBasicStorage( sal_Bool bFlag )
{
pImp->SetFlag( FILTERCFG_WORD_STORAGE, bFlag );
SetModified();
diff --cc vcl/inc/vcl/bitmapex.hxx
index a7185da,29dfe13..258cf90
--- a/vcl/inc/vcl/bitmapex.hxx
+++ b/vcl/inc/vcl/bitmapex.hxx
@@@ -395,6 -395,7 +395,7 @@@ public
friend VCL_DLLPUBLIC SvStream& operator<<( SvStream& rOStm, const BitmapEx& rBitmapEx );
friend VCL_DLLPUBLIC SvStream& operator>>( SvStream& rIStm, BitmapEx& rBitmapEx );
- static BitmapEx AutoScaleBitmap(BitmapEx & aBitmap, const long aStandardSize);
++ static BitmapEx AutoScaleBitmap(BitmapEx & aBitmap, const long aStandardSize);
};
#endif // _SV_BITMAPEX_HXX
diff --cc vcl/inc/vcl/dialog.hxx
index 1032908,f771333..eae6c6f
--- a/vcl/inc/vcl/dialog.hxx
+++ b/vcl/inc/vcl/dialog.hxx
@@@ -53,6 -53,7 +53,7 @@@ private
BOOL mbOldSaveBack;
BOOL mbInClose;
BOOL mbModalMode;
- sal_Int8 mnCancelClose; //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
++ sal_Int8 mnCancelClose; //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
SAL_DLLPRIVATE void ImplInitDialogData();
SAL_DLLPRIVATE void ImplInitSettings();
@@@ -91,6 -92,9 +92,9 @@@ public
virtual short Execute();
BOOL IsInExecute() const { return mbInExecute; }
- sal_Int8 GetCloseFlag() const { return mnCancelClose; } //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
- void SetCloseFlag( sal_Int8 nCancel ) { mnCancelClose = nCancel; } //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
++ sal_Int8 GetCloseFlag() const { return mnCancelClose; } //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
++ void SetCloseFlag( sal_Int8 nCancel ) { mnCancelClose = nCancel; } //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
+
////////////////////////////////////////
// Dialog::Execute replacement API
public:
diff --cc vcl/source/control/combobox.cxx
index 5b38ce7,a4d57df..a8afec4
--- a/vcl/source/control/combobox.cxx
+++ b/vcl/source/control/combobox.cxx
@@@ -1,7 -1,7 +1,7 @@@
/*************************************************************************
*
* 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
@@@ -44,7 -46,7 +44,7 @@@
// =======================================================================
--
++
inline ULONG ImplCreateKey( USHORT nPos )
{
// Key = Pos+1, wegen Pos 0
@@@ -66,7 -68,7 +66,7 @@@ static void lcl_GetSelectedEntries( Tab
}
// =======================================================================
--
++
ComboBox::ComboBox( WindowType nType ) :
Edit( nType )
{
@@@ -353,7 -355,7 +353,7 @@@ IMPL_LINK( ComboBox, ImplAutocompleteHd
bForward = FALSE;
nStart = nStart ? nStart - 1 : mpImplLB->GetEntryList()->GetEntryCount()-1;
}
--
++
USHORT nPos = LISTBOX_ENTRY_NOTFOUND;
if( ! mbMatchCase )
{
@@@ -363,7 -365,7 +363,7 @@@
// Try match case insensitive, but from start
nPos = mpImplLB->GetEntryList()->FindMatchingEntry( aStartText, bForward ? 0 : (mpImplLB->GetEntryList()->GetEntryCount()-1), bForward, TRUE );
}
--
++
if ( nPos == LISTBOX_ENTRY_NOTFOUND )
// Try match full from current position
nPos = mpImplLB->GetEntryList()->FindMatchingEntry( aStartText, nStart, bForward, FALSE );
@@@ -466,8 -468,11 +466,11 @@@ IMPL_LINK( ComboBox, ImplSelectHdl, voi
mpSubEdit->SetModifyFlag();
mbSyntheticModify = TRUE;
Modify();
- mbSyntheticModify = FALSE;
- if (ImplGetWindowImpl() != NULL) //liuchen 2009-7-28, resolve the problem that soffice get crashed if in ComboBox_Change event a Worksheets("SheetX").Activate sentence needs to be executed
- {
- Select();
- }
+ mbSyntheticModify = FALSE;
- Select();
++ if (ImplGetWindowImpl() != NULL) //liuchen 2009-7-28, resolve the problem that soffice get crashed if in ComboBox_Change event a Worksheets("SheetX").Activate sentence needs to be executed
++ {
++ Select();
++ }
}
return 0;
@@@ -787,7 -792,7 +790,7 @@@ void ComboBox::DataChanged( const DataC
}
Resize();
mpImplLB->Resize(); // Wird nicht durch ComboBox::Resize() gerufen, wenn sich die ImplLB nicht aendert.
-- SetBackground(); // due to a hack in Window::UpdateSettings the background must be reset
++ SetBackground(); // due to a hack in Window::UpdateSettings the background must be reset
// otherwise it will overpaint NWF drawn comboboxes
}
}
@@@ -1284,9 -1289,9 +1287,9 @@@ void ComboBox::Draw( OutputDevice* pDev
if ( !nLines )
nLines = 1;
USHORT nTEntry = IsReallyVisible() ? mpImplLB->GetTopEntry() : 0;
--
++
Rectangle aTextRect( aPos, aSize );
--
++
aTextRect.Left() += 3*nOnePixel;
aTextRect.Right() -= 3*nOnePixel;
aTextRect.Top() += nEditHeight + nOnePixel;
@@@ -1302,14 -1307,14 +1305,14 @@@
}
pDev->Pop();
--
++
// Call Edit::Draw after restoring the MapMode...
if ( IsDropDownBox() )
{
mpSubEdit->Draw( pDev, rPos, rSize, nFlags );
// DD-Button ?
}
--
++
}
// -----------------------------------------------------------------------
@@@ -1566,7 -1571,7 +1569,7 @@@ long ComboBox::GetIndexForPoint( const
// point must be either in main list window
// or in impl window (dropdown case)
ImplListBoxWindow* pMain = mpImplLB->GetMainWindow();
--
++
// convert coordinates to ImplListBoxWindow pixel coordinate space
Point aConvPoint = LogicToPixel( rPoint );
aConvPoint = OutputToAbsoluteScreenPixel( aConvPoint );
diff --cc vcl/source/gdi/bitmap2.cxx
index eda247c,e18f13f..d4a38b2
--- a/vcl/source/gdi/bitmap2.cxx
+++ b/vcl/source/gdi/bitmap2.cxx
@@@ -142,7 -146,7 +144,7 @@@ BOOL Bitmap::Read( SvStream& rIStm, BOO
bRet = ImplReadDIB( rIStm, *this, nOffset );
}
else
- bRet = ImplReadDIB( rIStm, *this, nOffset );
- bRet = ImplReadDIB( rIStm, *this, nOffset, bIsMSOFormat );
++ bRet = ImplReadDIB( rIStm, *this, nOffset, bIsMSOFormat );
if( !bRet )
{
@@@ -166,7 -170,7 +168,7 @@@ BOOL Bitmap::ImplReadDIB( SvStream& rIS
BOOL bRet = FALSE;
sal_Bool bTopDown = sal_False;
- if( ImplReadDIBInfoHeader( rIStm, aHeader, bTopDown ) && aHeader.nWidth && aHeader.nHeight && aHeader.nBitCount )
- if( ImplReadDIBInfoHeader( rIStm, aHeader, bTopDown, bIsMSOFormat ) && aHeader.nWidth && aHeader.nHeight && aHeader.nBitCount )
++ if( ImplReadDIBInfoHeader( rIStm, aHeader, bTopDown, bIsMSOFormat ) && aHeader.nWidth && aHeader.nHeight && aHeader.nBitCount )
{
const USHORT nBitCount( discretizeBitcount(aHeader.nBitCount) );
@@@ -303,15 -307,31 +305,31 @@@ BOOL Bitmap::ImplReadDIBInfoHeader( SvS
rIStm >> rHeader.nSize;
// BITMAPCOREHEADER
- sal_Int16 nTmp16 = 0;
- sal_uInt8 nTmp8 = 0;
++ sal_Int16 nTmp16 = 0;
++ sal_uInt8 nTmp8 = 0;
if ( rHeader.nSize == DIBCOREHEADERSIZE )
{
- sal_Int16 nTmp16;
rIStm >> nTmp16; rHeader.nWidth = nTmp16;
rIStm >> nTmp16; rHeader.nHeight = nTmp16;
rIStm >> rHeader.nPlanes;
rIStm >> rHeader.nBitCount;
- }
- else if ( bIsMSOFormat && ( rHeader.nSize == BITMAPINFOHEADER ) )
- {
- rIStm >> nTmp16; rHeader.nWidth = nTmp16;
- rIStm >> nTmp16; rHeader.nHeight = nTmp16;
- rIStm >> nTmp8; rHeader.nPlanes = nTmp8;
- rIStm >> nTmp8; rHeader.nBitCount = nTmp8;
- rIStm >> nTmp16; rHeader.nSizeImage = nTmp16;
- rIStm >> nTmp16; rHeader.nCompression = nTmp16;
- if ( !rHeader.nSizeImage ) // uncompressed?
- rHeader.nSizeImage = ((rHeader.nWidth * rHeader.nBitCount + 31) & ~31) / 8 * rHeader.nHeight;
- rIStm >> rHeader.nXPelsPerMeter;
- rIStm >> rHeader.nYPelsPerMeter;
- rIStm >> rHeader.nColsUsed;
- rIStm >> rHeader.nColsImportant;
+ }
++ else if ( bIsMSOFormat && ( rHeader.nSize == BITMAPINFOHEADER ) )
++ {
++ rIStm >> nTmp16; rHeader.nWidth = nTmp16;
++ rIStm >> nTmp16; rHeader.nHeight = nTmp16;
++ rIStm >> nTmp8; rHeader.nPlanes = nTmp8;
++ rIStm >> nTmp8; rHeader.nBitCount = nTmp8;
++ rIStm >> nTmp16; rHeader.nSizeImage = nTmp16;
++ rIStm >> nTmp16; rHeader.nCompression = nTmp16;
++ if ( !rHeader.nSizeImage ) // uncompressed?
++ rHeader.nSizeImage = ((rHeader.nWidth * rHeader.nBitCount + 31) & ~31) / 8 * rHeader.nHeight;
++ rIStm >> rHeader.nXPelsPerMeter;
++ rIStm >> rHeader.nYPelsPerMeter;
++ rIStm >> rHeader.nColsUsed;
++ rIStm >> rHeader.nColsImportant;
+ }
else
{
// unknown Header
diff --cc vcl/source/gdi/bitmapex.cxx
index 7b68fda,1997455..ce0804a
--- a/vcl/source/gdi/bitmapex.cxx
+++ b/vcl/source/gdi/bitmapex.cxx
@@@ -37,10 -37,15 +37,11 @@@
#include <vcl/image.h>
#include <vcl/bitmapex.hxx>
#include <vcl/pngread.hxx>
-#ifndef _SV_IMPIMAGETREE_H
#include <vcl/impimagetree.hxx>
-#endif
-#ifndef _SV_RC_H
#include <tools/rc.h>
-#endif
#include <vcl/svapp.hxx>
#include <vcl/bmpacc.hxx>
+ #include <vcl/virdev.hxx>
// ------------
// - BitmapEx -
@@@ -753,6 -758,61 +754,61 @@@ void BitmapEx::Draw( OutputDevice* pOut
pOutDev->DrawBitmapEx( rDestPt, rDestSize, rSrcPtPixel, rSrcSizePixel, *this );
}
+ BitmapEx BitmapEx:: AutoScaleBitmap(BitmapEx & aBitmap, const long aStandardSize)
+ {
- Point aEmptyPoint(0,0);
- sal_Int32 imgNewWidth = 0;
- sal_Int32 imgNewHeight = 0;
- double imgposX = 0;
- double imgposY = 0;
++ Point aEmptyPoint(0,0);
++ sal_Int32 imgNewWidth = 0;
++ sal_Int32 imgNewHeight = 0;
++ double imgposX = 0;
++ double imgposY = 0;
+ BitmapEx aRet = aBitmap;
- double imgOldWidth = aRet.GetSizePixel().Width();
- double imgOldHeight =aRet.GetSizePixel().Height();
++ double imgOldWidth = aRet.GetSizePixel().Width();
++ double imgOldHeight =aRet.GetSizePixel().Height();
+
+ Size aScaledSize;
+ if (imgOldWidth >= aStandardSize || imgOldHeight >= aStandardSize)
- {
- if (imgOldWidth >= imgOldHeight)
- {
- imgNewWidth = aStandardSize;
- imgNewHeight = sal_Int32(imgOldHeight / (imgOldWidth / aStandardSize) + 0.5);
- imgposX = 0;
- imgposY = (aStandardSize - (imgOldHeight / (imgOldWidth / aStandardSize) + 0.5)) / 2 + 0.5;
- }
- else
- {
- imgNewHeight = aStandardSize;
- imgNewWidth = sal_Int32(imgOldWidth / (imgOldHeight / aStandardSize) + 0.5);
- imgposY = 0;
- imgposX = (aStandardSize - (imgOldWidth / (imgOldHeight / aStandardSize) + 0.5)) / 2 + 0.5;
- }
-
- aScaledSize = Size( imgNewWidth, imgNewHeight );
++ {
++ if (imgOldWidth >= imgOldHeight)
++ {
++ imgNewWidth = aStandardSize;
++ imgNewHeight = sal_Int32(imgOldHeight / (imgOldWidth / aStandardSize) + 0.5);
++ imgposX = 0;
++ imgposY = (aStandardSize - (imgOldHeight / (imgOldWidth / aStandardSize) + 0.5)) / 2 + 0.5;
++ }
++ else
++ {
++ imgNewHeight = aStandardSize;
++ imgNewWidth = sal_Int32(imgOldWidth / (imgOldHeight / aStandardSize) + 0.5);
++ imgposY = 0;
++ imgposX = (aStandardSize - (imgOldWidth / (imgOldHeight / aStandardSize) + 0.5)) / 2 + 0.5;
++ }
++
++ aScaledSize = Size( imgNewWidth, imgNewHeight );
+ aRet.Scale( aScaledSize, BMP_SCALE_INTERPOLATE );
- }
- else
- {
- imgposX = (aStandardSize - imgOldWidth) / 2 + 0.5;
- imgposY = (aStandardSize - imgOldHeight) / 2 + 0.5;
- }
++ }
++ else
++ {
++ imgposX = (aStandardSize - imgOldWidth) / 2 + 0.5;
++ imgposY = (aStandardSize - imgOldHeight) / 2 + 0.5;
++ }
+
+ Size aBmpSize = aRet.GetSizePixel();
+ Size aStdSize( aStandardSize, aStandardSize );
+ Rectangle aRect(aEmptyPoint, aStdSize );
+
+ VirtualDevice aVirDevice( *Application::GetDefaultDevice(), 0, 1 );
- aVirDevice.SetOutputSizePixel( aStdSize );
- aVirDevice.SetFillColor( COL_TRANSPARENT );
++ aVirDevice.SetOutputSizePixel( aStdSize );
++ aVirDevice.SetFillColor( COL_TRANSPARENT );
+ aVirDevice.SetLineColor( COL_TRANSPARENT );
+
+ //draw a rect into virDevice
- aVirDevice.DrawRect( aRect );
- Point aPointPixel( (long)imgposX, (long)imgposY );
- aVirDevice.DrawBitmapEx( aPointPixel, aRet );
- aRet = aVirDevice.GetBitmapEx( aEmptyPoint, aStdSize );
++ aVirDevice.DrawRect( aRect );
++ Point aPointPixel( (long)imgposX, (long)imgposY );
++ aVirDevice.DrawBitmapEx( aPointPixel, aRet );
++ aRet = aVirDevice.GetBitmapEx( aEmptyPoint, aStdSize );
+
- return aRet;
++ return aRet;
+ }
// ------------------------------------------------------------------
sal_uInt8 BitmapEx::GetTransparency(sal_Int32 nX, sal_Int32 nY) const
diff --cc vcl/source/window/dialog.cxx
index a40195c,901c934..1ed9fd0
--- a/vcl/source/window/dialog.cxx
+++ b/vcl/source/window/dialog.cxx
@@@ -1,7 -1,7 +1,7 @@@
/*************************************************************************
*
* 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
@@@ -557,7 -559,18 +557,18 @@@ BOOL Dialog::Close(
{
ImplDelData aDelData;
ImplAddDel( &aDelData );
- //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
- mnCancelClose = 0;
- ImplCallEventListeners( VCLEVENT_WINDOW_CLOSE );
++ //liuchen 2009-7-22, support Excel VBA UserForm_QueryClose event
++ mnCancelClose = 0;
+ ImplCallEventListeners( VCLEVENT_WINDOW_CLOSE );
+ // basic boolean ( and what the user might use in the event handler) can
- // be ambiguous ( e.g. basic true = -1 )
- // test agains 0 ( false ) and assume anything else is true
- // ( Note: ) this used to work ( something changes somewhere )
- if (mnCancelClose != 0)
- {
- return FALSE;
- }
- //liuchen 2009-7-22
++ // be ambiguous ( e.g. basic true = -1 )
++ // test agains 0 ( false ) and assume anything else is true
++ // ( Note: ) this used to work ( something changes somewhere )
++ if (mnCancelClose != 0)
++ {
++ return FALSE;
++ }
++ //liuchen 2009-7-22
if ( aDelData.IsDelete() )
return FALSE;
ImplRemoveDel( &aDelData );
@@@ -636,7 -649,7 +647,7 @@@ BOOL Dialog::ImplStartExecuteModal(
"Dialog::StartExecuteModal() - Parent input disabled, use another parent to ensure modality!" );
DBG_ASSERT( ! pParent->IsInModalMode(),
"Dialog::StartExecuteModal() - Parent already modally disabled, use another parent to ensure modality!" );
--
++
}
#endif
@@@ -662,10 -675,10 +673,10 @@@
SetModalInputMode( TRUE );
mbOldSaveBack = IsSaveBackgroundEnabled();
EnableSaveBackground();
--
++
// FIXME: no layouting, workaround some clipping issues
ImplAdjustNWFSizes();
--
++
Show();
pSVData->maAppData.mnModalMode++;
@@@ -689,7 -702,7 +700,7 @@@ short Dialog::Execute(
ImplDelData aDelData;
ImplAddDel( &aDelData );
--
++
#ifdef DBG_UTIL
ImplDelData aParentDelData;
Window* pDialogParent = mpDialogParent;
@@@ -953,15 -966,15 +964,15 @@@ void Dialog::Draw( OutputDevice* pDev,
{
Point aPos = pDev->LogicToPixel( rPos );
Size aSize = pDev->LogicToPixel( rSize );
--
++
Wallpaper aWallpaper = GetBackground();
if ( !aWallpaper.IsBitmap() )
ImplInitSettings();
--
++
pDev->Push();
pDev->SetMapMode();
pDev->SetLineColor();
--
++
if ( aWallpaper.IsBitmap() )
pDev->DrawBitmapEx( aPos, aSize, aWallpaper.GetBitmap() );
else
commit faf640e02afbe5b1d1dc889c194482c52ed4ca3d
Merge: ce8ec7e... 3b08f03...
Author: Jan Holesovsky <kendy at suse.cz>
Date: Wed Oct 13 11:45:25 2010 +0200
Merge commit 'ooo/OOO330_m10'
Conflicts:
vcl/unx/source/fontmanager/fontconfig.cxx
diff --cc l10ntools/java/jpropex/java/JPropEx.java
index f068f93,febc6a4..9ff8bf9
--- a/l10ntools/java/jpropex/java/JPropEx.java
+++ b/l10ntools/java/jpropex/java/JPropEx.java
@@@ -138,12 -138,15 +138,15 @@@ public class JPropE
}
data.write( outputFileArg );
}
-
+
private SdfEntity prepareSdfObj( String filename )
{
- String path = makeAbs( filename );
- //String path = makeAbs( inputFileArg );
- path = path.replace( rootArg + "/" , "" );
+ String path = makeAbs( filename ).trim();
+ String myRootArg = makeAbs( rootArg ).trim();
+ myRootArg = myRootArg.replace( "\\","/");
+ myRootArg += "/";
+ path = path.replace("\\","/");
+ path = path.replace( myRootArg, "" );
path = path.replace("/","\\");
// TODO: Make this static
java.text.SimpleDateFormat dateformat = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
diff --cc l10ntools/scripts/localize.pl
index e242aa2,a1c9110..5478e6e
--- a/l10ntools/scripts/localize.pl
+++ b/l10ntools/scripts/localize.pl
@@@ -182,86 -181,14 +181,14 @@@ sub splitfile
#print "$so_l10n_path\n";
#print "$ooo_l10n_path\n";
- write_sdf( \%string_hash_so , $so_l10n_path );
- write_sdf( \%string_hash_ooo , $ooo_l10n_path );
-
- }
- sub check_modules_scm
- {
- #my @ooo_modules;
- #my @so_modules;
- my $src_path = $ENV{ SRC_ROOT } ;
- my $last_dir = getcwd();
- chdir $src_path ;
- my @modules = <*/.svn/entries>;
-
- foreach my $module ( @modules )
+ if( $force_ooo_module )
{
- #print "$module \n";
- if( open ( FILE , "<$module" ) )
- {
- while( <FILE> )
- {
-
- my @path = split ( "/" , $module ) ;
-
- if( /svn.services.openoffice.org/ )
- {
- my $mod = $path[ 0 ];
- #push @ooo_modules , $mod;
- $is_ooo_module{ $mod } = "true";
- # print "$module -> ooo ";
- }
- elsif ( /jumbo2.germany.sun.com/ )
- {
- my $mod = $path[ 0 ];
- #push @so_modules , $mod;
- # print "$module -> so ";
- #$so_lookup_hash{ $mod } = "true";
- }
- #else
- #{
- # print "ERROR: Is $module a SO or OOo module? Can not parese the $module/.svn/entries file ... please check mwsfinnish/merge/splitsdf.pl line 280\n";
- # exit -1;
- #}
- }
- }
+ write_sdf( \%string_hash_ooo , $ooo_l10n_path );
+ }
+ else
+ {
+ write_sdf( \%string_hash_so , $so_l10n_path );
- }
+ }
- chdir $last_dir ;
- #print "OOO\n";
- #print @ooo_modules;
- #print "\nSO\n";
- #print @so_modules;
- }
-
-
- #sub parse
- #{
- # my $command = "$CVS_BINARY -d:pserver:anoncvs\@anoncvs.services.openoffice.org:/cvs co -c";
- # my $output = `$command`;
- # my $rc = $? << 8;
- # if ( $output eq "" || $rc < 0 ){
- # print STDERR "ERROR: Can not fetch cvs alias list, please login to the cvs server and press at the password prompt just return\ncvs -d:pserver:anoncvs\@anoncvs.services.openoffice.org:/cvs login\n";
- # exit ( -1 );
- # }
- # my @list = split /\n/ , $output ;
- # foreach my $string( @list )
- # {
- #
- # # print "Found '$1'\n" , if( $string =~ /^(\w*)/ && $1 ne "" );
- #
- # $is_ooo_module{ $1 } = "TRUE", if( $string =~ /^(\w*)/ && $1 ne "" );
- # }
- # # foreach my $key( keys( %is_ooo_module ) )
- # #{
- # # print "$key\n";
- # #}
- #}
- sub is_openoffice_module
- {
- my $module = shift;
- return "TRUE", if ( $force_ooo_module || defined $is_ooo_module{ $module } );
- return "";
}
sub write_sdf
diff --cc l10ntools/scripts/tool/l10ntool.py
index 70d8867,f163002..d893333
--- a/l10ntools/scripts/tool/l10ntool.py
+++ b/l10ntools/scripts/tool/l10ntool.py
@@@ -66,7 -66,7 +66,7 @@@ class AbstractL10nTool
pass
################################################################################################
-
-
++
def format_outputfile(self, filename, language):
extension = filename[filename.rfind('.')+1:]
file = filename[:filename.rfind('.')]
diff --cc vcl/source/gdi/outdev2.cxx
index 6559c59,68953fa..72ef4ce
mode 100644,100755..100755
--- a/vcl/source/gdi/outdev2.cxx
+++ b/vcl/source/gdi/outdev2.cxx
diff --cc vcl/unx/source/fontmanager/fontconfig.cxx
index d572a4b,ec9eb36..3be14eb
--- a/vcl/unx/source/fontmanager/fontconfig.cxx
+++ b/vcl/unx/source/fontmanager/fontconfig.cxx
@@@ -518,9 -518,11 +518,14 @@@ namespac
candidate = aIter->second;
break;
}
- else if( (rtl_str_compare(pLang,sLangMatch.getStr()) == 0) && (!alreadyclosematch))
+ else if( alreadyclosematch )
- continue;
+ {
- //fairly close
++ // override candidate only if there is a perfect match
++ continue;
++ }
+ else if( rtl_str_compare( pLang, sLangMatch.getStr()) == 0)
+ {
+ // just the language matches
candidate = aIter->second;
alreadyclosematch = true;
}
commit ce8ec7ea608fd7933781140798f280f537d5149e
Author: Kohei Yoshida <kyoshida at novell.com>
Date: Wed Oct 13 00:25:40 2010 -0400
Delay setting the flag for insert tab.
The client code needs to be able to change the "insert tab" flag so
that, when switching between read-only and editable mode the insert
tab reflects that mode change. (fdo#30678)
diff --git a/svtools/source/control/tabbar.cxx b/svtools/source/control/tabbar.cxx
index bd6dd57..62d12b4 100644
--- a/svtools/source/control/tabbar.cxx
+++ b/svtools/source/control/tabbar.cxx
@@ -410,7 +410,6 @@ void TabBar::ImplInit( WinBits nWinStyle )
mbSelColor = FALSE;
mbSelTextColor = FALSE;
mbMirrored = FALSE;
- mbHasInsertTab = (nWinStyle & WB_INSERTTAB);
if ( nWinStyle & WB_3DTAB )
mnOffY++;
@@ -723,6 +722,8 @@ void TabBar::ImplInitControls()
DELETEZ( mpFirstBtn );
DELETEZ( mpLastBtn );
}
+
+ mbHasInsertTab = (mnWinStyle & WB_INSERTTAB);
}
// -----------------------------------------------------------------------
commit 71acd122ad5e34208a7bb873b28bf73170ff7721
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Oct 12 15:50:15 2010 +0100
WaE, add extra brackets
diff --git a/l10ntools/source/help/HelpLinker.cxx b/l10ntools/source/help/HelpLinker.cxx
index 4a20fe2..512c1de 100644
--- a/l10ntools/source/help/HelpLinker.cxx
+++ b/l10ntools/source/help/HelpLinker.cxx
@@ -1022,8 +1022,8 @@ void HelpLinker::main( std::vector<std::string> &args,
idxCaptionStylesheet = fs::path( aStdStr_IdxCaptionPathFileURL );
}
- if (!bExtensionMode && idxContentStylesheet.empty()
- || !extsource.empty() && idxContentStylesheet.empty())
+ if ( (!bExtensionMode && idxContentStylesheet.empty())
+ || (!extsource.empty() && idxContentStylesheet.empty()) )
{
//No extension mode and extension mode using commandline
//!extsource.empty indicates extension mode using commandline
commit 6179c18c4e0c3d413d919e1d97577cb871cd2584
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Oct 12 15:48:16 2010 +0100
WaE, add extra brackets
diff --git a/l10ntools/source/help/HelpLinker.cxx b/l10ntools/source/help/HelpLinker.cxx
index 80f7b84..4a20fe2 100644
--- a/l10ntools/source/help/HelpLinker.cxx
+++ b/l10ntools/source/help/HelpLinker.cxx
@@ -998,8 +998,8 @@ void HelpLinker::main( std::vector<std::string> &args,
throw HelpProcessingException( HELPPROCESSING_GENERAL_ERROR, aStrStream.str() );
}
- if (!bExtensionMode && idxCaptionStylesheet.empty()
- || !extsource.empty() && idxCaptionStylesheet.empty())
+ if ( (!bExtensionMode && idxCaptionStylesheet.empty())
+ || (!extsource.empty() && idxCaptionStylesheet.empty()) )
{
//No extension mode and extension mode using commandline
//!extsource.empty indicates extension mode using commandline
commit a961c948e59af15c07f09c844d35e01c693e6875
Author: Jan Holesovsky <kendy at suse.cz>
Date: Tue Oct 12 15:31:05 2010 +0100
Implement hooks for unix quickstarter
diff --git a/vcl/inc/vcl/svapp.hxx b/vcl/inc/vcl/svapp.hxx
index d12ff0d..ed6ce0a 100644
--- a/vcl/inc/vcl/svapp.hxx
+++ b/vcl/inc/vcl/svapp.hxx
@@ -261,6 +261,7 @@ public:
virtual void DataChanged( const DataChangedEvent& rDCEvt );
virtual void Init();
+ virtual void InitFinished();
virtual void DeInit();
static void InitAppRes( const ResId& rResId );
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx
index c87aca5..056c5c2 100644
--- a/vcl/source/app/svapp.cxx
+++ b/vcl/source/app/svapp.cxx
@@ -312,6 +312,11 @@ void Application::Init()
}
// -----------------------------------------------------------------------
+void Application::InitFinished()
+{
+}
+
+// -----------------------------------------------------------------------
void Application::DeInit()
{
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 6797bc3..38f48fe 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -633,10 +633,10 @@ void Window::ImplInitWindowData( WindowType nType )
mpWindowImpl->mbDockWin = FALSE; // TRUE: DockingWindow is the base class
mpWindowImpl->mbFloatWin = FALSE; // TRUE: FloatingWindow is the base class
mpWindowImpl->mbPushButton = FALSE; // TRUE: PushButton is the base class
- mpWindowImpl->mbToolBox = FALSE; // TRUE: ToolBox is the base class
- mpWindowImpl->mbMenuFloatingWindow= FALSE; // TRUE: MenuFloatingWindow is the base class
- mpWindowImpl->mbToolbarFloatingWindow= FALSE; // TRUE: ImplPopupFloatWin is the base class, used for subtoolbars
- mpWindowImpl->mbSplitter = FALSE; // TRUE: Splitter is the base class
+ mpWindowImpl->mbToolBox = FALSE; // TRUE: ToolBox is the base class
+ mpWindowImpl->mbMenuFloatingWindow= FALSE; // TRUE: MenuFloatingWindow is the base class
+ mpWindowImpl->mbToolbarFloatingWindow= FALSE; // TRUE: ImplPopupFloatWin is the base class, used for subtoolbars
+ mpWindowImpl->mbSplitter = FALSE; // TRUE: Splitter is the base class
mpWindowImpl->mbVisible = FALSE; // TRUE: Show( true ) called
mpWindowImpl->mbOverlapVisible = FALSE; // TRUE: Hide called for visible window from ImplHideAllOverlapWindow()
mpWindowImpl->mbDisabled = FALSE; // TRUE: Enable( FALSE ) called
@@ -1315,7 +1315,7 @@ ImplWinData* Window::ImplGetWinData() const
mpWindowImpl->mpWinData->mpFocusRect = NULL;
mpWindowImpl->mpWinData->mpTrackRect = NULL;
mpWindowImpl->mpWinData->mnTrackFlags = 0;
- mpWindowImpl->mpWinData->mnIsTopWindow = (USHORT) ~0; // not initialized yet, 0/1 will indicate TopWindow (see IsTopWindow())
+ mpWindowImpl->mpWinData->mnIsTopWindow = (USHORT) ~0; // not initialized yet, 0/1 will indicate TopWindow (see IsTopWindow())
mpWindowImpl->mpWinData->mbMouseOver = FALSE;
mpWindowImpl->mpWinData->mbEnableNativeWidget = (pNoNWF && *pNoNWF) ? FALSE : TRUE; // TRUE: try to draw this control with native theme API
mpWindowImpl->mpWinData->mpSmartHelpId = NULL;
@@ -3291,7 +3291,7 @@ void Window::ImplPosSizeWindow( long nX, long nY,
}
mpWindowImpl->mnX = nX;
mpWindowImpl->maPos.X() = nOrgX;
- mpWindowImpl->mnAbsScreenX = aPtDev.X(); // --- RTL --- (store real screen pos)
+ mpWindowImpl->mnAbsScreenX = aPtDev.X(); // --- RTL --- (store real screen pos)
bNewPos = TRUE;
}
}
@@ -6585,10 +6585,19 @@ void Window::Show( BOOL bVisible, USHORT nFlags )
mpWindowImpl->mpBorderWindow->Show( true, nFlags );
else if ( mpWindowImpl->mbFrame )
{
- ImplSVData* pSVData = ImplGetSVData();
// #106431#, hide SplashScreen
- if( pSVData->mpIntroWindow && !ImplIsWindowOrChild( pSVData->mpIntroWindow ) )
+ ImplSVData* pSVData = ImplGetSVData();
+ if ( !pSVData->mpIntroWindow )
+ {
+ // The right way would be just to call this (not even in the 'if')
+ GetpApp()->InitFinished();
+ }
+ else if ( !ImplIsWindowOrChild( pSVData->mpIntroWindow ) )
+ {
+ // ... but the VCL splash is broken, and it needs this
+ // (for ./soffice slot:5500)
pSVData->mpIntroWindow->Hide();
+ }
//DBG_ASSERT( !mpWindowImpl->mbSuppressAccessibilityEvents, "Window::Show() - Frame reactivated");
mpWindowImpl->mbSuppressAccessibilityEvents = FALSE;
@@ -8717,8 +8726,8 @@ Reference< XClipboard > Window::GetPrimarySelection()
mpWindowImpl->mpFrameData->mxSelection = Reference< XClipboard >( xFactory->createInstanceWithArguments(
OUString::createFromAscii( "com.sun.star.datatransfer.clipboard.SystemClipboard" ), aArgumentList ), UNO_QUERY );
-# else
- static Reference< XClipboard > s_xSelection;
+# else
+ static Reference< XClipboard > s_xSelection;
if ( !s_xSelection.is() )
s_xSelection = Reference< XClipboard >( xFactory->createInstance( OUString::createFromAscii( "com.sun.star.datatransfer.clipboard.GenericClipboardExt" ) ), UNO_QUERY );
@@ -8727,7 +8736,7 @@ Reference< XClipboard > Window::GetPrimarySelection()
s_xSelection = Reference< XClipboard >( xFactory->createInstance( OUString::createFromAscii( "com.sun.star.datatransfer.clipboard.GenericClipboard" ) ), UNO_QUERY );
mpWindowImpl->mpFrameData->mxSelection = s_xSelection;
-# endif
+# endif
}
}
commit 824b7fbefdf081dd2ebb2e14f68c127b5fe28d95
Author: Caolán McNamara <caolanm at redhat.com>
Date: Mon Oct 11 15:19:05 2010 +0100
#i112786# make ConfigManager a well-behaved singleton
diff --git a/unotools/inc/unotools/configmgr.hxx b/unotools/inc/unotools/configmgr.hxx
index b1a349b..20efadd 100644
--- a/unotools/inc/unotools/configmgr.hxx
+++ b/unotools/inc/unotools/configmgr.hxx
@@ -54,7 +54,6 @@ namespace utl
xConfigurationProvider;
ConfigMgr_Impl* pMgrImpl;
- static ConfigManager* pConfigManager;
static void getBasisAboutBoxProductVersion( rtl::OUString& rVersion );
public:
@@ -80,8 +79,7 @@ namespace utl
void StoreConfigItems();
- static ConfigManager* GetConfigManager();
- static void RemoveConfigManager();
+ static ConfigManager& GetConfigManager();
static rtl::OUString GetConfigBaseURL();
enum ConfigProperty
diff --git a/unotools/source/config/configitem.cxx b/unotools/source/config/configitem.cxx
index a3268cf..0172276 100644
--- a/unotools/source/config/configitem.cxx
+++ b/unotools/source/config/configitem.cxx
@@ -240,7 +240,7 @@ ConfigItem::ConfigItem(const OUString rSubTree, sal_Int16 nSetMode ) :
{
AutoDeleter<ConfigItem_Impl> aNewImpl(pImpl);
- pImpl->pManager = ConfigManager::GetConfigManager();
+ pImpl->pManager = &ConfigManager::GetConfigManager();
pImpl->nMode = nSetMode;
if(0 != (nSetMode&CONFIG_MODE_RELEASE_TREE))
pImpl->pManager->AddConfigItem(*this);
diff --git a/unotools/source/config/configmgr.cxx b/unotools/source/config/configmgr.cxx
index 9f8b904..28a9dde 100644
--- a/unotools/source/config/configmgr.cxx
+++ b/unotools/source/config/configmgr.cxx
@@ -352,28 +352,14 @@ void ConfigManager::StoreConfigItems()
}
}
}
-ConfigManager* ConfigManager::pConfigManager = 0;
/* -----------------------------07.09.00 11:06--------------------------------
---------------------------------------------------------------------------*/
-ConfigManager* ConfigManager::GetConfigManager()
-{
- if(!pConfigManager)
- {
- pConfigManager = new ConfigManager();
- }
- return pConfigManager;
-}
-/* -----------------------------07.09.00 11:06--------------------------------
+struct theConfigManager : public rtl::Static<ConfigManager, theConfigManager> {};
- ---------------------------------------------------------------------------*/
-void ConfigManager::RemoveConfigManager()
+ConfigManager& ConfigManager::GetConfigManager()
{
- if(pConfigManager)
- {
- delete pConfigManager;
- pConfigManager = 0;
- }
+ return theConfigManager::get();
}
/* -----------------------------08.09.00 13:22--------------------------------
@@ -515,7 +501,7 @@ Any ConfigManager::GetDirectConfigProperty(ConfigProperty eProp)
}
Sequence< Any > aArgs(1);
aArgs[0] <<= sPath;
- Reference< XMultiServiceFactory > xCfgProvider = GetConfigManager()->GetConfigurationProvider();
+ Reference< XMultiServiceFactory > xCfgProvider = GetConfigManager().GetConfigurationProvider();
if(!xCfgProvider.is())
return aRet;
Reference< XInterface > xIFace;
diff --git a/unotools/source/config/docinfohelper.cxx b/unotools/source/config/docinfohelper.cxx
index f75d0c0..5b02624 100644
--- a/unotools/source/config/docinfohelper.cxx
+++ b/unotools/source/config/docinfohelper.cxx
@@ -45,39 +45,36 @@ namespace utl
// First product: branded name + version
// version is <product_versions>_<product_extension>$<platform>
- utl::ConfigManager* pMgr = utl::ConfigManager::GetConfigManager();
- if ( pMgr )
+ utl::ConfigManager& rMgr = utl::ConfigManager::GetConfigManager();
+ // plain product name
+ rtl::OUString aValue;
+ uno::Any aAny = rMgr.GetDirectConfigProperty(
+ utl::ConfigManager::PRODUCTNAME);
+ if ( (aAny >>= aValue) && aValue.getLength() )
{
- // plain product name
- rtl::OUString aValue;
- uno::Any aAny = pMgr->GetDirectConfigProperty(
- utl::ConfigManager::PRODUCTNAME);
+ aResult.append( aValue.replace( ' ', '_' ) );
+ aResult.append( (sal_Unicode)'/' );
+
+ aAny = rMgr.GetDirectConfigProperty(
+ utl::ConfigManager::PRODUCTVERSION);
if ( (aAny >>= aValue) && aValue.getLength() )
{
aResult.append( aValue.replace( ' ', '_' ) );
- aResult.append( (sal_Unicode)'/' );
- aAny = pMgr->GetDirectConfigProperty(
- utl::ConfigManager::PRODUCTVERSION);
+ aAny = rMgr.GetDirectConfigProperty(
+ utl::ConfigManager::PRODUCTEXTENSION);
if ( (aAny >>= aValue) && aValue.getLength() )
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list