summaryrefslogtreecommitdiff
path: root/cui/source/tabpages/transfrm.cxx
diff options
context:
space:
mode:
authorTomaž Vajngerl <quikee@gmail.com>2012-09-26 21:20:27 +0200
committerTomaž Vajngerl <quikee@gmail.com>2012-09-26 21:22:41 +0200
commit0cd97e8c33c49a6c44d26ba309493dbfec00eb8d (patch)
treef6fa8a08f4564058eaac2238fff075c5769df9b9 /cui/source/tabpages/transfrm.cxx
parent70412d0f3f7979d3d069be8121d49dbb96775cce (diff)
Change the image rotation widget to better looking DialControl
Change-Id: Ie11827a924a5b22d86bad24aa7f14a66b870e90c
Diffstat (limited to 'cui/source/tabpages/transfrm.cxx')
-rw-r--r--cui/source/tabpages/transfrm.cxx61
1 files changed, 10 insertions, 51 deletions
diff --git a/cui/source/tabpages/transfrm.cxx b/cui/source/tabpages/transfrm.cxx
index 57daf104f89e..54d32d81e558 100644
--- a/cui/source/tabpages/transfrm.cxx
+++ b/cui/source/tabpages/transfrm.cxx
@@ -228,10 +228,9 @@ SvxAngleTabPage::SvxAngleTabPage( Window* pParent, const SfxItemSet& rInAttrs )
aFlAngle ( this, CUI_RES( FL_ANGLE ) ),
aFtAngle ( this, CUI_RES( FT_ANGLE ) ),
- aMtrAngle ( this, CUI_RES( MTR_FLD_ANGLE ) ),
+ maNfAngle ( this, CUI_RES( NF_ANGLE ) ),
aFtAnglePresets ( this, CUI_RES(FT_ANGLEPRESETS) ),
- aCtlAngle ( this, CUI_RES( CTL_ANGLE ),
- RP_RB, 200, 80, CS_ANGLE ),
+ aCtlAngle ( this, CUI_RES( CTL_ANGLE ) ),
rOutAttrs ( rInAttrs )
{
FreeResource();
@@ -241,12 +240,11 @@ SvxAngleTabPage::SvxAngleTabPage( Window* pParent, const SfxItemSet& rInAttrs )
DBG_ASSERT( pPool, "no pool (!)" );
ePoolUnit = pPool->GetMetric(SID_ATTR_TRANSFORM_POS_X);
- aMtrAngle.SetModifyHdl(LINK( this, SvxAngleTabPage, ModifiedHdl));
-
aCtlRect.SetAccessibleRelationLabeledBy(&aFtPosPresets);
aCtlRect.SetAccessibleRelationMemberOf(&aFlPosition);
aCtlAngle.SetAccessibleRelationLabeledBy(&aFtAnglePresets);
aCtlAngle.SetAccessibleRelationMemberOf(&aFlAngle);
+ aCtlAngle.SetLinkedField( &maNfAngle );
}
// -----------------------------------------------------------------------
@@ -303,29 +301,27 @@ void SvxAngleTabPage::Construct()
aCtlRect.Disable();
aFlAngle.Disable();
aFtAngle.Disable();
- aMtrAngle.Disable();
+ maNfAngle.Disable();
aFtAnglePresets.Disable();
aCtlAngle.Disable();
}
}
-// -----------------------------------------------------------------------
-
sal_Bool SvxAngleTabPage::FillItemSet(SfxItemSet& rSet)
{
sal_Bool bModified = sal_False;
- if(aMtrAngle.IsValueModified() || aMtrPosX.IsValueModified() || aMtrPosY.IsValueModified())
+ if(aCtlAngle.IsValueModified() || aMtrPosX.IsValueModified() || aMtrPosY.IsValueModified())
{
const double fUIScale(double(pView->GetModel()->GetUIScale()));
const double fTmpX((GetCoreValue(aMtrPosX, ePoolUnit) + maAnchor.getX()) * fUIScale);
const double fTmpY((GetCoreValue(aMtrPosY, ePoolUnit) + maAnchor.getY()) * fUIScale);
- rSet.Put(SfxInt32Item(GetWhich(SID_ATTR_TRANSFORM_ANGLE), static_cast<sal_Int32>(aMtrAngle.GetValue())));
+ rSet.Put(SfxInt32Item(GetWhich(SID_ATTR_TRANSFORM_ANGLE), aCtlAngle.GetRotation()));
rSet.Put(SfxInt32Item(GetWhich(SID_ATTR_TRANSFORM_ROT_X), basegfx::fround(fTmpX)));
rSet.Put(SfxInt32Item(GetWhich(SID_ATTR_TRANSFORM_ROT_Y), basegfx::fround(fTmpY)));
- bModified |= sal_True;
+ bModified = sal_True;
}
return bModified;
@@ -362,15 +358,13 @@ void SvxAngleTabPage::Reset(const SfxItemSet& rAttrs)
pItem = GetItem( rAttrs, SID_ATTR_TRANSFORM_ANGLE );
if(pItem)
{
- aMtrAngle.SetValue(((const SfxInt32Item*)pItem)->GetValue());
+ aCtlAngle.SetRotation(((const SfxInt32Item*)pItem)->GetValue());
}
else
{
- aMtrAngle.SetText( String() );
+ aCtlAngle.SetRotation(0);
}
-
- aMtrAngle.SaveValue();
- ModifiedHdl(this);
+ aCtlAngle.SaveValue();
}
// -----------------------------------------------------------------------
@@ -469,41 +463,6 @@ void SvxAngleTabPage::PointChanged(Window* pWindow, RECT_POINT eRP)
}
}
}
- else if(pWindow == &aCtlAngle)
- {
- switch( eRP )
- {
- case RP_LT: aMtrAngle.SetUserValue( 13500, FUNIT_NONE ); break;
- case RP_MT: aMtrAngle.SetUserValue( 9000, FUNIT_NONE ); break;
- case RP_RT: aMtrAngle.SetUserValue( 4500, FUNIT_NONE ); break;
- case RP_LM: aMtrAngle.SetUserValue( 18000, FUNIT_NONE ); break;
- case RP_RM: aMtrAngle.SetUserValue( 0, FUNIT_NONE ); break;
- case RP_LB: aMtrAngle.SetUserValue( 22500, FUNIT_NONE ); break;
- case RP_MB: aMtrAngle.SetUserValue( 27000, FUNIT_NONE ); break;
- case RP_RB: aMtrAngle.SetUserValue( 31500, FUNIT_NONE ); break;
- case RP_MM: break;
- }
- }
-}
-
-//------------------------------------------------------------------------
-
-IMPL_LINK_NOARG(SvxAngleTabPage, ModifiedHdl)
-{
- switch(aMtrAngle.GetValue())
- {
- case 13500: aCtlAngle.SetActualRP( RP_LT ); break;
- case 9000: aCtlAngle.SetActualRP( RP_MT ); break;
- case 4500: aCtlAngle.SetActualRP( RP_RT ); break;
- case 18000: aCtlAngle.SetActualRP( RP_LM ); break;
- case 0: aCtlAngle.SetActualRP( RP_RM ); break;
- case 22500: aCtlAngle.SetActualRP( RP_LB ); break;
- case 27000: aCtlAngle.SetActualRP( RP_MB ); break;
- case 31500: aCtlAngle.SetActualRP( RP_RB ); break;
- default: aCtlAngle.SetActualRP( RP_MM ); break;
- }
-
- return( 0L );
}
/*************************************************************************