summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Le Grand <Armin.Le.Grand@Sun.COM>2009-11-17 14:28:34 +0100
committerArmin Le Grand <Armin.Le.Grand@Sun.COM>2009-11-17 14:28:34 +0100
commit90f4f68c43cf52c33e783c81cfa2ce8beeae916a (patch)
tree0f2054030f24742ebf6d4b419f0c9799eb626160
parent1d11db194dd5d81983f934ac93a214bf38af58ae (diff)
parentcc423d4be4338cbd81eed9f96f7c7a277da0ee88 (diff)
#i106541# commit afer merge
-rw-r--r--formula/source/core/api/FormulaCompiler.cxx14
-rw-r--r--framework/source/helper/statusindicatorfactory.cxx19
-rw-r--r--framework/source/loadenv/loadenv.cxx28
-rw-r--r--framework/source/uifactory/windowcontentfactorymanager.cxx7
-rw-r--r--idl/inc/command.hxx1
-rw-r--r--idl/inc/database.hxx7
-rw-r--r--idl/source/prj/command.cxx10
-rw-r--r--idl/source/prj/database.cxx6
-rw-r--r--idl/source/prj/svidl.cxx8
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Common.xcs15
-rw-r--r--sfx2/source/dialog/dockwin.cxx3
-rw-r--r--svx/prj/build.lst2
-rw-r--r--svx/source/cui/optimprove2.cxx8
-rw-r--r--xmlhelp/source/cxxhelp/provider/databases.cxx5
-rw-r--r--xmlhelp/source/cxxhelp/provider/urlparameter.cxx1
15 files changed, 105 insertions, 29 deletions
diff --git a/formula/source/core/api/FormulaCompiler.cxx b/formula/source/core/api/FormulaCompiler.cxx
index 4cfa28d1806d..2fd4e08deeb4 100644
--- a/formula/source/core/api/FormulaCompiler.cxx
+++ b/formula/source/core/api/FormulaCompiler.cxx
@@ -1183,10 +1183,10 @@ void FormulaCompiler::RangeLine()
//---------------------------------------------------------------------------
-void FormulaCompiler::UnionLine()
+void FormulaCompiler::IntersectionLine()
{
RangeLine();
- while (pToken->GetOpCode() == ocUnion)
+ while (pToken->GetOpCode() == ocIntersect)
{
FormulaTokenRef p = pToken;
NextToken();
@@ -1197,14 +1197,14 @@ void FormulaCompiler::UnionLine()
//---------------------------------------------------------------------------
-void FormulaCompiler::IntersectionLine()
+void FormulaCompiler::UnionLine()
{
- UnionLine();
- while (pToken->GetOpCode() == ocIntersect)
+ IntersectionLine();
+ while (pToken->GetOpCode() == ocUnion)
{
FormulaTokenRef p = pToken;
NextToken();
- UnionLine();
+ IntersectionLine();
PutCode(p);
}
}
@@ -1224,7 +1224,7 @@ void FormulaCompiler::UnaryLine()
PutCode( p );
}
else
- IntersectionLine();
+ UnionLine();
}
//---------------------------------------------------------------------------
diff --git a/framework/source/helper/statusindicatorfactory.cxx b/framework/source/helper/statusindicatorfactory.cxx
index b2139488a0ee..ee59097aa3fc 100644
--- a/framework/source/helper/statusindicatorfactory.cxx
+++ b/framework/source/helper/statusindicatorfactory.cxx
@@ -67,6 +67,7 @@
// includes of other projects
#include <comphelper/sequenceashashmap.hxx>
#include <comphelper/mediadescriptor.hxx>
+#include <comphelper/configurationhelper.hxx>
#include <vcl/svapp.hxx>
#include <vos/mutex.hxx>
@@ -361,6 +362,7 @@ void StatusIndicatorFactory::implts_makeParentVisibleIfAllowed()
css::uno::Reference< css::frame::XFrame > xFrame (m_xFrame.get() , css::uno::UNO_QUERY);
css::uno::Reference< css::awt::XWindow > xPluggWindow(m_xPluggWindow.get(), css::uno::UNO_QUERY);
+ css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR( m_xSMGR.get(), css::uno::UNO_QUERY);
aReadLock.unlock();
// <- SAFE ----------------------------------
@@ -432,8 +434,21 @@ void StatusIndicatorFactory::implts_makeParentVisibleIfAllowed()
// is visible too.
impl_showProgress();
- if (xParentWindow.is())
- xParentWindow->setVisible(sal_True);
+ ::vos::OClearableGuard aSolarGuard(Application::GetSolarMutex());
+ Window* pWindow = VCLUnoHelper::GetWindow(xParentWindow);
+ if ( pWindow )
+ {
+ bool bForceFrontAndFocus(false);
+ ::comphelper::ConfigurationHelper::readDirectKey(
+ xSMGR,
+ ::rtl::OUString::createFromAscii("org.openoffice.Office.Common/View"),
+ ::rtl::OUString::createFromAscii("NewDocumentHandling"),
+ ::rtl::OUString::createFromAscii("ForceFocusAndToFront"),
+ ::comphelper::ConfigurationHelper::E_READONLY) >>= bForceFrontAndFocus;
+
+ pWindow->Show(sal_True, bForceFrontAndFocus ? SHOW_FOREGROUNDTASK : 0 );
+ }
+
/*
#i75167# dont disturb window manager handling .-)
css::uno::Reference< css::awt::XTopWindow > xParentWindowTop(xParentWindow, css::uno::UNO_QUERY);
diff --git a/framework/source/loadenv/loadenv.cxx b/framework/source/loadenv/loadenv.cxx
index 0af8ea0e6587..ee39e583e5e7 100644
--- a/framework/source/loadenv/loadenv.cxx
+++ b/framework/source/loadenv/loadenv.cxx
@@ -1740,14 +1740,28 @@ void LoadEnv::impl_reactForLoadingState()
void LoadEnv::impl_makeFrameWindowVisible(const css::uno::Reference< css::awt::XWindow >& xWindow ,
sal_Bool bForceToFront)
{
- css::uno::Reference< css::awt::XTopWindow > xTopWindow(xWindow, css::uno::UNO_QUERY);
-
- if (xWindow.is())
- xWindow->setVisible(sal_True);
-
- if (xTopWindow.is() && bForceToFront)
- xTopWindow->toFront();
+ // SAFE -> ----------------------------------
+ ReadGuard aReadLock(m_aLock);
+ css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR( m_xSMGR.get(), css::uno::UNO_QUERY );
+ aReadLock.unlock();
+ // <- SAFE ----------------------------------
+ ::vos::OClearableGuard aSolarGuard(Application::GetSolarMutex());
+ Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
+ if ( pWindow )
+ {
+ bool bForceFrontAndFocus(false);
+ css::uno::Any a = ::comphelper::ConfigurationHelper::readDirectKey(
+ xSMGR,
+ ::rtl::OUString::createFromAscii("org.openoffice.Office.Common/View"),
+ ::rtl::OUString::createFromAscii("NewDocumentHandling"),
+ ::rtl::OUString::createFromAscii("ForceFocusAndToFront"),
+ ::comphelper::ConfigurationHelper::E_READONLY);
+ a >>= bForceFrontAndFocus;
+
+ pWindow->Show(sal_True, (bForceFrontAndFocus || bForceToFront) ? SHOW_FOREGROUNDTASK : 0 );
+ }
+
/* #i19976#
We tried to prevent a toFront() call in case the user putted the
loading document into the background ..
diff --git a/framework/source/uifactory/windowcontentfactorymanager.cxx b/framework/source/uifactory/windowcontentfactorymanager.cxx
index fcadc1694e54..239c6aff5c1f 100644
--- a/framework/source/uifactory/windowcontentfactorymanager.cxx
+++ b/framework/source/uifactory/windowcontentfactorymanager.cxx
@@ -220,6 +220,13 @@ throw (uno::Exception, uno::RuntimeException)
// module identifier, user interface element type and name
// SAFE
ResetableGuard aLock( m_aLock );
+
+ if ( !m_bConfigRead )
+ {
+ m_bConfigRead = sal_True;
+ m_pConfigAccess->readConfigurationData();
+ }
+
aImplementationName = m_pConfigAccess->getFactorySpecifierFromTypeNameModule( aType, aName, aModuleId );
if ( aImplementationName.getLength() > 0 )
{
diff --git a/idl/inc/command.hxx b/idl/inc/command.hxx
index 6829edcebe60..fa978119d810 100644
--- a/idl/inc/command.hxx
+++ b/idl/inc/command.hxx
@@ -65,6 +65,7 @@ public:
String aCSVFile;
String aExportFile;
String aDocuFile;
+ UINT32 nVerbosity;
UINT32 nFlags;
SvCommand( int argc, char ** argv );
diff --git a/idl/inc/database.hxx b/idl/inc/database.hxx
index 4d334bba000c..d0e6c92e349e 100644
--- a/idl/inc/database.hxx
+++ b/idl/inc/database.hxx
@@ -39,6 +39,8 @@
/*************************************************************************
*************************************************************************/
+class SvCommand;
+
#ifdef IDL_COMPILER
/******************** class SvIdlError ***********************************/
class SvIdlError
@@ -70,6 +72,7 @@ class SvIdlDataBase
BOOL bExport;
String aExportFile;
sal_uInt32 nUniqueId;
+ sal_uInt32 nVerbosity;
String aDataBaseFile;
SvFileStream * pStm;
BOOL bIsModified;
@@ -96,7 +99,7 @@ protected:
}
#endif
public:
- SvIdlDataBase();
+ explicit SvIdlDataBase( const SvCommand& rCmd );
~SvIdlDataBase();
static BOOL IsBinaryFormat( SvStream & rInStm );
@@ -165,7 +168,7 @@ public:
class SvIdlWorkingBase : public SvIdlDataBase
{
public:
- SvIdlWorkingBase();
+ explicit SvIdlWorkingBase( const SvCommand& rCmd );
BOOL ReadSvIdl( SvTokenStream &, BOOL bImported, const String & rPath );
BOOL WriteSvIdl( SvStream & );
diff --git a/idl/source/prj/command.cxx b/idl/source/prj/command.cxx
index 66790b457334..29c49199dc30 100644
--- a/idl/source/prj/command.cxx
+++ b/idl/source/prj/command.cxx
@@ -258,7 +258,7 @@ static BOOL ResponseFile( StringList * pList, int argc, char ** argv )
|* Beschreibung
*************************************************************************/
SvCommand::SvCommand( int argc, char ** argv )
- : nFlags( 0 )
+ : nVerbosity(1), nFlags( 0 )
{
StringList aList;
@@ -353,6 +353,14 @@ SvCommand::SvCommand( int argc, char ** argv )
{ // Hilfe
printf( "%s", CommandLineSyntax );
}
+ else if( aParam.EqualsIgnoreCaseAscii( "quiet" ) )
+ {
+ nVerbosity = 0;
+ }
+ else if( aParam.EqualsIgnoreCaseAscii( "verbose" ) )
+ {
+ nVerbosity = 2;
+ }
else if( aParam.EqualsIgnoreCaseAscii( "syntax" ) )
{ // Hilfe
int j = 0;
diff --git a/idl/source/prj/database.cxx b/idl/source/prj/database.cxx
index 8933156bfc69..3c6d07f19921 100644
--- a/idl/source/prj/database.cxx
+++ b/idl/source/prj/database.cxx
@@ -58,9 +58,10 @@ void PrimeNumber(){
}
*/
-SvIdlDataBase::SvIdlDataBase()
+SvIdlDataBase::SvIdlDataBase( const SvCommand& rCmd )
: bExport( FALSE )
, nUniqueId( 0 )
+ , nVerbosity( rCmd.nVerbosity )
, bIsModified( FALSE )
, aPersStream( *IDLAPP->pClassMgr, NULL )
, pIdTable( NULL )
@@ -700,6 +701,7 @@ SvMetaClass * SvIdlDataBase::ReadKnownClass( SvTokenStream & rInStm )
void SvIdlDataBase::Write( const ByteString & rText )
{
#ifndef W31
+ if( nVerbosity != 0 )
fprintf( stdout, "%s", rText.GetBuffer() );
#endif
}
@@ -803,7 +805,7 @@ void SvIdlDataBase::WriteError( SvTokenStream & rInStm )
|*
|* Beschreibung
*************************************************************************/
-SvIdlWorkingBase::SvIdlWorkingBase()
+SvIdlWorkingBase::SvIdlWorkingBase(const SvCommand& rCmd) : SvIdlDataBase(rCmd)
{
}
diff --git a/idl/source/prj/svidl.cxx b/idl/source/prj/svidl.cxx
index 16706e936f30..8ae94ae896f5 100644
--- a/idl/source/prj/svidl.cxx
+++ b/idl/source/prj/svidl.cxx
@@ -112,8 +112,6 @@ int cdecl main ( int argc, char ** argv)
{
#endif
- printf( "StarView Interface Definition Language (IDL) Compiler 3.0\n" );
-
/*
pStr = ::ResponseFile( &aCmdLine, argv, argc );
if( pStr )
@@ -136,8 +134,12 @@ int cdecl main ( int argc, char ** argv)
String aTmpDocuFile;
SvCommand aCommand( argc, argv );
+
+ if( aCommand.nVerbosity != 0 )
+ printf( "StarView Interface Definition Language (IDL) Compiler 3.0\n" );
+
Init();
- SvIdlWorkingBase * pDataBase = new SvIdlWorkingBase();
+ SvIdlWorkingBase * pDataBase = new SvIdlWorkingBase(aCommand);
int nExit = 0;
if( aCommand.aExportFile.Len() )
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
index 72c0b768ed84..f816a55e93a7 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
@@ -2105,7 +2105,7 @@ Dymamic border coloring means that when the mouse is hovered over a control, and
</info>
</set>
</group>
- <group oor:name="Save">
+ <group oor:name="Save">
<info>
<author>MBA</author>
<desc>Contains general settings about the saving process.</desc>
@@ -2616,6 +2616,19 @@ Dymamic border coloring means that when the mouse is hovered over a control, and
</constraints>
<value>0</value>
</prop>
+ <group oor:name="NewDocumentHandling">
+ <info>
+ <author>CD</author>
+ <desc>Contains settings to change new document window behavior.</desc>
+ </info>
+ <prop oor:name="ForceFocusAndToFront" oor:type="xs:boolean">
+ <info>
+ <author>CD</author>
+ <desc>Every new document window will be forced to front and grabs the focus.</desc>
+ </info>
+ <value>true</value>
+ </prop>
+ </group>
<group oor:name="AppWindow">
<info>
<author>MBA</author>
diff --git a/sfx2/source/dialog/dockwin.cxx b/sfx2/source/dialog/dockwin.cxx
index f31ed1724907..cf7d04ef0875 100644
--- a/sfx2/source/dialog/dockwin.cxx
+++ b/sfx2/source/dialog/dockwin.cxx
@@ -236,7 +236,8 @@ SfxDockingWrapper::SfxDockingWrapper( Window* pParentWnd ,
}
Window* pContentWindow = VCLUnoHelper::GetWindow(xWindow);
- pContentWindow->SetStyle( pContentWindow->GetStyle() | WB_DIALOGCONTROL | WB_CHILDDLGCTRL );
+ if ( pContentWindow )
+ pContentWindow->SetStyle( pContentWindow->GetStyle() | WB_DIALOGCONTROL | WB_CHILDDLGCTRL );
pTitleDockWindow->SetWrappedWindow(pContentWindow);
}
diff --git a/svx/prj/build.lst b/svx/prj/build.lst
index 56980702fb2d..2f595a2de9d7 100644
--- a/svx/prj/build.lst
+++ b/svx/prj/build.lst
@@ -22,7 +22,7 @@ sx svx\source\svdraw nmake - all sx_draw sx_inc NULL
sx svx\source\sdr\attribute nmake - all sx_attribute sx_inc NULL
sx svx\source\sdr\primitive2d nmake - all sx_primitive2d sx_inc NULL
sx svx\source\sdr\primitive3d nmake - all sx_primitive3d sx_inc NULL
-sx svx\source\table nmake - all sx_table NULL
+sx svx\source\table nmake - all sx_table sx_inc NULL
sx svx\source\sdr\properties nmake - all sx_properties sx_inc NULL
sx svx\source\sdr\contact nmake - all sx_contact sx_inc NULL
sx svx\source\sdr\event nmake - all sx_event sx_inc NULL
diff --git a/svx/source/cui/optimprove2.cxx b/svx/source/cui/optimprove2.cxx
index 28989080ca0a..b988c7b75bad 100644
--- a/svx/source/cui/optimprove2.cxx
+++ b/svx/source/cui/optimprove2.cxx
@@ -149,7 +149,13 @@ IMPL_LINK( SvxImprovementOptionsPage, HandleShowData, PushButton*, EMPTYARG )
{
::rtl::OUString sLogFile( m_sLogPath );
sLogFile += C2S("/Current.csv");
- uno::Sequence< beans::PropertyValue > aArgs;
+ uno::Sequence< beans::PropertyValue > aArgs(3);
+ aArgs[0].Name = ::rtl::OUString::createFromAscii("FilterName");
+ aArgs[0].Value = uno::makeAny(::rtl::OUString::createFromAscii("Text - txt - csv (StarCalc)"));
+ aArgs[1].Name = ::rtl::OUString::createFromAscii("FilterOptions");
+ aArgs[1].Value = uno::makeAny(::rtl::OUString::createFromAscii("44,34,12,1,"));
+ aArgs[2].Name = ::rtl::OUString::createFromAscii("ReadOnly");
+ aArgs[2].Value = uno::makeAny(true);
uno::Reference< lang::XComponent > xDoc = ::comphelper::SynchronousDispatch::dispatch(
xDesktop, sLogFile, C2S("_default"), 0, aArgs );
diff --git a/xmlhelp/source/cxxhelp/provider/databases.cxx b/xmlhelp/source/cxxhelp/provider/databases.cxx
index 050b5d419c99..c0980017c2ed 100644
--- a/xmlhelp/source/cxxhelp/provider/databases.cxx
+++ b/xmlhelp/source/cxxhelp/provider/databases.cxx
@@ -802,6 +802,10 @@ void KeywordInfo::KeywordElement::init( Databases *pDatabases,Db* pDb,const rtl:
for( sal_uInt32 i = 0; i < id.size(); ++i )
{
+ // the following object must live longer than the
+ // pointer returned by aDBData.getData()
+ DBData aDBData;
+
listId[i] = id[i];
listAnchor[i] = anchor[i];
@@ -813,7 +817,6 @@ void KeywordInfo::KeywordElement::init( Databases *pDatabases,Db* pDb,const rtl:
DBHelp* pDBHelp = pDb->getDBHelp();
if( pDBHelp != NULL )
{
- DBData aDBData;
bool bSuccess = pDBHelp->getValueForKey( idi, aDBData );
if( bSuccess )
{
diff --git a/xmlhelp/source/cxxhelp/provider/urlparameter.cxx b/xmlhelp/source/cxxhelp/provider/urlparameter.cxx
index d46758ba2ee7..c8685645c6fd 100644
--- a/xmlhelp/source/cxxhelp/provider/urlparameter.cxx
+++ b/xmlhelp/source/cxxhelp/provider/urlparameter.cxx
@@ -1080,6 +1080,7 @@ InputStreamTransformer::InputStreamTransformer( URLParameter* urlParam,
ugblData = &userData;
+ xmlInitParser();
xmlRegisterInputCallbacks(zipMatch, zipOpen, zipRead, uriClose);
xmlRegisterInputCallbacks(helpMatch, helpOpen, helpRead, uriClose);
xmlRegisterInputCallbacks(fileMatch, fileOpen, fileRead, fileClose);