- Main Page
- Namespaces
- Classes
- Files
- Directories
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# Exponent::GUI::Controls::CXYPad Class Reference

Inheritance diagram for Exponent::GUI::Controls::CXYPad:

List of all members.

## Detailed Description

Control capable of movement in two dimensions.

Date:
  17/04/2005

Author:
  Paul Chana

Version:
  1.0.0 Initial version

  1.0.1 Added jump to position for mouse down

Note:
  All contents of this source code are copyright 2005 Exp Digital Uk.
  This source file is covered by the licence conditions of the Infinity API. You should have recieved a copy
  with the source code. If you didnt, please refer to http://www.expdigital.co.uk All content is the Intellectual property of Exp Digital Uk.
  Certain sections of this code may come from other sources. They are credited where applicable.
  If you have comments, suggestions or bug reports please visit http://support.expdigital.co.uk

Id
  CXYPad.hpp,v 1.6 2007/02/08 21:07:54 paul Exp

Definition at line 40 of file CXYPad.hpp.

## Public Member Functions

- CXYPad (IControlRoot *root, const long uniqueId, const CRect &area, IActionListener *listener=NULL)
- virtual void drawControl (CGraphics &graphics)
- virtual double getXValue ()
- virtual double getYValue ()
- virtual void handleDoubleClick (CMouseEvent &event)
- virtual void handleLeftButtonDown (CMouseEvent &event)
- virtual void handleLeftButtonUp (CMouseEvent &event)
- virtual void handleMouseMovement (CMouseEvent &event)
- virtual void setColours (CAlphaColour frameColour, CAlphaColour backgroundColour, CAlphaColour handleColour, CAlphaColour handleOverColour, CAlphaColour handleDownColour)
- virtual void setHandleImage (IImage *handleImage, IImage *rolloverHandleImage, IImage *downHandleImage)
- virtual void setXValue (const double xValue)
- virtual void setYValue (const double yValue)
- virtual ~CXYPad ()

## Protected Member Functions

- virtual void checkAndLock (const CPoint &point)

## Protected Attributes

- CPoint m_grabOffset
- CRect m_handleArea
- CAlphaColour m_handleColour
- CAlphaColour m_handleDownColour
- IImage * m_handleDownImage
- IImage * m_handleImage
- CAlphaColour m_handleOverColour
- IImage * m_handleRolloverImage
- double m_horizontalRange
- bool m_isDragging
- CRolloverButton::ERolloverState m_state
- double m_verticalRange
- double m_xValue
- double m_yValue

## Constructor & Destructor Documentation

Exponent::GUI::Controls::CXYPad::CXYPad | ( | IControlRoot * | root,
|  | const long | uniqueId,
|  | const CRect & | area,
|  | IActionListener * | listener = `NULL` |
| ) |  |  |

Construction

Parameters:

  | root | The root control that this control is being added to
  | uniqueId | The unique Identifier of this control or CCONTROL_NO_ID_REQUIRED if no id is required
  | area | The area of this control relative to the root controls top left
  | listener | The action listener

virtual Exponent::GUI::Controls::CXYPad::~CXYPad | ( |  | ) | `[virtual]`

Destruction

## Member Function Documentation

virtual void Exponent::GUI::Controls::CXYPad::checkAndLock | ( | const CPoint & | point | ) | `[protected, virtual]`

Check if the area is rolled over and lock if so

Parameters:

  | point | The point to check

virtual void Exponent::GUI::Controls::CXYPad::drawControl | ( | CGraphics & | graphics | ) | `[virtual]`

Draw the controls

Parameters:

  | graphics | The graphics context

Reimplemented from Exponent::GUI::Controls::CControl.

Reimplemented in Exponent::GUI::Controls::CModulatedXYPad.

virtual double Exponent::GUI::Controls::CXYPad::getXValue | ( |  | ) | `[inline, virtual]`

Get the x value

Return values:

  | double | x position value in range 0 - 1

Definition at line 102 of file CXYPad.hpp.

References m_xValue.

virtual double Exponent::GUI::Controls::CXYPad::getYValue | ( |  | ) | `[inline, virtual]`

Get the y value

Return values:

  | double | y position value in range 0 - 1

Definition at line 108 of file CXYPad.hpp.

References m_yValue.

virtual void Exponent::GUI::Controls::CXYPad::handleDoubleClick | ( | CMouseEvent & | event | ) | `[virtual]`

Handle a double click on the left button

Parameters:

  | event | The event to handle

Reimplemented from Exponent::GUI::Controls::CControl.

virtual void Exponent::GUI::Controls::CXYPad::handleLeftButtonDown | ( | CMouseEvent & | event | ) | `[virtual]`

Handle left button being clicked

Parameters:

  | event | The event to handle

Reimplemented from Exponent::GUI::Controls::CControl.

virtual void Exponent::GUI::Controls::CXYPad::handleLeftButtonUp | ( | CMouseEvent & | event | ) | `[virtual]`

Handle left button being released

Parameters:

  | event | The event to handle

Reimplemented from Exponent::GUI::Controls::CControl.

virtual void Exponent::GUI::Controls::CXYPad::handleMouseMovement | ( | CMouseEvent & | event | ) | `[virtual]`

Handle the mouse movement

Parameters:

  | event | The event to handle

Reimplemented from Exponent::GUI::Controls::CControl.

virtual void Exponent::GUI::Controls::CXYPad::setColours | ( | CAlphaColour | frameColour,
|  | CAlphaColour | backgroundColour,
|  | CAlphaColour | handleColour,
|  | CAlphaColour | handleOverColour,
|  | CAlphaColour | handleDownColour |
| ) |  |  | `[virtual]`

Set the colours

Parameters:

  | frameColour | The colour of the frame
  | backgroundColour | The background colour of the control
  | handleColour | The colour of the area that can be grabbed by the user
  | handleOverColour | The colour of the area that can be grabbed by the user when mouse is over
  | handleDownColour | The colour of the area that can be grabbed by the user when mouse is grabbing it

virtual void Exponent::GUI::Controls::CXYPad::setHandleImage | ( | IImage * | handleImage,
|  | IImage * | rolloverHandleImage,
|  | IImage * | downHandleImage |
| ) |  |  | `[virtual]`

Set the handle images

Parameters:

  | handleImage | The image of the area that can be grabbed by the user
  | rolloverHandleImage | The image of the area that can be grabbed by the user when mouse is over
  | downHandleImage | The image of the area that can be grabbed by the user when mouse is grabbing it

virtual void Exponent::GUI::Controls::CXYPad::setXValue | ( | const double | xValue | ) | `[virtual]`

Set the x value

Parameters:

  | xValue | The x position value in range 0 - 1

Reimplemented in Exponent::GUI::Controls::CModulatedXYPad.

virtual void Exponent::GUI::Controls::CXYPad::setYValue | ( | const double | yValue | ) | `[virtual]`

Set the y value

Parameters:

  | yValue | The y position value in range 0 - 1

Reimplemented in Exponent::GUI::Controls::CModulatedXYPad.

## Member Data Documentation

CPoint Exponent::GUI::Controls::CXYPad::m_grabOffset`[protected]`

What is the offset to where they grabbed?

Definition at line 157 of file CXYPad.hpp.

CRect Exponent::GUI::Controls::CXYPad::m_handleArea`[protected]`

The hnadle area

Definition at line 156 of file CXYPad.hpp.

CAlphaColour Exponent::GUI::Controls::CXYPad::m_handleColour`[protected]`

The colour of the handle

Definition at line 171 of file CXYPad.hpp.

CAlphaColour Exponent::GUI::Controls::CXYPad::m_handleDownColour`[protected]`

The colour of the handle when mouse is down

Definition at line 173 of file CXYPad.hpp.

IImage* Exponent::GUI::Controls::CXYPad::m_handleDownImage`[protected]`

The down image

Definition at line 169 of file CXYPad.hpp.

IImage* Exponent::GUI::Controls::CXYPad::m_handleImage`[protected]`

The handle image

Definition at line 167 of file CXYPad.hpp.

CAlphaColour Exponent::GUI::Controls::CXYPad::m_handleOverColour`[protected]`

The colour of the handle when mouse is over

Definition at line 172 of file CXYPad.hpp.

IImage* Exponent::GUI::Controls::CXYPad::m_handleRolloverImage`[protected]`

The rolled over image

Definition at line 168 of file CXYPad.hpp.

double Exponent::GUI::Controls::CXYPad::m_horizontalRange`[protected]`

The range of the horizontal handle

Definition at line 162 of file CXYPad.hpp.

bool Exponent::GUI::Controls::CXYPad::m_isDragging`[protected]`

Are we dragging the slider

Definition at line 160 of file CXYPad.hpp.

CRolloverButton::ERolloverState Exponent::GUI::Controls::CXYPad::m_state`[protected]`

Current state of slider (0 = off : 1 = over : 2 = on)

Definition at line 158 of file CXYPad.hpp.

double Exponent::GUI::Controls::CXYPad::m_verticalRange`[protected]`

The range of the vertical handle

Definition at line 161 of file CXYPad.hpp.

double Exponent::GUI::Controls::CXYPad::m_xValue`[protected]`

x value

Definition at line 164 of file CXYPad.hpp.

Referenced by getXValue().

double Exponent::GUI::Controls::CXYPad::m_yValue`[protected]`

y value

Definition at line 165 of file CXYPad.hpp.

Referenced by getYValue().