summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsd/inc/pch/precompiled_sd.hxx3
-rwxr-xr-x[-rw-r--r--]sd/inc/undo/undomanager.hxx14
-rwxr-xr-xsd/source/core/drawdoc3.cxx6
-rwxr-xr-xsd/source/core/drawdoc4.cxx21
-rw-r--r--[-rwxr-xr-x]sd/source/core/glob.src0
-rwxr-xr-xsd/source/core/sdpage.cxx26
-rwxr-xr-xsd/source/core/stlpool.cxx11
-rwxr-xr-x[-rw-r--r--]sd/source/core/undo/undomanager.cxx39
-rwxr-xr-x[-rw-r--r--]sd/source/ui/animations/CustomAnimationPane.cxx14
-rwxr-xr-xsd/source/ui/animations/SlideTransitionPane.cxx6
-rw-r--r--sd/source/ui/app/app.img120
-rw-r--r--[-rwxr-xr-x]sd/source/ui/app/optsitem.cxx39
-rwxr-xr-x[-rw-r--r--]sd/source/ui/app/strings.src2
-rwxr-xr-xsd/source/ui/dlg/LayerTabBar.cxx2
-rwxr-xr-xsd/source/ui/dlg/dlgass.cxx4
-rwxr-xr-xsd/source/ui/docshell/docshell.cxx4
-rwxr-xr-x[-rw-r--r--]sd/source/ui/func/fubullet.cxx4
-rwxr-xr-xsd/source/ui/func/fuconstr.cxx92
-rwxr-xr-xsd/source/ui/func/fudraw.cxx30
-rwxr-xr-x[-rw-r--r--]sd/source/ui/func/fuoaprms.cxx2
-rwxr-xr-xsd/source/ui/func/fupage.cxx2
-rwxr-xr-x[-rw-r--r--]sd/source/ui/func/fusel.cxx8
-rwxr-xr-xsd/source/ui/func/futext.cxx11
-rwxr-xr-xsd/source/ui/inc/DrawDocShell.hxx4
-rwxr-xr-xsd/source/ui/inc/SlideSorterViewShell.hxx2
-rwxr-xr-xsd/source/ui/inc/ViewShell.hxx2
-rwxr-xr-xsd/source/ui/inc/ViewShellBase.hxx14
-rwxr-xr-xsd/source/ui/inc/optsitem.hxx9
-rwxr-xr-x[-rw-r--r--]sd/source/ui/inc/unmodpg.hxx4
-rwxr-xr-x[-rw-r--r--]sd/source/ui/slideshow/makefile.mk3
-rwxr-xr-x[-rw-r--r--]sd/source/ui/slideshow/slideshow.hrc33
-rwxr-xr-x[-rw-r--r--]sd/source/ui/slideshow/slideshow.src70
-rwxr-xr-xsd/source/ui/slideshow/slideshowimpl.cxx544
-rwxr-xr-xsd/source/ui/slideshow/slideshowimpl.hxx11
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSlotManager.cxx4
-rwxr-xr-xsd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx2
-rw-r--r--sd/source/ui/slidesorter/view/SlsTheme.cxx3
-rwxr-xr-xsd/source/ui/toolpanel/controls/DocumentHelper.cxx4
-rwxr-xr-xsd/source/ui/view/DocumentRenderer.cxx52
-rwxr-xr-x[-rw-r--r--]sd/source/ui/view/DocumentRenderer.hrc15
-rwxr-xr-xsd/source/ui/view/DocumentRenderer.src94
-rw-r--r--sd/source/ui/view/ViewShellBase.cxx46
-rwxr-xr-xsd/source/ui/view/ViewShellImplementation.cxx4
-rwxr-xr-xsd/source/ui/view/ViewShellManager.cxx4
-rwxr-xr-xsd/source/ui/view/drviews1.cxx2
-rwxr-xr-xsd/source/ui/view/drviews2.cxx2
-rwxr-xr-xsd/source/ui/view/drviewsb.cxx6
-rwxr-xr-xsd/source/ui/view/drviewse.cxx10
-rwxr-xr-xsd/source/ui/view/outlview.cxx50
-rwxr-xr-xsd/source/ui/view/sdview.cxx2
-rwxr-xr-x[-rw-r--r--]sd/source/ui/view/sdview3.cxx21
-rwxr-xr-x[-rw-r--r--]sd/source/ui/view/unmodpg.cxx4
-rw-r--r--sd/source/ui/view/viewshe3.cxx4
-rwxr-xr-xsd/source/ui/view/viewshel.cxx43
-rw-r--r--slideshow/source/engine/color.cxx4
-rw-r--r--slideshow/source/engine/makefile.mk2
-rw-r--r--slideshow/source/engine/shapes/shapeimporter.cxx7
-rw-r--r--slideshow/source/engine/slide/slideimpl.cxx50
-rw-r--r--slideshow/source/engine/slide/userpaintoverlay.cxx91
-rw-r--r--slideshow/source/engine/slide/userpaintoverlay.hxx9
-rw-r--r--slideshow/source/engine/slideshowimpl.cxx54
-rw-r--r--slideshow/source/inc/slide.hxx7
-rw-r--r--slideshow/util/makefile.pmk2
63 files changed, 702 insertions, 1052 deletions
diff --git a/sd/inc/pch/precompiled_sd.hxx b/sd/inc/pch/precompiled_sd.hxx
index 2a80030b7560..2a4cec779f64 100755
--- a/sd/inc/pch/precompiled_sd.hxx
+++ b/sd/inc/pch/precompiled_sd.hxx
@@ -530,7 +530,6 @@
#include "unotools/pathoptions.hxx"
#include "svl/poolitem.hxx"
#include "svtools/prgsbar.hxx"
-#include "svtools/printdlg.hxx"
#include "svl/ptitem.hxx"
#include "svl/rectitem.hxx"
#include "unotools/saveopt.hxx"
@@ -901,7 +900,7 @@
#include "vcl/virdev.hxx"
#include "vcl/waitobj.hxx"
#include "vcl/window.hxx"
-#include "vcl/wintypes.hxx"
+#include "tools/wintypes.hxx"
#include "vcl/wrkwin.hxx"
#include "vos/diagnose.hxx"
diff --git a/sd/inc/undo/undomanager.hxx b/sd/inc/undo/undomanager.hxx
index b2e40c1e7442..708a05390f12 100644..100755
--- a/sd/inc/undo/undomanager.hxx
+++ b/sd/inc/undo/undomanager.hxx
@@ -40,31 +40,21 @@ public:
UndoManager( USHORT nMaxUndoActionCount = 20 );
virtual void EnterListAction(const UniString &rComment, const UniString& rRepeatComment, USHORT nId=0);
- virtual void LeaveListAction();
virtual void AddUndoAction( SfxUndoAction *pAction, BOOL bTryMerg=FALSE );
- bool isInListAction() const { return mnListLevel != 0; }
- bool isInUndo() const { return maIsInUndoLock.isLocked(); }
-
- virtual BOOL Undo( USHORT nCount=1 );
- virtual BOOL Redo( USHORT nCount=1 );
-
/** Set or reset the undo manager linked with the called undo manager.
*/
- void SetLinkedUndoManager (SfxUndoManager* pLinkedUndoManager);
+ void SetLinkedUndoManager (::svl::IUndoManager* pLinkedUndoManager);
private:
using SfxUndoManager::Undo;
using SfxUndoManager::Redo;
- int mnListLevel;
- ScopeLock maIsInUndoLock;
-
/** Used when the outline view is visible as a last resort to
synchronize the undo managers.
*/
- SfxUndoManager* mpLinkedUndoManager;
+ ::svl::IUndoManager* mpLinkedUndoManager;
/** Call ClearRedo() at the linked undo manager, when present.
diff --git a/sd/source/core/drawdoc3.cxx b/sd/source/core/drawdoc3.cxx
index 025700a790fc..43e44ce1e70f 100755
--- a/sd/source/core/drawdoc3.cxx
+++ b/sd/source/core/drawdoc3.cxx
@@ -535,7 +535,7 @@ BOOL SdDrawDocument::InsertBookmarkAsPage(
|* den Seiten transferieren, sonst verlieren die Textobjekte
|* beim Transfer den Bezug zur Vorlage
\*************************************************************************/
- SfxUndoManager* pUndoMgr = NULL;
+ ::svl::IUndoManager* pUndoMgr = NULL;
if( mpDocSh )
{
pUndoMgr = mpDocSh->GetUndoManager();
@@ -1356,7 +1356,7 @@ SvStream* SdDrawDocument::GetDocumentStream(SdrDocumentStreamInfo& rStreamInfo)
void SdDrawDocument::RemoveUnnecessaryMasterPages(SdPage* pMasterPage, BOOL bOnlyDuplicatePages, BOOL bUndo)
{
::sd::View* pView = NULL;
- SfxUndoManager* pUndoMgr = NULL;
+ ::svl::IUndoManager* pUndoMgr = NULL;
if( bUndo && !IsUndoEnabled() )
bUndo = FALSE;
@@ -1525,7 +1525,7 @@ void SdDrawDocument::SetMasterPage(USHORT nSdPageNum,
if( mpDocSh )
mpDocSh->SetWaitCursor( TRUE );
- SfxUndoManager* pUndoMgr = mpDocSh->GetUndoManager();
+ ::svl::IUndoManager* pUndoMgr = mpDocSh->GetUndoManager();
const bool bUndo = IsUndoEnabled();
diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx
index a58577458a67..c3fb301a0fc3 100755
--- a/sd/source/core/drawdoc4.cxx
+++ b/sd/source/core/drawdoc4.cxx
@@ -163,7 +163,7 @@ void SdDrawDocument::CreateLayoutTemplates()
String aNullStr;
::basegfx::B2DPolyPolygon aNullPolyPolygon;
- Color aNullCol(RGB_Color(COL_BLACK));
+ Color aNullCol(RGB_Color(COL_DEFAULT_SHAPE_STROKE));
XDash aNullDash;
XGradient aNullGrad(aNullCol,RGB_Color(COL_WHITE));
@@ -173,19 +173,20 @@ void SdDrawDocument::CreateLayoutTemplates()
// Linienattribute (Extended OutputDevice)
rISet.Put(XLineStyleItem(XLINE_SOLID));
- rISet.Put(XLineColorItem(String(), RGB_Color(COL_BLACK)));
+ rISet.Put(XLineColorItem(String(), RGB_Color(COL_DEFAULT_SHAPE_STROKE)));
rISet.Put(XLineWidthItem(0));
rISet.Put(XLineDashItem(pPool,aNullDash));
rISet.Put(XLineStartItem(pPool,aNullPolyPolygon));
rISet.Put(XLineEndItem(pPool,aNullPolyPolygon));
- rISet.Put(XLineStartWidthItem(300));
- rISet.Put(XLineEndWidthItem(300));
+ rISet.Put(XLineStartWidthItem(200));
+ rISet.Put(XLineEndWidthItem(200));
rISet.Put(XLineStartCenterItem());
rISet.Put(XLineEndCenterItem());
+ rISet.Put(SdrTextHorzAdjustItem(SDRTEXTHORZADJUST_BLOCK));
// Fuellattribute (Extended OutputDevice)
rISet.Put(XFillStyleItem(XFILL_SOLID));
- rISet.Put(XFillColorItem(String(), RGB_Color(COL_DEFAULT_SHAPE_FILLING))); // "Blue 8"
+ rISet.Put(XFillColorItem(String(), RGB_Color(COL_DEFAULT_SHAPE_FILLING)));
rISet.Put(XFillGradientItem(pPool,aNullGrad));
rISet.Put(XFillHatchItem(pPool,aNullHatch));
@@ -198,8 +199,8 @@ void SdDrawDocument::CreateLayoutTemplates()
// Schattenattribute (Drawing Engine)
rISet.Put(SdrShadowItem(FALSE));
rISet.Put(SdrShadowColorItem(aNullStr, RGB_Color(COL_GRAY)));
- rISet.Put(SdrShadowXDistItem(300)); // 3 mm Schattendistanz
- rISet.Put(SdrShadowYDistItem(300));
+ rISet.Put(SdrShadowXDistItem(200)); // 3 mm Schattendistanz
+ rISet.Put(SdrShadowYDistItem(200));
Font aLatinFont, aCJKFont, aCTLFont;
@@ -310,8 +311,8 @@ void SdDrawDocument::CreateLayoutTemplates()
pISet->Put(SdrShadowItem(TRUE));
pISet->Put(SdrShadowColorItem(aNullStr, RGB_Color(COL_GRAY)));
- pISet->Put(SdrShadowXDistItem(300)); // 3 mm Schattendistanz
- pISet->Put(SdrShadowYDistItem(300));
+ pISet->Put(SdrShadowXDistItem(200)); // 3 mm Schattendistanz
+ pISet->Put(SdrShadowYDistItem(200));
// ---- Objekt ohne Fllung -------------------------------------------
@@ -322,6 +323,7 @@ void SdDrawDocument::CreateLayoutTemplates()
pISet = &pSheet->GetItemSet();
pISet->Put(XFillStyleItem(XFILL_NONE));
+ pISet->Put(XLineColorItem(String(), RGB_Color(COL_BLACK)));
// ---- Text ----------------------------------------------------------
@@ -513,6 +515,7 @@ void SdDrawDocument::CreateLayoutTemplates()
pISet = &pSheet->GetItemSet();
pISet->Put(XFillStyleItem(XFILL_NONE));
+ pISet->Put(XLineColorItem(String(), RGB_Color(COL_BLACK)));
pISet->Put(SvxFontHeightItem(423, 100, EE_CHAR_FONTHEIGHT )); // 12 pt
diff --git a/sd/source/core/glob.src b/sd/source/core/glob.src
index f1c7058ddf79..f1c7058ddf79 100755..100644
--- a/sd/source/core/glob.src
+++ b/sd/source/core/glob.src
diff --git a/sd/source/core/sdpage.cxx b/sd/source/core/sdpage.cxx
index e045437d37b1..c52cd24270ee 100755
--- a/sd/source/core/sdpage.cxx
+++ b/sd/source/core/sdpage.cxx
@@ -251,8 +251,8 @@ void SdPage::EnsureMasterPageDefaultBackground()
*/
SdrObject* SdPage::CreatePresObj(PresObjKind eObjKind, BOOL bVertical, const Rectangle& rRect, BOOL /* bInsert */ )
{
- sd::UndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
- const bool bUndo = pUndoManager && pUndoManager->isInListAction() && IsInserted();
+ ::svl::IUndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
+ const bool bUndo = pUndoManager && pUndoManager->IsInListAction() && IsInserted();
SdrObject* pSdrObj = NULL;
@@ -716,10 +716,10 @@ void SdPage::Changed(const SdrObject& rObj, SdrUserCallType eType, const Rectang
{
if( pObj->GetUserCall() )
{
- sd::UndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
- const bool bUndo = pUndoManager && pUndoManager->isInListAction() && IsInserted();
+ ::svl::IUndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
+ const bool bUndo = pUndoManager && pUndoManager->IsInListAction() && IsInserted();
/*
- DBG_ASSERT( bUndo || (pUndoManager && pUndoManager->isInUndo()),
+ DBG_ASSERT( bUndo || (pUndoManager && pUndoManager->IsDoing()),
"SdPage::Changed(), model change without undo!?" );
*/
if( bUndo )
@@ -767,8 +767,8 @@ void SdPage::Changed(const SdrObject& rObj, SdrUserCallType eType, const Rectang
void SdPage::CreateTitleAndLayout(BOOL bInit, BOOL bCreate )
{
- sd::UndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
- const bool bUndo = pUndoManager && pUndoManager->isInListAction() && IsInserted();
+ ::svl::IUndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
+ const bool bUndo = pUndoManager && pUndoManager->IsInListAction() && IsInserted();
SdPage* pMasterPage = this;
@@ -1554,8 +1554,8 @@ void SdPage::SetAutoLayout(AutoLayout eLayout, BOOL bInit, BOOL bCreate )
const bool bSwitchLayout = eLayout != GetAutoLayout();
- sd::UndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
- const bool bUndo = pUndoManager && pUndoManager->isInListAction() && IsInserted();
+ ::svl::IUndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
+ const bool bUndo = pUndoManager && pUndoManager->IsInListAction() && IsInserted();
meAutoLayout = eLayout;
@@ -2112,8 +2112,8 @@ SdrObject* convertPresentationObjectImpl( SdPage& rPage, SdrObject* pSourceObj,
if( !pModel || !pSourceObj )
return pSourceObj;
- sd::UndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
- const bool bUndo = pUndoManager && pUndoManager->isInListAction() && rPage.IsInserted();
+ ::svl::IUndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
+ const bool bUndo = pUndoManager && pUndoManager->IsInListAction() && rPage.IsInserted();
SdrObject* pNewObj = pSourceObj;
if((eObjKind == PRESOBJ_OUTLINE) && (pSourceObj->GetObjIdentifier() == OBJ_TEXT) )
@@ -2252,8 +2252,8 @@ SdrObject* convertPresentationObjectImpl( SdPage& rPage, SdrObject* pSourceObj,
*/
SdrObject* SdPage::InsertAutoLayoutShape( SdrObject* pObj, PresObjKind eObjKind, bool bVertical, Rectangle aRect, bool bInit )
{
- sd::UndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
- const bool bUndo = pUndoManager && pUndoManager->isInListAction() && IsInserted();
+ ::svl::IUndoManager* pUndoManager = pModel ? static_cast<SdDrawDocument*>(pModel)->GetUndoManager() : 0;
+ const bool bUndo = pUndoManager && pUndoManager->IsInListAction() && IsInserted();
if (!pObj && bInit)
{
diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx
index 205e007d9e97..ef3d5d0ebe25 100755
--- a/sd/source/core/stlpool.cxx
+++ b/sd/source/core/stlpool.cxx
@@ -519,10 +519,11 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
SfxItemSet& rBackgroundObjectsSet = pSheet->GetItemSet();
rBackgroundObjectsSet.Put(SdrShadowItem(FALSE));
rBackgroundObjectsSet.Put(SdrShadowColorItem(String(), Color(COL_GRAY)));
- rBackgroundObjectsSet.Put(SdrShadowXDistItem(300)); // 3 mm Schattendistanz
- rBackgroundObjectsSet.Put(SdrShadowYDistItem(300));
+ rBackgroundObjectsSet.Put(SdrShadowXDistItem(200)); // 3 mm Schattendistanz
+ rBackgroundObjectsSet.Put(SdrShadowYDistItem(200));
// #i16874# enable kerning by default but only for new documents
rBackgroundObjectsSet.Put( SvxAutoKernItem( TRUE, EE_CHAR_PAIRKERNING ) );
+ rBackgroundObjectsSet.Put(SdrTextHorzAdjustItem(SDRTEXTHORZADJUST_BLOCK));
}
/**************************************************************************
@@ -1029,12 +1030,8 @@ void SdStyleSheetPool::PutNumBulletItem( SfxStyleSheetBase* pSheet,
aNumberFormat.SetNumAdjust(SVX_ADJUST_LEFT);
SvxNumRule aNumRule( NUM_BULLET_REL_SIZE|NUM_BULLET_COLOR|NUM_CHAR_TEXT_DISTANCE, 10 , FALSE);
- aNumberFormat.SetLSpace( 0 );
- aNumberFormat.SetAbsLSpace( 0 );
- aNumberFormat.SetFirstLineOffset( 0 );
- aNumRule.SetLevel( 0, aNumberFormat );
- for( USHORT i = 1; i < aNumRule.GetLevelCount(); i++ )
+ for( USHORT i = 0; i < aNumRule.GetLevelCount(); i++ )
{
const short nLSpace = (i + 1) * 600;
aNumberFormat.SetLSpace(nLSpace);
diff --git a/sd/source/core/undo/undomanager.cxx b/sd/source/core/undo/undomanager.cxx
index f3fe9b11c2bd..6ee11d03e392 100644..100755
--- a/sd/source/core/undo/undomanager.cxx
+++ b/sd/source/core/undo/undomanager.cxx
@@ -34,40 +34,22 @@ using namespace sd;
UndoManager::UndoManager( USHORT nMaxUndoActionCount /* = 20 */ )
: SfxUndoManager( nMaxUndoActionCount )
-, mnListLevel( 0 )
, mpLinkedUndoManager(NULL)
{
}
void UndoManager::EnterListAction(const UniString &rComment, const UniString& rRepeatComment, USHORT nId /* =0 */)
{
- if( !isInUndo() )
+ if( !IsDoing() )
{
ClearLinkedRedoActions();
- mnListLevel++;
SfxUndoManager::EnterListAction( rComment, rRepeatComment, nId );
}
}
-void UndoManager::LeaveListAction()
-{
- if( !isInUndo() )
- {
- SfxUndoManager::LeaveListAction();
- if( mnListLevel )
- {
- mnListLevel--;
- }
- else
- {
- DBG_ERROR("sd::UndoManager::LeaveListAction(), no open list action!" );
- }
- }
-}
-
void UndoManager::AddUndoAction( SfxUndoAction *pAction, BOOL bTryMerg /* = FALSE */ )
{
- if( !isInUndo() )
+ if( !IsDoing() )
{
ClearLinkedRedoActions();
SfxUndoManager::AddUndoAction( pAction, bTryMerg );
@@ -79,22 +61,7 @@ void UndoManager::AddUndoAction( SfxUndoAction *pAction, BOOL bTryMerg /* = FALS
}
-BOOL UndoManager::Undo( USHORT nCount )
-{
- ScopeLockGuard aGuard( maIsInUndoLock );
- return SfxUndoManager::Undo( nCount );
-}
-
-BOOL UndoManager::Redo( USHORT nCount )
-{
- ScopeLockGuard aGuard( maIsInUndoLock );
- return SfxUndoManager::Redo( nCount );
-}
-
-
-
-
-void UndoManager::SetLinkedUndoManager (SfxUndoManager* pLinkedUndoManager)
+void UndoManager::SetLinkedUndoManager (::svl::IUndoManager* pLinkedUndoManager)
{
mpLinkedUndoManager = pLinkedUndoManager;
}
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx
index 8b96e08b4a8c..2d70316c1432 100644..100755
--- a/sd/source/ui/animations/CustomAnimationPane.cxx
+++ b/sd/source/ui/animations/CustomAnimationPane.cxx
@@ -289,7 +289,7 @@ CustomAnimationPane::~CustomAnimationPane()
void CustomAnimationPane::addUndo()
{
- SfxUndoManager* pManager = mrBase.GetDocShell()->GetUndoManager();
+ ::svl::IUndoManager* pManager = mrBase.GetDocShell()->GetUndoManager();
if( pManager )
{
SdPage* pPage = SdPage::getImplementation( mxCurrentPage );
@@ -1953,6 +1953,16 @@ void CustomAnimationPane::onChange( bool bCreate )
{
CustomAnimationEffectPtr pCreated = mpMainSequence->append( pDescriptor, (*aIter), fDuration );
+ // if only one shape with text and no fill or outline is selected, animate only by first level paragraphs
+ if( bHasText && (aTargets.size() == 1) )
+ {
+ Reference< XShape > xShape( (*aIter), UNO_QUERY );
+ if( xShape.is() && !hasVisibleShape( xShape ) )
+ {
+ mpMainSequence->createTextGroup( pCreated, 1, -1.0, sal_False, sal_False );
+ }
+ }
+
if( bFirst )
bFirst = false;
else
@@ -2451,7 +2461,7 @@ void CustomAnimationPane::updatePathFromMotionPathTag( const rtl::Reference< Mot
CustomAnimationEffectPtr pEffect = xTag->getEffect();
if( (pPathObj != 0) && pEffect.get() != 0 )
{
- SfxUndoManager* pManager = mrBase.GetDocShell()->GetUndoManager();
+ ::svl::IUndoManager* pManager = mrBase.GetDocShell()->GetUndoManager();
if( pManager )
{
SdPage* pPage = SdPage::getImplementation( mxCurrentPage );
diff --git a/sd/source/ui/animations/SlideTransitionPane.cxx b/sd/source/ui/animations/SlideTransitionPane.cxx
index fe34f0138db2..88b30ab658e3 100755
--- a/sd/source/ui/animations/SlideTransitionPane.cxx
+++ b/sd/source/ui/animations/SlideTransitionPane.cxx
@@ -265,9 +265,9 @@ void lcl_CreateUndoForPages(
const ::sd::slidesorter::SharedPageSelection& rpPages,
::sd::ViewShellBase& rBase )
{
- ::sd::DrawDocShell* pDocSh = rBase.GetDocShell();
- SfxUndoManager* pManager = pDocSh->GetUndoManager();
- SdDrawDocument* pDoc = pDocSh->GetDoc();
+ ::sd::DrawDocShell* pDocSh = rBase.GetDocShell();
+ ::svl::IUndoManager* pManager = pDocSh->GetUndoManager();
+ SdDrawDocument* pDoc = pDocSh->GetDoc();
if( pManager && pDocSh && pDoc )
{
String aComment( SdResId(STR_UNDO_SLIDE_PARAMS) );
diff --git a/sd/source/ui/app/app.img b/sd/source/ui/app/app.img
deleted file mode 100644
index a435b84b8887..000000000000
--- a/sd/source/ui/app/app.img
+++ /dev/null
@@ -1,120 +0,0 @@
-File = "sc05410.bmp";Identifier = SID_HELPMENU;
-File = "sc05500.bmp";Identifier = SID_NEW_DOCUMENT;File = "sco043.bmp
-File = "sc05501.bmp";Identifier = SID_OPENDOC;File = "sco044.bmp
-File = "sc05504.bmp";Identifier = SID_PRINTDOC;File = "sco051.bmp
-File = "sc05505.bmp";Identifier = SID_SAVEDOC;File = "sco046.bmp
-File = "sc05539.bmp";Identifier = SID_TEMPLATE;
-File = "sc05561.bmp";Identifier = SID_INSERT_OBJECT;
-File = "sc05700.bmp";Identifier = SID_REDO;
-File = "sc05701.bmp";Identifier = SID_UNDO;
-File = "sc05710.bmp";Identifier = SID_CUT;File = "sco058.bmp
-File = "sc05711.bmp";Identifier = SID_COPY;File = "sco059.bmp
-File = "sc05712.bmp";Identifier = SID_PASTE;File = "sco060.bmp
-
-File = "sc10008.bmp";Identifier = SID_ATTR_CHAR_POSTURE;
-File = "sc10009.bmp";Identifier = SID_ATTR_CHAR_WEIGHT;
-File = "sc10012.bmp";Identifier = SID_ATTR_CHAR_CONTOUR;
-File = "sc10014.bmp";Identifier = SID_ATTR_CHAR_UNDERLINE;
-File = "sc10028.bmp";Identifier = SID_TEXT_ADJUST_LEFT;
-File = "sc10029.bmp";Identifier = SID_TEXT_ADJUST_RIGHT;
-File = "sc10030.bmp";Identifier = SID_TEXT_ADJUST_CENTER;
-File = "sc10031.bmp";Identifier = SID_TEXT_ADJUST_BLOCK;
-File = "sc10034.bmp";Identifier = SID_TEXT_LINESPACING_1;
-File = "sc10035.bmp";Identifier = SID_TEXT_LINESPACING_2;
-File = "sc10036.bmp";Identifier = SID_TEXT_LINESPACING_3;
-File = "sc10087.bmp";Identifier = SID_TRANSFORM;
-File = "sc10102.bmp";Identifier = SID_TOOL_LINE;File = "sco207.bmp
-File = "sc10104.bmp";Identifier = SID_TOOL_RECT;File = "sco209.bmp
-File = "sc10110.bmp";Identifier = SID_TOOL_ELLIPSE;File = "sco215.bmp
-File = "sc10113.bmp";Identifier = SID_TOOL_PIE;File = "sco220.bmp
-File = "sc10114.bmp";Identifier = SID_TOOL_ARC;File = "sco217.bmp
-File = "sc10116.bmp";Identifier = SID_TOOL_CIRCLECUT;File = "sco221.bmp
-File = "sc10117.bmp";Identifier = SID_TOOL_POLYGON;File = "sco222.bmp
-File = "sc10118.bmp";Identifier = SID_TOOL_BEZIER;File = "sco223.bmp
-File = "sc10119.bmp";Identifier = SID_BEZIER_INSERT;
-File = "sc10120.bmp";Identifier = SID_BEZIER_DELETE;
-File = "sc10121.bmp";Identifier = SID_BEZIER_MOVE;
-File = "sc10122.bmp";Identifier = SID_BEZIER_CLOSE;
-// wurde durch sc20014.bmp ersetzt:
-// File = "sc10123.bmp";Identifier = SID_BEZIER_SMOOTH;
-File = "sc10126.bmp";Identifier = SID_EDIT_POINTS;
-File = "sc10127.bmp";Identifier = SID_BEZIER_CUTLINE;
-File = "sc10129.bmp";Identifier = SID_TOOL_ROTATE;
-File = "sc10130.bmp";Identifier = SID_ALIGNMENT;
-File = "sc10131.bmp";Identifier = SID_LEFT;File = "sco231.bmp
-File = "sc10132.bmp";Identifier = SID_CENTER;File = "sco232.bmp
-File = "sc10133.bmp";Identifier = SID_RIGHT;File = "sco233.bmp
-File = "sc10134.bmp";Identifier = SID_UP;File = "sco234.bmp
-File = "sc10135.bmp";Identifier = SID_MIDDLE;File = "sco235.bmp
-File = "sc10136.bmp";Identifier = SID_DOWN;File = "sco236.bmp
-File = "sc10140.bmp";Identifier = SID_INSERTDIAGRAM;File = "sco246.bmp
-File = "sc10141.bmp";Identifier = SID_ATTR_TABLE;
-File = "sc10142.bmp";Identifier = SID_AREA;
-File = "sc10143.bmp";Identifier = SID_LINE;
-File = "sc10144.bmp";Identifier = SID_TOOL_CONTROLS;File = "sco270.bmp
-File = "sc10145.bmp";Identifier = SID_DIALOG_TESTMODE;File = "sco274.bmp
-File = "sc10146.bmp";Identifier = SID_INSERT_PUSHBUTTON;File = "sco271.bmp
-File = "sc10147.bmp";Identifier = SID_INSERT_RADIOBUTTON;File = "sco272.bmp
-File = "sc10148.bmp";Identifier = SID_INSERT_CHECKBOX;File = "sco273.bmp
-File = "sc10150.bmp";Identifier = SID_OUTLINE_UP;File = "sco290.bmp
-File = "sc10151.bmp";Identifier = SID_OUTLINE_DOWN;File = "sco291.bmp
-File = "sc10152.bmp";Identifier = SID_OUTLINE_LEFT;File = "sco292.bmp
-File = "sc10153.bmp";Identifier = SID_OUTLINE_RIGHT;File = "sco293.bmp
-File = "sc10154.bmp";Identifier = SID_OUTLINE_FORMAT;File = "sco204.bmp
-File = "sc10155.bmp";Identifier = SID_OUTLINE_TITLE;File = "sco295.bmp
-File = "sc10156.bmp";Identifier = SID_OUTLINE_BULLET;File = "sco296.bmp
-File = "sc10157.bmp";Identifier = SID_PRESENTATION;File = "sco238.bmp
-File = "sc10159.bmp";Identifier = SID_REHEARSE_TIMINGS;File = "sco239.bmp
-File = "sc10160.bmp";Identifier = SID_DIA;File = "sco240.bmp
-File = "sc10161.bmp";Identifier = SID_HIDE_SLIDE;File = "sco241.bmp
-File = "sc10162.bmp";Identifier = SID_CHOOSE_POLYGON;File = "sco242.bmp
-File = "sc10163.bmp";Identifier = SID_SHOW_BROWSER;File = "sco275.bmp
-File = "sc10188.bmp";Identifier = SID_INSERT_FIXEDTEXT;File = "sco276.bmp
-File = "sc10189.bmp";Identifier = SID_INSERT_GROUPBOX;File = "sco277.bmp
-File = "sc10191.bmp";Identifier = SID_INSERT_LISTBOX;File = "sco278.bmp
-File = "sc10192.bmp";Identifier = SID_INSERT_COMBOBOX;File = "sco279.bmp
-File = "sc10231.bmp";Identifier = SID_OUTLINE_COLLAPSE;
-File = "sc10232.bmp";Identifier = SID_OUTLINE_EXPAND_ALL;
-File = "sc10233.bmp";Identifier = SID_OUTLINE_EXPAND;
-File = "sc10240.bmp";Identifier = SID_INSERT_FRAME;
-File = "sc10241.bmp";Identifier = SID_INSERT_GRAPHIC;
-File = "sc10242.bmp";Identifier = SID_AUTOFORMAT;
-File = "sc10243.bmp";Identifier = SID_SPELLING;
-File = "sc10244.bmp";Identifier = SID_INSERT_DRAW;
-File = "sc10700.bmp";Identifier = SID_TOOL_SELECT;File = "sco200.bmp
-File = "sc10701.bmp";Identifier = SID_TOOL_ZOOM;File = "sco201.bmp
-File = "sc10702.bmp";Identifier = SID_ZOOM_PLUS;File = "sco202.bmp
-File = "sc10703.bmp";Identifier = SID_ZOOM_MINUS;File = "sco203.bmp
-File = "sc10704.bmp";Identifier = SID_ZOOM_100_PERCENT;File = "sco204.bmp
-File = "sc10705.bmp";Identifier = SID_ZOOM_PAGE;File = "sco205.bmp
-File = "sc10706.bmp";Identifier = SID_ZOOM_OBJECTS;File = "sco206.bmp
-File = "sc10724.bmp";Identifier = SID_TOOL_TEXT;File = "sco224.bmp
-
-File = "sc20000.bmp";Identifier = SID_ATTR_CHAR_COLOR;File = "charcol.bmp";
-File = "sc20001.bmp";Identifier = SID_TOOL_CONNECTOR;File = "sco298.bmp";
-
-// Controller
-File = "sc20002.bmp";Identifier = SID_TEMPLATE_APPLY;
-File = "sc20003.bmp";Identifier = SID_ATTR_LINE_STYLE;
-File = "sc20004.bmp";Identifier = SID_ATTR_LINE_WIDTH;
-File = "sc20005.bmp";Identifier = SID_ATTR_LINE_COLOR;
-File = "sc20006.bmp";Identifier = SID_ATTR_FILL_STYLE;
-File = "sc20007.bmp";Identifier = SID_DIA_EFFECT;
-File = "sc20008.bmp";Identifier = SID_DIA_SPEED;
-File = "sc20009.bmp";Identifier = SID_DIA_AUTO;
-File = "sc20010.bmp";Identifier = SID_DIA_TIME;
-File = "sc20011.bmp";Identifier = SID_ATTR_FONT;
-File = "sc20012.bmp";Identifier = SID_ATTR_FONTHEIGHT;
-
-// Bezier-Toolbar
-File = "sc20013.bmp";Identifier = SID_BEZIER_EDGE;
-File = "sc20014.bmp";Identifier = SID_BEZIER_SMOOTH;
-File = "sc20015.bmp";Identifier = SID_BEZIER_SYMMTR;
-File = "sc20016.bmp";Identifier = SID_BEZIER_CONVERT;
-
-// Standardleiste
-File = "sc20020.bmp";Identifier = SID_INSERTPAGE;
-File = "sc20094.bmp";Identifier = SID_MODIFYPAGE;
-File = "sc20170.bmp";Identifier = SID_PRESENTATION_LAYOUT;
-
-// Basic-IDE ...
diff --git a/sd/source/ui/app/optsitem.cxx b/sd/source/ui/app/optsitem.cxx
index 4355da3011c9..3366a0ea98db 100755..100644
--- a/sd/source/ui/app/optsitem.cxx
+++ b/sd/source/ui/app/optsitem.cxx
@@ -46,6 +46,16 @@ using namespace ::com::sun::star::uno;
#define B2U(_def_aStr) (OUString::createFromAscii(_def_aStr))
+template< class T > T getSafeValue( const Any& rAny )
+{
+ T value = T();
+ bool bOk = (rAny >>= value);
+
+ DBG_ASSERT( bOk, "SdOptionsItem, wrong type from configuration!" );
+ (void)bOk;
+
+ return value;
+}
// -----------------
// - SdOptionsItem -
@@ -503,6 +513,9 @@ SdOptionsMisc::SdOptionsMisc( USHORT nConfigId, BOOL bUseConfig ) :
bPreviewChangedEffects( FALSE ),
bPreviewTransitions( TRUE ),
mnDisplay( 0 ),
+ mnPenColor( 0xff0000 ),
+ mnPenWidth( 150.0 ),
+
// The default for 6.1-and-above documents is to use printer-independent
// formatting.
mnPrinterIndependentLayout (1)
@@ -541,7 +554,9 @@ BOOL SdOptionsMisc::operator==( const SdOptionsMisc& rOpt ) const
IsPreviewChangedEffects() == rOpt.IsPreviewChangedEffects() &&
IsPreviewTransitions() == rOpt.IsPreviewTransitions() &&
GetDisplay() == rOpt.GetDisplay() &&
- IsShowComments() == rOpt.IsShowComments()
+ IsShowComments() == rOpt.IsShowComments() &&
+ GetPresentationPenColor() == rOpt.GetPresentationPenColor() &&
+ GetPresentationPenWidth() == rOpt.GetPresentationPenWidth()
);
}
@@ -583,10 +598,13 @@ void SdOptionsMisc::GetPropNameArray( const char**& ppNames, ULONG& rCount ) con
"PreviewChangedEffects",
"PreviewTransitions",
- "Display"
+ "Display",
+
+ "PenColor",
+ "PenWidth"
};
- rCount = ( ( GetConfigId() == SDCFG_IMPRESS ) ? 25 : 16 );
+ rCount = ( ( GetConfigId() == SDCFG_IMPRESS ) ? 27 : 16 );
ppNames = aPropNames;
}
@@ -641,6 +659,12 @@ BOOL SdOptionsMisc::ReadData( const Any* pValues )
if( pValues[24].hasValue() )
SetDisplay(*(sal_Int32*) pValues[ 24 ].getValue());
+
+ if( pValues[25].hasValue() )
+ SetPresentationPenColor( getSafeValue< sal_Int32 >( pValues[ 25 ] ) );
+
+ if( pValues[26].hasValue() )
+ SetPresentationPenWidth( getSafeValue< double >( pValues[ 26 ] ) );
}
return TRUE;
@@ -684,6 +708,9 @@ BOOL SdOptionsMisc::WriteData( Any* pValues ) const
pValues[ 23 ] <<= IsPreviewTransitions();
pValues[ 24 ] <<= GetDisplay();
+
+ pValues[ 25 ] <<= GetPresentationPenColor();
+ pValues[ 26 ] <<= GetPresentationPenWidth();
}
return TRUE;
@@ -725,6 +752,9 @@ SdOptionsMiscItem::SdOptionsMiscItem( USHORT _nWhich, SdOptions* pOpts, ::sd::Fr
maOptionsMisc.SetDisplay(pOpts->GetDisplay());
maOptionsMisc.SetShowComments( pOpts->IsShowComments() );
+
+ maOptionsMisc.SetPresentationPenColor(pOpts->GetPresentationPenColor() );
+ maOptionsMisc.SetPresentationPenWidth(pOpts->GetPresentationPenWidth() );
}
if( pView )
@@ -813,6 +843,9 @@ void SdOptionsMiscItem::SetOptions( SdOptions* pOpts ) const
pOpts->SetPreviewTransitions( maOptionsMisc.IsPreviewTransitions() );
pOpts->SetDisplay( maOptionsMisc.GetDisplay() );
+
+ pOpts->SetPresentationPenColor( maOptionsMisc.GetPresentationPenColor() );
+ pOpts->SetPresentationPenWidth( maOptionsMisc.GetPresentationPenWidth() );
}
}
diff --git a/sd/source/ui/app/strings.src b/sd/source/ui/app/strings.src
index 7e87b246d371..4fc88c3a6049 100644..100755
--- a/sd/source/ui/app/strings.src
+++ b/sd/source/ui/app/strings.src
@@ -784,7 +784,7 @@ String STR_PUBLISH_OUTLINE
};
String STR_EYEDROPPER
{
- Text [ en-US ] = "Eyedropper" ;
+ Text [ en-US ] = "Color Replacer" ;
};
String STR_UNDO_MORPHING
{
diff --git a/sd/source/ui/dlg/LayerTabBar.cxx b/sd/source/ui/dlg/LayerTabBar.cxx
index 29425a3bda71..cd5977772bfe 100755
--- a/sd/source/ui/dlg/LayerTabBar.cxx
+++ b/sd/source/ui/dlg/LayerTabBar.cxx
@@ -317,7 +317,7 @@ void LayerTabBar::EndRenaming()
DBG_ASSERT( pDrView, "Rename layer undo action is only working with a SdDrawView" );
if( pDrView )
{
- SfxUndoManager* pManager = pDoc->GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pManager = pDoc->GetDocSh()->GetUndoManager();
SdLayerModifyUndoAction* pAction = new SdLayerModifyUndoAction(
pDoc,
pLayer,
diff --git a/sd/source/ui/dlg/dlgass.cxx b/sd/source/ui/dlg/dlgass.cxx
index acbf70d8e687..4645b3540f04 100755
--- a/sd/source/ui/dlg/dlgass.cxx
+++ b/sd/source/ui/dlg/dlgass.cxx
@@ -49,7 +49,7 @@
#include <svl/undo.hxx>
#include "DrawDocShell.hxx"
#include <vcl/gdimtf.hxx>
-#include <vcl/wintypes.hxx>
+#include <tools/wintypes.hxx>
#include "docprev.hxx"
#include <sfx2/app.hxx>
#include <sfx2/docfile.hxx>
@@ -1556,7 +1556,7 @@ void AssistentDlgImpl::UpdatePreview( BOOL bDocPreview )
{
SfxObjectShell* pShell = xDocShell;
DrawDocShell* pDocShell = PTR_CAST(DrawDocShell,pShell);
- SfxUndoManager* pUndoMgr = pDocShell?pDocShell->GetUndoManager():NULL;
+ ::svl::IUndoManager* pUndoMgr = pDocShell?pDocShell->GetUndoManager():NULL;
if(pUndoMgr)
pUndoMgr->Undo();
mbUserDataDirty = TRUE;
diff --git a/sd/source/ui/docshell/docshell.cxx b/sd/source/ui/docshell/docshell.cxx
index 78b1b9434ad0..9714d8599374 100755
--- a/sd/source/ui/docshell/docshell.cxx
+++ b/sd/source/ui/docshell/docshell.cxx
@@ -462,7 +462,7 @@ void DrawDocShell::Deactivate( BOOL )
|*
\************************************************************************/
-SfxUndoManager* DrawDocShell::GetUndoManager()
+::svl::IUndoManager* DrawDocShell::GetUndoManager()
{
return mpUndoManager;
}
@@ -600,7 +600,7 @@ void DrawDocShell::ClearUndoBuffer()
pSfxViewFrame = SfxViewFrame::GetNext(*pSfxViewFrame, this, false);
}
- SfxUndoManager* pUndoManager = GetUndoManager();
+ ::svl::IUndoManager* pUndoManager = GetUndoManager();
if(pUndoManager && pUndoManager->GetUndoActionCount())
pUndoManager->Clear();
}
diff --git a/sd/source/ui/func/fubullet.cxx b/sd/source/ui/func/fubullet.cxx
index 92b1450624e1..92aa2d3cc9f3 100644..100755
--- a/sd/source/ui/func/fubullet.cxx
+++ b/sd/source/ui/func/fubullet.cxx
@@ -146,7 +146,7 @@ void FuBullet::InsertFormattingMark( sal_Unicode cMark )
pOV->InsertText( aEmptyStr );
// prepare undo
- SfxUndoManager& rUndoMgr = pOL->GetUndoManager();
+ ::svl::IUndoManager& rUndoMgr = pOL->GetUndoManager();
rUndoMgr.EnterListAction(String(SdResId(STR_UNDO_INSERT_SPECCHAR)),
aEmptyStr );
@@ -276,7 +276,7 @@ void FuBullet::InsertSpecialCharacter( SfxRequest& rReq )
SfxItemSet aOldSet( mpDoc->GetPool(), EE_CHAR_FONTINFO, EE_CHAR_FONTINFO, 0 );
aOldSet.Put( pOV->GetAttribs() );
- SfxUndoManager& rUndoMgr = pOL->GetUndoManager();
+ ::svl::IUndoManager& rUndoMgr = pOL->GetUndoManager();
rUndoMgr.EnterListAction(String(SdResId(STR_UNDO_INSERT_SPECCHAR)),
aEmptyStr );
pOV->InsertText(aChars, TRUE);
diff --git a/sd/source/ui/func/fuconstr.cxx b/sd/source/ui/func/fuconstr.cxx
index c0d8235e97fb..a1ab9b853ff4 100755
--- a/sd/source/ui/func/fuconstr.cxx
+++ b/sd/source/ui/func/fuconstr.cxx
@@ -312,40 +312,74 @@ void FuConstruct::SetStyleSheet(SfxItemSet& rAttr, SdrObject* pObj)
sal_Bool bUseFillStyle, bUseNoFillStyle;
bUseFillStyle = bUseNoFillStyle = sal_False;
- if (nSlotId == SID_DRAW_RECT || // Rechteck
- nSlotId == SID_DRAW_RECT_ROUND || // Rechteck, rund
- nSlotId == SID_DRAW_SQUARE || // Quadrat
- nSlotId == SID_DRAW_SQUARE_ROUND || // Quadrat, rund
- nSlotId == SID_DRAW_ELLIPSE || // Ellipse
- nSlotId == SID_DRAW_PIE || // Ellipsensegment
- nSlotId == SID_DRAW_ELLIPSECUT || // Ellipsenabschnitt
- nSlotId == SID_DRAW_CIRCLE || // Kreis
- nSlotId == SID_DRAW_CIRCLEPIE || // Kreissegment
- nSlotId == SID_DRAW_CIRCLECUT || // Ellipsenabschnitt
- nSlotId == SID_DRAW_POLYGON || // Polygon
- nSlotId == SID_DRAW_XPOLYGON || // 45ø-Polygon
- nSlotId == SID_DRAW_FREELINE || // Freihandlinie
- nSlotId == SID_DRAW_BEZIER_FILL) // Bezier
+ switch( nSlotId )
+ {
+ case SID_DRAW_RECT:
+ case SID_DRAW_RECT_ROUND:
+ case SID_DRAW_SQUARE:
+ case SID_DRAW_SQUARE_ROUND:
+ case SID_DRAW_ELLIPSE:
+ case SID_DRAW_PIE:
+ case SID_DRAW_ELLIPSECUT:
+ case SID_DRAW_CIRCLE:
+ case SID_DRAW_CIRCLEPIE:
+ case SID_DRAW_CIRCLECUT:
+ case SID_DRAW_POLYGON:
+ case SID_DRAW_XPOLYGON:
+ case SID_DRAW_FREELINE:
+ case SID_DRAW_BEZIER_FILL:
{
bUseFillStyle = sal_True;
+ break;
}
- else if
- (nSlotId == SID_DRAW_RECT_NOFILL || // Rechteck
- nSlotId == SID_DRAW_RECT_ROUND_NOFILL || // Rechteck, rund
- nSlotId == SID_DRAW_SQUARE_NOFILL || // Quadrat
- nSlotId == SID_DRAW_SQUARE_ROUND_NOFILL || // Quadrat, rund
- nSlotId == SID_DRAW_ELLIPSE_NOFILL || // Ellipse
- nSlotId == SID_DRAW_PIE_NOFILL || // Ellipsensegment
- nSlotId == SID_DRAW_ELLIPSECUT_NOFILL || // Ellipsenabschnitt
- nSlotId == SID_DRAW_CIRCLE_NOFILL || // Kreis
- nSlotId == SID_DRAW_CIRCLEPIE_NOFILL || // Kreissegment
- nSlotId == SID_DRAW_CIRCLECUT_NOFILL || // Ellipsenabschnitt
- nSlotId == SID_DRAW_POLYGON_NOFILL || // Polygon
- nSlotId == SID_DRAW_XPOLYGON_NOFILL || // 45ø-Polygon
- nSlotId == SID_DRAW_FREELINE_NOFILL || // Freihandlinie
- nSlotId == SID_DRAW_BEZIER_NOFILL) // Bezier
+ case SID_DRAW_RECT_NOFILL:
+ case SID_DRAW_RECT_ROUND_NOFILL:
+ case SID_DRAW_SQUARE_NOFILL:
+ case SID_DRAW_SQUARE_ROUND_NOFILL:
+ case SID_DRAW_ELLIPSE_NOFILL:
+ case SID_DRAW_PIE_NOFILL:
+ case SID_DRAW_ELLIPSECUT_NOFILL:
+ case SID_DRAW_CIRCLE_NOFILL:
+ case SID_DRAW_CIRCLEPIE_NOFILL:
+ case SID_DRAW_CIRCLECUT_NOFILL:
+ case SID_DRAW_POLYGON_NOFILL:
+ case SID_DRAW_XPOLYGON_NOFILL:
+ case SID_DRAW_FREELINE_NOFILL:
+ case SID_DRAW_LINE:
+ case SID_DRAW_XLINE:
+ case SID_CONNECTOR_ARROW_START:
+ case SID_CONNECTOR_ARROW_END:
+ case SID_CONNECTOR_ARROWS:
+ case SID_CONNECTOR_CIRCLE_START:
+ case SID_CONNECTOR_CIRCLE_END:
+ case SID_CONNECTOR_CIRCLES:
+ case SID_CONNECTOR_LINE:
+ case SID_CONNECTOR_LINE_ARROW_START:
+ case SID_CONNECTOR_LINE_ARROW_END:
+ case SID_CONNECTOR_LINE_ARROWS:
+ case SID_CONNECTOR_LINE_CIRCLE_START:
+ case SID_CONNECTOR_LINE_CIRCLE_END:
+ case SID_CONNECTOR_LINE_CIRCLES:
+ case SID_CONNECTOR_CURVE:
+ case SID_CONNECTOR_CURVE_ARROW_START:
+ case SID_CONNECTOR_CURVE_ARROW_END:
+ case SID_CONNECTOR_CURVE_ARROWS:
+ case SID_CONNECTOR_CURVE_CIRCLE_START:
+ case SID_CONNECTOR_CURVE_CIRCLE_END:
+ case SID_CONNECTOR_CURVE_CIRCLES:
+ case SID_CONNECTOR_LINES:
+ case SID_CONNECTOR_LINES_ARROW_START:
+ case SID_CONNECTOR_LINES_ARROW_END:
+ case SID_CONNECTOR_LINES_ARROWS:
+ case SID_CONNECTOR_LINES_CIRCLE_START:
+ case SID_CONNECTOR_LINES_CIRCLE_END:
+ case SID_CONNECTOR_LINES_CIRCLES:
+ case SID_DRAW_BEZIER_NOFILL:
+ case SID_LINE_ARROW_END:
{
bUseNoFillStyle = sal_True;
+ break;
+ }
}
SetStyleSheet( rAttr, pObj, bUseFillStyle, bUseNoFillStyle );
}
diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx
index 5cc3cc49ca88..4d03abd7b8bc 100755
--- a/sd/source/ui/func/fudraw.cxx
+++ b/sd/source/ui/func/fudraw.cxx
@@ -163,40 +163,40 @@ BOOL FuDraw::MouseButtonDown(const MouseEvent& rMEvt)
if (!mpView->IsSnapEnabled())
mpView->SetSnapEnabled(TRUE);
- BOOL bCntrl = rMEvt.IsMod1();
+ BOOL bSnapModPressed = rMEvt.IsMod1();
BOOL bGridSnap = pFrameView->IsGridSnap();
- bGridSnap = (bCntrl != bGridSnap);
+ bGridSnap = (bSnapModPressed != bGridSnap);
if (mpView->IsGridSnap() != bGridSnap)
mpView->SetGridSnap(bGridSnap);
BOOL bBordSnap = pFrameView->IsBordSnap();
- bBordSnap = (bCntrl != bBordSnap);
+ bBordSnap = (bSnapModPressed != bBordSnap);
if (mpView->IsBordSnap() != bBordSnap)
mpView->SetBordSnap(bBordSnap);
BOOL bHlplSnap = pFrameView->IsHlplSnap();
- bHlplSnap = (bCntrl != bHlplSnap);
+ bHlplSnap = (bSnapModPressed != bHlplSnap);
if (mpView->IsHlplSnap() != bHlplSnap)
mpView->SetHlplSnap(bHlplSnap);
BOOL bOFrmSnap = pFrameView->IsOFrmSnap();
- bOFrmSnap = (bCntrl != bOFrmSnap);
+ bOFrmSnap = (bSnapModPressed != bOFrmSnap);
if (mpView->IsOFrmSnap() != bOFrmSnap)
mpView->SetOFrmSnap(bOFrmSnap);
BOOL bOPntSnap = pFrameView->IsOPntSnap();
- bOPntSnap = (bCntrl != bOPntSnap);
+ bOPntSnap = (bSnapModPressed != bOPntSnap);
if (mpView->IsOPntSnap() != bOPntSnap)
mpView->SetOPntSnap(bOPntSnap);
BOOL bOConSnap = pFrameView->IsOConSnap();
- bOConSnap = (bCntrl != bOConSnap);
+ bOConSnap = (bSnapModPressed != bOConSnap);
if (mpView->IsOConSnap() != bOConSnap)
mpView->SetOConSnap(bOConSnap);
@@ -229,7 +229,7 @@ BOOL FuDraw::MouseButtonDown(const MouseEvent& rMEvt)
if ( bHelpLine
&& !mpView->IsCreateObj()
- && ((mpView->GetEditMode() == SDREDITMODE_EDIT && !bHitHdl) || (rMEvt.IsShift() && bCntrl)) )
+ && ((mpView->GetEditMode() == SDREDITMODE_EDIT && !bHitHdl) || (rMEvt.IsShift() && bSnapModPressed)) )
{
mpWindow->CaptureMouse();
mpView->BegDragHelpLine(nHelpLine, pPV);
@@ -285,41 +285,41 @@ BOOL FuDraw::MouseMove(const MouseEvent& rMEvt)
bOrtho = rMEvt.IsShift() != pFrameView->IsOrtho();
}
- BOOL bCntrl = rMEvt.IsMod1();
+ BOOL bSnapModPressed = rMEvt.IsMod2();
mpView->SetDragWithCopy(rMEvt.IsMod1() && pFrameView->IsDragWithCopy());
BOOL bGridSnap = pFrameView->IsGridSnap();
- bGridSnap = (bCntrl != bGridSnap);
+ bGridSnap = (bSnapModPressed != bGridSnap);
if (mpView->IsGridSnap() != bGridSnap)
mpView->SetGridSnap(bGridSnap);
BOOL bBordSnap = pFrameView->IsBordSnap();
- bBordSnap = (bCntrl != bBordSnap);
+ bBordSnap = (bSnapModPressed != bBordSnap);
if (mpView->IsBordSnap() != bBordSnap)
mpView->SetBordSnap(bBordSnap);
BOOL bHlplSnap = pFrameView->IsHlplSnap();
- bHlplSnap = (bCntrl != bHlplSnap);
+ bHlplSnap = (bSnapModPressed != bHlplSnap);
if (mpView->IsHlplSnap() != bHlplSnap)
mpView->SetHlplSnap(bHlplSnap);
BOOL bOFrmSnap = pFrameView->IsOFrmSnap();
- bOFrmSnap = (bCntrl != bOFrmSnap);
+ bOFrmSnap = (bSnapModPressed != bOFrmSnap);
if (mpView->IsOFrmSnap() != bOFrmSnap)
mpView->SetOFrmSnap(bOFrmSnap);
BOOL bOPntSnap = pFrameView->IsOPntSnap();
- bOPntSnap = (bCntrl != bOPntSnap);
+ bOPntSnap = (bSnapModPressed != bOPntSnap);
if (mpView->IsOPntSnap() != bOPntSnap)
mpView->SetOPntSnap(bOPntSnap);
BOOL bOConSnap = pFrameView->IsOConSnap();
- bOConSnap = (bCntrl != bOConSnap);
+ bOConSnap = (bSnapModPressed != bOConSnap);
if (mpView->IsOConSnap() != bOConSnap)
mpView->SetOConSnap(bOConSnap);
diff --git a/sd/source/ui/func/fuoaprms.cxx b/sd/source/ui/func/fuoaprms.cxx
index b348d6533930..980176b20b19 100644..100755
--- a/sd/source/ui/func/fuoaprms.cxx
+++ b/sd/source/ui/func/fuoaprms.cxx
@@ -94,7 +94,7 @@ FunctionReference FuObjectAnimationParameters::Create( ViewShell* pViewSh, ::sd:
void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq )
{
- SfxUndoManager* pUndoMgr = mpViewShell->GetViewFrame()->GetObjectShell()->GetUndoManager();
+ ::svl::IUndoManager* pUndoMgr = mpViewShell->GetViewFrame()->GetObjectShell()->GetUndoManager();
const SdrMarkList& rMarkList = mpView->GetMarkedObjectList();
ULONG nCount = rMarkList.GetMarkCount();
diff --git a/sd/source/ui/func/fupage.cxx b/sd/source/ui/func/fupage.cxx
index d4e2fcd8083f..fdbad8a3df22 100755
--- a/sd/source/ui/func/fupage.cxx
+++ b/sd/source/ui/func/fupage.cxx
@@ -414,7 +414,7 @@ const SfxItemSet* FuPage::ExecuteDialog( Window* pParent )
else if( bSetToAllPages )
{
String aComment(SdResId(STR_UNDO_CHANGE_PAGEFORMAT));
- SfxUndoManager* pUndoMgr = mpDocSh->GetUndoManager();
+ ::svl::IUndoManager* pUndoMgr = mpDocSh->GetUndoManager();
pUndoMgr->EnterListAction(aComment, aComment);
SdUndoGroup* pUndoGroup = new SdUndoGroup(mpDoc);
pUndoGroup->SetComment(aComment);
diff --git a/sd/source/ui/func/fusel.cxx b/sd/source/ui/func/fusel.cxx
index 2ddf6a5fb885..5c380da547bc 100644..100755
--- a/sd/source/ui/func/fusel.cxx
+++ b/sd/source/ui/func/fusel.cxx
@@ -436,6 +436,12 @@ BOOL FuSelection::MouseButtonDown(const MouseEvent& rMEvt)
mpView->BegMarkObj(aMDPos);
}
}
+
+ if( bMarked && bTempRotation && (nSlotId == SID_OBJECT_ROTATE) && !rMEvt.IsShift() && (rMEvt.GetClicks() != 2) )
+ {
+ nSlotId = SID_OBJECT_SELECT;
+ Activate();
+ }
}
}
}
@@ -711,6 +717,8 @@ BOOL FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
if (nSlotId == SID_OBJECT_SELECT
&& mpView->IsRotateAllowed()
+
+ && (rMEvt.GetClicks() != 2)
&& (mpViewShell->GetFrameView()->IsClickChangeRotation()
|| (pSingleObj
&& pSingleObj->GetObjInventor()==E3dInventor))
diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx
index 2f3111665692..2835821796a1 100755
--- a/sd/source/ui/func/futext.cxx
+++ b/sd/source/ui/func/futext.cxx
@@ -702,6 +702,17 @@ BOOL FuText::MouseButtonUp(const MouseEvent& rMEvt)
mpView->EndDragObj( mpView->IsDragWithCopy() );
mpView->ForceMarkedToAnotherPage();
mpView->SetCurrentObj(OBJ_TEXT);
+
+ USHORT nDrgLog = USHORT ( mpWindow->PixelToLogic(Size(DRGPIX,0)).Width() );
+
+ if ( mpView->IsRotateAllowed() && mpViewShell->GetFrameView()->IsClickChangeRotation() && (rMEvt.GetClicks() != 2) &&
+ !rMEvt.IsShift() && !rMEvt.IsMod1() && !rMEvt.IsMod2() && !rMEvt.IsRight() &&
+ Abs(aPnt.X() - aMDPos.X()) < nDrgLog &&
+ Abs(aPnt.Y() - aMDPos.Y()) < nDrgLog)
+ {
+ // toggle to rotation mode
+ mpViewShell->GetViewFrame()->GetDispatcher()->Execute( SID_OBJECT_ROTATE, SFX_CALLMODE_ASYNCHRON | SFX_CALLMODE_RECORD );
+ }
}
else if( mpView && mpView->IsCreateObj() && rMEvt.IsLeft())
{
diff --git a/sd/source/ui/inc/DrawDocShell.hxx b/sd/source/ui/inc/DrawDocShell.hxx
index 4ad4b0d09392..b3f626f62137 100755
--- a/sd/source/ui/inc/DrawDocShell.hxx
+++ b/sd/source/ui/inc/DrawDocShell.hxx
@@ -49,6 +49,7 @@ class SfxPrinter;
struct SdrDocumentStreamInfo;
struct SpellCallbackInfo;
class AbstractSvxNameDialog;
+class SfxUndoManager;
namespace sd {
@@ -100,7 +101,8 @@ public:
virtual Rectangle GetVisArea(USHORT nAspect) const;
virtual void Draw(OutputDevice*, const JobSetup& rSetup, USHORT nAspect = ASPECT_CONTENT);
- virtual SfxUndoManager* GetUndoManager();
+ virtual ::svl::IUndoManager*
+ GetUndoManager();
virtual Printer* GetDocumentPrinter();
virtual void OnDocumentPrinterChanged(Printer* pNewPrinter);
virtual SfxStyleSheetBasePool* GetStyleSheetPool();
diff --git a/sd/source/ui/inc/SlideSorterViewShell.hxx b/sd/source/ui/inc/SlideSorterViewShell.hxx
index 2b03cd636d0f..de1e1ebae006 100755
--- a/sd/source/ui/inc/SlideSorterViewShell.hxx
+++ b/sd/source/ui/inc/SlideSorterViewShell.hxx
@@ -192,7 +192,7 @@ protected:
/** This method is overloaded to handle a missing tool bar correctly.
This is the case when the slide sorter is not the main view shell.
*/
- virtual SfxUndoManager* ImpGetUndoManager (void) const;
+ virtual ::svl::IUndoManager* ImpGetUndoManager (void) const;
private:
::boost::shared_ptr<SlideSorter> mpSlideSorter;
diff --git a/sd/source/ui/inc/ViewShell.hxx b/sd/source/ui/inc/ViewShell.hxx
index e6e6b401cb57..195e323f579d 100755
--- a/sd/source/ui/inc/ViewShell.hxx
+++ b/sd/source/ui/inc/ViewShell.hxx
@@ -534,7 +534,7 @@ protected:
::std::auto_ptr<Implementation> mpImpl;
// #96090# Support methods for centralized UNDO/REDO
- virtual SfxUndoManager* ImpGetUndoManager (void) const;
+ virtual ::svl::IUndoManager* ImpGetUndoManager (void) const;
void ImpGetUndoStrings(SfxItemSet &rSet) const;
void ImpGetRedoStrings(SfxItemSet &rSet) const;
void ImpSidUndo(BOOL bDrawViewShell, SfxRequest& rReq);
diff --git a/sd/source/ui/inc/ViewShellBase.hxx b/sd/source/ui/inc/ViewShellBase.hxx
index 38f7223f1d83..2d1ae6404108 100755
--- a/sd/source/ui/inc/ViewShellBase.hxx
+++ b/sd/source/ui/inc/ViewShellBase.hxx
@@ -144,24 +144,10 @@ public:
USHORT nDiffFlags = SFX_PRINTER_ALL, bool bIsApi=false);
/// Forwarded to the print manager.
- virtual PrintDialog* CreatePrintDialog (::Window *pParent);
-
- /// Forwarded to the print manager.
virtual SfxTabPage* CreatePrintOptionsPage (
::Window *pParent,
const SfxItemSet &rOptions);
- /// Forwarded to the print manager.
- virtual USHORT Print (SfxProgress& rProgress, BOOL bIsAPI, PrintDialog* pDialog);
-
- /// Forwarded to the print manager.
- virtual ErrCode DoPrint (
- SfxPrinter *pPrinter,
- PrintDialog *pPrintDialog,
- BOOL bSilent, BOOL bIsAPI );
-
- virtual void PreparePrint (PrintDialog* pPrintDialog);
-
/// Forward methods to main sub shell.
virtual void WriteUserDataSequence (
::com::sun::star::uno::Sequence <
diff --git a/sd/source/ui/inc/optsitem.hxx b/sd/source/ui/inc/optsitem.hxx
index 13088dfc64cb..419f661b1405 100755
--- a/sd/source/ui/inc/optsitem.hxx
+++ b/sd/source/ui/inc/optsitem.hxx
@@ -279,6 +279,9 @@ private:
sal_Int32 mnDisplay;
+ sal_Int32 mnPenColor;
+ double mnPenWidth;
+
/** This value controls the device to use for formatting documents.
The currently supported values are 0 for the current printer or 1
for the printer independent virtual device the can be retrieved from
@@ -336,6 +339,12 @@ public:
sal_Int32 GetDisplay() const { Init(); return mnDisplay; }
void SetDisplay( sal_Int32 nDisplay = 0 ) { if( mnDisplay != nDisplay ) { OptionsChanged(); mnDisplay = nDisplay; } }
+ sal_Int32 GetPresentationPenColor() const { Init(); return mnPenColor; }
+ void SetPresentationPenColor( sal_Int32 nPenColor ) { if( mnPenColor != nPenColor ) { OptionsChanged(); mnPenColor = nPenColor; } }
+
+ double GetPresentationPenWidth() const { Init(); return mnPenWidth; }
+ void SetPresentationPenWidth( double nPenWidth ) { if( mnPenWidth != nPenWidth ) { OptionsChanged(); mnPenWidth = nPenWidth; } }
+
void SetStartWithTemplate( BOOL bOn = TRUE ) { if( bStartWithTemplate != bOn ) { OptionsChanged(); bStartWithTemplate = bOn; } }
void SetMarkedHitMovesAlways( BOOL bOn = TRUE ) { if( bMarkedHitMovesAlways != bOn ) { OptionsChanged(); bMarkedHitMovesAlways = bOn; } }
void SetMoveOnlyDragging( BOOL bOn = TRUE ) { if( bMoveOnlyDragging != bOn ) { OptionsChanged(); bMoveOnlyDragging = bOn; } }
diff --git a/sd/source/ui/inc/unmodpg.hxx b/sd/source/ui/inc/unmodpg.hxx
index 185dc90b24bf..9a811b445f42 100644..100755
--- a/sd/source/ui/inc/unmodpg.hxx
+++ b/sd/source/ui/inc/unmodpg.hxx
@@ -36,9 +36,6 @@ class SdPage;
class ModifyPageUndoAction : public SdUndoAction
{
- // #67720#
- SfxUndoManager* mpManager;
-
SdPage* mpPage;
String maOldName;
String maNewName;
@@ -54,7 +51,6 @@ class ModifyPageUndoAction : public SdUndoAction
public:
TYPEINFO();
ModifyPageUndoAction(
- SfxUndoManager* pManager, // #67720#
SdDrawDocument* pTheDoc,
SdPage* pThePage,
String aTheNewName,
diff --git a/sd/source/ui/slideshow/makefile.mk b/sd/source/ui/slideshow/makefile.mk
index ad4f4d306c6b..62062d7e5461 100644..100755
--- a/sd/source/ui/slideshow/makefile.mk
+++ b/sd/source/ui/slideshow/makefile.mk
@@ -40,8 +40,7 @@ AUTOSEG=true
.INCLUDE : $(PRJ)$/util$/makefile.pmk
.IF "$(ENABLE_PRESENTER_EXTRA_UI)"=="YES"
-RSCDEFS+=-DENABLE_PRESENTER_EXTRA_UI
-ADDCDEFS+=-DENABLE_PRESENTER_EXTRA_UI
+ENABLE_PRESENTER_EXTRA_UI is not used anymore
.ENDIF
# --- Files --------------------------------------------------------
diff --git a/sd/source/ui/slideshow/slideshow.hrc b/sd/source/ui/slideshow/slideshow.hrc
index 709e2a79146e..f086f52cb73f 100644..100755
--- a/sd/source/ui/slideshow/slideshow.hrc
+++ b/sd/source/ui/slideshow/slideshow.hrc
@@ -37,25 +37,20 @@
#define CM_ENDSHOW 7
#define CM_FIRST_SLIDE 8
#define CM_LAST_SLIDE 9
-#define CM_SLIDES 10
+
//CM for extra presenter UI
-#define CM_ERASE_ALLINK 11
-#define CM_ERASE_INK 12
-#define CM_ERASE_INK_PEN 13
-#define CM_ERASE_INK_PEN_VERY_THIN 14
-#define CM_ERASE_INK_PEN_THIN 15
-#define CM_ERASE_INK_PEN_NORMAL 16
-#define CM_ERASE_INK_PEN_THICK 17
-#define CM_ERASE_INK_PEN_VERY_THICK 18
-#define CM_COLOR_PEN 19
-#define CM_WIDTH_PEN 20
-#define CM_WIDTH_PEN_VERY_THIN 21
-#define CM_WIDTH_PEN_THIN 22
-#define CM_WIDTH_PEN_NORMAL 23
-#define CM_WIDTH_PEN_THICK 24
-#define CM_WIDTH_PEN_VERY_THICK 25
-#define CM_PEN_MODE 26
-#define CM_ERASE_MODE 27
-#define CM_POINTER_OPTION 28
+#define CM_ERASE_ALLINK 10
+#define CM_COLOR_PEN 11
+#define CM_WIDTH_PEN 12
+#define CM_WIDTH_PEN_VERY_THIN 13
+#define CM_WIDTH_PEN_THIN 14
+#define CM_WIDTH_PEN_NORMAL 15
+#define CM_WIDTH_PEN_THICK 16
+#define CM_WIDTH_PEN_VERY_THICK 17
+#define CM_PEN_MODE 18
+#define CM_ERASE_MODE 19
+#define CM_POINTER_OPTION 20
+
+#define CM_SLIDES 21 // this must be the last id!
#endif
diff --git a/sd/source/ui/slideshow/slideshow.src b/sd/source/ui/slideshow/slideshow.src
index 02c225fb5ea9..78cd2aae0d9f 100644..100755
--- a/sd/source/ui/slideshow/slideshow.src
+++ b/sd/source/ui/slideshow/slideshow.src
@@ -71,20 +71,10 @@ Menu RID_SLIDESHOW_CONTEXTMENU
{
Separator = TRUE;
};
-#ifdef ENABLE_PRESENTER_EXTRA_UI
MenuItem
{
Identifier = CM_PEN_MODE;
- Text [ en-US ] = "~Pen Mode";
- };
- MenuItem
- {
- Identifier = CM_ERASE_MODE;
- Text [ en-US ] = "~Eraser Mode";
- };
- MenuItem
- {
- Separator = TRUE;
+ Text [ en-US ] = "Mouse pointer as ~pen";
};
MenuItem
{
@@ -124,20 +114,8 @@ Menu RID_SLIDESHOW_CONTEXTMENU
};
MenuItem
{
- Separator = TRUE;
- };
- MenuItem
- {
Identifier = CM_COLOR_PEN ;
- Text [ en-US ] = "~Change Pen Color" ;
- };
- MenuItem
- {
- Separator = TRUE;
- };
- MenuItem
- {
- Separator = TRUE;
+ Text [ en-US ] = "~Change Pen Color..." ;
};
MenuItem
{
@@ -150,48 +128,6 @@ Menu RID_SLIDESHOW_CONTEXTMENU
};
MenuItem
{
- Identifier = CM_ERASE_INK_PEN;
- Text [ en-US ] = "~Eraser Width" ;
-
- SubMenu = Menu
- {
- ItemList =
- {
- MenuItem
- {
- Identifier = CM_ERASE_INK_PEN_VERY_THIN;
- Text [ en-US ] = "~Very thin";
- };
- MenuItem
- {
- Identifier = CM_ERASE_INK_PEN_THIN;
- Text [ en-US ] = "~Thin";
- };
- MenuItem
- {
- Identifier = CM_ERASE_INK_PEN_NORMAL;
- Text [ en-US ] = "~Normal";
- };
- MenuItem
- {
- Identifier = CM_ERASE_INK_PEN_THICK;
- Text [ en-US ] = "~Thick";
- };
- MenuItem
- {
- Identifier = CM_ERASE_INK_PEN_VERY_THICK;
- Text [ en-US ] = "~Very Thick";
- };
- };
- };
- };
-#endif
- MenuItem
- {
- Separator = TRUE;
- };
- MenuItem
- {
Identifier = CM_SCREEN;
Text [ en-US ] = "~Screen" ;
@@ -216,6 +152,6 @@ Menu RID_SLIDESHOW_CONTEXTMENU
{
Identifier = CM_ENDSHOW ;
Text [ en-US ] = "~End Show" ;
- };
+ };
};
};
diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx
index ee89da143910..67ac7e94cadb 100755
--- a/sd/source/ui/slideshow/slideshowimpl.cxx
+++ b/sd/source/ui/slideshow/slideshowimpl.cxx
@@ -554,13 +554,11 @@ SlideshowImpl::SlideshowImpl( const Reference< XPresentation2 >& xPresentation,
, mbInputFreeze(false)
, mbActive(sal_False)
, maPresSettings( pDoc->getPresentationSettings() )
-, mnUserPaintColor( 0x00000000L ) //User paint color is Black by default
-#ifdef ENABLE_PRESENTER_EXTRA_UI
-, mbSwitchPenMode(true)
+, mnUserPaintColor( 0x80ff0000L )
+, mbUsePen(false)
+, mdUserPaintStrokeWidth ( 150.0 )
+#ifdef ENABLE_ERASER_UI
, mbSwitchEraserMode(false)
-, mdUserPaintStrokeWidth ( 4.0 )
-, mbEraseAllInk(false)
-//, mbEraseInk(false)
, mnEraseInkSize(100)
#endif
, mnEntryCounter(0)
@@ -591,10 +589,26 @@ SlideshowImpl::SlideshowImpl( const Reference< XPresentation2 >& xPresentation,
mbAutoSaveWasOn = true;
Application::AddEventListener( LINK( this, SlideshowImpl, EventListenerHdl ) );
+
+ mbUsePen = maPresSettings.mbMouseAsPen;
+
+ SdOptions* pOptions = SD_MOD()->GetSdOptions(DOCUMENT_TYPE_IMPRESS);
+ if( pOptions )
+ {
+ mnUserPaintColor = pOptions->GetPresentationPenColor();
+ mdUserPaintStrokeWidth = pOptions->GetPresentationPenWidth();
+ }
}
SlideshowImpl::~SlideshowImpl()
{
+ SdOptions* pOptions = SD_MOD()->GetSdOptions(DOCUMENT_TYPE_IMPRESS);
+ if( pOptions )
+ {
+ pOptions->SetPresentationPenColor(mnUserPaintColor);
+ pOptions->SetPresentationPenWidth(mdUserPaintStrokeWidth);
+ }
+
Application::RemoveEventListener( LINK( this, SlideshowImpl, EventListenerHdl ) );
maDeactivateTimer.Stop();
@@ -1124,13 +1138,20 @@ bool SlideshowImpl::startShow( PresentationSettingsEx* pPresSettings )
-1, Any( maPresSettings.mbManual != sal_False ),
beans::PropertyState_DIRECT_VALUE ) );
- if( maPresSettings.mbMouseAsPen )
+ if( mbUsePen )
{
aProperties.push_back(
beans::PropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("UserPaintColor") ),
// User paint color is black by default.
- -1, Any( static_cast<sal_Int32>(0x00000000L) ),
+ -1, Any( mnUserPaintColor ),
+ beans::PropertyState_DIRECT_VALUE ) );
+
+ aProperties.push_back(
+ beans::PropertyValue(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("UserPaintStrokeWidth") ),
+ // User paint color is black by default.
+ -1, Any( mdUserPaintStrokeWidth ),
beans::PropertyState_DIRECT_VALUE ) );
}
@@ -1461,14 +1482,14 @@ void SlideshowImpl::displayCurrentSlide (const bool bSkipAllMainSequenceEffects)
void SlideshowImpl::endPresentation()
{
-#ifdef ENABLE_PRESENTER_EXTRA_UI
+/*
if( maPresSettings.mbMouseAsPen)
{
Reference< XMultiServiceFactory > xDocFactory(mpDoc->getUnoModel(), UNO_QUERY );
if( xDocFactory.is() )
mxShow->registerUserPaintPolygons(xDocFactory);
}
-#endif
+*/
if( !mnEndShowEvent )
mnEndShowEvent = Application::PostUserEvent( LINK(this, SlideshowImpl, endPresentationHdl) );
}
@@ -2203,16 +2224,8 @@ IMPL_LINK( SlideshowImpl, ContextMenuHdl, void*, EMPTYARG )
PopupMenu* pMenu = new PopupMenu( SdResId( RID_SLIDESHOW_CONTEXTMENU ) );
-#ifdef ENABLE_PRESENTER_EXTRA_UI
- //adding button to contextual menu for erasing functionnalities for UserPaintOverlay
- pMenu->EnableItem( CM_ERASE_ALLINK, (maPresSettings.mbMouseAsPen));
- // Adding button to contextual menu for changing pen color
- pMenu->EnableItem( CM_COLOR_PEN, (maPresSettings.mbMouseAsPen));
// Adding button to display if in Pen mode
- pMenu->EnableItem( CM_PEN_MODE, (maPresSettings.mbMouseAsPen));
- // Adding button to displau if in Erase Mode
- pMenu->EnableItem( CM_ERASE_MODE, (maPresSettings.mbMouseAsPen));
-#endif
+ pMenu->CheckItem( CM_PEN_MODE, mbUsePen);
const ShowWindowMode eMode = mpShowWindow->GetShowWindowMode();
pMenu->EnableItem( CM_NEXT_SLIDE, ( mpSlideController->getNextSlideIndex() != -1 ) );
@@ -2280,105 +2293,44 @@ IMPL_LINK( SlideshowImpl, ContextMenuHdl, void*, EMPTYARG )
pBlankMenu->CheckItem( ( mpShowWindow->GetBlankColor() == Color( COL_WHITE ) ) ? CM_SCREEN_WHITE : CM_SCREEN_BLACK );
}
}
-#ifdef ENABLE_PRESENTER_EXTRA_UI
PopupMenu* pWidthMenu = pMenu->GetPopupMenu( CM_WIDTH_PEN);
// populate color width list
if( pWidthMenu )
{
- if(! maPresSettings.mbMouseAsPen)
- {
- pMenu->EnableItem( CM_WIDTH_PEN, FALSE );
- }
- else
- {
- sal_Int32 nIterator;
- double nWidth;
+ sal_Int32 nIterator;
+ double nWidth;
- nWidth = 4.0;
- for( nIterator = 1; nIterator < 6; nIterator++)
- {
- switch(nIterator)
- {
- case 1:
- nWidth = 4.0;
- break;
- case 2:
- nWidth = 100.0;
- break;
- case 3:
- nWidth = 150.0;
- break;
- case 4:
- nWidth = 200.0;
- break;
- case 5:
- nWidth = 400.0;
- break;
- default:
- break;
- }
-
- pWidthMenu->EnableItem( (USHORT)(CM_WIDTH_PEN + nIterator), TRUE);
- if( nWidth == mdUserPaintStrokeWidth)
- pWidthMenu->CheckItem( (USHORT)(CM_WIDTH_PEN + nIterator) );
-
- }
- }
- }
-
-
- PopupMenu* pEraseWidthMenu = pMenu->GetPopupMenu( CM_ERASE_INK_PEN);
-
- // populate eraser width list
- if( pEraseWidthMenu )
- {
- if(! maPresSettings.mbMouseAsPen)
+ nWidth = 4.0;
+ for( nIterator = 1; nIterator < 6; nIterator++)
{
- pMenu->EnableItem( CM_ERASE_INK_PEN, FALSE );
- }
- else
- {
- sal_Int32 nEIterator;
- double nEWidth;
-
- nEWidth = 100.0;
- for( nEIterator = 1; nEIterator < 6; nEIterator++)
+ switch(nIterator)
{
- switch(nEIterator)
- {
- case 1:
- nEWidth = 100.0;
- break;
- case 2:
- nEWidth = 200.0;
- break;
- case 3:
- nEWidth = 300.0;
- break;
- case 4:
- nEWidth = 400.0;
- break;
- case 5:
- nEWidth = 500.0;
- break;
- default:
- break;
- }
-
- pEraseWidthMenu->EnableItem( (USHORT)(CM_ERASE_INK_PEN + nEIterator), TRUE);
- if( nEWidth == mnEraseInkSize)
- pEraseWidthMenu->CheckItem( (USHORT)(CM_ERASE_INK_PEN + nEIterator) );
- if( mbSwitchPenMode )
- pMenu->CheckItem( (USHORT)(CM_PEN_MODE));
- if( mbSwitchEraserMode )
- pMenu->CheckItem( (USHORT)(CM_ERASE_MODE));
-
+ case 1:
+ nWidth = 4.0;
+ break;
+ case 2:
+ nWidth = 100.0;
+ break;
+ case 3:
+ nWidth = 150.0;
+ break;
+ case 4:
+ nWidth = 200.0;
+ break;
+ case 5:
+ nWidth = 400.0;
+ break;
+ default:
+ break;
}
+
+ pWidthMenu->EnableItem( (USHORT)(CM_WIDTH_PEN + nIterator), TRUE);
+ if( nWidth == mdUserPaintStrokeWidth)
+ pWidthMenu->CheckItem( (USHORT)(CM_WIDTH_PEN + nIterator) );
}
}
-#endif
pMenu->SetSelectHdl( LINK( this, SlideshowImpl, ContextMenuSelectHdl ) );
pMenu->Execute( mpShowWindow, maPopupMousePos );
@@ -2442,139 +2394,93 @@ IMPL_LINK( SlideshowImpl, ContextMenuSelectHdl, Menu *, pMenu )
}
}
break;
-#ifdef ENABLE_PRESENTER_EXTRA_UI
- if( maPresSettings.mbMouseAsPen )
- {
- case CM_COLOR_PEN:
- {
- //Open a color picker based on SvColorDialog
- ::Color aColor( mnUserPaintColor );
- SvColorDialog aColorDlg( mpShowWindow);
- aColorDlg.SetColor( aColor );
-
- if (aColorDlg.Execute() )
- {
- aColor = aColorDlg.GetColor();
- mnUserPaintColor = aColor.GetColor();
- setPenColor(mnUserPaintColor);
- }
- mbWasPaused = false;
- }
- break;
-
- case CM_WIDTH_PEN_VERY_THIN:
- {
- setPenWidth(4.0);
- mbWasPaused = false;
- }
- break;
-
- case CM_WIDTH_PEN_THIN:
- {
- setPenWidth(100.0);
- mbWasPaused = false;
- }
- break;
-
- case CM_WIDTH_PEN_NORMAL:
- {
- setPenWidth(150.0);
- mbWasPaused = false;
- }
- break;
+ case CM_COLOR_PEN:
+ {
+ //Open a color picker based on SvColorDialog
+ ::Color aColor( mnUserPaintColor );
+ SvColorDialog aColorDlg( mpShowWindow);
+ aColorDlg.SetColor( aColor );
- case CM_WIDTH_PEN_THICK:
+ if (aColorDlg.Execute() )
{
- setPenWidth(200.0);
- mbWasPaused = false;
+ aColor = aColorDlg.GetColor();
+ setPenColor(aColor.GetColor());
}
- break;
+ mbWasPaused = false;
+ }
+ break;
- case CM_WIDTH_PEN_VERY_THICK:
- {
- setPenWidth(400.0);
- mbWasPaused = false;
- }
- break;
- case CM_ERASE_ALLINK:
- {
- setEraseAllInk(true);
- mbWasPaused = false;
- }
- break;
- case CM_PEN_MODE:
- {
- setPenMode(true);
- mbWasPaused = false;
- }
- break;
- case CM_ERASE_MODE:
- {
- setEraserMode(true);
- mbWasPaused = false;
- }
- break;
- case CM_ERASE_INK_PEN_VERY_THIN:
- {
- setEraseInk(100);
- mbWasPaused = false;
- }
- break;
+ case CM_WIDTH_PEN_VERY_THIN:
+ {
+ setPenWidth(4.0);
+ mbWasPaused = false;
+ }
+ break;
- case CM_ERASE_INK_PEN_THIN:
- {
- setEraseInk(200);
- mbWasPaused = false;
- }
- break;
+ case CM_WIDTH_PEN_THIN:
+ {
+ setPenWidth(100.0);
+ mbWasPaused = false;
+ }
+ break;
- case CM_ERASE_INK_PEN_NORMAL:
- {
- setEraseInk(300);
- mbWasPaused = false;
- }
- break;
+ case CM_WIDTH_PEN_NORMAL:
+ {
+ setPenWidth(150.0);
+ mbWasPaused = false;
+ }
+ break;
- case CM_ERASE_INK_PEN_THICK:
- {
- setEraseInk(400);
- mbWasPaused = false;
- }
- break;
- case CM_ERASE_INK_PEN_VERY_THICK:
- {
- setEraseInk(500);
- mbWasPaused = false;
- }
- break;
- }
-#endif
+ case CM_WIDTH_PEN_THICK:
+ {
+ setPenWidth(200.0);
+ mbWasPaused = false;
+ }
+ break;
- case CM_ENDSHOW:
- // in case the user cancels the presentation, switch to current slide
- // in edit mode
- if( mpSlideController.get() && (ANIMATIONMODE_SHOW == meAnimationMode) )
- {
- if( mpSlideController->getCurrentSlideNumber() != -1 )
- {
- mnRestoreSlide = mpSlideController->getCurrentSlideNumber();
- }
- }
- endPresentation();
- break;
- default:
- sal_Int32 nPageNumber = nMenuId - CM_SLIDES;
- const ShowWindowMode eMode = mpShowWindow->GetShowWindowMode();
- if( (eMode == SHOWWINDOWMODE_END) || (eMode == SHOWWINDOWMODE_PAUSE) || (eMode == SHOWWINDOWMODE_BLANK) )
- {
- mpShowWindow->RestartShow( nPageNumber );
- }
- else if( nPageNumber != mpSlideController->getCurrentSlideNumber() )
+ case CM_WIDTH_PEN_VERY_THICK:
+ {
+ setPenWidth(400.0);
+ mbWasPaused = false;
+ }
+ break;
+ case CM_ERASE_ALLINK:
+ {
+ setEraseAllInk(true);
+ mbWasPaused = false;
+ }
+ break;
+ case CM_PEN_MODE:
+ {
+ setUsePen(!mbUsePen);
+ mbWasPaused = false;
+ }
+ break;
+ case CM_ENDSHOW:
+ // in case the user cancels the presentation, switch to current slide
+ // in edit mode
+ if( mpSlideController.get() && (ANIMATIONMODE_SHOW == meAnimationMode) )
+ {
+ if( mpSlideController->getCurrentSlideNumber() != -1 )
{
- displaySlideNumber( nPageNumber );
+ mnRestoreSlide = mpSlideController->getCurrentSlideNumber();
}
- mbWasPaused = false;
- break;
+ }
+ endPresentation();
+ break;
+ default:
+ sal_Int32 nPageNumber = nMenuId - CM_SLIDES;
+ const ShowWindowMode eMode = mpShowWindow->GetShowWindowMode();
+ if( (eMode == SHOWWINDOWMODE_END) || (eMode == SHOWWINDOWMODE_PAUSE) || (eMode == SHOWWINDOWMODE_BLANK) )
+ {
+ mpShowWindow->RestartShow( nPageNumber );
+ }
+ else if( nPageNumber != mpSlideController->getCurrentSlideNumber() )
+ {
+ displaySlideNumber( nPageNumber );
+ }
+ mbWasPaused = false;
+ break;
}
}
@@ -2960,7 +2866,7 @@ void SlideshowImpl::receiveRequest(SfxRequest& rReq)
switch ( rReq.GetSlot() )
{
case SID_NAVIGATOR_PEN:
- setUsePen(!maPresSettings.mbMouseAsPen);
+ setUsePen(!mbUsePen);
break;
case SID_NAVIGATOR_PAGE:
@@ -3146,7 +3052,7 @@ void SAL_CALL SlideshowImpl::setMouseVisible( sal_Bool bVisible ) throw (Runtime
sal_Bool SAL_CALL SlideshowImpl::getUsePen() throw (RuntimeException)
{
::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- return maPresSettings.mbMouseAsPen;
+ return mbUsePen;
}
// --------------------------------------------------------------------
@@ -3154,93 +3060,38 @@ sal_Bool SAL_CALL SlideshowImpl::getUsePen() throw (RuntimeException)
void SAL_CALL SlideshowImpl::setUsePen( sal_Bool bMouseAsPen ) throw (RuntimeException)
{
::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- maPresSettings.mbMouseAsPen = bMouseAsPen;
+ mbUsePen = bMouseAsPen;
if( mxShow.is() ) try
{
- // For Pencolor;
+ // For Pencolor;
Any aValue;
- if( maPresSettings.mbMouseAsPen )
- // TODO: take color from configuration
- aValue <<= mnUserPaintColor;
+ if( mbUsePen )
+ aValue <<= mnUserPaintColor;
beans::PropertyValue aPenProp;
aPenProp.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "UserPaintColor" ));
aPenProp.Value = aValue;
mxShow->setProperty( aPenProp );
-#ifdef ENABLE_PRESENTER_EXTRA_UI
- //for StrokeWidth :
- Any aValueWidth;
- if( maPresSettings.mbMouseAsPen )
- aValueWidth <<= mdUserPaintStrokeWidth;
-
- beans::PropertyValue aPenPropWidth;
- aPenPropWidth.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "UserPaintStrokeWidth" ));
- aPenPropWidth.Value = aValueWidth;
-
- mxShow->setProperty( aPenPropWidth );
-
- // for Pen Mode
- Any aValueSwitchPenMode;
- if( maPresSettings.mbMouseAsPen )
- aValueSwitchPenMode <<= mbSwitchPenMode;
- beans::PropertyValue aPenPropSwitchPenMode;
- aPenPropSwitchPenMode.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "SwitchPenMode" ));
- aPenPropSwitchPenMode.Value = aValueSwitchPenMode;
- mxShow->setProperty( aPenPropSwitchPenMode );
-
- //for EraseAllInk :
- Any aValueEraseAllInk;
- if( maPresSettings.mbMouseAsPen )
- aValueEraseAllInk <<= mbEraseAllInk;
- beans::PropertyValue aPenPropEraseAllInk;
- aPenPropEraseAllInk.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "EraseAllInk" ));
- aPenPropEraseAllInk.Value = aValueEraseAllInk;
- mxShow->setProperty( aPenPropEraseAllInk );
- mbEraseAllInk = false; // sets to false so not to have it applied again
-#endif
- }
- catch( Exception& e )
- {
- static_cast<void>(e);
- DBG_ERROR(
- (OString("sd::SlideshowImpl::setUsePen(), "
- "exception caught: ") +
- rtl::OUStringToOString(
- comphelper::anyToString( cppu::getCaughtException() ),
- RTL_TEXTENCODING_UTF8 )).getStr() );
- }
-}
-#ifdef ENABLE_PRESENTER_EXTRA_UI
-void SAL_CALL SlideshowImpl::setUseEraser( sal_Bool bMouseAsPen ) throw (RuntimeException)
-{
- ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- maPresSettings.mbMouseAsPen = bMouseAsPen;
- if( mxShow.is() ) try
- {
+ //for StrokeWidth :
+ if( mbUsePen )
+ {
+ beans::PropertyValue aPenPropWidth;
+ aPenPropWidth.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "UserPaintStrokeWidth" ));
+ aPenPropWidth.Value <<= mdUserPaintStrokeWidth;
+ mxShow->setProperty( aPenPropWidth );
- //for EraseInk :
- Any aValueEraseInk;
- if( maPresSettings.mbMouseAsPen )
- aValueEraseInk <<= mnEraseInkSize;
- beans::PropertyValue aPenPropEraseInk;
- aPenPropEraseInk.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "EraseInk" ));
- aPenPropEraseInk.Value = aValueEraseInk;
- mxShow->setProperty( aPenPropEraseInk );
-
- // for Erase Mode
- Any aValueSwitchEraserMode;
- if( maPresSettings.mbMouseAsPen )
- aValueSwitchEraserMode <<= mbSwitchEraserMode;
- beans::PropertyValue aPenPropSwitchEraserMode;
- aPenPropSwitchEraserMode.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "SwitchEraserMode" ));
- aPenPropSwitchEraserMode.Value = aValueSwitchEraserMode;
- mxShow->setProperty( aPenPropSwitchEraserMode );
+ // for Pen Mode
+ beans::PropertyValue aPenPropSwitchPenMode;
+ aPenPropSwitchPenMode.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "SwitchPenMode" ));
+ aPenPropSwitchPenMode.Value <<= sal_True;
+ mxShow->setProperty( aPenPropSwitchPenMode );
+ }
}
catch( Exception& e )
{
static_cast<void>(e);
DBG_ERROR(
- (OString("sd::SlideshowImpl::setUseEraser(), "
+ (OString("sd::SlideshowImpl::setUsePen(), "
"exception caught: ") +
rtl::OUStringToOString(
comphelper::anyToString( cppu::getCaughtException() ),
@@ -3262,12 +3113,9 @@ void SAL_CALL SlideshowImpl::setPenWidth( double dStrokeWidth ) throw (RuntimeEx
{
::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
mdUserPaintStrokeWidth = dStrokeWidth;
- mbSwitchPenMode = true;
- mbSwitchEraserMode = !mbSwitchPenMode;
- if( maPresSettings.mbMouseAsPen )
- setUsePen( sal_True ); // update color and width
+ setUsePen( true ); // enable pen mode, update color and width
}
-#endif
+
// --------------------------------------------------------------------
sal_Int32 SAL_CALL SlideshowImpl::getPenColor() throw (RuntimeException)
@@ -3282,71 +3130,59 @@ void SAL_CALL SlideshowImpl::setPenColor( sal_Int32 nColor ) throw (RuntimeExcep
{
::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
mnUserPaintColor = nColor;
-#ifdef ENABLE_PRESENTER_EXTRA_UI
- mbSwitchPenMode = true;
- mbSwitchEraserMode = !mbSwitchPenMode;
-#endif
- if( maPresSettings.mbMouseAsPen )
- setUsePen( sal_True ); // update color
+ setUsePen( true ); // enable pen mode, update color
}
-#ifdef ENABLE_PRESENTER_EXTRA_UI
// --------------------------------------------------------------------
-void SAL_CALL SlideshowImpl::setPenMode( bool bSwitchPenMode ) throw (RuntimeException)
+void SAL_CALL SlideshowImpl::setUseEraser( ::sal_Bool /*_usepen*/ ) throw (css::uno::RuntimeException)
{
- ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- mbSwitchPenMode = bSwitchPenMode;
-
- if(mbSwitchPenMode == true){
- mbSwitchEraserMode = false;
- }else{
- mbSwitchEraserMode = true;
- }
- if( maPresSettings.mbMouseAsPen )
- setUsePen( sal_True ); // Switch to Pen Mode
-
}
-void SAL_CALL SlideshowImpl::setEraserMode(bool bSwitchEraserMode ) throw (RuntimeException)
+// --------------------------------------------------------------------
+
+void SAL_CALL SlideshowImpl::setPenMode( bool bSwitchPenMode ) throw (RuntimeException)
{
::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- mbSwitchEraserMode = bSwitchEraserMode;
- if(mbSwitchEraserMode = true){
- mbSwitchPenMode = false;
- }else{
- mbSwitchPenMode = true;
- }
-
- if( maPresSettings.mbMouseAsPen )
- setUseEraser( sal_True ); // Switch to EraseMode
+ setUsePen( bSwitchPenMode ); // SwitchPen Mode
}
-
// --------------------------------------------------------------------
-void SAL_CALL SlideshowImpl::setEraseAllInk( bool bEraseAllInk ) throw (RuntimeException)
+void SAL_CALL SlideshowImpl::setEraseAllInk(bool bEraseAllInk) throw (RuntimeException)
{
- ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- mbEraseAllInk=bEraseAllInk;
- mbSwitchPenMode = true;
- mbSwitchEraserMode = false;
- if( maPresSettings.mbMouseAsPen )
- setUsePen( sal_True ); // update erase all ink bool
+ if( bEraseAllInk )
+ {
+ ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ if( mxShow.is() ) try
+ {
+ beans::PropertyValue aPenPropEraseAllInk;
+ aPenPropEraseAllInk.Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "EraseAllInk" ));
+ aPenPropEraseAllInk.Value <<= bEraseAllInk;
+ mxShow->setProperty( aPenPropEraseAllInk );
+ }
+ catch( Exception& e )
+ {
+ static_cast<void>(e);
+ DBG_ERROR(
+ (OString("sd::SlideshowImpl::setEraseAllInk(), "
+ "exception caught: ") +
+ rtl::OUStringToOString(
+ comphelper::anyToString( cppu::getCaughtException() ),
+ RTL_TEXTENCODING_UTF8 )).getStr() );
+ }
+ }
}
+void SAL_CALL SlideshowImpl::setEraseInk( sal_Int32 /*nEraseInkSize*/ ) throw (css::uno::RuntimeException)
+{
+}
-void SAL_CALL SlideshowImpl::setEraseInk( sal_Int32 nEraseInkSize ) throw (RuntimeException)
+void SAL_CALL SlideshowImpl::setEraserMode( bool /*bSwitchEraserMode*/ ) throw (css::uno::RuntimeException)
{
- ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
- mnEraseInkSize=nEraseInkSize;
- mbSwitchPenMode = false;
- mbSwitchEraserMode = true;
- if( maPresSettings.mbMouseAsPen )
- setUseEraser( sal_True ); // update erase ink size
}
-#endif
+
// --------------------------------------------------------------------
// XSlideShowController Methods
// --------------------------------------------------------------------
diff --git a/sd/source/ui/slideshow/slideshowimpl.hxx b/sd/source/ui/slideshow/slideshowimpl.hxx
index cb33c4a740c7..98a34959e0b9 100755
--- a/sd/source/ui/slideshow/slideshowimpl.hxx
+++ b/sd/source/ui/slideshow/slideshowimpl.hxx
@@ -198,7 +198,6 @@ public:
virtual void SAL_CALL setUsePen( ::sal_Bool _usepen ) throw (css::uno::RuntimeException);
virtual ::sal_Int32 SAL_CALL getPenColor() throw (css::uno::RuntimeException);
virtual void SAL_CALL setPenColor( ::sal_Int32 _pencolor ) throw (css::uno::RuntimeException);
-#ifdef ENABLE_PRESENTER_EXTRA_UI
virtual void SAL_CALL setUseEraser( ::sal_Bool _usepen ) throw (css::uno::RuntimeException);
virtual double SAL_CALL getPenWidth() throw (css::uno::RuntimeException);
virtual void SAL_CALL setPenWidth( double dStrokeWidth ) throw (css::uno::RuntimeException);
@@ -206,7 +205,6 @@ public:
virtual void SAL_CALL setEraseInk( sal_Int32 nEraseInkSize ) throw (css::uno::RuntimeException);
virtual void SAL_CALL setPenMode( bool bSwitchPenMode) throw (css::uno::RuntimeException);
virtual void SAL_CALL setEraserMode( bool bSwitchEraserMode ) throw (css::uno::RuntimeException);
-#endif
virtual ::sal_Bool SAL_CALL isRunning( ) throw (css::uno::RuntimeException);
virtual ::sal_Int32 SAL_CALL getSlideCount( ) throw (css::uno::RuntimeException);
virtual css::uno::Reference< css::drawing::XDrawPage > SAL_CALL getSlideByIndex( ::sal_Int32 Index ) throw (css::lang::IndexOutOfBoundsException, css::uno::RuntimeException);
@@ -396,14 +394,9 @@ private:
PresentationSettings maPresSettings;
sal_Int32 mnUserPaintColor;
-#ifdef ENABLE_PRESENTER_EXTRA_UI
- bool mbSwitchPenMode;
- bool mbSwitchEraserMode;
+ bool mbUsePen;
double mdUserPaintStrokeWidth;
- bool mbEraseAllInk;
-// bool mbEraseInk;
- sal_Int32 mnEraseInkSize;
-#endif
+
/// used in updateHdl to prevent recursive calls
sal_Int32 mnEntryCounter;
diff --git a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
index 0ab4b9e3bdc3..9fb7fbed87e6 100644
--- a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
@@ -969,7 +969,7 @@ bool SlotManager::RenameSlideFromDrawViewShell( USHORT nPageId, const String & r
SdPage* pPageToRename = NULL;
PageKind ePageKind = mrSlideSorter.GetModel().GetPageType();
- SfxUndoManager* pManager = pDocument->GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pManager = pDocument->GetDocSh()->GetUndoManager();
if( mrSlideSorter.GetModel().GetEditMode() == EM_PAGE )
{
@@ -989,7 +989,7 @@ bool SlotManager::RenameSlideFromDrawViewShell( USHORT nPageId, const String & r
// (#67720#)
ModifyPageUndoAction* pAction = new ModifyPageUndoAction(
- pManager, pDocument, pUndoPage, rName, pUndoPage->GetAutoLayout(),
+ pDocument, pUndoPage, rName, pUndoPage->GetAutoLayout(),
aVisibleLayers.IsSet( nBackground ),
aVisibleLayers.IsSet( nBgObj ));
pManager->AddUndoAction( pAction );
diff --git a/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx b/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx
index f8e7e13cdd2b..b1bcc7050a77 100755
--- a/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx
+++ b/sd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx
@@ -321,7 +321,7 @@ bool SlideSorterViewShell::RelocateToParentWindow (::Window* pParentWindow)
-SfxUndoManager* SlideSorterViewShell::ImpGetUndoManager (void) const
+::svl::IUndoManager* SlideSorterViewShell::ImpGetUndoManager (void) const
{
SfxShell* pObjectBar = GetViewShellBase().GetViewShellManager()->GetTopShell();
if (pObjectBar != NULL)
diff --git a/sd/source/ui/slidesorter/view/SlsTheme.cxx b/sd/source/ui/slidesorter/view/SlsTheme.cxx
index 7357d7ea00b8..2aaa7f23af95 100644
--- a/sd/source/ui/slidesorter/view/SlsTheme.cxx
+++ b/sd/source/ui/slidesorter/view/SlsTheme.cxx
@@ -73,7 +73,8 @@ ColorData HGBAdapt (
Theme::Theme (const ::boost::shared_ptr<controller::Properties>& rpProperties)
- : maBackgroundColor(rpProperties->GetBackgroundColor().GetColor()),
+ : mbIsHighContrastMode(false),
+ maBackgroundColor(rpProperties->GetBackgroundColor().GetColor()),
maPageBackgroundColor(COL_WHITE),
maGradients(),
maIcons(),
diff --git a/sd/source/ui/toolpanel/controls/DocumentHelper.cxx b/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
index c5919b7aa7ee..f7d470e56333 100755
--- a/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
+++ b/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
@@ -290,7 +290,7 @@ void DocumentHelper::ProvideStyles (
// Add an undo action for the copied style sheets.
if( !aCreatedStyles.empty() )
{
- SfxUndoManager* pUndoManager = rTargetDocument.GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pUndoManager = rTargetDocument.GetDocSh()->GetUndoManager();
if (pUndoManager != NULL)
{
SdMoveStyleSheetsUndoAction* pMovStyles =
@@ -341,7 +341,7 @@ void DocumentHelper::AssignMasterPageToPageList (
if (aCleanedList.size() == 0)
break;
- SfxUndoManager* pUndoMgr = rTargetDocument.GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pUndoMgr = rTargetDocument.GetDocSh()->GetUndoManager();
if( pUndoMgr )
pUndoMgr->EnterListAction(String(SdResId(STR_UNDO_SET_PRESLAYOUT)), String());
diff --git a/sd/source/ui/view/DocumentRenderer.cxx b/sd/source/ui/view/DocumentRenderer.cxx
index ddbf5cfc4388..b0248647b3dc 100755
--- a/sd/source/ui/view/DocumentRenderer.cxx
+++ b/sd/source/ui/view/DocumentRenderer.cxx
@@ -436,9 +436,10 @@ namespace {
aOpt.GetModuleName( mbImpress ? SvtModuleOptions::E_SIMPRESS : SvtModuleOptions::E_SDRAW ) );
AddDialogControl( vcl::PrinterOptionsHelper::getGroupControlOpt(
aAppGroupname,
- rtl::OUString()
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:TabPage:AppPage" ) )
) );
+ uno::Sequence< rtl::OUString > aHelpIds;
if( mbImpress )
{
vcl::PrinterOptionsHelper::UIControlOptions aPrintOpt;
@@ -449,9 +450,11 @@ namespace {
aPrintOpt )
);
+ aHelpIds.realloc( 1 );
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PageContentType:ListBox" ) );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
String( SdResId( _STR_IMPRESS_PRINT_UI_CONTENT ) ),
- CreateChoice(_STR_IMPRESS_PRINT_UI_CONTENT_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "PageContentType" ) ),
CreateChoice(_STR_IMPRESS_PRINT_UI_CONTENT_CHOICES),
0,
@@ -459,11 +462,12 @@ namespace {
)
);
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:SlidesPerPage:ListBox" ) );
vcl::PrinterOptionsHelper::UIControlOptions
aContentOpt( OUString( RTL_CONSTASCII_USTRINGPARAM( "PageContentType" ) ), 1 );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
String( SdResId( _STR_IMPRESS_PRINT_UI_SLIDESPERPAGE ) ),
- CreateChoice(_STR_IMPRESS_PRINT_UI_SLIDESPERPAGE_CHOICES_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "SlidesPerPage" ) ),
GetSlidesPerPageSequence(),
0,
@@ -473,11 +477,12 @@ namespace {
)
);
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:SlidesPerPageOrder:ListBox" ) );
vcl::PrinterOptionsHelper::UIControlOptions
aSlidesPerPageOpt( OUString( RTL_CONSTASCII_USTRINGPARAM( "SlidesPerPage" ) ), -1, sal_True );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
String( SdResId( _STR_IMPRESS_PRINT_UI_ORDER ) ),
- CreateChoice(_STR_IMPRESS_PRINT_UI_ORDER_CHOICES_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "SlidesPerPageOrder" ) ),
CreateChoice(_STR_IMPRESS_PRINT_UI_ORDER_CHOICES),
0,
@@ -495,7 +500,7 @@ namespace {
{
AddDialogControl( vcl::PrinterOptionsHelper::getBoolControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_IS_PRINT_NAME) ),
- String( SdResId(_STR_IMPRESS_PRINT_UI_IS_PRINT_NAME_HELP) ),
+ OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:IsPrintName:CheckBox" ) ),
OUString( RTL_CONSTASCII_USTRINGPARAM( "IsPrintName" ) ),
sal_False
)
@@ -505,7 +510,7 @@ namespace {
{
AddDialogControl( vcl::PrinterOptionsHelper::getBoolControlOpt(
String( SdResId(_STR_DRAW_PRINT_UI_IS_PRINT_NAME) ),
- String( SdResId(_STR_DRAW_PRINT_UI_IS_PRINT_NAME_HELP) ),
+ OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:IsPrintName:CheckBox" ) ),
OUString( RTL_CONSTASCII_USTRINGPARAM( "IsPrintName" ) ),
sal_False
)
@@ -514,7 +519,7 @@ namespace {
AddDialogControl( vcl::PrinterOptionsHelper::getBoolControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_IS_PRINT_DATE) ),
- String( SdResId(_STR_IMPRESS_PRINT_UI_IS_PRINT_DATE_HELP) ),
+ OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:IsPrintDateTime:CheckBox" ) ),
OUString( RTL_CONSTASCII_USTRINGPARAM( "IsPrintDateTime" ) ),
sal_False
)
@@ -524,7 +529,7 @@ namespace {
{
AddDialogControl( vcl::PrinterOptionsHelper::getBoolControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN) ),
- String( SdResId(_STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN_HELP) ),
+ OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:IsPrintHidden:CheckBox" ) ),
OUString( RTL_CONSTASCII_USTRINGPARAM( "IsPrintHidden" ) ),
sal_False
)
@@ -534,9 +539,13 @@ namespace {
AddDialogControl( vcl::PrinterOptionsHelper::getSubgroupControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_QUALITY) ), rtl::OUString() ) );
+ aHelpIds.realloc( 3 );
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:Quality:RadioButton:0" ) );
+ aHelpIds[1] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:Quality:RadioButton:1" ) );
+ aHelpIds[2] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:Quality:RadioButton:2" ) );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
rtl::OUString(),
- CreateChoice(_STR_IMPRESS_PRINT_UI_QUALITY_CHOICES_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "Quality" ) ),
CreateChoice(_STR_IMPRESS_PRINT_UI_QUALITY_CHOICES),
0
@@ -546,6 +555,11 @@ namespace {
AddDialogControl( vcl::PrinterOptionsHelper::getSubgroupControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_PAGE_OPTIONS) ), rtl::OUString() ) );
+ aHelpIds.realloc( 4 );
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PageOptions:RadioButton:0" ) );
+ aHelpIds[1] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PageOptions:RadioButton:1" ) );
+ aHelpIds[2] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PageOptions:RadioButton:2" ) );
+ aHelpIds[3] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PageOptions:RadioButton:3" ) );
if( mbImpress )
{
// FIXME: additional dependency on PrintProspect = false
@@ -553,7 +567,7 @@ namespace {
aPageOptionsOpt( OUString( RTL_CONSTASCII_USTRINGPARAM( "PageContentType" ) ), 0 );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
rtl::OUString(),
- CreateChoice(_STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "PageOptions" ) ),
CreateChoice(_STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES),
0,
@@ -569,7 +583,7 @@ namespace {
aPageOptionsOpt( OUString( RTL_CONSTASCII_USTRINGPARAM( "PrintProspect" ) ), sal_False );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
rtl::OUString(),
- CreateChoice(_STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "PageOptions" ) ),
CreateChoice(_STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_DRAW),
0,
@@ -589,7 +603,7 @@ namespace {
// brochure printing
AddDialogControl( vcl::PrinterOptionsHelper::getBoolControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_BROCHURE) ),
- String( SdResId(_STR_IMPRESS_PRINT_UI_BROCHURE_HELP) ),
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PrintProspect:CheckBox" ) ),
OUString( RTL_CONSTASCII_USTRINGPARAM( "PrintProspect" ) ),
sal_False,
aBrochureOpt
@@ -599,9 +613,11 @@ namespace {
vcl::PrinterOptionsHelper::UIControlOptions
aIncludeOpt( OUString( RTL_CONSTASCII_USTRINGPARAM( "PrintProspect" ) ), -1, sal_False );
aIncludeOpt.maGroupHint = OUString( RTL_CONSTASCII_USTRINGPARAM( "LayoutPage" ) );
+ aHelpIds.realloc( 1 );
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PrintProspectInclude:ListBox" ) );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE) ),
- CreateChoice(_STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_LIST_HELP),
+ aHelpIds,
OUString( RTL_CONSTASCII_USTRINGPARAM( "PrintProspectInclude" ) ),
CreateChoice(_STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_LIST),
0,
@@ -616,7 +632,7 @@ namespace {
aPaperTrayOpt.maGroupHint = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "OptionsPageOptGroup" ) );
AddDialogControl( vcl::PrinterOptionsHelper::getBoolControlOpt(
String( SdResId(_STR_IMPRESS_PRINT_UI_PAPER_TRAY) ),
- String( SdResId(_STR_IMPRESS_PRINT_UI_PAPER_TRAY_HELP) ),
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PrintPaperFromSetup:CheckBox" ) ),
OUString( RTL_CONSTASCII_USTRINGPARAM( "PrintPaperFromSetup" ) ),
sal_False,
aPaperTrayOpt
@@ -634,8 +650,12 @@ namespace {
// create a choice for the content to create
rtl::OUString aPrintRangeName( RTL_CONSTASCII_USTRINGPARAM( "PrintContent" ) );
+ aHelpIds.realloc( 3 );
+ aHelpIds[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PrintContent:RadioButton:0" ) );
+ aHelpIds[1] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PrintContent:RadioButton:1" ) );
+ aHelpIds[2] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PrintContent:RadioButton:2" ) );
AddDialogControl( vcl::PrinterOptionsHelper::getChoiceControlOpt( rtl::OUString(),
- CreateChoice(_STR_IMPRESS_PRINT_UI_PAGE_RANGE_CHOICE_HELP),
+ aHelpIds,
aPrintRangeName,
CreateChoice(mbImpress
? _STR_IMPRESS_PRINT_UI_PAGE_RANGE_CHOICE
@@ -645,7 +665,7 @@ namespace {
// create a an Edit dependent on "Pages" selected
vcl::PrinterOptionsHelper::UIControlOptions aPageRangeOpt( aPrintRangeName, 1, sal_True );
AddDialogControl( vcl::PrinterOptionsHelper::getEditControlOpt( rtl::OUString(),
- rtl::OUString(),
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".HelpID:vcl:PrintDialog:PageRange:Edit" ) ),
rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "PageRange" ) ),
rtl::OUString(),
aPageRangeOpt )
diff --git a/sd/source/ui/view/DocumentRenderer.hrc b/sd/source/ui/view/DocumentRenderer.hrc
index 3dd57429dd13..aad07d909def 100644..100755
--- a/sd/source/ui/view/DocumentRenderer.hrc
+++ b/sd/source/ui/view/DocumentRenderer.hrc
@@ -30,48 +30,33 @@
#define _STR_IMPRESS_PRINT_UI_PRINT_CONTENT 2
#define _STR_IMPRESS_PRINT_UI_PRINT_GROUP 3
#define _STR_IMPRESS_PRINT_UI_CONTENT 4
-#define _STR_IMPRESS_PRINT_UI_CONTENT_HELP 5
#define _STR_IMPRESS_PRINT_UI_CONTENT_CHOICES 6
#define _STR_IMPRESS_PRINT_UI_SLIDESPERPAGE 7
#define _STR_IMPRESS_PRINT_UI_SLIDESPERPAGE_CHOICES 8
-#define _STR_IMPRESS_PRINT_UI_SLIDESPERPAGE_CHOICES_HELP 9
#define _STR_IMPRESS_PRINT_UI_ORDER 10
#define _STR_IMPRESS_PRINT_UI_ORDER_CHOICES 11
-#define _STR_IMPRESS_PRINT_UI_ORDER_CHOICES_HELP 12
#define _STR_IMPRESS_PRINT_UI_INCLUDE_CONTENT 13
#define _STR_IMPRESS_PRINT_UI_IS_PRINT_NAME 14
-#define _STR_IMPRESS_PRINT_UI_IS_PRINT_NAME_HELP 15
#define _STR_IMPRESS_PRINT_UI_IS_PRINT_DATE 16
-#define _STR_IMPRESS_PRINT_UI_IS_PRINT_DATE_HELP 17
#define _STR_IMPRESS_PRINT_UI_IS_PRINT_TIME 18
-#define _STR_IMPRESS_PRINT_UI_IS_PRINT_TIME_HELP 19
#define _STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN 20
-#define _STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN_HELP 21
#define _STR_IMPRESS_PRINT_UI_OUTPUT_OPTIONS_GROUP 22
#define _STR_IMPRESS_PRINT_UI_QUALITY 23
#define _STR_IMPRESS_PRINT_UI_QUALITY_CHOICES 24
-#define _STR_IMPRESS_PRINT_UI_QUALITY_CHOICES_HELP 25
#define _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS 26
#define _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES 27
#define _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_DRAW 28
-#define _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_HELP 29
#define _STR_IMPRESS_PRINT_UI_BROCHURE 30
-#define _STR_IMPRESS_PRINT_UI_BROCHURE_HELP 31
#define _STR_IMPRESS_PRINT_UI_PAGE_SIDES 32
#define _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE 33
-#define _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_HELP 34
#define _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_LIST 35
-#define _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_LIST_HELP 36
#define _STR_IMPRESS_PRINT_UI_PAPER_TRAY_GROUP 37
#define _STR_IMPRESS_PRINT_UI_PAPER_TRAY 38
-#define _STR_IMPRESS_PRINT_UI_PAPER_TRAY_HELP 39
#define _STR_IMPRESS_PRINT_UI_PAGE_RANGE 40
#define _STR_IMPRESS_PRINT_UI_PAGE_RANGE_CHOICE 41
-#define _STR_IMPRESS_PRINT_UI_PAGE_RANGE_CHOICE_HELP 42
#define _STR_DRAW_PRINT_UI_PAGE_RANGE_CHOICE 43
#define _STR_DRAW_PRINT_UI_IS_PRINT_NAME 44
-#define _STR_DRAW_PRINT_UI_IS_PRINT_NAME_HELP 45
diff --git a/sd/source/ui/view/DocumentRenderer.src b/sd/source/ui/view/DocumentRenderer.src
index abd82ea0d397..df4e2a30de02 100755
--- a/sd/source/ui/view/DocumentRenderer.src
+++ b/sd/source/ui/view/DocumentRenderer.src
@@ -46,14 +46,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
Text [ en-US ] = "Document";
};
- StringArray _STR_IMPRESS_PRINT_UI_CONTENT_HELP
- {
- ItemList [ en-US ] =
- {
- < "Select which parts of the document should be printed"; >;
- < "Select which parts of the document should be printed"; >;
- };
- };
StringArray _STR_IMPRESS_PRINT_UI_CONTENT_CHOICES
{
ItemList [ en-US ] =
@@ -81,14 +73,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
< "9" ; > ;
};
};
- StringArray _STR_IMPRESS_PRINT_UI_SLIDESPERPAGE_CHOICES_HELP
- {
- ItemList [ en-US ] =
- {
- < "Select how many slides to print per page." ; >;
- < "Select how many slides to print per page." ; >;
- };
- };
String _STR_IMPRESS_PRINT_UI_ORDER
{
Text [ en-US ] = "Order" ;
@@ -101,15 +85,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
< "Top to bottom, then right" ; > ;
};
};
- StringArray _STR_IMPRESS_PRINT_UI_ORDER_CHOICES_HELP
- {
- ItemList [ en-US ] =
- {
- < "Specify how to arrange slides on the printed page." ; > ;
- < "Arrange slides horizontally" ; > ;
- < "Arrange slides vertically" ; > ;
- };
- };
String _STR_IMPRESS_PRINT_UI_INCLUDE_CONTENT
{
Text [ en-US ] = "~Contents";
@@ -118,35 +93,18 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
Text [ en-US ] = "~Slide name";
};
- String _STR_IMPRESS_PRINT_UI_IS_PRINT_NAME_HELP
- {
- Text [ en-US ] = "Specifies whether to print the page name of a document.";
- };
String _STR_DRAW_PRINT_UI_IS_PRINT_NAME
{
Text [ en-US ] = "P~age name";
};
- String _STR_DRAW_PRINT_UI_IS_PRINT_NAME_HELP
- {
- Text [ en-US ] = "Specifies whether to print the page name of a document.";
- };
String _STR_IMPRESS_PRINT_UI_IS_PRINT_DATE
{
Text [ en-US ] = "~Date and time";
};
- String _STR_IMPRESS_PRINT_UI_IS_PRINT_DATE_HELP
- {
- Text [ en-US ] = "Specifies whether to print the current date and time.";
- };
String _STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN
{
Text [ en-US ] = "Hidden pages";
};
- String _STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN_HELP
- {
- Text [ en-US ] = "Specifies whether to print the pages that are currently hidden from the application.";
- };
-
String _STR_IMPRESS_PRINT_UI_OUTPUT_OPTIONS_GROUP
{
Text [ en-US ] = "Output options";
@@ -164,17 +122,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
< "Black & white" ; > ;
};
};
- StringArray _STR_IMPRESS_PRINT_UI_QUALITY_CHOICES_HELP
- {
- ItemList [ en-US ] =
- {
- < "Specify how to treat colors in the printout."; >;
- < "Specifies that you want to print in original colors." ; > ;
- < "Specifies that you want to print colors as grayscale." ; > ;
- < "Specifies that you want to print in black and white." ; > ;
- };
- };
-
String _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS
{
Text [ en-US ] = "~Size";
@@ -199,24 +146,10 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
< "Tile sheet of paper with repeated pages" ; > ;
};
};
- StringArray _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_HELP
- {
- ItemList [ en-US ] =
- {
- < "Specify how to scale slides in the printout."; >;
- < "Specifies that you do not want to further scale pages when printing." ; > ;
- < "Specifies whether to scale down objects that are beyond the margins of the current printer so they fit on the paper in the printer." ; > ;
- < "Specifies that pages are to be printed in tiled format. If the pages or slides are smaller than the paper, several pages or slides will be printed on one page of paper." ; > ;
- };
- };
String _STR_IMPRESS_PRINT_UI_BROCHURE
{
Text [en-US] = "Brochure";
};
- String _STR_IMPRESS_PRINT_UI_BROCHURE_HELP
- {
- Text [en-US] = "Select the \"Brochure\" option to print the document in brochure format.";
- };
String _STR_IMPRESS_PRINT_UI_PAGE_SIDES
{
Text [ en-US ] = "Page sides";
@@ -225,10 +158,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
Text [ en-US ] = "Include";
};
- String _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_HELP
- {
- Text [ en-US ] = "Select which pages of a brochure to print.";
- };
StringArray _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_LIST
{
ItemList [ en-US ] =
@@ -238,15 +167,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
< "Back sides / left pages" ; > ;
};
};
- StringArray _STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE_LIST_HELP
- {
- ItemList [ en-US ] =
- {
- < "Print all pages of a brochure." ; > ;
- < "Print only front pages of a brochure." ; > ;
- < "Print only back pages of a brochure." ; > ;
- };
- };
String _STR_IMPRESS_PRINT_UI_PAPER_TRAY_GROUP
{
@@ -256,10 +176,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
Text [ en-US ] = "~Use only paper tray from printer preferences";
};
- String _STR_IMPRESS_PRINT_UI_PAPER_TRAY_HELP
- {
- Text [ en-US ] = "Determines that the paper tray to be used is the one defined in the printer setup.";
- };
String _STR_IMPRESS_PRINT_UI_PAGE_RANGE
{
Text [en-US] = "Print range";
@@ -274,16 +190,6 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
};
};
- StringArray _STR_IMPRESS_PRINT_UI_PAGE_RANGE_CHOICE_HELP
- {
- ItemList [ en-US ] =
- {
- < "Print the whole document."; >;
- < "Print a specified range of the document."; >;
- < "Print only the currently selected content."; >;
- };
- };
-
StringArray _STR_DRAW_PRINT_UI_PAGE_RANGE_CHOICE
{
ItemList [ en-US ] =
diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx
index e7a39c9d3369..c0f371c867e8 100644
--- a/sd/source/ui/view/ViewShellBase.cxx
+++ b/sd/source/ui/view/ViewShellBase.cxx
@@ -648,16 +648,6 @@ USHORT ViewShellBase::SetPrinter (
-PrintDialog* ViewShellBase::CreatePrintDialog (::Window *pParent)
-{
- (void)pParent;
- return NULL;
- // return mpImpl->mpPrintManager->CreatePrintDialog (pParent);
-}
-
-
-
-
SfxTabPage* ViewShellBase::CreatePrintOptionsPage(
::Window *pParent,
const SfxItemSet &rOptions)
@@ -671,42 +661,6 @@ SfxTabPage* ViewShellBase::CreatePrintOptionsPage(
-USHORT ViewShellBase::Print(SfxProgress&, BOOL bIsAPI, PrintDialog* pDlg)
-{
- (void)bIsAPI;
- (void)pDlg;
- return 0;
- // return mpImpl->mpPrintManager->Print (rProgress, bIsAPI, pDlg);
-}
-
-
-
-
-ErrCode ViewShellBase::DoPrint (
- SfxPrinter* pPrinter,
- PrintDialog* pPrintDialog,
- BOOL bSilent, BOOL bIsAPI )
-{
- (void)pPrinter;
- (void)pPrintDialog;
- (void)bSilent;
- (void)bIsAPI;
- return 0;
- //return mpImpl->mpPrintManager->DoPrint (pPrinter, pPrintDialog, bSilent, bIsAPI );
-}
-
-
-
-
-void ViewShellBase::PreparePrint (PrintDialog* pPrintDialog)
-{
- SfxViewShell::PreparePrint (pPrintDialog);
- //mpImpl->mpPrintManager->PreparePrint (pPrintDialog);
-}
-
-
-
-
void ViewShellBase::UIActivating( SfxInPlaceClient* pClient )
{
mpImpl->ShowViewTabBar(false);
diff --git a/sd/source/ui/view/ViewShellImplementation.cxx b/sd/source/ui/view/ViewShellImplementation.cxx
index fdd7c530137f..2a574fa087ef 100755
--- a/sd/source/ui/view/ViewShellImplementation.cxx
+++ b/sd/source/ui/view/ViewShellImplementation.cxx
@@ -212,7 +212,7 @@ void ViewShell::Implementation::ProcessModifyPageSlot (
SdPage* pUndoPage =
bHandoutMode ? pHandoutMPage : pCurrentPage;
- SfxUndoManager* pUndoManager = mrViewShell.GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pUndoManager = mrViewShell.GetDocSh()->GetUndoManager();
DBG_ASSERT(pUndoManager, "No UNDO MANAGER ?!?");
if( pUndoManager )
@@ -220,7 +220,7 @@ void ViewShell::Implementation::ProcessModifyPageSlot (
String aComment( SdResId(STR_UNDO_MODIFY_PAGE) );
pUndoManager->EnterListAction(aComment, aComment);
ModifyPageUndoAction* pAction = new ModifyPageUndoAction(
- pUndoManager, pDocument, pUndoPage, aNewName, aNewAutoLayout, bBVisible, bBObjsVisible);
+ pDocument, pUndoPage, aNewName, aNewAutoLayout, bBVisible, bBObjsVisible);
pUndoManager->AddUndoAction(pAction);
// Clear the selection because the selectec object may be removed as
diff --git a/sd/source/ui/view/ViewShellManager.cxx b/sd/source/ui/view/ViewShellManager.cxx
index c1ffcb884cd1..2335a6ec838f 100755
--- a/sd/source/ui/view/ViewShellManager.cxx
+++ b/sd/source/ui/view/ViewShellManager.cxx
@@ -915,7 +915,7 @@ void ViewShellManager::Implementation::UpdateShellStack (void)
// Remember the undo manager from the top-most shell on the stack.
SfxShell* pTopMostShell = mrBase.GetSubShell(0);
- SfxUndoManager* pUndoManager = (pTopMostShell!=NULL)
+ ::svl::IUndoManager* pUndoManager = (pTopMostShell!=NULL)
? pTopMostShell->GetUndoManager()
: NULL;
@@ -1015,7 +1015,7 @@ void ViewShellManager::Implementation::TakeShellsFromStack (const SfxShell* pShe
// Remember the undo manager from the top-most shell on the stack.
SfxShell* pTopMostShell = mrBase.GetSubShell(0);
- SfxUndoManager* pUndoManager = (pTopMostShell!=NULL)
+ ::svl::IUndoManager* pUndoManager = (pTopMostShell!=NULL)
? pTopMostShell->GetUndoManager()
: NULL;
diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx
index 5fbd400d7520..f2075a50bd3e 100755
--- a/sd/source/ui/view/drviews1.cxx
+++ b/sd/source/ui/view/drviews1.cxx
@@ -219,7 +219,7 @@ void DrawViewShell::SelectionHasChanged (void)
}
ViewShellBase& rBase = GetViewShellBase();
- rBase.SetVerbs(0);
+ rBase.SetVerbs( uno::Sequence< embed::VerbDescriptor >() );
try
{
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index 7aaba7d9c4fa..092dce05a196 100755
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -151,7 +151,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
if( rReq.GetArgs() )
{
BOOL bMergeUndo = FALSE;
- SfxUndoManager* pUndoManager = GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pUndoManager = GetDocSh()->GetUndoManager();
// Anpassungen Start/EndWidth #63083#
if(nSId == SID_ATTR_LINE_WIDTH)
diff --git a/sd/source/ui/view/drviewsb.cxx b/sd/source/ui/view/drviewsb.cxx
index d7cc1fc1d84a..b9f6ec9a4a96 100755
--- a/sd/source/ui/view/drviewsb.cxx
+++ b/sd/source/ui/view/drviewsb.cxx
@@ -356,7 +356,7 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq)
break;
}
- SfxUndoManager* pManager = GetDoc()->GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pManager = GetDoc()->GetDocSh()->GetUndoManager();
SdLayerModifyUndoAction* pAction = new SdLayerModifyUndoAction(
GetDoc(),
pLayer,
@@ -748,9 +748,9 @@ bool DrawViewShell::RenameSlide( USHORT nPageId, const String & rName )
SetOfByte aVisibleLayers = mpActualPage->TRG_GetMasterPageVisibleLayers();
// (#67720#)
- SfxUndoManager* pManager = GetDoc()->GetDocSh()->GetUndoManager();
+ ::svl::IUndoManager* pManager = GetDoc()->GetDocSh()->GetUndoManager();
ModifyPageUndoAction* pAction = new ModifyPageUndoAction(
- pManager, GetDoc(), pUndoPage, rName, pUndoPage->GetAutoLayout(),
+ GetDoc(), pUndoPage, rName, pUndoPage->GetAutoLayout(),
aVisibleLayers.IsSet( nBackground ),
aVisibleLayers.IsSet( nBgObj ));
pManager->AddUndoAction( pAction );
diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx
index 6f6f49fdc93c..020f95b5af89 100755
--- a/sd/source/ui/view/drviewse.cxx
+++ b/sd/source/ui/view/drviewse.cxx
@@ -329,6 +329,16 @@ void DrawViewShell::FuPermanent(SfxRequest& rReq)
{
short nSlotId = rReq.GetSlot();
+ if( nSlotId == SID_OBJECT_ROTATE )
+ {
+ // togle rotation
+ if( nOldSId == nSlotId )
+ {
+ nSlotId = SID_OBJECT_SELECT;
+ rReq.SetSlot( nSlotId );
+ }
+ }
+
if (nSlotId == SID_OBJECT_CROOK_ROTATE ||
nSlotId == SID_OBJECT_CROOK_SLANT ||
nSlotId == SID_OBJECT_CROOK_STRETCH)
diff --git a/sd/source/ui/view/outlview.cxx b/sd/source/ui/view/outlview.cxx
index dfad4b34c6f2..ee2ac158bffa 100755
--- a/sd/source/ui/view/outlview.cxx
+++ b/sd/source/ui/view/outlview.cxx
@@ -1451,7 +1451,7 @@ SdPage* OutlineView::GetActualPage()
SdPage* pCurrent = GetPageForParagraph(static_cast<Paragraph*>(pSelList->First()) );
DBG_ASSERT( pCurrent ||
- (mpDocSh->GetUndoManager() && static_cast< sd::UndoManager *>(mpDocSh->GetUndoManager())->isInUndo()) ||
+ (mpDocSh->GetUndoManager() && static_cast< sd::UndoManager *>(mpDocSh->GetUndoManager())->IsDoing()) ||
maDragAndDropModelGuard.get(),
"sd::OutlineView::GetActualPage(), no current page?" );
if( pCurrent )
@@ -1783,7 +1783,7 @@ void OutlineView::EndModelChange()
{
UpdateDocument();
- SfxUndoManager* pDocUndoMgr = mpDocSh->GetUndoManager();
+ ::svl::IUndoManager* pDocUndoMgr = mpDocSh->GetUndoManager();
bool bHasUndoActions = pDocUndoMgr->GetUndoActionCount() != 0;
@@ -1801,6 +1801,9 @@ void OutlineView::EndModelChange()
if( bHasUndoActions && mpOutliner->GetEditEngine().HasTriedMergeOnLastAddUndo() )
TryToMergeUndoActions();
+
+ mpOutlineViewShell->Invalidate( SID_UNDO );
+ mpOutlineViewShell->Invalidate( SID_REDO );
}
/** updates all changes in the outliner model to the draw model */
@@ -1838,7 +1841,7 @@ void OutlineView::UpdateDocument()
/** merge edit engine undo actions if possible */
void OutlineView::TryToMergeUndoActions()
{
- SfxUndoManager& rOutlineUndo = mpOutliner->GetUndoManager();
+ ::svl::IUndoManager& rOutlineUndo = mpOutliner->GetUndoManager();
if( rOutlineUndo.GetUndoActionCount() > 1 )
{
SfxListUndoAction* pListAction = dynamic_cast< SfxListUndoAction* >( rOutlineUndo.GetUndoAction(0) );
@@ -1846,11 +1849,11 @@ void OutlineView::TryToMergeUndoActions()
if( pListAction && pPrevListAction )
{
// find the top EditUndo action in the top undo action list
- USHORT nAction = pListAction->aUndoActions.Count();
+ size_t nAction = pListAction->aUndoActions.size();
EditUndo* pEditUndo = 0;
while( !pEditUndo && nAction )
{
- pEditUndo = dynamic_cast< EditUndo* >(pListAction->aUndoActions[--nAction]);
+ pEditUndo = dynamic_cast< EditUndo* >(pListAction->aUndoActions[--nAction].pAction);
}
USHORT nEditPos = nAction; // we need this later to remove the merged undo actions
@@ -1858,7 +1861,7 @@ void OutlineView::TryToMergeUndoActions()
// make sure it is the only EditUndo action in the top undo list
while( pEditUndo && nAction )
{
- if( dynamic_cast< EditUndo* >(pListAction->aUndoActions[--nAction]) )
+ if( dynamic_cast< EditUndo* >(pListAction->aUndoActions[--nAction].pAction) )
pEditUndo = 0;
}
@@ -1867,10 +1870,10 @@ void OutlineView::TryToMergeUndoActions()
{
// yes, see if we can merge it with the prev undo list
- nAction = pPrevListAction->aUndoActions.Count();
+ nAction = pPrevListAction->aUndoActions.size();
EditUndo* pPrevEditUndo = 0;
while( !pPrevEditUndo && nAction )
- pPrevEditUndo = dynamic_cast< EditUndo* >(pPrevListAction->aUndoActions[--nAction]);
+ pPrevEditUndo = dynamic_cast< EditUndo* >(pPrevListAction->aUndoActions[--nAction].pAction);
if( pPrevEditUndo && pPrevEditUndo->Merge( pEditUndo ) )
{
@@ -1878,22 +1881,23 @@ void OutlineView::TryToMergeUndoActions()
// the top EditUndo of the previous undo list
// first remove the merged undo action
- DBG_ASSERT( pListAction->aUndoActions[nEditPos] == pEditUndo, "sd::OutlineView::TryToMergeUndoActions(), wrong edit pos!" );
+ DBG_ASSERT( pListAction->aUndoActions[nEditPos].pAction == pEditUndo,
+ "sd::OutlineView::TryToMergeUndoActions(), wrong edit pos!" );
pListAction->aUndoActions.Remove(nEditPos);
delete pEditUndo;
// now check if we also can merge the draw undo actions
- SfxUndoManager* pDocUndoManager = mpDocSh->GetUndoManager();
- if( pDocUndoManager && ( pListAction->aUndoActions.Count() == 1 ))
+ ::svl::IUndoManager* pDocUndoManager = mpDocSh->GetUndoManager();
+ if( pDocUndoManager && ( pListAction->aUndoActions.size() == 1 ))
{
- SfxLinkUndoAction* pLinkAction = dynamic_cast< SfxLinkUndoAction* >( pListAction->aUndoActions[0] );
+ SfxLinkUndoAction* pLinkAction = dynamic_cast< SfxLinkUndoAction* >( pListAction->aUndoActions[0].pAction );
SfxLinkUndoAction* pPrevLinkAction = 0;
if( pLinkAction )
{
- nAction = pPrevListAction->aUndoActions.Count();
+ nAction = pPrevListAction->aUndoActions.size();
while( !pPrevLinkAction && nAction )
- pPrevLinkAction = dynamic_cast< SfxLinkUndoAction* >(pPrevListAction->aUndoActions[--nAction]);
+ pPrevLinkAction = dynamic_cast< SfxLinkUndoAction* >(pPrevListAction->aUndoActions[--nAction].pAction);
}
if( pLinkAction && pPrevLinkAction &&
@@ -1905,15 +1909,15 @@ void OutlineView::TryToMergeUndoActions()
if( pSourceList && pDestinationList )
{
- USHORT nCount = pSourceList->aUndoActions.Count();
- USHORT nDestAction = pDestinationList->aUndoActions.Count();
+ USHORT nCount = pSourceList->aUndoActions.size();
+ USHORT nDestAction = pDestinationList->aUndoActions.size();
while( nCount-- )
{
- const SfxUndoAction* pTemp = pSourceList->aUndoActions.GetObject(0);
+ SfxUndoAction* pTemp = pSourceList->aUndoActions[0].pAction;
pSourceList->aUndoActions.Remove(0);
pDestinationList->aUndoActions.Insert( pTemp, nDestAction++ );
}
- pDestinationList->nCurUndoAction = pDestinationList->aUndoActions.Count();
+ pDestinationList->nCurUndoAction = pDestinationList->aUndoActions.size();
pListAction->aUndoActions.Remove(0);
delete pLinkAction;
@@ -1923,21 +1927,21 @@ void OutlineView::TryToMergeUndoActions()
}
}
- if( pListAction->aUndoActions.Count() )
+ if ( !pListAction->aUndoActions.empty() )
{
// now we have to move all remaining doc undo actions from the top undo
// list to the previous undo list and remove the top undo list
- USHORT nCount = pListAction->aUndoActions.Count();
- USHORT nDestAction = pPrevListAction->aUndoActions.Count();
+ size_t nCount = pListAction->aUndoActions.size();
+ size_t nDestAction = pPrevListAction->aUndoActions.size();
while( nCount-- )
{
- const SfxUndoAction* pTemp = pListAction->aUndoActions.GetObject(0);
+ SfxUndoAction* pTemp = pListAction->aUndoActions[0].pAction;
pListAction->aUndoActions.Remove(0);
if( pTemp )
pPrevListAction->aUndoActions.Insert( pTemp, nDestAction++ );
}
- pPrevListAction->nCurUndoAction = pPrevListAction->aUndoActions.Count();
+ pPrevListAction->nCurUndoAction = pPrevListAction->aUndoActions.size();
}
rOutlineUndo.RemoveLastUndoAction();
diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx
index 3aed9c6c0d9c..36d55213ab78 100755
--- a/sd/source/ui/view/sdview.cxx
+++ b/sd/source/ui/view/sdview.cxx
@@ -1167,7 +1167,7 @@ bool View::isRecordingUndo() const
if( mpDoc && mpDoc->IsUndoEnabled() )
{
sd::UndoManager* pUndoManager = mpDoc ? mpDoc->GetUndoManager() : 0;
- return pUndoManager && pUndoManager->isInListAction();
+ return pUndoManager && pUndoManager->IsInListAction();
}
else
{
diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx
index 53c0d3636d82..fd709dc22038 100644..100755
--- a/sd/source/ui/view/sdview3.cxx
+++ b/sd/source/ui/view/sdview3.cxx
@@ -1006,6 +1006,27 @@ BOOL View::InsertData( const TransferableDataHelper& rDataHelper,
if( pImageMap )
pObj->InsertUserData( new SdIMapInfo( *pImageMap ) );
+ if ( pObj && pObj->IsChart() )
+ {
+ bool bDisableDataTableDialog = false;
+ svt::EmbeddedObjectRef::TryRunningState( xObj );
+ uno::Reference< beans::XPropertySet > xProps( xObj->getComponent(), uno::UNO_QUERY );
+ if ( xProps.is() &&
+ ( xProps->getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DisableDataTableDialog" ) ) ) >>= bDisableDataTableDialog ) &&
+ bDisableDataTableDialog )
+ {
+ xProps->setPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DisableDataTableDialog" ) ),
+ uno::makeAny( sal_False ) );
+ xProps->setPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DisableComplexChartTypes" ) ),
+ uno::makeAny( sal_False ) );
+ uno::Reference< util::XModifiable > xModifiable( xProps, uno::UNO_QUERY );
+ if ( xModifiable.is() )
+ {
+ xModifiable->setModified( sal_True );
+ }
+ }
+ }
+
bReturn = TRUE;
}
}
diff --git a/sd/source/ui/view/unmodpg.cxx b/sd/source/ui/view/unmodpg.cxx
index 5a7f9830895e..66e5c7a506e5 100644..100755
--- a/sd/source/ui/view/unmodpg.cxx
+++ b/sd/source/ui/view/unmodpg.cxx
@@ -56,15 +56,13 @@ TYPEINIT1(ModifyPageUndoAction, SdUndoAction);
\************************************************************************/
ModifyPageUndoAction::ModifyPageUndoAction(
- SfxUndoManager* pTheManager, // #67720#
SdDrawDocument* pTheDoc,
SdPage* pThePage,
String aTheNewName,
AutoLayout eTheNewAutoLayout,
BOOL bTheNewBckgrndVisible,
BOOL bTheNewBckgrndObjsVisible)
-: SdUndoAction(pTheDoc),
- mpManager(pTheManager)
+: SdUndoAction(pTheDoc)
{
DBG_ASSERT(pThePage, "Undo ohne Seite ???");
diff --git a/sd/source/ui/view/viewshe3.cxx b/sd/source/ui/view/viewshe3.cxx
index 363ff91edf36..ab4b9e6732f5 100644
--- a/sd/source/ui/view/viewshe3.cxx
+++ b/sd/source/ui/view/viewshe3.cxx
@@ -151,7 +151,7 @@ void ViewShell::GetMenuState( SfxItemSet &rSet )
// #96090#
if(SFX_ITEM_AVAILABLE == rSet.GetItemState(SID_UNDO))
{
- SfxUndoManager* pUndoManager = ImpGetUndoManager();
+ ::svl::IUndoManager* pUndoManager = ImpGetUndoManager();
sal_Bool bActivate(FALSE);
if(pUndoManager)
@@ -179,7 +179,7 @@ void ViewShell::GetMenuState( SfxItemSet &rSet )
// #96090#
if(SFX_ITEM_AVAILABLE == rSet.GetItemState(SID_REDO))
{
- SfxUndoManager* pUndoManager = ImpGetUndoManager();
+ ::svl::IUndoManager* pUndoManager = ImpGetUndoManager();
sal_Bool bActivate(FALSE);
if(pUndoManager)
diff --git a/sd/source/ui/view/viewshel.cxx b/sd/source/ui/view/viewshel.cxx
index 7885d07e5f2c..7f142ded077e 100755
--- a/sd/source/ui/view/viewshel.cxx
+++ b/sd/source/ui/view/viewshel.cxx
@@ -85,6 +85,7 @@
#include <svx/extrusionbar.hxx>
#include <svx/fontworkbar.hxx>
#include <svx/svdoutl.hxx>
+#include <tools/diagnose_ex.h>
// #96090#
#include <svl/slstitm.hxx>
@@ -1040,7 +1041,7 @@ void ViewShell::UpdatePreview (SdPage*, BOOL )
// usefull is still done.
}
-SfxUndoManager* ViewShell::ImpGetUndoManager (void) const
+::svl::IUndoManager* ViewShell::ImpGetUndoManager (void) const
{
const ViewShell* pMainViewShell = GetViewShellBase().GetMainViewShell().get();
@@ -1081,7 +1082,7 @@ SfxUndoManager* ViewShell::ImpGetUndoManager (void) const
void ViewShell::ImpGetUndoStrings(SfxItemSet &rSet) const
{
- SfxUndoManager* pUndoManager = ImpGetUndoManager();
+ ::svl::IUndoManager* pUndoManager = ImpGetUndoManager();
if(pUndoManager)
{
sal_uInt16 nCount(pUndoManager->GetUndoActionCount());
@@ -1116,7 +1117,7 @@ void ViewShell::ImpGetUndoStrings(SfxItemSet &rSet) const
void ViewShell::ImpGetRedoStrings(SfxItemSet &rSet) const
{
- SfxUndoManager* pUndoManager = ImpGetUndoManager();
+ ::svl::IUndoManager* pUndoManager = ImpGetUndoManager();
if(pUndoManager)
{
sal_uInt16 nCount(pUndoManager->GetRedoActionCount());
@@ -1151,7 +1152,7 @@ void ViewShell::ImpGetRedoStrings(SfxItemSet &rSet) const
void ViewShell::ImpSidUndo(BOOL, SfxRequest& rReq)
{
- SfxUndoManager* pUndoManager = ImpGetUndoManager();
+ ::svl::IUndoManager* pUndoManager = ImpGetUndoManager();
sal_uInt16 nNumber(1);
const SfxItemSet* pReqArgs = rReq.GetArgs();
@@ -1166,11 +1167,19 @@ void ViewShell::ImpSidUndo(BOOL, SfxRequest& rReq)
sal_uInt16 nCount(pUndoManager->GetUndoActionCount());
if(nCount >= nNumber)
{
- // #94637# when UndoStack is cleared by ModifyPageUndoAction
- // the nCount may have changed, so test GetUndoActionCount()
- while(nNumber-- && pUndoManager->GetUndoActionCount())
+ try
{
- pUndoManager->Undo();
+ // #94637# when UndoStack is cleared by ModifyPageUndoAction
+ // the nCount may have changed, so test GetUndoActionCount()
+ while(nNumber-- && pUndoManager->GetUndoActionCount())
+ {
+ pUndoManager->Undo();
+ }
+ }
+ catch( const Exception& e )
+ {
+ // no need to handle. By definition, the UndoManager handled this by clearing the
+ // Undo/Redo stacks
}
}
@@ -1192,7 +1201,7 @@ void ViewShell::ImpSidUndo(BOOL, SfxRequest& rReq)
void ViewShell::ImpSidRedo(BOOL, SfxRequest& rReq)
{
- SfxUndoManager* pUndoManager = ImpGetUndoManager();
+ ::svl::IUndoManager* pUndoManager = ImpGetUndoManager();
sal_uInt16 nNumber(1);
const SfxItemSet* pReqArgs = rReq.GetArgs();
@@ -1207,11 +1216,19 @@ void ViewShell::ImpSidRedo(BOOL, SfxRequest& rReq)
sal_uInt16 nCount(pUndoManager->GetRedoActionCount());
if(nCount >= nNumber)
{
- // #94637# when UndoStack is cleared by ModifyPageRedoAction
- // the nCount may have changed, so test GetRedoActionCount()
- while(nNumber-- && pUndoManager->GetRedoActionCount())
+ try
+ {
+ // #94637# when UndoStack is cleared by ModifyPageRedoAction
+ // the nCount may have changed, so test GetRedoActionCount()
+ while(nNumber-- && pUndoManager->GetRedoActionCount())
+ {
+ pUndoManager->Redo();
+ }
+ }
+ catch( const Exception& e )
{
- pUndoManager->Redo();
+ // no need to handle. By definition, the UndoManager handled this by clearing the
+ // Undo/Redo stacks
}
}
diff --git a/slideshow/source/engine/color.cxx b/slideshow/source/engine/color.cxx
index e49f8e7e1b63..7b60a463dd1c 100644
--- a/slideshow/source/engine/color.cxx
+++ b/slideshow/source/engine/color.cxx
@@ -267,7 +267,9 @@ namespace slideshow
RGBColor::RGBColor(const RGBColor& rLHS)
{
- RGBColor(rLHS.getRed(), rLHS.getGreen(), rLHS.getBlue());
+ maRGBTriple.mnRed = rLHS.getRed();
+ maRGBTriple.mnGreen = rLHS.getGreen();
+ maRGBTriple.mnBlue = rLHS.getBlue();
}
RGBColor& RGBColor::operator=( const RGBColor& rLHS ){
diff --git a/slideshow/source/engine/makefile.mk b/slideshow/source/engine/makefile.mk
index beac66778518..fdc99cd1ad9f 100644
--- a/slideshow/source/engine/makefile.mk
+++ b/slideshow/source/engine/makefile.mk
@@ -38,7 +38,7 @@ ENABLE_EXCEPTIONS=TRUE
.INCLUDE : $(PRJ)$/util$/makefile.pmk
.IF "$(ENABLE_PRESENTER_EXTRA_UI)"=="YES"
-CDEFS+=-DENABLE_PRESENTER_EXTRA_UI
+ENABLE_PRESENTER_EXTRA_UI is not used anymore
.ENDIF
# --- Common ----------------------------------------------------------
diff --git a/slideshow/source/engine/shapes/shapeimporter.cxx b/slideshow/source/engine/shapes/shapeimporter.cxx
index 84786c26a504..a5d8acea2140 100644
--- a/slideshow/source/engine/shapes/shapeimporter.cxx
+++ b/slideshow/source/engine/shapes/shapeimporter.cxx
@@ -653,20 +653,13 @@ ShapeImporter::ShapeImporter( uno::Reference<drawing::XDrawPage> const&
sal_Int32 nOrdNumStart,
bool bConvertingMasterPage ) :
mxPage( xActualPage ),
-#ifdef ENABLE_PRESENTER_EXTRA_UI
mxPagesSupplier( xPagesSupplier ),
-#else
- mxPagesSupplier( NULL ),
-#endif
mrContext( rContext ),
maPolygons(),
maShapesStack(),
mnAscendingPrio( nOrdNumStart ),
mbConvertingMasterPage( bConvertingMasterPage )
{
-#ifndef ENABLE_PRESENTER_EXTRA_UI
- (void)xPagesSupplier;
-#endif
uno::Reference<drawing::XShapes> const xShapes(
xPage, uno::UNO_QUERY_THROW );
maShapesStack.push( XShapesEntry(xShapes) );
diff --git a/slideshow/source/engine/slide/slideimpl.cxx b/slideshow/source/engine/slide/slideimpl.cxx
index 55831ba1609f..2534b495ca90 100644
--- a/slideshow/source/engine/slide/slideimpl.cxx
+++ b/slideshow/source/engine/slide/slideimpl.cxx
@@ -139,6 +139,10 @@ public:
virtual PolyPolygonVector getPolygons();
virtual void drawPolygons() const;
virtual bool isPaintOverlayActive() const;
+ virtual void enablePaintOverlay();
+ virtual void disablePaintOverlay();
+ virtual void update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth );
+
// TODO(F2): Rework SlideBitmap to no longer be based on XBitmap,
// but on canvas-independent basegfx bitmaps
@@ -156,6 +160,9 @@ private:
virtual bool requestCursor( sal_Int16 nCursorShape );
virtual void resetCursor();
+ void activatePaintOverlay();
+ void deactivatePaintOverlay();
+
/** Query whether the slide has animations at all
If the slide doesn't have animations, show() displays
@@ -174,9 +181,6 @@ private:
*/
bool isShowing() const;
- void enablePaintOverlay();
- void disablePaintOverlay();
-
/// Set all Shapes to their initial attributes for slideshow
bool applyInitialShapeAttributes( const ::com::sun::star::uno::Reference<
::com::sun::star::animations::XAnimationNode >& xRootAnimationNode );
@@ -419,6 +423,13 @@ SlideImpl::SlideImpl( const uno::Reference< drawing::XDrawPage >& xDra
maContext.mrScreenUpdater.addViewUpdate(mpShapeManager);
}
+void SlideImpl::update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth )
+{
+ maUserPaintColor = aUserPaintColor;
+ mdUserPaintStrokeWidth = dUserPaintStrokeWidth;
+ mbUserPaintOverlayEnabled = bUserPaintEnabled;
+}
+
SlideImpl::~SlideImpl()
{
if( mpShapeManager )
@@ -454,9 +465,7 @@ void SlideImpl::dispose()
mpShapeManager.reset();
mxRootNode.clear();
mxDrawPage.clear();
-#ifndef ENABLE_PRESENTER_EXTRA_UI
mxDrawPagesSupplier.clear();
-#endif
}
bool SlideImpl::prefetch()
@@ -542,7 +551,7 @@ bool SlideImpl::show( bool bSlideBackgoundPainted )
// ---------------------------------------------------------------
// enable paint overlay, if maUserPaintColor is valid
- enablePaintOverlay();
+ activatePaintOverlay();
// ---------------------------------------------------------------
@@ -566,7 +575,7 @@ void SlideImpl::hide()
// disable user paint overlay under all circumstances,
// this slide now ceases to be active.
- disablePaintOverlay();
+ deactivatePaintOverlay();
// ---------------------------------------------------------------
@@ -888,19 +897,33 @@ bool SlideImpl::implPrefetchShow()
void SlideImpl::enablePaintOverlay()
{
- if( mbUserPaintOverlayEnabled )
+ if( !mbUserPaintOverlayEnabled || !mbPaintOverlayActive )
+ {
+ mbUserPaintOverlayEnabled = true;
+ activatePaintOverlay();
+ }
+}
+
+void SlideImpl::disablePaintOverlay()
+{
+}
+
+void SlideImpl::activatePaintOverlay()
+{
+ if( mbUserPaintOverlayEnabled || !maPolygons.empty() )
{
mpPaintOverlay = UserPaintOverlay::create( maUserPaintColor,
mdUserPaintStrokeWidth,
maContext,
- maPolygons );
+ maPolygons,
+ mbUserPaintOverlayEnabled );
mbPaintOverlayActive = true;
}
}
void SlideImpl::drawPolygons() const
{
- if( mbUserPaintOverlayEnabled )
+ if( mpPaintOverlay )
mpPaintOverlay->drawPolygons();
}
@@ -923,7 +946,7 @@ bool SlideImpl::isPaintOverlayActive() const
return mbPaintOverlayActive;
}
-void SlideImpl::disablePaintOverlay()
+void SlideImpl::deactivatePaintOverlay()
{
if(mbPaintOverlayActive)
maPolygons = mpPaintOverlay->getPolygons();
@@ -1259,12 +1282,7 @@ SlideSharedPtr createSlide( const uno::Reference< drawing::XDrawPage >&
bool bIntrinsicAnimationsAllowed,
bool bDisableAnimationZOrder )
{
-#ifdef ENABLE_PRESENTER_EXTRA_UI
boost::shared_ptr<SlideImpl> pRet( new SlideImpl( xDrawPage, xDrawPages, xRootNode, rEventQueue,
-#else
- (void)xDrawPages;
- boost::shared_ptr<SlideImpl> pRet( new SlideImpl( xDrawPage, NULL, xRootNode, rEventQueue,
-#endif
rEventMultiplexer, rScreenUpdater,
rActivitiesQueue, rUserEventQueue,
rCursorManager, rViewContainer,
diff --git a/slideshow/source/engine/slide/userpaintoverlay.cxx b/slideshow/source/engine/slide/userpaintoverlay.cxx
index 8d9fad06a3e3..d0ab4e33a1e3 100644
--- a/slideshow/source/engine/slide/userpaintoverlay.cxx
+++ b/slideshow/source/engine/slide/userpaintoverlay.cxx
@@ -70,8 +70,9 @@ namespace slideshow
ActivitiesQueue& rActivitiesQueue,
ScreenUpdater& rScreenUpdater,
const UnoViewContainer& rViews,
- Slide& rSlide,
- const PolyPolygonVector& rPolygons ) :
+ Slide& rSlide,
+ const PolyPolygonVector& rPolygons,
+ bool bActive ) :
mrActivitiesQueue( rActivitiesQueue ),
mrScreenUpdater( rScreenUpdater ),
maViews(),
@@ -87,7 +88,8 @@ namespace slideshow
//handle the "remove stroke by stroke" mode of erasing
mbIsEraseModeActivated( false ),
mrSlide(rSlide),
- mnSize(100)
+ mnSize(100),
+ mbActive( bActive )
{
std::for_each( rViews.begin(),
rViews.end(),
@@ -129,6 +131,8 @@ namespace slideshow
bool colorChanged( RGBColor const& rUserColor )
{
+ mbIsLastPointValid = false;
+ mbActive = true;
this->maStrokeColor = rUserColor;
this->mbIsEraseModeActivated = false;
return true;
@@ -141,22 +145,15 @@ namespace slideshow
return true;
}
- bool eraseAllInkChanged( bool const& rEraseAllInk )
+ void repaintWithoutPolygons()
{
- this->mbIsEraseAllModeActivated= rEraseAllInk;
- // if the erase all mode is activated it will remove all ink from slide,
- // therefor destroy all the polygons stored
- if(mbIsEraseAllModeActivated)
- {
- // The Erase Mode should be desactivated
- mbIsEraseModeActivated = false;
// must get access to the instance to erase all polygon
for( UnoViewVector::iterator aIter=maViews.begin(), aEnd=maViews.end();
aIter!=aEnd;
++aIter )
{
// fully clear view content to background color
- (*aIter)->getCanvas()->clear();
+ //(*aIter)->getCanvas()->clear();
//get via SlideImpl instance the bitmap of the slide unmodified to redraw it
SlideBitmapSharedPtr pBitmap( mrSlide.getCurrentSlideBitmap( (*aIter) ) );
@@ -181,7 +178,19 @@ namespace slideshow
mrScreenUpdater.notifyUpdate(*aIter,true);
}
- maPolygons.clear();
+ }
+
+ bool eraseAllInkChanged( bool const& rEraseAllInk )
+ {
+ this->mbIsEraseAllModeActivated= rEraseAllInk;
+ // if the erase all mode is activated it will remove all ink from slide,
+ // therefor destroy all the polygons stored
+ if(mbIsEraseAllModeActivated)
+ {
+ // The Erase Mode should be desactivated
+ mbIsEraseModeActivated = false;
+ repaintWithoutPolygons();
+ maPolygons.clear();
}
mbIsEraseAllModeActivated=false;
return true;
@@ -198,18 +207,25 @@ namespace slideshow
bool switchPenMode()
{
+ mbIsLastPointValid = false;
+ mbActive = true;
this->mbIsEraseModeActivated = false;
return true;
}
bool switchEraserMode()
{
+ mbIsLastPointValid = false;
+ mbActive = true;
this->mbIsEraseModeActivated = true;
return true;
}
bool disable()
{
+ mbIsLastPointValid = false;
+ mbIsLastMouseDownPosValid = false;
+ mbActive = false;
return true;
}
@@ -235,6 +251,9 @@ namespace slideshow
// MouseEventHandler methods
virtual bool handleMousePressed( const awt::MouseEvent& e )
{
+ if( !mbActive )
+ return false;
+
if (e.Buttons == awt::MouseButton::RIGHT)
{
mbIsLastPointValid = false;
@@ -255,6 +274,9 @@ namespace slideshow
virtual bool handleMouseReleased( const awt::MouseEvent& e )
{
+ if( !mbActive )
+ return false;
+
if (e.Buttons == awt::MouseButton::RIGHT)
{
mbIsLastPointValid = false;
@@ -289,6 +311,9 @@ namespace slideshow
virtual bool handleMouseEntered( const awt::MouseEvent& e )
{
+ if( !mbActive )
+ return false;
+
mbIsLastPointValid = true;
maLastPoint.setX( e.X );
maLastPoint.setY( e.Y );
@@ -298,6 +323,9 @@ namespace slideshow
virtual bool handleMouseExited( const awt::MouseEvent& )
{
+ if( !mbActive )
+ return false;
+
mbIsLastPointValid = false;
mbIsLastMouseDownPosValid = false;
@@ -306,7 +334,16 @@ namespace slideshow
virtual bool handleMouseDragged( const awt::MouseEvent& e )
{
- if(mbIsEraseModeActivated)
+ if( !mbActive )
+ return false;
+
+ if (e.Buttons == awt::MouseButton::RIGHT)
+ {
+ mbIsLastPointValid = false;
+ return false;
+ }
+
+ if(mbIsEraseModeActivated)
{
//define the last point as an object
//we suppose that there's no way this point could be valid
@@ -421,6 +458,14 @@ namespace slideshow
}
+ void update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth )
+ {
+ maStrokeColor = aUserPaintColor;
+ mnStrokeWidth = dUserPaintStrokeWidth;
+ mbActive = bUserPaintEnabled;
+ if( !mbActive )
+ disable();
+ }
private:
ActivitiesQueue& mrActivitiesQueue;
@@ -438,17 +483,20 @@ namespace slideshow
bool mbIsEraseModeActivated;
Slide& mrSlide;
sal_Int32 mnSize;
+ bool mbActive;
};
UserPaintOverlaySharedPtr UserPaintOverlay::create( const RGBColor& rStrokeColor,
double nStrokeWidth,
const SlideShowContext& rContext,
- const PolyPolygonVector& rPolygons )
+ const PolyPolygonVector& rPolygons,
+ bool bActive )
{
UserPaintOverlaySharedPtr pRet( new UserPaintOverlay( rStrokeColor,
nStrokeWidth,
rContext,
- rPolygons ));
+ rPolygons,
+ bActive));
return pRet;
}
@@ -456,7 +504,8 @@ namespace slideshow
UserPaintOverlay::UserPaintOverlay( const RGBColor& rStrokeColor,
double nStrokeWidth,
const SlideShowContext& rContext,
- const PolyPolygonVector& rPolygons ) :
+ const PolyPolygonVector& rPolygons,
+ bool bActive ) :
mpHandler( new PaintOverlayHandler( rStrokeColor,
nStrokeWidth,
rContext.mrActivitiesQueue,
@@ -464,7 +513,7 @@ namespace slideshow
rContext.mrViewContainer,
//adding a link to Slide
dynamic_cast<Slide&>(rContext.mrCursorManager),
- rPolygons )),
+ rPolygons, bActive )),
mrMultiplexer( rContext.mrEventMultiplexer )
{
mrMultiplexer.addClickHandler( mpHandler, 3.0 );
@@ -483,6 +532,12 @@ namespace slideshow
mpHandler->drawPolygons();
}
+ void UserPaintOverlay::update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth )
+ {
+ mpHandler->update_settings( bUserPaintEnabled, aUserPaintColor, dUserPaintStrokeWidth );
+ }
+
+
UserPaintOverlay::~UserPaintOverlay()
{
try
diff --git a/slideshow/source/engine/slide/userpaintoverlay.hxx b/slideshow/source/engine/slide/userpaintoverlay.hxx
index b92f5f2539b0..3a8e14c600c5 100644
--- a/slideshow/source/engine/slide/userpaintoverlay.hxx
+++ b/slideshow/source/engine/slide/userpaintoverlay.hxx
@@ -69,16 +69,21 @@ namespace slideshow
static UserPaintOverlaySharedPtr create( const RGBColor& rStrokeColor,
double nStrokeWidth,
const SlideShowContext& rContext,
- const PolyPolygonVector& rPolygons );
+ const PolyPolygonVector& rPolygons,
+ bool bActive);
~UserPaintOverlay();
PolyPolygonVector getPolygons();
void drawPolygons();
+ void update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth );
+
+
private:
UserPaintOverlay( const RGBColor& rStrokeColor,
double nStrokeWidth,
const SlideShowContext& rContext,
- const PolyPolygonVector& rPolygons );
+ const PolyPolygonVector& rPolygons,
+ bool bActive );
::boost::shared_ptr<PaintOverlayHandler> mpHandler;
EventMultiplexer& mrMultiplexer;
diff --git a/slideshow/source/engine/slideshowimpl.cxx b/slideshow/source/engine/slideshowimpl.cxx
index d736c3f52d64..a909ade61ee2 100644
--- a/slideshow/source/engine/slideshowimpl.cxx
+++ b/slideshow/source/engine/slideshowimpl.cxx
@@ -458,7 +458,7 @@ private:
boost::optional<RGBColor> maUserPaintColor;
- boost::optional<double> maUserPaintStrokeWidth;
+ double maUserPaintStrokeWidth;
//changed for the eraser project
boost::optional<bool> maEraseAllInk;
@@ -950,7 +950,7 @@ SlideSharedPtr SlideShowImpl::makeSlide(
maShapeCursors,
(aIter != maPolygons.end()) ? aIter->second : PolyPolygonVector(),
maUserPaintColor ? *maUserPaintColor : RGBColor(),
- *maUserPaintStrokeWidth,
+ maUserPaintStrokeWidth,
!!maUserPaintColor,
mbImageAnimationsAllowed,
mbDisableAnimationZOrder) );
@@ -1112,11 +1112,7 @@ void SlideShowImpl::displaySlide(
// precondition: must only be called from the main thread!
DBG_TESTSOLARMUTEX();
-#ifdef ENABLE_PRESENTER_EXTRA_UI
mxDrawPagesSupplier = xDrawPages;
-#else
- mxDrawPagesSupplier = NULL;
-#endif
stopShow(); // MUST call that: results in
// maUserEventQueue.clear(). What's more,
@@ -1620,6 +1616,9 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
// enable user paint
maUserPaintColor.reset( unoColor2RGBColor( nColor ) );
+ if( mpCurrentSlide && !mpCurrentSlide->isPaintOverlayActive() )
+ mpCurrentSlide->enablePaintOverlay();
+
maEventMultiplexer.notifyUserPaintColor( *maUserPaintColor );
}
else
@@ -1627,10 +1626,11 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
// disable user paint
maUserPaintColor.reset();
maEventMultiplexer.notifyUserPaintDisabled();
+ if( mpCurrentSlide )
+ mpCurrentSlide->disablePaintOverlay();
}
- if( mnCurrentCursor == awt::SystemPointer::ARROW )
- resetCursor();
+ resetCursor();
return true;
}
@@ -1649,15 +1649,6 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
maEraseAllInk.reset( nEraseAllInk );
maEventMultiplexer.notifyEraseAllInk( *maEraseAllInk );
}
- else
- {
- // disable user paint
- maEraseAllInk.reset();
- maEventMultiplexer.notifyUserPaintDisabled();
- }
-
- if( mnCurrentCursor == awt::SystemPointer::ARROW )
- resetCursor();
return true;
}
@@ -1677,9 +1668,6 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
maEventMultiplexer.notifySwitchPenMode();
}
}
-
- if( mnCurrentCursor == awt::SystemPointer::ARROW )
- resetCursor();
return true;
}
@@ -1699,8 +1687,6 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
}
}
- if( mnCurrentCursor == awt::SystemPointer::ARROW )
- resetCursor();
return true;
}
@@ -1719,15 +1705,6 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
maEraseInk.reset( nEraseInk );
maEventMultiplexer.notifyEraseInkWidth( *maEraseInk );
}
- else
- {
- // disable user paint
- maEraseInk.reset();
- maEventMultiplexer.notifyUserPaintDisabled();
- }
-
- if( mnCurrentCursor == awt::SystemPointer::ARROW )
- resetCursor();
return true;
}
@@ -1741,17 +1718,10 @@ sal_Bool SlideShowImpl::setProperty( beans::PropertyValue const& rProperty )
{
OSL_ENSURE( mbMouseVisible,"setProperty(): User paint overrides invisible mouse" );
// enable user paint stroke width
- maUserPaintStrokeWidth.reset( nWidth );
- maEventMultiplexer.notifyUserPaintStrokeWidth( *maUserPaintStrokeWidth );
+ maUserPaintStrokeWidth = nWidth;
+ maEventMultiplexer.notifyUserPaintStrokeWidth( maUserPaintStrokeWidth );
}
- else
- {
- // disable user paint stroke width
- maUserPaintStrokeWidth.reset();
- maEventMultiplexer.notifyUserPaintDisabled();
- }
- if( mnCurrentCursor == awt::SystemPointer::ARROW )
- resetCursor();
+
return true;
}
@@ -2214,6 +2184,8 @@ void SlideShowImpl::notifySlideTransitionEnded( bool bPaintSlide )
"notifySlideTransitionEnded(): Invalid current slide" );
if (mpCurrentSlide)
{
+ mpCurrentSlide->update_settings( !!maUserPaintColor, maUserPaintColor ? *maUserPaintColor : RGBColor(), maUserPaintStrokeWidth );
+
// first init show, to give the animations
// the chance to register SlideStartEvents
const bool bBackgroundLayerRendered( !bPaintSlide );
diff --git a/slideshow/source/inc/slide.hxx b/slideshow/source/inc/slide.hxx
index 9f4e6b8f5055..d457d8e16f88 100644
--- a/slideshow/source/inc/slide.hxx
+++ b/slideshow/source/inc/slide.hxx
@@ -121,9 +121,14 @@ namespace slideshow
///Draw the slide Polygons
virtual void drawPolygons() const = 0;
- ///Check if slide is already active
+ ///Check if paint overlay is already active
virtual bool isPaintOverlayActive() const = 0;
+ virtual void enablePaintOverlay() = 0;
+ virtual void disablePaintOverlay() = 0;
+
+ virtual void update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth ) = 0;
+
// Slide bitmaps
// -------------------------------------------------------------------
diff --git a/slideshow/util/makefile.pmk b/slideshow/util/makefile.pmk
index 53724522d5e8..765b5249e5a4 100644
--- a/slideshow/util/makefile.pmk
+++ b/slideshow/util/makefile.pmk
@@ -35,7 +35,7 @@ CDEFS += -DBOOST_SP_ENABLE_DEBUG_HOOKS
.IF "$(COM)"=="MSC"
# disable inlining for MSVC
-CFLAGS += -Ob0
+#CFLAGS += -Ob0
.ENDIF
.ENDIF # "$(debug)"!="" || "$(DEBUG)"!=""