support UserForm.Visible attribute

Change-Id: I6e5a9d3e7908349a76a73a79b3b1319b44e1e3aa
This commit is contained in:
Noel Power
2013-04-24 11:44:59 +01:00
parent a7cc0faeff
commit 4d1e0ea98b
2 changed files with 20 additions and 0 deletions

View File

@@ -20,6 +20,7 @@
#include "vbauserform.hxx"
#include <com/sun/star/awt/XControl.hpp>
#include <com/sun/star/awt/XControlContainer.hpp>
#include <com/sun/star/awt/XWindow2.hpp>
#include <com/sun/star/awt/PosSize.hpp>
#include <com/sun/star/beans/PropertyConcept.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
@@ -112,6 +113,23 @@ ScVbaUserForm::setCaption( const OUString& _caption ) throw (uno::RuntimeExcepti
m_xProps->setPropertyValue( "Title", uno::makeAny( _caption ) );
}
sal_Bool SAL_CALL
ScVbaUserForm::getVisible() throw (uno::RuntimeException)
{
uno::Reference< awt::XControl > xControl( m_xDialog, uno::UNO_QUERY_THROW );
uno::Reference< awt::XWindow2 > xControlWindow( xControl->getPeer(), uno::UNO_QUERY_THROW );
return xControlWindow->isVisible();
}
void SAL_CALL
ScVbaUserForm::setVisible( sal_Bool bVis ) throw (uno::RuntimeException)
{
if ( bVis )
Show();
else
Hide();
}
double SAL_CALL ScVbaUserForm::getInnerWidth() throw (uno::RuntimeException)
{
return mpGeometryHelper->getInnerWidth();