QtiPlot  0.9.8.2
Signals | Public Member Functions | Private Member Functions | Private Attributes | List of all members
ScalePicker Class Reference

Handles user interaction with a QwtScaleWidget. More...

#include <ScalePicker.h>

Signals

void axisDblClicked (int)
void axisRightClicked (int)
void axisTicksDblClicked (int)
void axisTitleDblClicked ()
void axisTitleRightClicked ()
 Emitted when the user right-clicks on the title of an axis.
void clicked ()
 Emitted when the user clicks on one of the monitored axes.

Public Member Functions

QwtScaleWidget * currentAxis ()
 Returns a pointer to the active axis in the plot layer.
void deselect ()
bool labelsSelected ()
Graphplot ()
 Return my parent casted to Graph.
void refresh ()
 ScalePicker (Graph *plot)
QRect scaleRect (const QwtScaleWidget *) const
 Returns the bounding rectangle of a scale without the title.
QRect scaleTicksRect (const QwtScaleWidget *scale) const
 Returns the bounding rectangle of a scale excluding the title and the tick labels.
QwtScaleWidget * selectedAxis ()
void selectLabels (QwtScaleWidget *scale, bool select=true)
void selectTitle (QwtScaleWidget *scale, bool select=true)
QRect titleRect (const QwtScaleWidget *scale) const
 Returns the bounding rectangle of a scale's title.
bool titleSelected ()

Private Member Functions

bool eventFilter (QObject *, QEvent *)
bool labelClicked (const QwtScaleWidget *scale, const QPoint &pos)
void mouseClicked (const QwtScaleWidget *scale, const QPoint &pos)
void mouseDblClicked (const QwtScaleWidget *, const QPoint &)
void mouseRightClicked (const QwtScaleWidget *scale, const QPoint &pos)

Private Attributes

QwtScaleWidget * d_current_axis
bool d_labels_selected
QwtScaleWidget * d_selected_axis
bool d_title_selected

Detailed Description

Handles user interaction with a QwtScaleWidget.

This class is used by Graph to catch events for the scales on its Plot. ScalePicker doesn't take any actions beyond emitting signals, which are then processed by Graph.

Constructor & Destructor Documentation

ScalePicker::ScalePicker ( Graph plot)

References refresh().

Member Function Documentation

void ScalePicker::axisDblClicked ( int  )
signal

Emitted when the user double-clicks on an axis (but not its title). The argument specifies the axis' QwtScaleDraw::Alignment.

Referenced by mouseDblClicked().

void ScalePicker::axisRightClicked ( int  )
signal

Emitted when the user right-clicks on an axis (but not its title). The argument specifies the axis' QwtScaleDraw::Alignment.

Referenced by mouseRightClicked().

void ScalePicker::axisTicksDblClicked ( int  )
signal

Emitted when the user double-clicks on the ticks of an axis. The argument specifies the axis' QwtScaleDraw::Alignment.

Referenced by mouseDblClicked().

void ScalePicker::axisTitleDblClicked ( )
signal

Emitted when the user double-clicks on an the axis title.

Referenced by mouseDblClicked().

void ScalePicker::axisTitleRightClicked ( )
signal

Emitted when the user right-clicks on the title of an axis.

Referenced by mouseRightClicked().

void ScalePicker::clicked ( )
signal

Emitted when the user clicks on one of the monitored axes.

Referenced by eventFilter().

QwtScaleWidget* ScalePicker::currentAxis ( )
inline
void ScalePicker::deselect ( )
bool ScalePicker::eventFilter ( QObject *  object,
QEvent *  e 
)
private
bool ScalePicker::labelClicked ( const QwtScaleWidget *  scale,
const QPoint &  pos 
)
private

References plot().

Referenced by eventFilter().

bool ScalePicker::labelsSelected ( )
inline
void ScalePicker::mouseClicked ( const QwtScaleWidget *  scale,
const QPoint &  pos 
)
private
void ScalePicker::mouseDblClicked ( const QwtScaleWidget *  scale,
const QPoint &  pos 
)
private
void ScalePicker::mouseRightClicked ( const QwtScaleWidget *  scale,
const QPoint &  pos 
)
private
Graph* ScalePicker::plot ( )
inline

Return my parent casted to Graph.

Referenced by labelClicked(), mouseRightClicked(), refresh(), selectLabels(), and selectTitle().

void ScalePicker::refresh ( )

Install myself as event filter for all axes of my parent. For every axis of plot(), add myself to the corresponding QwtScaleWidget.

See Also
QwtPlot::axisWidget()

References plot().

Referenced by Graph::enableAxis(), Graph::hideSelectedAxis(), Graph::plotPie(), ScalePicker(), and Graph::showAxis().

QRect ScalePicker::scaleRect ( const QwtScaleWidget *  scale) const

Returns the bounding rectangle of a scale without the title.

Referenced by mouseDblClicked(), Graph::mousePressed(), and mouseRightClicked().

QRect ScalePicker::scaleTicksRect ( const QwtScaleWidget *  scale) const

Returns the bounding rectangle of a scale excluding the title and the tick labels.

Referenced by eventFilter(), and mouseDblClicked().

QwtScaleWidget* ScalePicker::selectedAxis ( )
inline

Returns a pointer to the selected axis in the plot layer. The selected axis has selected title or selected tick labels (blue frame around texts).

References d_selected_axis.

Referenced by Graph::hasSeletedItems(), Graph::selectedScale(), Graph::setCurrentColor(), and Graph::setCurrentFont().

void ScalePicker::selectLabels ( QwtScaleWidget *  scale,
bool  select = true 
)
void ScalePicker::selectTitle ( QwtScaleWidget *  scale,
bool  select = true 
)
QRect ScalePicker::titleRect ( const QwtScaleWidget *  scale) const

Returns the bounding rectangle of a scale's title.

Referenced by Graph::axisTitleRect(), eventFilter(), and mouseDblClicked().

bool ScalePicker::titleSelected ( )
inline

Member Data Documentation

QwtScaleWidget * ScalePicker::d_current_axis
private

Referenced by currentAxis(), and eventFilter().

bool ScalePicker::d_labels_selected
private
QwtScaleWidget* ScalePicker::d_selected_axis
private
bool ScalePicker::d_title_selected
private

The documentation for this class was generated from the following files: