summaryrefslogtreecommitdiff
path: root/cui
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2015-10-19 13:18:33 +0200
committerNoel Grandin <noel@peralex.com>2015-10-19 15:22:21 +0200
commitdbad14154cb83490b966bafa7bb97ab7e858acec (patch)
treeffb3eac3f42596f8619805a76c590a7d65d31dd1 /cui
parente4ad5ed5839d5f78b76128814a3cf966122b0d71 (diff)
convert Link<> to typed
Change-Id: I57c15ba4374b626db322f42f04adc088b8cf6ce0
Diffstat (limited to 'cui')
-rw-r--r--cui/source/dialogs/colorpicker.cxx88
1 files changed, 47 insertions, 41 deletions
diff --git a/cui/source/dialogs/colorpicker.cxx b/cui/source/dialogs/colorpicker.cxx
index 81d274aefc0e..f83e52c9117b 100644
--- a/cui/source/dialogs/colorpicker.cxx
+++ b/cui/source/dialogs/colorpicker.cxx
@@ -329,10 +329,10 @@ public:
void KeyMove(int dx, int dy);
- void SetModifyHdl(Link<>& rLink) { maModifyHdl = rLink; }
+ void SetModifyHdl(const Link<ColorFieldControl&,void>& rLink) { maModifyHdl = rLink; }
private:
- Link<> maModifyHdl;
+ Link<ColorFieldControl&,void> maModifyHdl;
ColorMode meMode;
Color maColor;
double mdX;
@@ -682,7 +682,7 @@ void ColorFieldControl::Resize()
void ColorFieldControl::Modify()
{
- maModifyHdl.Call( this );
+ maModifyHdl.Call( *this );
}
void ColorFieldControl::SetValues( Color aColor, ColorMode eMode, double x, double y )
@@ -732,7 +732,7 @@ public:
void KeyMove( int dy );
- void SetModifyHdl( Link<>& rLink ) { maModifyHdl = rLink; }
+ void SetModifyHdl( const Link<>& rLink ) { maModifyHdl = rLink; }
sal_Int16 GetLevel() const { return mnLevel; }
@@ -990,6 +990,7 @@ public:
void update_color(sal_uInt16 n = UPDATE_ALL);
DECL_LINK(ColorModifyHdl, void*);
+ DECL_LINK_TYPED(ColorFieldControlModifydl, ColorFieldControl&, void);
DECL_LINK_TYPED(ColorModifyEditHdl, Edit&, void);
DECL_LINK_TYPED(ModeModifyHdl, RadioButton&, void);
@@ -1071,9 +1072,8 @@ ColorPickerDialog::ColorPickerDialog( vcl::Window* pParent, sal_Int32 nColor, sa
set_width_request(aDialogSize.Width() + 50);
set_height_request(aDialogSize.Height() + 30);
- Link<> aLink( LINK( this, ColorPickerDialog, ColorModifyHdl ) );
- mpColorField->SetModifyHdl( aLink );
- mpColorSlider->SetModifyHdl( aLink );
+ mpColorField->SetModifyHdl( LINK( this, ColorPickerDialog, ColorFieldControlModifydl ) );
+ mpColorSlider->SetModifyHdl( LINK( this, ColorPickerDialog, ColorModifyHdl ) );
Link<Edit&,void> aLink3( LINK( this, ColorPickerDialog, ColorModifyEditHdl ) );
mpMFRed->SetModifyHdl( aLink3 );
@@ -1284,46 +1284,52 @@ IMPL_LINK_TYPED(ColorPickerDialog, ColorModifyEditHdl, Edit&, rEdit, void)
{
ColorModifyHdl(&rEdit);
}
-IMPL_LINK(ColorPickerDialog, ColorModifyHdl, void *, p)
+IMPL_LINK_NOARG_TYPED(ColorPickerDialog, ColorFieldControlModifydl, ColorFieldControl&, void)
{
sal_uInt16 n = 0;
- if (p == mpColorField)
+ double x = mpColorField->GetX();
+ double y = mpColorField->GetY();
+
+ switch( meMode )
{
- double x = mpColorField->GetX();
- double y = mpColorField->GetY();
+ case HUE:
+ mdSat = x;
+ setColorComponent( COLORCOMP_BRI, y );
+ break;
+ case SATURATION:
+ mdHue = x * 360.0;
+ setColorComponent( COLORCOMP_BRI, y );
+ break;
+ case BRIGHTNESS:
+ mdHue = x * 360.0;
+ setColorComponent( COLORCOMP_SAT, y );
+ break;
+ case RED:
+ mdBlue = x;
+ setColorComponent( COLORCOMP_GREEN, y );
+ break;
+ case GREEN:
+ mdBlue = x;
+ setColorComponent( COLORCOMP_RED, y );
+ break;
+ case BLUE:
+ mdRed = x;
+ setColorComponent( COLORCOMP_GREEN, y );
+ break;
+ }
- switch( meMode )
- {
- case HUE:
- mdSat = x;
- setColorComponent( COLORCOMP_BRI, y );
- break;
- case SATURATION:
- mdHue = x * 360.0;
- setColorComponent( COLORCOMP_BRI, y );
- break;
- case BRIGHTNESS:
- mdHue = x * 360.0;
- setColorComponent( COLORCOMP_SAT, y );
- break;
- case RED:
- mdBlue = x;
- setColorComponent( COLORCOMP_GREEN, y );
- break;
- case GREEN:
- mdBlue = x;
- setColorComponent( COLORCOMP_RED, y );
- break;
- case BLUE:
- mdRed = x;
- setColorComponent( COLORCOMP_GREEN, y );
- break;
- }
+ n = UPDATE_ALL &~ (UPDATE_COLORCHOOSER);
- n = UPDATE_ALL &~ (UPDATE_COLORCHOOSER);
- }
- else if (p == mpColorSlider)
+ if (n)
+ update_color(n);
+
+}
+IMPL_LINK(ColorPickerDialog, ColorModifyHdl, void *, p)
+{
+ sal_uInt16 n = 0;
+
+ if (p == mpColorSlider)
{
double dValue = mpColorSlider->GetValue();
switch (meMode)