summaryrefslogtreecommitdiff
path: root/chart2/source/controller/main/ElementSelector.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'chart2/source/controller/main/ElementSelector.hxx')
-rw-r--r--chart2/source/controller/main/ElementSelector.hxx33
1 files changed, 19 insertions, 14 deletions
diff --git a/chart2/source/controller/main/ElementSelector.hxx b/chart2/source/controller/main/ElementSelector.hxx
index 379fc0e57821..178fb080eaae 100644
--- a/chart2/source/controller/main/ElementSelector.hxx
+++ b/chart2/source/controller/main/ElementSelector.hxx
@@ -25,7 +25,7 @@
#include <cppuhelper/implbase1.hxx>
#include <svtools/toolboxcontroller.hxx>
-#include <vcl/lstbox.hxx>
+#include <sfx2/InterimItemWindow.hxx>
#include <cppuhelper/weakref.hxx>
namespace chart
@@ -42,26 +42,31 @@ struct ListBoxEntryData
}
};
-class SelectorListBox : public ListBox
+class SelectorListBox final : public InterimItemWindow
{
- public:
- SelectorListBox( vcl::Window* pParent, WinBits nStyle );
+public:
+ SelectorListBox(vcl::Window* pParent);
+ virtual void dispose() override;
+ virtual ~SelectorListBox() override;
+
+ virtual void GetFocus() override;
- virtual void Select() override;
- virtual bool EventNotify( NotifyEvent& rNEvt ) override;
- virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override;
+ void ReleaseFocus_Impl();
- void ReleaseFocus_Impl();
+ void SetChartController( const css::uno::Reference< css::frame::XController >& xChartController );
+ void UpdateChartElementsListAndSelection();
- void SetChartController( const css::uno::Reference< css::frame::XController >& xChartController );
- void UpdateChartElementsListAndSelection();
+private:
+ css::uno::WeakReference<css::frame::XController> m_xChartController;
+ std::unique_ptr<weld::ComboBox> m_xWidget;
- private:
- css::uno::WeakReference< css::frame::XController > m_xChartController;
+ std::vector<ListBoxEntryData> m_aEntries;
- std::vector< ListBoxEntryData > m_aEntries;
+ bool m_bReleaseFocus;
- bool m_bReleaseFocus;
+ DECL_LINK(KeyInputHdl, const KeyEvent&, bool);
+ DECL_LINK(SelectHdl, weld::ComboBox&, void);
+ DECL_LINK(FocusOutHdl, weld::Widget&, void);
};
typedef ::cppu::ImplHelper1 < css::lang::XServiceInfo> ElementSelectorToolbarController_BASE;