diff options
Diffstat (limited to 'sd/source/ui/dlg/navigatr.cxx')
-rw-r--r-- | sd/source/ui/dlg/navigatr.cxx | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/sd/source/ui/dlg/navigatr.cxx b/sd/source/ui/dlg/navigatr.cxx index eb7fbd784ec5..a5cb425f9df5 100644 --- a/sd/source/ui/dlg/navigatr.cxx +++ b/sd/source/ui/dlg/navigatr.cxx @@ -108,6 +108,7 @@ SdNavigatorWin::SdNavigatorWin( // set focus to listbox, otherwise it is in the toolbox which is only useful // for keyboard navigation maTlbObjects.GrabFocus(); + maTlbObjects.SetSdNavigatorWinFlag(sal_True); // DragTypeListBox maLbDocs.SetSelectHdl( LINK( this, SdNavigatorWin, SelectDocumentHdl ) ); @@ -157,6 +158,26 @@ SdNavigatorWin::~SdNavigatorWin() // ----------------------------------------------------------------------- +//when object is marked , fresh the corresponding entry tree . +void SdNavigatorWin::FreshTree( const SdDrawDocument* pDoc ) +{ + SdDrawDocument* pNonConstDoc = (SdDrawDocument*) pDoc; // const as const can... + sd::DrawDocShell* pDocShell = pNonConstDoc->GetDocSh(); + OUString aDocShName( pDocShell->GetName() ); + OUString aDocName = pDocShell->GetMedium()->GetName(); + maTlbObjects.SetSaveTreeItemStateFlag(sal_True); //Added by yanjun for sym2_6385 + maTlbObjects.Clear(); + maTlbObjects.Fill( pDoc, sal_False, aDocName ); // Nur normale Seiten + maTlbObjects.SetSaveTreeItemStateFlag(sal_False); //Added by yanjun for sym2_6385 + RefreshDocumentLB(); + maLbDocs.SelectEntry( aDocShName ); +} + +void SdNavigatorWin::FreshEntry( ) +{ + maTlbObjects.FreshCurEntry(); +} + void SdNavigatorWin::InitTreeLB( const SdDrawDocument* pDoc ) { SdDrawDocument* pNonConstDoc = (SdDrawDocument*) pDoc; // const as const can... @@ -222,8 +243,14 @@ NavigatorDragType SdNavigatorWin::GetNavigatorDragType() return( eDT ); } -// ----------------------------------------------------------------------- - +//Get SdDrawDocShell +sd::DrawDocShell* SdNavigatorWin::GetDrawDocShell( const SdDrawDocument* pDoc ) +{ + if( !pDoc ) + return NULL; // const as const can... + sd::DrawDocShell* pDocShell = pDoc->GetDocSh(); + return pDocShell; +} IMPL_LINK_NOARG(SdNavigatorWin, SelectToolboxHdl) { @@ -379,6 +406,8 @@ IMPL_LINK_NOARG(SdNavigatorWin, ClickObjectHdl) SfxStringItem aItem( SID_NAVIGATOR_OBJECT, aStr ); mpBindings->GetDispatcher()->Execute( SID_NAVIGATOR_OBJECT, SFX_CALLMODE_SLOT | SFX_CALLMODE_RECORD, &aItem, 0L ); + //set sign variable + maTlbObjects.MarkCurEntry(aStr); // moved here from SetGetFocusHdl. Reset the // focus only if something has been selected in the |