From 524cfd3ea06070dd3219c20bcbfc6bf347f13926 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Tue, 12 Jun 2018 16:16:26 +0300 Subject: Add ooo.vba.word.XWindow.Caption property Change-Id: Ifa94b95d935975a87322afebfe604a4016f5a53f Reviewed-on: https://gerrit.libreoffice.org/55692 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist --- sw/source/ui/vba/vbawindow.cxx | 31 +++++++++++++++++++++++++++++++ sw/source/ui/vba/vbawindow.hxx | 2 ++ 2 files changed, 33 insertions(+) (limited to 'sw/source/ui/vba') diff --git a/sw/source/ui/vba/vbawindow.cxx b/sw/source/ui/vba/vbawindow.cxx index 458fb400d758..aba495a199b8 100644 --- a/sw/source/ui/vba/vbawindow.cxx +++ b/sw/source/ui/vba/vbawindow.cxx @@ -113,6 +113,37 @@ SwVbaWindow::setWindowState( const uno::Any& _windowstate ) } } +OUString SAL_CALL +SwVbaWindow::getCaption() +{ + SwView* pView = word::getView( m_xModel ); + if( !pView ) + return OUString(""); + + uno::Reference< css::beans::XPropertySet > xFrameProps( pView->GetViewFrame()->GetFrame().GetFrameInterface()->getController()->getFrame(), uno::UNO_QUERY ); + if( !xFrameProps.is() ) + return OUString(""); + + OUString sTitle; + xFrameProps->getPropertyValue( "Title" ) >>= sTitle; + + return sTitle; +} + +void SAL_CALL +SwVbaWindow::setCaption( const OUString& _caption ) +{ + SwView* pView = word::getView( m_xModel ); + if( !pView ) + return; + + uno::Reference< css::beans::XPropertySet > xFrameProps( pView->GetViewFrame()->GetFrame().GetFrameInterface()->getController()->getFrame(), uno::UNO_QUERY ); + if( !xFrameProps.is() ) + return; + + xFrameProps->setPropertyValue( "Title", uno::makeAny( _caption ) ); +} + uno::Any SAL_CALL SwVbaWindow::Panes( const uno::Any& aIndex ) { diff --git a/sw/source/ui/vba/vbawindow.hxx b/sw/source/ui/vba/vbawindow.hxx index e5f7296a8ba5..ee435b1505ac 100644 --- a/sw/source/ui/vba/vbawindow.hxx +++ b/sw/source/ui/vba/vbawindow.hxx @@ -42,6 +42,8 @@ public: virtual void SAL_CALL setView( const css::uno::Any& _view ) override; virtual css::uno::Any SAL_CALL getWindowState() override; virtual void SAL_CALL setWindowState( const css::uno::Any& _windowstate ) override; + virtual OUString SAL_CALL getCaption() override; + virtual void SAL_CALL setCaption( const OUString& _caption ) override; // Methods virtual void SAL_CALL Activate( ) override; virtual void SAL_CALL Close( const css::uno::Any& SaveChanges, const css::uno::Any& RouteDocument ) override; -- cgit