forked from amazingfate/loongoffice
afl-eventtesting + VclPtr: missing dispose on impress annotation window
regression from
commit c72fac269626cd4c2c3f62a6eed69e47b59256a4
Date: Mon Mar 16 12:17:44 2015 +0200
vclwidget: convert lots more sites to use VclPtr
Change-Id: Iac6a83003d9c395589acdc23fe511d2bb47e91ee
This commit is contained in:
@ -566,9 +566,9 @@ void AnnotationTag::OpenPopup( bool bEdit )
|
||||
|
||||
if( !mpAnnotationWindow.get() )
|
||||
{
|
||||
vcl::Window* pWindow = dynamic_cast< vcl::Window* >( getView().GetFirstOutputDevice() );
|
||||
if( pWindow )
|
||||
{
|
||||
vcl::Window* pWindow = dynamic_cast< vcl::Window* >( getView().GetFirstOutputDevice() );
|
||||
if( pWindow )
|
||||
{
|
||||
RealPoint2D aPosition( mxAnnotation->getPosition() );
|
||||
Point aPos( pWindow->OutputToScreenPixel( pWindow->LogicToPixel( Point( static_cast<long>(aPosition.X * 100.0), static_cast<long>(aPosition.Y * 100.0) ) ) ) );
|
||||
|
||||
@ -604,7 +604,7 @@ void AnnotationTag::ClosePopup()
|
||||
{
|
||||
mpAnnotationWindow->RemoveEventListener( LINK(this, AnnotationTag, WindowEventHandler));
|
||||
mpAnnotationWindow->Deactivate();
|
||||
mpAnnotationWindow.reset();
|
||||
mpAnnotationWindow.disposeAndClear();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -82,7 +82,7 @@ private:
|
||||
VclPtr<AnnotationWindow> mpAnnotationWindow;
|
||||
Color maColor;
|
||||
int mnIndex;
|
||||
const vcl::Font& mrFont;
|
||||
const vcl::Font& mrFont;
|
||||
Size maSize;
|
||||
ImplSVEvent * mnClosePopupEvent;
|
||||
VclPtr<vcl::Window> mpListenWindow;
|
||||
|
||||
Reference in New Issue
Block a user