summaryrefslogtreecommitdiffstats
path: root/sfx2
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2013-03-29 11:52:00 +0200
committerMichael Stahl <mstahl@redhat.com>2013-04-02 16:06:23 +0000
commita2bf98857b675b2d10a4fd93a0413229abebf3f1 (patch)
treed1201555e1aa28bf4dcdb6c8c64f5847ca223841 /sfx2
parentvcl: don't try to dlopen kde plugins when kde support is disabled (diff)
downloadcore-a2bf98857b675b2d10a4fd93a0413229abebf3f1.tar.gz
core-a2bf98857b675b2d10a4fd93a0413229abebf3f1.zip
Get rid of the slots.cfg mechanism
I very much doubt anybody is using it. It has never been documented as far as I can see for OpenOffice.org and even less for LibreOffice. I only found it mentioned in the "StarOffice 6.0 Software Administration Guide". Change-Id: I03f272427ef6717e3e3ff957f32ffe1f696d93c9 Reviewed-on: https://gerrit.libreoffice.org/3118 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/inc/sfx2/app.hxx5
-rw-r--r--sfx2/inc/sfx2/dispatch.hxx1
-rw-r--r--sfx2/source/appl/appmisc.cxx82
-rw-r--r--sfx2/source/control/dispatch.cxx65
4 files changed, 3 insertions, 150 deletions
diff --git a/sfx2/inc/sfx2/app.hxx b/sfx2/inc/sfx2/app.hxx
index ab884406e5de..bc8613fadce6 100644
--- a/sfx2/inc/sfx2/app.hxx
+++ b/sfx2/inc/sfx2/app.hxx
@@ -251,8 +251,9 @@ public:
SAL_DLLPRIVATE void Registrations_Impl();
SAL_DLLPRIVATE SfxWorkWindow* GetWorkWindow_Impl(const SfxViewFrame *pFrame=0) const;
- // TODO/CLEANUP: still needed?
- SAL_DLLPRIVATE std::vector<sal_uInt16>* GetDisabledSlotList_Impl();
+ // TODO/CLEANUP: still needed? -- unclear whether this comment
+ // refers to the GetDisabledSlotList_Impl() method which was
+ // already removed, or the below methods?
SAL_DLLPRIVATE SfxSlotPool& GetAppSlotPool_Impl() const;
SAL_DLLPRIVATE SfxModule* GetModule_Impl();
SAL_DLLPRIVATE ResMgr* GetOffResManager_Impl();
diff --git a/sfx2/inc/sfx2/dispatch.hxx b/sfx2/inc/sfx2/dispatch.hxx
index f87183830613..c7aaae360b84 100644
--- a/sfx2/inc/sfx2/dispatch.hxx
+++ b/sfx2/inc/sfx2/dispatch.hxx
@@ -182,7 +182,6 @@ public:
SfxItemState QueryState( sal_uInt16 nSID, const SfxPoolItem* &rpState );
SfxItemState QueryState( sal_uInt16 nSID, ::com::sun::star::uno::Any& rAny );
- sal_Bool IsAllowed( sal_uInt16 nSlot ) const;
::com::sun::star::frame::XDispatch* GetDispatchInterface( const String& );
void SetDisableFlags( sal_uInt32 nFlags );
sal_uInt32 GetDisableFlags() const;
diff --git a/sfx2/source/appl/appmisc.cxx b/sfx2/source/appl/appmisc.cxx
index bd55b2429257..2cd13360c83f 100644
--- a/sfx2/source/appl/appmisc.cxx
+++ b/sfx2/source/appl/appmisc.cxx
@@ -155,88 +155,6 @@ SfxProgress* SfxApplication::GetProgress() const
return pAppData_Impl->pProgress;
}
-//------------------------------------------------------------------------
-
-std::vector<sal_uInt16>* SfxApplication::GetDisabledSlotList_Impl()
-{
- sal_Bool bError = sal_False;
- std::vector<sal_uInt16>* pList = pAppData_Impl->pDisabledSlotList;
- if ( !pList )
- {
- // Is there a slot file?
- INetURLObject aUserObj( SvtPathOptions().GetUserConfigPath() );
- aUserObj.insertName( "slots.cfg" );
- SvStream* pStream = ::utl::UcbStreamHelper::CreateStream( aUserObj.GetMainURL( INetURLObject::NO_DECODE ), STREAM_STD_READ );
- if ( !pStream || pStream->GetError() == ERRCODE_IO_NOTEXISTS )
- {
- delete pStream;
- INetURLObject aObj( SvtPathOptions().GetConfigPath() );
- aObj.insertName( "slots.cfg" );
- pStream = ::utl::UcbStreamHelper::CreateStream( aObj.GetMainURL( INetURLObject::NO_DECODE ), STREAM_STD_READ );
- }
-
- sal_Bool bSlotsEnabled = SvtInternalOptions().SlotCFGEnabled();
- sal_Bool bSlots = ( pStream && !pStream->GetError() );
- if( bSlots && bSlotsEnabled )
- {
- // Read Slot file
- String aTitle = pStream->ReadUniOrByteString(pStream->GetStreamCharSet());
- if ( aTitle.CompareToAscii("SfxSlotFile" ) == COMPARE_EQUAL )
- {
- sal_uInt16 nCount;
- (*pStream) >> nCount;
- pList = pAppData_Impl->pDisabledSlotList =
- new std::vector<sal_uInt16>;
-
- sal_uInt16 nSlot;
- for ( sal_uInt16 n=0; n<nCount; n++ )
- {
- (*pStream) >> nSlot;
- pList->push_back( nSlot );
- }
-
- aTitle = pStream->ReadUniOrByteString(pStream->GetStreamCharSet());
- if ( aTitle.CompareToAscii("END" ) != COMPARE_EQUAL || pStream->GetError() )
- {
- // Read failed
- DELETEZ( pList );
- bError = sal_True;
- }
- }
- else
- {
- // Stream detection failure
- bError = sal_True;
- }
- }
- else if ( bSlots != bSlotsEnabled )
- {
- // If no slot list entry, then no slot file shall exist
- bError = sal_True;
- }
-
- delete pStream;
- }
- else if ( pList == (std::vector<sal_uInt16>*) -1L )
- {
- return NULL;
- }
-
- if ( !pList )
- pAppData_Impl->pDisabledSlotList = (std::vector<sal_uInt16>*) -1L;
-
- if ( bError )
- {
- // If an entry slot is present, but no or faulty slot file, or a slot
- // file, but no slot entry, then this is considered to be a
- // misconfiguration
- new SfxSpecialConfigError_Impl( SfxResId( RID_SPECIALCONFIG_ERROR ).toString() );
- }
-
- return pList;
-}
-
-
SfxModule* SfxApplication::GetModule_Impl()
{
SfxModule* pModule = SfxModule::GetActiveModule();
diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx
index 00d48491362e..17394c7a0679 100644
--- a/sfx2/source/control/dispatch.cxx
+++ b/sfx2/source/control/dispatch.cxx
@@ -146,7 +146,6 @@ struct SfxDispatcher_Impl
// 2==ReadOnlyDoc overturned
sal_uInt16 nFilterCount; // Number of SIDs in pFilterSIDs
const sal_uInt16* pFilterSIDs; // sorted Array of SIDs
- std::vector<sal_uInt16>* pDisableList;
sal_uInt32 nDisableFlags;
};
@@ -307,7 +306,6 @@ void SfxDispatcher::Construct_Impl( SfxDispatcher* pParent )
{
pImp = new SfxDispatcher_Impl;
bFlushed = sal_True;
- SfxApplication *pSfxApp = SFX_APP();
pImp->pCachedServ1 = 0;
pImp->pCachedServ2 = 0;
@@ -324,7 +322,6 @@ void SfxDispatcher::Construct_Impl( SfxDispatcher* pParent )
pImp->bFilterEnabling = sal_False;
pImp->nFilterCount = 0;
pImp->pFilterSIDs = 0;
- pImp->pDisableList = pSfxApp->GetDisabledSlotList_Impl();
pImp->nDisableFlags = 0;
pImp->pParent = pParent;
@@ -1970,11 +1967,6 @@ sal_Bool SfxDispatcher::_FindServer
pSlot = 0;
}
- if ( pSlot && !IsAllowed( nSlot ) )
- {
- pSlot = NULL;
- }
-
if ( pSlot )
{
rServer.SetSlot(pSlot);
@@ -2313,63 +2305,6 @@ void SfxDispatcher::RemoveShell_Impl( SfxShell& rShell )
}
}
-sal_Bool SfxDispatcher::IsAllowed
-(
- sal_uInt16 nSlot
-) const
-/*
- [Description]
-
- The method checks whether the access is allowed on this interface.
- */
-{
- if ( !pImp->pDisableList )
- {
- return sal_True;
- }
-
- // BinSearch in the disable list
- std::vector<sal_uInt16>& rList = *pImp->pDisableList;
- sal_uInt16 nCount = rList.size();
- sal_uInt16 nLow = 0, nMid = 0, nHigh;
- sal_Bool bFound = sal_False;
- nHigh = nCount - 1;
-
- while ( !bFound && nLow <= nHigh )
- {
- nMid = (nLow + nHigh) >> 1;
- DBG_ASSERT( nMid < nCount, "bsearch is buggy" );
-
- int nDiff = (int) nSlot - (int) rList[nMid];
- if ( nDiff < 0)
- {
- if ( nMid == 0 )
- break;
- nHigh = nMid - 1;
- }
- else if ( nDiff > 0 )
- {
- nLow = nMid + 1;
- if ( nLow == 0 )
- break;
- }
- else
- bFound = sal_True;
- }
-
-#ifdef _DEBUG
- // Slot found in the List?
- sal_uInt16 nPos = bFound ? nMid : nLow;
-
- DBG_ASSERT( nPos <= nCount, "" );
- DBG_ASSERT( nPos == nCount || nSlot <= rList[nPos], "" );
- DBG_ASSERT( nPos == 0 || nSlot > rList[nPos-1], "" );
- DBG_ASSERT( ( (nPos+1) >= nCount ) || nSlot < rList[nPos+1], "" );
-#endif
-
- return !bFound;
-}
-
void SfxDispatcher::InvalidateBindings_Impl( sal_Bool bModify )
{
// App-Dispatcher?