diff options
author | Noel Grandin <noel@peralex.com> | 2015-01-16 15:29:28 +0200 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2015-04-09 21:34:32 +0100 |
commit | 97eacd1d5581395de8801e5ba962044132575218 (patch) | |
tree | 05d4996a45cfd479e16f8bfacf33d7b40b5d368b /dbaccess/source/ui/tabledesign/TableDesignView.cxx | |
parent | 7f7617765cf1f4a16022f47fedb018bf49802a08 (diff) |
vcl: VclPtr conversion in dbaccess
Change-Id: I85fce0403121ffe55204d78445e4809960ec404a
Diffstat (limited to 'dbaccess/source/ui/tabledesign/TableDesignView.cxx')
-rw-r--r-- | dbaccess/source/ui/tabledesign/TableDesignView.cxx | 32 |
1 files changed, 22 insertions, 10 deletions
diff --git a/dbaccess/source/ui/tabledesign/TableDesignView.cxx b/dbaccess/source/ui/tabledesign/TableDesignView.cxx index 996a84c0e162..9cf37d80df9e 100644 --- a/dbaccess/source/ui/tabledesign/TableDesignView.cxx +++ b/dbaccess/source/ui/tabledesign/TableDesignView.cxx @@ -42,7 +42,7 @@ using namespace ::com::sun::star::beans; // class OTableBorderWindow OTableBorderWindow::OTableBorderWindow(vcl::Window* pParent) : Window(pParent,WB_BORDER) - ,m_aHorzSplitter( this ) + ,m_aHorzSplitter( new Splitter(this) ) { ImplInitSettings( true, true, true ); @@ -56,12 +56,17 @@ OTableBorderWindow::OTableBorderWindow(vcl::Window* pParent) : Window(pParent,WB m_pEditorCtrl->SetDescrWin(m_pFieldDescWin); // Splitter einrichten - m_aHorzSplitter.SetSplitHdl( LINK(this, OTableBorderWindow, SplitHdl) ); - m_aHorzSplitter.Show(); + m_aHorzSplitter->SetSplitHdl( LINK(this, OTableBorderWindow, SplitHdl) ); + m_aHorzSplitter->Show(); } OTableBorderWindow::~OTableBorderWindow() { + dispose(); +} + +void OTableBorderWindow::dispose() +{ // Children zerstoeren // ::dbaui::notifySystemWindow(this,m_pFieldDescWin,::comphelper::mem_fun(&TaskPaneList::RemoveWindow)); m_pEditorCtrl->Hide(); @@ -75,7 +80,8 @@ OTableBorderWindow::~OTableBorderWindow() boost::scoped_ptr<vcl::Window> aTemp(m_pFieldDescWin); m_pFieldDescWin = NULL; } - + m_aHorzSplitter.disposeAndClear(); + vcl::Window::dispose(); } void OTableBorderWindow::Resize() @@ -86,18 +92,18 @@ void OTableBorderWindow::Resize() Size aOutputSize( GetOutputSize() ); long nOutputWidth = aOutputSize.Width(); long nOutputHeight = aOutputSize.Height(); - long nSplitPos = m_aHorzSplitter.GetSplitPosPixel(); + long nSplitPos = m_aHorzSplitter->GetSplitPosPixel(); // Verschiebebereich Splitter mittleres Drittel des Outputs long nDragPosY = nOutputHeight/3; long nDragSizeHeight = nOutputHeight/3; - m_aHorzSplitter.SetDragRectPixel( Rectangle(Point(0,nDragPosY), Size(nOutputWidth,nDragSizeHeight) ), this ); + m_aHorzSplitter->SetDragRectPixel( Rectangle(Point(0,nDragPosY), Size(nOutputWidth,nDragSizeHeight) ), this ); if( (nSplitPos < nDragPosY) || (nSplitPos > (nDragPosY+nDragSizeHeight)) ) nSplitPos = nDragPosY+nDragSizeHeight-5; // Splitter setzen - m_aHorzSplitter.SetPosSizePixel( Point( 0, nSplitPos ), Size(nOutputWidth, nSplitterHeight)); - m_aHorzSplitter.SetSplitPosPixel( nSplitPos ); + m_aHorzSplitter->SetPosSizePixel( Point( 0, nSplitPos ), Size(nOutputWidth, nSplitterHeight)); + m_aHorzSplitter->SetSplitPosPixel( nSplitPos ); // Fenster setzen m_pEditorCtrl->SetPosSizePixel( Point(0, 0), Size(nOutputWidth , nSplitPos) ); @@ -108,9 +114,9 @@ void OTableBorderWindow::Resize() IMPL_LINK( OTableBorderWindow, SplitHdl, Splitter*, pSplit ) { - if(pSplit == &m_aHorzSplitter) + if(pSplit == m_aHorzSplitter.get()) { - m_aHorzSplitter.SetPosPixel( Point( m_aHorzSplitter.GetPosPixel().X(),m_aHorzSplitter.GetSplitPosPixel() ) ); + m_aHorzSplitter->SetPosPixel( Point( m_aHorzSplitter->GetPosPixel().X(),m_aHorzSplitter->GetSplitPosPixel() ) ); Resize(); } return 0; @@ -190,12 +196,18 @@ OTableDesignView::OTableDesignView( vcl::Window* pParent, OTableDesignView::~OTableDesignView() { + dispose(); +} + +void OTableDesignView::dispose() +{ m_pWin->Hide(); { boost::scoped_ptr<vcl::Window> aTemp(m_pWin); m_pWin = NULL; } + ODataView::dispose(); } void OTableDesignView::initialize() |