summaryrefslogtreecommitdiffstats
path: root/cui/source/tabpages/grfpage.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'cui/source/tabpages/grfpage.cxx')
-rw-r--r--cui/source/tabpages/grfpage.cxx27
1 files changed, 11 insertions, 16 deletions
diff --git a/cui/source/tabpages/grfpage.cxx b/cui/source/tabpages/grfpage.cxx
index be6df3cd25a0..b833b5095500 100644
--- a/cui/source/tabpages/grfpage.cxx
+++ b/cui/source/tabpages/grfpage.cxx
@@ -87,7 +87,7 @@ SvxGrfCropPage::SvxGrfCropPage ( vcl::Window *pParent, const SfxItemSet &rSet )
SetFieldUnit( *m_pTopMF , eMetric );
SetFieldUnit( *m_pBottomMF, eMetric );
- Link<> aLk = LINK(this, SvxGrfCropPage, SizeHdl);
+ Link<Edit&,void> aLk = LINK(this, SvxGrfCropPage, SizeHdl);
m_pWidthMF->SetModifyHdl( aLk );
m_pHeightMF->SetModifyHdl( aLk );
@@ -414,19 +414,19 @@ SfxTabPage::sfxpg SvxGrfCropPage::DeactivatePage(SfxItemSet *_pSet)
description: scale changed, adjust size
--------------------------------------------------------------------*/
-IMPL_LINK( SvxGrfCropPage, ZoomHdl, MetricField *, pField )
+IMPL_LINK_TYPED( SvxGrfCropPage, ZoomHdl, Edit&, rField, void )
{
SfxItemPool* pPool = GetItemSet().GetPool();
DBG_ASSERT( pPool, "Wo ist der Pool" );
FieldUnit eUnit = MapToFieldUnit( pPool->GetMetric( pPool->GetWhich(
SID_ATTR_GRAF_CROP ) ) );
- if( pField == m_pWidthZoomMF )
+ if( &rField == m_pWidthZoomMF )
{
long nLRBorders = lcl_GetValue(*m_pLeftMF, eUnit)
+lcl_GetValue(*m_pRightMF, eUnit);
m_pWidthMF->SetValue( m_pWidthMF->Normalize(
- ((aOrigSize.Width() - nLRBorders) * pField->GetValue())/100L),
+ ((aOrigSize.Width() - nLRBorders) * static_cast<MetricField&>(rField).GetValue())/100L),
eUnit);
}
else
@@ -434,18 +434,16 @@ IMPL_LINK( SvxGrfCropPage, ZoomHdl, MetricField *, pField )
long nULBorders = lcl_GetValue(*m_pTopMF, eUnit)
+lcl_GetValue(*m_pBottomMF, eUnit);
m_pHeightMF->SetValue( m_pHeightMF->Normalize(
- ((aOrigSize.Height() - nULBorders ) * pField->GetValue())/100L) ,
+ ((aOrigSize.Height() - nULBorders ) * static_cast<MetricField&>(rField).GetValue())/100L) ,
eUnit );
}
-
- return 0;
}
/*--------------------------------------------------------------------
description: change size, adjust scale
--------------------------------------------------------------------*/
-IMPL_LINK( SvxGrfCropPage, SizeHdl, MetricField *, pField )
+IMPL_LINK_TYPED( SvxGrfCropPage, SizeHdl, Edit&, rField, void )
{
SfxItemPool* pPool = GetItemSet().GetPool();
DBG_ASSERT( pPool, "Wo ist der Pool" );
@@ -455,7 +453,7 @@ IMPL_LINK( SvxGrfCropPage, SizeHdl, MetricField *, pField )
Size aSize( lcl_GetValue(*m_pWidthMF, eUnit),
lcl_GetValue(*m_pHeightMF, eUnit) );
- if(pField == m_pWidthMF)
+ if(&rField == m_pWidthMF)
{
long nWidth = aOrigSize.Width() -
( lcl_GetValue(*m_pLeftMF, eUnit) +
@@ -475,8 +473,6 @@ IMPL_LINK( SvxGrfCropPage, SizeHdl, MetricField *, pField )
sal_uInt16 nZoom = (sal_uInt16)( aSize.Height() * 100L/ nHeight);
m_pHeightZoomMF->SetValue(nZoom);
}
-
- return 0;
}
/*--------------------------------------------------------------------
@@ -525,7 +521,7 @@ IMPL_LINK_TYPED( SvxGrfCropPage, CropHdl, SpinField&, rField, void )
if(bZoom)
{
// scale stays, recompute width
- ZoomHdl(m_pWidthZoomMF);
+ ZoomHdl(*m_pWidthZoomMF);
}
}
else
@@ -554,7 +550,7 @@ IMPL_LINK_TYPED( SvxGrfCropPage, CropHdl, SpinField&, rField, void )
if(bZoom)
{
// scale stays, recompute height
- ZoomHdl(m_pHeightZoomMF);
+ ZoomHdl(*m_pHeightZoomMF);
}
}
m_pExampleWN->Invalidate();
@@ -747,11 +743,10 @@ IMPL_LINK_TYPED( SvxGrfCropPage, CropLoseFocusHdl, Control&, rControl, void )
}
-IMPL_LINK( SvxGrfCropPage, CropModifyHdl, MetricField *, pField )
+IMPL_LINK_TYPED( SvxGrfCropPage, CropModifyHdl, Edit&, rField, void )
{
aTimer.Start();
- pLastCropField = pField;
- return 0;
+ pLastCropField = static_cast<MetricField*>(&rField);
}
Size SvxGrfCropPage::GetGrfOrigSize( const Graphic& rGrf ) const