summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorRĂ¼diger Timm <rt@openoffice.org>2004-11-26 19:34:44 +0000
committerRĂ¼diger Timm <rt@openoffice.org>2004-11-26 19:34:44 +0000
commite37896e6483bac0c5bb6d4fe3e41b9227d77dbb0 (patch)
treee8edc629ce2aeac877c462fc91bdbee237f845db /sd
parent37b57f0e05c8b1122d18fbcf435078bf4654da05 (diff)
INTEGRATION: CWS presentationengine01 (1.31.12); FILE MERGED
2004/10/12 23:27:42 thb 1.31.12.5: RESYNC: (1.31-1.33); FILE MERGED 2004/10/08 12:55:04 cl 1.31.12.4: listen on text changes on objects with effects 2004/10/06 15:01:28 cl 1.31.12.3: added an event when text editing starts and ends 2004/09/30 20:53:01 cl 1.31.12.2: listen to paragraph changes for effects 2004/08/25 16:32:50 cl 1.31.12.1: replaced old FuSlideShow with new SlideShow
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/view/sdview.cxx68
1 files changed, 57 insertions, 11 deletions
diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx
index 6fe9b2b68733..fa7ee6db3e1e 100644
--- a/sd/source/ui/view/sdview.cxx
+++ b/sd/source/ui/view/sdview.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: sdview.cxx,v $
*
- * $Revision: 1.34 $
+ * $Revision: 1.35 $
*
- * last change: $Author: rt $ $Date: 2004-11-26 16:17:51 $
+ * last change: $Author: rt $ $Date: 2004-11-26 20:34:44 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -149,8 +149,8 @@
#ifndef SD_FU_INSERT_FILE_HXX
#include "fuinsfil.hxx"
#endif
-#ifndef SD_FU_SLIDE_SHOW_HXX
-#include "fuslshow.hxx"
+#ifndef _SD_SLIDESHOW_HXX
+#include "slideshow.hxx"
#endif
#include "stlpool.hxx"
#ifndef SD_FRAME_VIEW_HXX
@@ -169,6 +169,12 @@
#ifndef _SDR_CONTACT_DISPLAYINFO_HXX
#include <svx/sdr/contact/displayinfo.hxx>
#endif
+#ifndef SD_TOOLS_EVENT_MULTIPLEXER_HXX
+#include "EventMultiplexer.hxx"
+#endif
+#ifndef SD_VIEW_SHELL_BASE_HXX
+#include "ViewShellBase.hxx"
+#endif
#include "ViewShellBase.hxx"
@@ -698,6 +704,8 @@ BOOL View::BegTextEdit(SdrObject* pObj, SdrPageView* pPV, Window* pWin,
OutlinerView* pGivenOutlinerView, BOOL bDontDeleteOutliner,
BOOL bOnlyOneView)
{
+ GetViewShell()->GetViewShellBase().GetEventMultiplexer().MultiplexEvent( sd::tools::EventMultiplexerEvent::EID_BEGIN_TEXT_EDIT, (void*)pObj );
+
BOOL bReturn = FmFormView::BegTextEdit(pObj, pPV, pWin, bIsNewObj, pGivenOutliner,
pGivenOutlinerView, bDontDeleteOutliner,
bOnlyOneView);
@@ -719,6 +727,9 @@ BOOL View::BegTextEdit(SdrObject* pObj, SdrPageView* pPV, Window* pWin,
pViewShell->GetViewFrame()->GetDispatcher()->
GetShell(0)->SetUndoManager(&rUndoMgr);
}
+
+ pOL->SetParaInsertedHdl(LINK(this, View, ParagraphInsertedHdl));
+ pOL->SetParaRemovingHdl(LINK(this, View, ParagraphRemovingHdl));
}
return(bReturn);
@@ -737,6 +748,8 @@ SdrEndTextEditKind View::EndTextEdit(BOOL bDontDeleteReally)
SdrEndTextEditKind View::EndTextEdit(BOOL bDontDeleteReally, FuPoor* pFunc)
{
+ SdrObject* pObj = GetTextEditObject();
+
BOOL bIsTextEdit = IsTextEdit();
SdrEndTextEditKind eKind;
@@ -765,13 +778,6 @@ SdrEndTextEditKind View::EndTextEdit(BOOL bDontDeleteReally, FuPoor* pFunc)
pTextObj = ( (FuText*) pFunc)->GetTextObj();
- if ( pTextObj && pViewShell )
- {
- FuSlideShow* pFuSlideShow = pViewShell->GetSlideShow();
- if (pFuSlideShow)
- pFuSlideShow->EndTextEdit(pTextObj);
- }
-
if (eKind == SDRENDTEXTEDIT_CHANGED && !bDefaultTextRestored)
( (FuText*) pFunc)->ObjectChanged();
@@ -795,6 +801,11 @@ SdrEndTextEditKind View::EndTextEdit(BOOL bDontDeleteReally, FuPoor* pFunc)
}
}
+ if( eKind != SDRENDTEXTEDIT_CHANGED )
+ pObj = 0;
+
+ GetViewShell()->GetViewShellBase().GetEventMultiplexer().MultiplexEvent( sd::tools::EventMultiplexerEvent::EID_END_TEXT_EDIT, (void*)pObj );
+
return(eKind);
}
@@ -1104,4 +1115,39 @@ void View::onAccessibilityOptionsChanged()
}
}
+IMPL_LINK( View, ParagraphInsertedHdl, ::Outliner *, pOutliner )
+{
+ Paragraph* pPara = pOutliner->GetHdlParagraph();
+ SdrObject* pObj = GetTextEditObject();
+
+ if( pPara && pObj )
+ {
+ SdPage* pPage = dynamic_cast< SdPage* >( pObj->GetPage() );
+ if( pPage )
+ pPage->onParagraphInserted( pOutliner, pPara, pObj );
+ }
+ return 0;
+}
+
+/*************************************************************************
+|*
+|* Handler fuer das Loeschen von Seiten (Absaetzen)
+|*
+\************************************************************************/
+
+IMPL_LINK( View, ParagraphRemovingHdl, ::Outliner *, pOutliner )
+{
+ Paragraph* pPara = pOutliner->GetHdlParagraph();
+ SdrObject* pObj = GetTextEditObject();
+
+ if( pPara && pObj )
+ {
+ SdPage* pPage = dynamic_cast< SdPage* >( pObj->GetPage() );
+ if( pPage )
+ pPage->onParagraphRemoving( pOutliner, pPara, pObj );
+ }
+ return 0;
+}
+
+
} // end of namespace sd