diff options
Diffstat (limited to 'vcl/inc/ilstbox.hxx')
-rw-r--r-- | vcl/inc/ilstbox.hxx | 115 |
1 files changed, 58 insertions, 57 deletions
diff --git a/vcl/inc/ilstbox.hxx b/vcl/inc/ilstbox.hxx index 0efc7e12988b..dfab1ad7185b 100644 --- a/vcl/inc/ilstbox.hxx +++ b/vcl/inc/ilstbox.hxx @@ -87,7 +87,7 @@ struct ImplEntryType class ImplEntryList { private: - vcl::Window* mpWindow; ///< For getting the current locale when matching strings + VclPtr<vcl::Window> mpWindow; ///< For getting the current locale when matching strings sal_Int32 mnLastSelected; sal_Int32 mnSelectionAnchor; sal_Int32 mnImages; @@ -266,7 +266,8 @@ public: virtual void FillLayoutData() const SAL_OVERRIDE; ImplListBoxWindow( vcl::Window* pParent, WinBits nWinStyle ); - virtual ~ImplListBoxWindow(); + virtual ~ImplListBoxWindow(); + virtual void dispose() SAL_OVERRIDE; ImplEntryList* GetEntryList() const { return mpEntryList; } @@ -380,10 +381,10 @@ protected: class ImplListBox : public Control { private: - ImplListBoxWindow maLBWindow; - ScrollBar* mpHScrollBar; - ScrollBar* mpVScrollBar; - ScrollBarBox* mpScrollBarBox; + VclPtr<ImplListBoxWindow> maLBWindow; + VclPtr<ScrollBar> mpHScrollBar; + VclPtr<ScrollBar> mpVScrollBar; + VclPtr<ScrollBarBox> mpScrollBarBox; /// bitfield bool mbVScroll : 1; // VScroll an oder aus @@ -412,9 +413,10 @@ protected: public: ImplListBox( vcl::Window* pParent, WinBits nWinStyle ); virtual ~ImplListBox(); + virtual void dispose() SAL_OVERRIDE; - const ImplEntryList* GetEntryList() const { return maLBWindow.GetEntryList(); } - ImplListBoxWindow& GetMainWindow() { return maLBWindow; } + const ImplEntryList* GetEntryList() const { return maLBWindow->GetEntryList(); } + ImplListBoxWindow* GetMainWindow() { return maLBWindow.get(); } virtual void Resize() SAL_OVERRIDE; virtual const Wallpaper& GetDisplayBackground() const SAL_OVERRIDE; @@ -423,91 +425,91 @@ public: sal_Int32 InsertEntry( sal_Int32 nPos, const OUString& rStr ); sal_Int32 InsertEntry( sal_Int32 nPos, const OUString& rStr, const Image& rImage ); void RemoveEntry( sal_Int32 nPos ); - void SetEntryData( sal_Int32 nPos, void* pNewData ) { maLBWindow.GetEntryList()->SetEntryData( nPos, pNewData ); } + void SetEntryData( sal_Int32 nPos, void* pNewData ) { maLBWindow->GetEntryList()->SetEntryData( nPos, pNewData ); } void Clear(); void SetEntryFlags( sal_Int32 nPos, long nFlags ); void SelectEntry( sal_Int32 nPos, bool bSelect ); void SetNoSelection(); - void ResetCurrentPos() { maLBWindow.ResetCurrentPos(); } - sal_Int32 GetCurrentPos() const { return maLBWindow.GetCurrentPos(); } + void ResetCurrentPos() { maLBWindow->ResetCurrentPos(); } + sal_Int32 GetCurrentPos() const { return maLBWindow->GetCurrentPos(); } - bool ProcessKeyInput( const KeyEvent& rKEvt ) { return maLBWindow.ProcessKeyInput( rKEvt ); } + bool ProcessKeyInput( const KeyEvent& rKEvt ) { return maLBWindow->ProcessKeyInput( rKEvt ); } bool HandleWheelAsCursorTravel( const CommandEvent& rCEvt ); - void SetSeparatorPos( sal_Int32 n ) { maLBWindow.SetSeparatorPos( n ); } - sal_Int32 GetSeparatorPos() const { return maLBWindow.GetSeparatorPos(); } + void SetSeparatorPos( sal_Int32 n ) { maLBWindow->SetSeparatorPos( n ); } + sal_Int32 GetSeparatorPos() const { return maLBWindow->GetSeparatorPos(); } - void SetTopEntry( sal_Int32 nTop ) { maLBWindow.SetTopEntry( nTop ); } - sal_Int32 GetTopEntry() const { return maLBWindow.GetTopEntry(); } - void ShowProminentEntry( sal_Int32 nPos ) { maLBWindow.ShowProminentEntry( nPos ); } + void SetTopEntry( sal_Int32 nTop ) { maLBWindow->SetTopEntry( nTop ); } + sal_Int32 GetTopEntry() const { return maLBWindow->GetTopEntry(); } + void ShowProminentEntry( sal_Int32 nPos ) { maLBWindow->ShowProminentEntry( nPos ); } using Window::IsVisible; - bool IsVisible( sal_Int32 nEntry ) const { return maLBWindow.IsVisible( nEntry ); } + bool IsVisible( sal_Int32 nEntry ) const { return maLBWindow->IsVisible( nEntry ); } - void SetProminentEntryType( ProminentEntry eType ) { maLBWindow.SetProminentEntryType( eType ); } - ProminentEntry GetProminentEntryType() const { return maLBWindow.GetProminentEntryType(); } + void SetProminentEntryType( ProminentEntry eType ) { maLBWindow->SetProminentEntryType( eType ); } + ProminentEntry GetProminentEntryType() const { return maLBWindow->GetProminentEntryType(); } - long GetLeftIndent() const { return maLBWindow.GetLeftIndent(); } - void SetLeftIndent( sal_uInt16 n ) { maLBWindow.SetLeftIndent( n ); } - void ScrollHorz( short nDiff ) { maLBWindow.ScrollHorz( nDiff ); } + long GetLeftIndent() const { return maLBWindow->GetLeftIndent(); } + void SetLeftIndent( sal_uInt16 n ) { maLBWindow->SetLeftIndent( n ); } + void ScrollHorz( short nDiff ) { maLBWindow->ScrollHorz( nDiff ); } - void SetTravelSelect( bool bTravelSelect ) { maLBWindow.SetTravelSelect( bTravelSelect ); } - bool IsTravelSelect() const { return maLBWindow.IsTravelSelect(); } - bool IsTrackingSelect() const { return maLBWindow.IsTrackingSelect(); } + void SetTravelSelect( bool bTravelSelect ) { maLBWindow->SetTravelSelect( bTravelSelect ); } + bool IsTravelSelect() const { return maLBWindow->IsTravelSelect(); } + bool IsTrackingSelect() const { return maLBWindow->IsTrackingSelect(); } - void EnableMultiSelection( bool bMulti, bool bStackMode ) { maLBWindow.EnableMultiSelection( bMulti, bStackMode ); } - bool IsMultiSelectionEnabled() const { return maLBWindow.IsMultiSelectionEnabled(); } + void EnableMultiSelection( bool bMulti, bool bStackMode ) { maLBWindow->EnableMultiSelection( bMulti, bStackMode ); } + bool IsMultiSelectionEnabled() const { return maLBWindow->IsMultiSelectionEnabled(); } - void SetMultiSelectionSimpleMode( bool bSimple ) { maLBWindow.SetMultiSelectionSimpleMode( bSimple ); } - bool IsMultiSelectionSimpleMode() const { return maLBWindow.IsMultiSelectionSimpleMode(); } + void SetMultiSelectionSimpleMode( bool bSimple ) { maLBWindow->SetMultiSelectionSimpleMode( bSimple ); } + bool IsMultiSelectionSimpleMode() const { return maLBWindow->IsMultiSelectionSimpleMode(); } - void SetReadOnly( bool b ) { maLBWindow.SetReadOnly( b ); } - bool IsReadOnly() const { return maLBWindow.IsReadOnly(); } + void SetReadOnly( bool b ) { maLBWindow->SetReadOnly( b ); } + bool IsReadOnly() const { return maLBWindow->IsReadOnly(); } - Size CalcSize( sal_Int32 nMaxLines ) const { return maLBWindow.CalcSize( nMaxLines ); } - long GetEntryHeight() const { return maLBWindow.GetEntryHeight(); } - long GetMaxEntryWidth() const { return maLBWindow.GetMaxEntryWidth(); } + Size CalcSize( sal_Int32 nMaxLines ) const { return maLBWindow->CalcSize( nMaxLines ); } + long GetEntryHeight() const { return maLBWindow->GetEntryHeight(); } + long GetMaxEntryWidth() const { return maLBWindow->GetMaxEntryWidth(); } void SetScrollHdl( const Link& rLink ) { maScrollHdl = rLink; } const Link& GetScrollHdl() const { return maScrollHdl; } - void SetSelectHdl( const Link& rLink ) { maLBWindow.SetSelectHdl( rLink ); } - const Link& GetSelectHdl() const { return maLBWindow.GetSelectHdl(); } - void SetCancelHdl( const Link& rLink ) { maLBWindow.SetCancelHdl( rLink ); } - const Link& GetCancelHdl() const { return maLBWindow.GetCancelHdl(); } - void SetDoubleClickHdl( const Link& rLink ) { maLBWindow.SetDoubleClickHdl( rLink ); } - const Link& GetDoubleClickHdl() const { return maLBWindow.GetDoubleClickHdl(); } + void SetSelectHdl( const Link& rLink ) { maLBWindow->SetSelectHdl( rLink ); } + const Link& GetSelectHdl() const { return maLBWindow->GetSelectHdl(); } + void SetCancelHdl( const Link& rLink ) { maLBWindow->SetCancelHdl( rLink ); } + const Link& GetCancelHdl() const { return maLBWindow->GetCancelHdl(); } + void SetDoubleClickHdl( const Link& rLink ) { maLBWindow->SetDoubleClickHdl( rLink ); } + const Link& GetDoubleClickHdl() const { return maLBWindow->GetDoubleClickHdl(); } boost::signals2::signal< void ( UserDrawEvent* ) > userDrawSignal; - void SetFocusHdl( const Link& rLink ) { maLBWindow.SetFocusHdl( rLink ); } - const Link& GetFocusHdl() const { return maLBWindow.GetFocusHdl(); } - void SetListItemSelectHdl( const Link& rLink ) { maLBWindow.SetListItemSelectHdl( rLink ); } - const Link& GetListItemSelectHdl() const { return maLBWindow.GetListItemSelectHdl(); } - void SetSelectionChangedHdl( const Link& rLnk ) { maLBWindow.GetEntryList()->SetSelectionChangedHdl( rLnk ); } - void SetCallSelectionChangedHdl( bool bCall ) { maLBWindow.GetEntryList()->SetCallSelectionChangedHdl( bCall ); } - bool IsSelectionChanged() const { return maLBWindow.IsSelectionChanged(); } - sal_uInt16 GetSelectModifier() const { return maLBWindow.GetSelectModifier(); } + void SetFocusHdl( const Link& rLink ) { maLBWindow->SetFocusHdl( rLink ); } + const Link& GetFocusHdl() const { return maLBWindow->GetFocusHdl(); } + void SetListItemSelectHdl( const Link& rLink ) { maLBWindow->SetListItemSelectHdl( rLink ); } + const Link& GetListItemSelectHdl() const { return maLBWindow->GetListItemSelectHdl(); } + void SetSelectionChangedHdl( const Link& rLnk ) { maLBWindow->GetEntryList()->SetSelectionChangedHdl( rLnk ); } + void SetCallSelectionChangedHdl( bool bCall ) { maLBWindow->GetEntryList()->SetCallSelectionChangedHdl( bCall ); } + bool IsSelectionChanged() const { return maLBWindow->IsSelectionChanged(); } + sal_uInt16 GetSelectModifier() const { return maLBWindow->GetSelectModifier(); } void SetMRUEntries( const OUString& rEntries, sal_Unicode cSep ); OUString GetMRUEntries( sal_Unicode cSep ) const; - void SetMaxMRUCount( sal_Int32 n ) { maLBWindow.GetEntryList()->SetMaxMRUCount( n ); } - sal_Int32 GetMaxMRUCount() const { return maLBWindow.GetEntryList()->GetMaxMRUCount(); } + void SetMaxMRUCount( sal_Int32 n ) { maLBWindow->GetEntryList()->SetMaxMRUCount( n ); } + sal_Int32 GetMaxMRUCount() const { return maLBWindow->GetEntryList()->GetMaxMRUCount(); } sal_uInt16 GetDisplayLineCount() const - { return maLBWindow.GetDisplayLineCount(); } + { return maLBWindow->GetDisplayLineCount(); } bool GetEdgeBlending() const { return mbEdgeBlending; } void SetEdgeBlending(bool bNew); /// pb: #106948# explicit mirroring for calc - inline void EnableMirroring() { maLBWindow.EnableMirroring(); } + inline void EnableMirroring() { maLBWindow->EnableMirroring(); } inline void SetDropTraget(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& i_xDNDListenerContainer){ mxDNDListenerContainer= i_xDNDListenerContainer; } }; class ImplListBoxFloatingWindow : public FloatingWindow { private: - ImplListBox* mpImplLB; + VclPtr<ImplListBox> mpImplLB; Size maPrefSz; sal_uInt16 mnDDLineCount; sal_Int32 mnPopupModeStartSaveSelection; @@ -518,7 +520,8 @@ protected: public: ImplListBoxFloatingWindow( vcl::Window* pParent ); - + virtual ~ImplListBoxFloatingWindow(); + virtual void dispose() SAL_OVERRIDE; void SetImplListBox( ImplListBox* pLB ) { mpImplLB = pLB; } void SetPrefSize( const Size& rSz ) { maPrefSz = rSz; } @@ -565,7 +568,6 @@ protected: public: ImplWin( vcl::Window* pParent, WinBits nWinStyle = 0 ); - virtual ~ImplWin() {}; virtual void MouseButtonDown( const MouseEvent& rMEvt ) SAL_OVERRIDE; virtual void Paint( const Rectangle& rRect ) SAL_OVERRIDE; @@ -607,7 +609,6 @@ private: public: ImplBtn( vcl::Window* pParent, WinBits nWinStyle = 0 ); - virtual ~ImplBtn() {}; virtual void MouseButtonDown( const MouseEvent& rMEvt ) SAL_OVERRIDE; void MBDown(); |