[Libreoffice-commits] core.git: sc/inc sc/source
Eike Rathke
erack at redhat.com
Wed Mar 8 17:15:37 UTC 2017
sc/inc/postit.hxx | 2 +-
sc/source/core/data/postit.cxx | 7 +++----
sc/source/ui/inc/notemark.hxx | 4 ++--
sc/source/ui/view/notemark.cxx | 19 +++++++++----------
4 files changed, 15 insertions(+), 17 deletions(-)
New commits:
commit f8056369f0da33ceedc18ffeea3448ad8c309f9d
Author: Eike Rathke <erack at redhat.com>
Date: Wed Mar 8 18:14:29 2017 +0100
let ScNoteUtil::CreateTempCaption() return ScCaptionPtr
Change-Id: Idcb7fc24a13d650d88bec9ba359d7c78006096ec
diff --git a/sc/inc/postit.hxx b/sc/inc/postit.hxx
index 6e49727..7cdb5e0 100644
--- a/sc/inc/postit.hxx
+++ b/sc/inc/postit.hxx
@@ -249,7 +249,7 @@ class SC_DLLPUBLIC ScNoteUtil
public:
/** Creates and returns a caption object for a temporary caption. */
- static SdrCaptionObj* CreateTempCaption( ScDocument& rDoc, const ScAddress& rPos,
+ static ScCaptionPtr CreateTempCaption( ScDocument& rDoc, const ScAddress& rPos,
SdrPage& rDrawPage, const OUString& rUserText,
const Rectangle& rVisRect, bool bTailFront );
diff --git a/sc/source/core/data/postit.cxx b/sc/source/core/data/postit.cxx
index b4ec948..0e840e7 100644
--- a/sc/source/core/data/postit.cxx
+++ b/sc/source/core/data/postit.cxx
@@ -1078,7 +1078,7 @@ void ScPostIt::RemoveCaption()
maNoteData.mxCaption.reset(nullptr);
}
-SdrCaptionObj* ScNoteUtil::CreateTempCaption(
+ScCaptionPtr ScNoteUtil::CreateTempCaption(
ScDocument& rDoc, const ScAddress& rPos, SdrPage& rDrawPage,
const OUString& rUserText, const Rectangle& rVisRect, bool bTailFront )
{
@@ -1095,7 +1095,7 @@ SdrCaptionObj* ScNoteUtil::CreateTempCaption(
// create a caption if any text exists
if( !pNoteCaption && aBuffer.isEmpty() )
- return nullptr;
+ return ScCaptionPtr();
// prepare visible rectangle (add default distance to all borders)
Rectangle aVisRect(
@@ -1138,9 +1138,8 @@ SdrCaptionObj* ScNoteUtil::CreateTempCaption(
// move caption into visible area
aCreator.AutoPlaceCaption( &aVisRect );
- // The caption object returned is completely unmanaged and stored elsewhere.
// XXX Note it is already inserted to the draw page.
- return aCreator.GetCaption().release();
+ return aCreator.GetCaption();
}
ScPostIt* ScNoteUtil::CreateNoteFromCaption(
diff --git a/sc/source/ui/inc/notemark.hxx b/sc/source/ui/inc/notemark.hxx
index 2d83b8f..b02bf81 100644
--- a/sc/source/ui/inc/notemark.hxx
+++ b/sc/source/ui/inc/notemark.hxx
@@ -24,9 +24,9 @@
#include <vcl/timer.hxx>
#include "global.hxx"
#include "address.hxx"
+#include "postit.hxx"
class SdrModel;
-class SdrObject;
class ScNoteMarker
{
@@ -46,7 +46,7 @@ private:
Rectangle aRect;
SdrModel* pModel;
- SdrObject* pObject;
+ ScCaptionPtr mxObject;
bool bVisible;
Point aGridOff;
DECL_LINK( TimeHdl, Timer*, void );
diff --git a/sc/source/ui/view/notemark.cxx b/sc/source/ui/view/notemark.cxx
index eb16c49..5a27c31 100644
--- a/sc/source/ui/view/notemark.cxx
+++ b/sc/source/ui/view/notemark.cxx
@@ -48,7 +48,6 @@ ScNoteMarker::ScNoteMarker( vcl::Window* pWin, vcl::Window* pRight, vcl::Window*
bLeft( bLeftEdge ),
bByKeyboard( bKeyboard ),
pModel( nullptr ),
- pObject( nullptr ),
bVisible( false )
{
Size aSizePixel = pWindow->GetOutputSizePixel();
@@ -94,11 +93,11 @@ IMPL_LINK_NOARG(ScNoteMarker, TimeHdl, Timer *, void)
if( SdrPage* pPage = pModel->AllocPage( false ) )
{
- pObject = ScNoteUtil::CreateTempCaption( *pDoc, aDocPos, *pPage, aUserText, aVisRect, bLeft );
- if( pObject )
+ mxObject = ScNoteUtil::CreateTempCaption( *pDoc, aDocPos, *pPage, aUserText, aVisRect, bLeft );
+ if( mxObject )
{
- pObject->SetGridOffset( aGridOff );
- aRect = pObject->GetCurrentBoundRect();
+ mxObject->SetGridOffset( aGridOff );
+ aRect = mxObject->GetCurrentBoundRect();
}
// Insert page so that the model recognise it and also deleted
@@ -141,21 +140,21 @@ static MapMode lcl_MoveMapMode( const MapMode& rMap, const Size& rMove )
void ScNoteMarker::Draw()
{
- if ( pObject && bVisible )
+ if ( mxObject && bVisible )
{
- lcl_DrawWin( pObject, pWindow, aMapMode );
+ lcl_DrawWin( mxObject.get(), pWindow, aMapMode );
if ( pRightWin || pBottomWin )
{
Size aWinSize = pWindow->PixelToLogic( pWindow->GetOutputSizePixel(), aMapMode );
if ( pRightWin )
- lcl_DrawWin( pObject, pRightWin,
+ lcl_DrawWin( mxObject.get(), pRightWin,
lcl_MoveMapMode( aMapMode, Size( aWinSize.Width(), 0 ) ) );
if ( pBottomWin )
- lcl_DrawWin( pObject, pBottomWin,
+ lcl_DrawWin( mxObject.get(), pBottomWin,
lcl_MoveMapMode( aMapMode, Size( 0, aWinSize.Height() ) ) );
if ( pDiagWin )
- lcl_DrawWin( pObject, pDiagWin, lcl_MoveMapMode( aMapMode, aWinSize ) );
+ lcl_DrawWin( mxObject.get(), pDiagWin, lcl_MoveMapMode( aMapMode, aWinSize ) );
}
}
}
More information about the Libreoffice-commits
mailing list