diff options
-rw-r--r-- | oovbaapi/ooo/vba/word/XApplication.idl | 1 | ||||
-rw-r--r-- | sw/source/ui/vba/vbaapplication.cxx | 26 | ||||
-rw-r--r-- | sw/source/ui/vba/vbaapplication.hxx | 2 |
3 files changed, 29 insertions, 0 deletions
diff --git a/oovbaapi/ooo/vba/word/XApplication.idl b/oovbaapi/ooo/vba/word/XApplication.idl index a0ad911370a9..ea709e7ec2b2 100644 --- a/oovbaapi/ooo/vba/word/XApplication.idl +++ b/oovbaapi/ooo/vba/word/XApplication.idl @@ -34,6 +34,7 @@ interface XApplication : XConnectable [attribute, readonly] XSelection Selection; [attribute] boolean DisplayAutoCompleteTips; [attribute] long EnableCancelKey; + [attribute] long WindowState; any CommandBars( [in] any Index ); any Documents( [in] any Index ); diff --git a/sw/source/ui/vba/vbaapplication.cxx b/sw/source/ui/vba/vbaapplication.cxx index 45c53114e2cc..d9d245a12d49 100644 --- a/sw/source/ui/vba/vbaapplication.cxx +++ b/sw/source/ui/vba/vbaapplication.cxx @@ -29,6 +29,7 @@ #include "vbadialogs.hxx" #include <ooo/vba/XConnectionPoint.hpp> #include <ooo/vba/word/WdEnableCancelKey.hpp> +#include <ooo/vba/word/WdWindowState.hpp> #include <ooo/vba/word/XApplicationOutgoing.hpp> #include <basic/sbuno.hxx> #include <editeng/acorrcfg.hxx> @@ -189,6 +190,31 @@ void SAL_CALL SwVbaApplication::setEnableCancelKey( sal_Int32/* _enableCancelKey // seems not supported in Writer } +sal_Int32 SAL_CALL SwVbaApplication::getWindowState() +{ + auto xWindow = getActiveWindow(); + if (xWindow.is()) + { + uno::Any aState = xWindow->getWindowState(); + sal_Int32 nState; + if (aState >>= nState) + return nState; + } + + return word::WdWindowState::wdWindowStateNormal; // ? +} + +void SAL_CALL SwVbaApplication::setWindowState( sal_Int32 _windowstate ) +{ + auto xWindow = getActiveWindow(); + if (xWindow.is()) + { + uno::Any aState; + aState <<= _windowstate; + xWindow->setWindowState( aState ); + } +} + float SAL_CALL SwVbaApplication::CentimetersToPoints( float Centimeters ) { return VbaApplicationBase::CentimetersToPoints( Centimeters ); diff --git a/sw/source/ui/vba/vbaapplication.hxx b/sw/source/ui/vba/vbaapplication.hxx index a8763cc15d6e..808f7c1c10b8 100644 --- a/sw/source/ui/vba/vbaapplication.hxx +++ b/sw/source/ui/vba/vbaapplication.hxx @@ -71,6 +71,8 @@ public: virtual void SAL_CALL setDisplayAutoCompleteTips( sal_Bool _displayAutoCompleteTips ) override; virtual sal_Int32 SAL_CALL getEnableCancelKey() override; virtual void SAL_CALL setEnableCancelKey( sal_Int32 _enableCancelKey ) override; + virtual sal_Int32 SAL_CALL getWindowState() override; + virtual void SAL_CALL setWindowState( sal_Int32 _windowstate ) override; virtual float SAL_CALL CentimetersToPoints( float Centimeters ) override; virtual void SAL_CALL ShowMe() override; |