summaryrefslogtreecommitdiff
path: root/sd/source/ui/view/drviews1.cxx
diff options
context:
space:
mode:
authorOliver Bolte <obo@openoffice.org>2005-10-11 07:19:10 +0000
committerOliver Bolte <obo@openoffice.org>2005-10-11 07:19:10 +0000
commit471417566b74453b5ce88dfed0020a12db6b037a (patch)
tree9d1b20e3ea2b9c16d5c412eeea22ac31d34ae07b /sd/source/ui/view/drviews1.cxx
parentc1cde3df1d495638e025d1fc2d294b6236cfbdbd (diff)
INTEGRATION: CWS presfixes08 (1.57.90); FILE MERGED
2005/09/05 14:43:01 cl 1.57.90.1: #i54071# fixed SwitchPage() to detect already visible master page > 0
Diffstat (limited to 'sd/source/ui/view/drviews1.cxx')
-rw-r--r--sd/source/ui/view/drviews1.cxx45
1 files changed, 29 insertions, 16 deletions
diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx
index c47d937cc8ef..ad6a9ba15e5c 100644
--- a/sd/source/ui/view/drviews1.cxx
+++ b/sd/source/ui/view/drviews1.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: drviews1.cxx,v $
*
- * $Revision: 1.58 $
+ * $Revision: 1.59 $
*
- * last change: $Author: rt $ $Date: 2005-09-09 07:07:54 $
+ * last change: $Author: obo $ $Date: 2005-10-11 08:19:10 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -982,27 +982,40 @@ BOOL DrawViewShell::SwitchPage(USHORT nSelectedPage)
if (pActualPage)
{
- // When in master page mode then the given index defines a
- // master page and may be larger then the number of slides.
- // Probably we should jump over this whole block.
SdPage* pNewPage = NULL;
- if (GetDoc()->GetSdPageCount(ePageKind) > nSelectedPage)
- pNewPage = GetDoc()->GetSdPage(nSelectedPage, ePageKind);
- if (pActualPage == pNewPage)
+ if (eEditMode == EM_MASTERPAGE)
{
- if (eEditMode == EM_MASTERPAGE)
+ if( GetDoc()->GetMasterSdPageCount(ePageKind) > nSelectedPage )
+ pNewPage = GetDoc()->GetMasterSdPage(nSelectedPage, ePageKind);
+
+ if( pNewPage )
{
- pNewPage = (SdPage*)(&(pNewPage->TRG_GetMasterPage()));
- }
+ SdrPageView* pPV = pDrView->GetPageViewPvNum(0);
- SdrPageView* pPV = pDrView->GetPageViewPvNum(0);
+ if (pPV && pNewPage == dynamic_cast< SdPage* >( pPV->GetPage() ) &&
+ pNewPage->GetName() == aTabControl.GetPageText(nSelectedPage+1))
+ {
+ // this slide is already visible
+ return TRUE;
+ }
+ }
+ }
+ else
+ {
+ if (GetDoc()->GetSdPageCount(ePageKind) > nSelectedPage)
+ pNewPage = GetDoc()->GetSdPage(nSelectedPage, ePageKind);
- if (pPV && pNewPage == (SdPage*) pPV->GetPage() &&
- pNewPage->GetName() == aTabControl.GetPageText(nSelectedPage+1))
+ if (pActualPage == pNewPage)
{
- // Die Seite wird schon angezeigt
- return(TRUE);
+ SdrPageView* pPV = pDrView->GetPageViewPvNum(0);
+
+ if (pPV && pNewPage == dynamic_cast< SdPage* >( pPV->GetPage() ) &&
+ pNewPage->GetName() == aTabControl.GetPageText(nSelectedPage+1))
+ {
+ // this slide is already visible
+ return TRUE;
+ }
}
}
}