Kaydet (Commit) eef0e91d authored tarafından Caolán McNamara's avatar Caolán McNamara

there's another ExecuteInfo in sw

Change-Id: Id72d3cdfa8b0d5e62fc04ddc464069ac58df0f58
üst 79776356
......@@ -120,15 +120,6 @@ inline SfxVirtualMenu* SfxMenuControl::GetPopupMenu() const
{ SfxMenuControl::RegisterMenuControl( pMod, new SfxMenuCtrlFactory( \
Class::CreateImpl, TYPE(nItemClass), nSlotId ) ); }
struct ExecuteInfo
{
::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > xDispatch;
::com::sun::star::util::URL aTargetURL;
::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > aArgs;
DECL_STATIC_LINK( ExecuteInfo, ExecuteHdl_Impl, ExecuteInfo* );
};
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
......@@ -327,6 +327,15 @@ SfxUnoMenuControl::~SfxUnoMenuControl()
pUnoCtrl->release();
}
struct MenuExecuteInfo
{
::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > xDispatch;
::com::sun::star::util::URL aTargetURL;
::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > aArgs;
DECL_STATIC_LINK( MenuExecuteInfo, ExecuteHdl_Impl, MenuExecuteInfo* );
};
sal_IntPtr Select_Impl( void* /*pHdl*/, void* pVoid )
{
Menu* pMenu = static_cast<Menu*>(pVoid);
......@@ -360,17 +369,17 @@ sal_IntPtr Select_Impl( void* /*pHdl*/, void* pVoid )
if ( xDisp.is() )
{
ExecuteInfo* pExecuteInfo = new ExecuteInfo;
MenuExecuteInfo* pExecuteInfo = new MenuExecuteInfo;
pExecuteInfo->xDispatch = xDisp;
pExecuteInfo->aTargetURL = aTargetURL;
pExecuteInfo->aArgs = Sequence< PropertyValue >();
Application::PostUserEvent( LINK( 0, ExecuteInfo, ExecuteHdl_Impl), pExecuteInfo );
Application::PostUserEvent( LINK( 0, MenuExecuteInfo, ExecuteHdl_Impl), pExecuteInfo );
}
return sal_IntPtr(true);
}
IMPL_STATIC_LINK_NOINSTANCE( ExecuteInfo, ExecuteHdl_Impl, ExecuteInfo*, pExecuteInfo )
IMPL_STATIC_LINK_NOINSTANCE( MenuExecuteInfo, ExecuteHdl_Impl, MenuExecuteInfo*, pExecuteInfo )
{
pExecuteInfo->xDispatch->dispatch( pExecuteInfo->aTargetURL, pExecuteInfo->aArgs );
delete pExecuteInfo;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment