diff options
-rwxr-xr-x | sd/source/core/stlpool.cxx | 3 | ||||
-rw-r--r--[-rwxr-xr-x] | sd/source/ui/framework/factories/BasicViewFactory.cxx | 3 | ||||
-rwxr-xr-x | sd/source/ui/framework/factories/BasicViewFactory.hxx | 1 | ||||
-rwxr-xr-x | sd/source/ui/framework/module/ModuleController.cxx | 4 | ||||
-rwxr-xr-x | sd/source/ui/func/fuhhconv.cxx | 10 | ||||
-rwxr-xr-x | sd/source/ui/presenter/PresenterTextView.cxx | 2 | ||||
-rw-r--r-- | sd/source/ui/slidesorter/controller/SlideSorterController.cxx | 5 | ||||
-rwxr-xr-x[-rw-r--r--] | sd/source/ui/toolpanel/TaskPaneFocusManager.cxx | 19 | ||||
-rwxr-xr-x[-rw-r--r--] | sd/source/ui/toolpanel/TaskPaneFocusManager.hxx | 1 | ||||
-rwxr-xr-x | sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx | 2 | ||||
-rw-r--r-- | slideshow/source/engine/animationnodes/basenode.hxx | 2 | ||||
-rw-r--r-- | slideshow/source/engine/shapes/drawshape.hxx | 2 | ||||
-rw-r--r-- | slideshow/source/engine/shapes/gdimtftools.cxx | 5 | ||||
-rw-r--r-- | slideshow/source/engine/slide/slideimpl.cxx | 2 | ||||
-rw-r--r-- | slideshow/source/engine/transitions/randomwipe.cxx | 10 |
15 files changed, 45 insertions, 26 deletions
diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx index ceb7980ea..babe9571c 100755 --- a/sd/source/core/stlpool.cxx +++ b/sd/source/core/stlpool.cxx @@ -1060,6 +1060,9 @@ void SdStyleSheetPool::PutNumBulletItem( SfxStyleSheetBase* pSheet, { SvxNumberFormat aFrmt( pDefaultRule->GetLevel(i) ); aFrmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL); + // #i93908# clear suffix for bullet lists + aFrmt.SetPrefix(::rtl::OUString()); + aFrmt.SetSuffix(::rtl::OUString()); aFrmt.SetStart(1); aFrmt.SetBulletRelSize(45); aFrmt.SetBulletChar( 0x25CF ); // StarBats: 0xF000 + 34 diff --git a/sd/source/ui/framework/factories/BasicViewFactory.cxx b/sd/source/ui/framework/factories/BasicViewFactory.cxx index 232f52bd5..f23a68580 100755..100644 --- a/sd/source/ui/framework/factories/BasicViewFactory.cxx +++ b/sd/source/ui/framework/factories/BasicViewFactory.cxx @@ -142,8 +142,9 @@ BasicViewFactory::BasicViewFactory ( mpViewShellContainer(new ViewShellContainer()), mpBase(NULL), mpFrameView(NULL), + mpWindow(new WorkWindow(NULL,WB_STDWORK)), mpViewCache(new ViewCache()), - mxLocalPane(new Pane(Reference<XResourceId>(), new WorkWindow(NULL,WB_STDWORK))) + mxLocalPane(new Pane(Reference<XResourceId>(), mpWindow.get())) { (void)rxContext; } diff --git a/sd/source/ui/framework/factories/BasicViewFactory.hxx b/sd/source/ui/framework/factories/BasicViewFactory.hxx index fb433b165..87cf18c94 100755 --- a/sd/source/ui/framework/factories/BasicViewFactory.hxx +++ b/sd/source/ui/framework/factories/BasicViewFactory.hxx @@ -119,6 +119,7 @@ private: FrameView* mpFrameView; class ViewCache; + ::boost::shared_ptr<Window> mpWindow; ::boost::shared_ptr<ViewCache> mpViewCache; css::uno::Reference<css::drawing::framework::XPane> mxLocalPane; diff --git a/sd/source/ui/framework/module/ModuleController.cxx b/sd/source/ui/framework/module/ModuleController.cxx index ef4b8b529..1838a49b9 100755 --- a/sd/source/ui/framework/module/ModuleController.cxx +++ b/sd/source/ui/framework/module/ModuleController.cxx @@ -143,6 +143,10 @@ ModuleController::~ModuleController (void) throw() void SAL_CALL ModuleController::disposing (void) { + // Break the cyclic reference back to DrawController object + mpLoadedFactories.reset(); + mpResourceToFactoryMap.reset(); + mxController.clear(); } diff --git a/sd/source/ui/func/fuhhconv.cxx b/sd/source/ui/func/fuhhconv.cxx index 99dacf7dc..ce28b1e77 100755 --- a/sd/source/ui/func/fuhhconv.cxx +++ b/sd/source/ui/func/fuhhconv.cxx @@ -203,11 +203,11 @@ void FuHangulHanjaConversion::ConvertStyles( sal_Int16 nTargetLanguage, const Fo { // set new font attribute SvxFontItem aFontItem( (SvxFontItem&) rSet.Get( EE_CHAR_FONTINFO_CJK ) ); - aFontItem.GetFamilyName() = pTargetFont->GetName(); - aFontItem.GetFamily() = pTargetFont->GetFamily(); - aFontItem.GetStyleName() = pTargetFont->GetStyleName(); - aFontItem.GetPitch() = pTargetFont->GetPitch(); - aFontItem.GetCharSet() = pTargetFont->GetCharSet(); + aFontItem.SetFamilyName( pTargetFont->GetName()); + aFontItem.SetFamily( pTargetFont->GetFamily()); + aFontItem.SetStyleName( pTargetFont->GetStyleName()); + aFontItem.SetPitch( pTargetFont->GetPitch()); + aFontItem.SetCharSet( pTargetFont->GetCharSet()); rSet.Put( aFontItem ); } diff --git a/sd/source/ui/presenter/PresenterTextView.cxx b/sd/source/ui/presenter/PresenterTextView.cxx index 296769d2d..1f8882b86 100755 --- a/sd/source/ui/presenter/PresenterTextView.cxx +++ b/sd/source/ui/presenter/PresenterTextView.cxx @@ -498,7 +498,7 @@ void PresenterTextView::Implementation::SetFontDescriptor ( mpEditEngineItemPool->SetPoolDefaultItem( aFontHeight); SvxFontItem aSvxFontItem (EE_CHAR_FONTINFO); - aSvxFontItem.GetFamilyName() = rFontDescriptor.Name; + aSvxFontItem.SetFamilyName( rFontDescriptor.Name ); mpEditEngineItemPool->SetPoolDefaultItem(aSvxFontItem); mnTotalHeight = -1; diff --git a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx index b5db14907..b920b900e 100644 --- a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx +++ b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx @@ -372,7 +372,12 @@ bool SlideSorterController::Command ( { bool bEventHasBeenHandled = false; + if (pWindow == NULL) + return false; + ViewShell* pViewShell = mrSlideSorter.GetViewShell(); + if (pViewShell == NULL) + return false; switch (rEvent.GetCommand()) { diff --git a/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx b/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx index cf9e9bfd2..37e5668ad 100644..100755 --- a/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx +++ b/sd/source/ui/toolpanel/TaskPaneFocusManager.cxx @@ -31,9 +31,9 @@ #include "TaskPaneFocusManager.hxx" #include <vcl/window.hxx> -#include <vos/mutex.hxx> #include <vcl/svapp.hxx> #include <vcl/event.hxx> +#include <rtl/instance.hxx> #include <hash_map> namespace { @@ -70,16 +70,23 @@ class FocusManager::LinkMap -FocusManager* FocusManager::spInstance = NULL; - - FocusManager& FocusManager::Instance (void) { + static FocusManager* spInstance = NULL; + if (spInstance == NULL) { - ::vos::OGuard aGuard (::Application::GetSolarMutex()); + ::osl::MutexGuard aGuard (::osl::Mutex::getGlobalMutex()); if (spInstance == NULL) - spInstance = new FocusManager (); + { + static FocusManager aInstance; + OSL_DOUBLE_CHECKED_LOCKING_MEMORY_BARRIER(); + spInstance = &aInstance; + } + } + else + { + OSL_DOUBLE_CHECKED_LOCKING_MEMORY_BARRIER(); } return *spInstance; } diff --git a/sd/source/ui/toolpanel/TaskPaneFocusManager.hxx b/sd/source/ui/toolpanel/TaskPaneFocusManager.hxx index 3111b2fe1..acbe34763 100644..100755 --- a/sd/source/ui/toolpanel/TaskPaneFocusManager.hxx +++ b/sd/source/ui/toolpanel/TaskPaneFocusManager.hxx @@ -103,7 +103,6 @@ public: bool TransferFocus (::Window* pSource, const KeyCode& rCode); private: - static FocusManager* spInstance; class LinkMap; ::std::auto_ptr<LinkMap> mpLinks; diff --git a/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx b/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx index adbe18510..2e5d5cde2 100755 --- a/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx +++ b/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx @@ -227,7 +227,7 @@ void CurrentMasterPagesSelector::Execute (SfxRequest& rRequest) // i.e. is not used. SdPage* pMasterPage = GetSelectedMasterPage(); if (pMasterPage != NULL - && mrDocument.GetMasterPageUserCount(pMasterPage) > 0) + && mrDocument.GetMasterPageUserCount(pMasterPage) == 0) { // Removing the precious flag so that the following call to // RemoveUnnessesaryMasterPages() will remove this master page. diff --git a/slideshow/source/engine/animationnodes/basenode.hxx b/slideshow/source/engine/animationnodes/basenode.hxx index eb722d6fd..12d7e4789 100644 --- a/slideshow/source/engine/animationnodes/basenode.hxx +++ b/slideshow/source/engine/animationnodes/basenode.hxx @@ -89,7 +89,7 @@ class BaseContainerNode; file-private accessor methods. */ class BaseNode : public AnimationNode, - protected ::osl::DebugBase<BaseNode>, + public ::osl::DebugBase<BaseNode>, private ::boost::noncopyable { public: diff --git a/slideshow/source/engine/shapes/drawshape.hxx b/slideshow/source/engine/shapes/drawshape.hxx index e6c5e6961..bccd54401 100644 --- a/slideshow/source/engine/shapes/drawshape.hxx +++ b/slideshow/source/engine/shapes/drawshape.hxx @@ -65,7 +65,7 @@ namespace slideshow class DrawShape : public AttributableShape, public DocTreeNodeSupplier, public HyperlinkArea, - protected ::osl::DebugBase<DrawShape> + public ::osl::DebugBase<DrawShape> { public: /** Create a shape for the given XShape diff --git a/slideshow/source/engine/shapes/gdimtftools.cxx b/slideshow/source/engine/shapes/gdimtftools.cxx index 85b4bcf5d..a40b40600 100644 --- a/slideshow/source/engine/shapes/gdimtftools.cxx +++ b/slideshow/source/engine/shapes/gdimtftools.cxx @@ -491,9 +491,10 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& o_rFrames, nWaitTime100thSeconds = 100 * 60 * 60 * 24; } - // There are animated GIFs with no WaitTime set. Take 1 sec, then. + // There are animated GIFs with no WaitTime set. Take 0.1 sec, the + // same duration that is used by the edit view. if( nWaitTime100thSeconds == 0 ) - nWaitTime100thSeconds = 100; + nWaitTime100thSeconds = 10; o_rFrames.push_back( MtfAnimationFrame( pMtf, nWaitTime100thSeconds / 100.0 ) ); diff --git a/slideshow/source/engine/slide/slideimpl.cxx b/slideshow/source/engine/slide/slideimpl.cxx index 56cfb2a70..f5bdf7c8b 100644 --- a/slideshow/source/engine/slide/slideimpl.cxx +++ b/slideshow/source/engine/slide/slideimpl.cxx @@ -94,7 +94,7 @@ namespace class SlideImpl : public Slide, public CursorManager, public ViewEventHandler, - protected ::osl::DebugBase<SlideImpl> + public ::osl::DebugBase<SlideImpl> { public: SlideImpl( const uno::Reference<drawing::XDrawPage>& xDrawPage, diff --git a/slideshow/source/engine/transitions/randomwipe.cxx b/slideshow/source/engine/transitions/randomwipe.cxx index af0698d9e..66fd5bf30 100644 --- a/slideshow/source/engine/transitions/randomwipe.cxx +++ b/slideshow/source/engine/transitions/randomwipe.cxx @@ -68,13 +68,11 @@ RandomWipe::RandomWipe( sal_Int32 nElements, bool randomBars ) m_rect.transform( aTransform ); // mix up: - for ( sal_Int32 i = (nElements / 2); i--; ) + for (sal_Int32 nIndex=0; nIndex<nElements; ++nIndex) { - const sal_Int32 pos1 = getRandomOrdinal(nElements); - const sal_Int32 pos2 = getRandomOrdinal(nElements); - const ::basegfx::B2DPoint point( m_positions[ pos1 ] ); - m_positions[ pos1 ] = m_positions[ pos2 ]; - m_positions[ pos2 ] = point; + const sal_Int32 nOtherIndex (getRandomOrdinal(nElements)); + OSL_ASSERT(nOtherIndex>=0 && nOtherIndex<nElements); + ::std::swap(m_positions[nIndex], m_positions[nOtherIndex]); } } |