diff options
author | Maxim Monastirsky <momonasmon@gmail.com> | 2014-11-23 10:19:40 +0200 |
---|---|---|
committer | Maxim Monastirsky <momonasmon@gmail.com> | 2014-11-23 10:50:53 +0200 |
commit | cb6ced50c11ea71e5655c46e49f17f3b5921f526 (patch) | |
tree | f8d7a6713a5a864734c3c685e7de386b55650c8e /svx/source/tbxctrls | |
parent | 2497285dcaf135e55daf273607ed86575c8032ac (diff) |
fdo#86546 Open the right tab for more bullets and numbering
Change-Id: Ib8dda6eab89c92fa9bea98e3570896ea02692585
Diffstat (limited to 'svx/source/tbxctrls')
-rw-r--r-- | svx/source/tbxctrls/bulletsnumbering.cxx | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/svx/source/tbxctrls/bulletsnumbering.cxx b/svx/source/tbxctrls/bulletsnumbering.cxx index 3f848c274fe7..bc47a66ec219 100644 --- a/svx/source/tbxctrls/bulletsnumbering.cxx +++ b/svx/source/tbxctrls/bulletsnumbering.cxx @@ -34,15 +34,17 @@ #define NUM_PAGETYPE_BULLET 0 #define NUM_PAGETYPE_SINGLENUM 1 +class NumberingToolBoxControl; + class NumberingPopup : public svtools::ToolbarMenu { bool mbBulletItem; - svt::ToolboxController& mrController; + NumberingToolBoxControl& mrController; SvxNumValueSet* mpValueSet; DECL_LINK( VSSelectHdl, void * ); public: - NumberingPopup( svt::ToolboxController& rController, + NumberingPopup( NumberingToolBoxControl& rController, const css::uno::Reference< css::frame::XFrame >& rFrame, vcl::Window* pParent, bool bBulletItem ); @@ -57,6 +59,7 @@ class NumberingToolBoxControl : public svt::PopupWindowController public: NumberingToolBoxControl( const css::uno::Reference< css::uno::XComponentContext >& rxContext ); virtual vcl::Window* createPopupWindow( vcl::Window* pParent ) SAL_OVERRIDE; + bool IsInImpressDraw(); // XStatusListener virtual void SAL_CALL statusChanged( const css::frame::FeatureStateEvent& rEvent ) @@ -76,7 +79,7 @@ public: }; //class NumberingPopup -NumberingPopup::NumberingPopup( svt::ToolboxController& rController, +NumberingPopup::NumberingPopup( NumberingToolBoxControl& rController, const css::uno::Reference< css::frame::XFrame >& rFrame, vcl::Window* pParent, bool bBulletItem ) : ToolbarMenu( rFrame, pParent, WB_STDPOPUP ), @@ -164,7 +167,16 @@ IMPL_LINK( NumberingPopup, VSSelectHdl, void *, pControl ) } else if ( getSelectedEntryId() == 1 ) { - css::uno::Sequence< css::beans::PropertyValue > aArgs( 0 ); + OUString aPageName; + if ( mrController.IsInImpressDraw() ) + aPageName = "customize"; + else + // Writer variants + aPageName = "options"; + + css::uno::Sequence< css::beans::PropertyValue > aArgs( 1 ); + aArgs[0].Name = "Page"; + aArgs[0].Value <<= aPageName; mrController.dispatchCommand( ".uno:OutlineBullet", aArgs ); } @@ -184,6 +196,12 @@ vcl::Window* NumberingToolBoxControl::createPopupWindow( vcl::Window* pParent ) return new NumberingPopup( *this, m_xFrame, pParent, mbBulletItem ); } +bool NumberingToolBoxControl::IsInImpressDraw() +{ + return ( m_sModuleName == "com.sun.star.presentation.PresentationDocument" || + m_sModuleName == "com.sun.star.drawing.DrawingDocument" ); +} + void SAL_CALL NumberingToolBoxControl::statusChanged( const css::frame::FeatureStateEvent& rEvent ) throw ( css::uno::RuntimeException, std::exception ) { |