SciDAVis  1.D4
Signals | Public Member Functions | Private Member Functions | Private Attributes
ScalePicker Class Reference

Handles user interaction with a QwtScaleWidget. More...

#include <ScalePicker.h>

List of all members.

Signals

void axisDblClicked (int)
void axisRightClicked (int)
void axisTitleRightClicked (int)
void clicked ()
 Emitted when the user clicks on one of the monitored axes.
void rightAxisTitleDblClicked ()
void topAxisTitleDblClicked ()
void xAxisTitleDblClicked ()
void yAxisTitleDblClicked ()

Public Member Functions

QwtScaleWidget * currentAxis ()
 Returns a pointer to the active axis in the plot layer.
void deselect ()
Graphgraph ()
bool labelsSelected ()
QwtPlot * plot ()
 Return my parent casted to QwtPlot.
void refresh ()
 ScalePicker (QwtPlot *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 *)
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 ( QwtPlot *  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::axisTitleRightClicked ( int  )
signal

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

Referenced by mouseRightClicked().

void ScalePicker::clicked ( )
signal

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

Referenced by eventFilter(), and mouseRightClicked().

QwtScaleWidget* ScalePicker::currentAxis ( )
inline

Returns a pointer to the active axis in the plot layer.

References d_current_axis.

void ScalePicker::deselect ( )
bool ScalePicker::eventFilter ( QObject *  object,
QEvent *  e 
)
private
Graph* ScalePicker::graph ( )
inline

Referenced by selectLabels(), and selectTitle().

bool ScalePicker::labelsSelected ( )
inline

References d_labels_selected.

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
QwtPlot* ScalePicker::plot ( )
inline

Return my parent casted to QwtPlot.

Referenced by refresh().

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::enableAxes(), Graph::enableAxis(), Graph::hideSelectedAxis(), Graph::plotPie(), ScalePicker(), and Graph::showAxis().

void ScalePicker::rightAxisTitleDblClicked ( )
signal

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

See also:
QwtScaleDraw::Alignment

Referenced by mouseDblClicked().

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

Returns the bounding rectangle of a scale without the title.

Referenced by mouseDblClicked(), 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().

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.

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 eventFilter().

bool ScalePicker::titleSelected ( )
inline

References d_title_selected.

void ScalePicker::topAxisTitleDblClicked ( )
signal

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

See also:
QwtScaleDraw::Alignment

Referenced by mouseDblClicked().

void ScalePicker::xAxisTitleDblClicked ( )
signal

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

See also:
QwtScaleDraw::Alignment

Referenced by mouseDblClicked().

void ScalePicker::yAxisTitleDblClicked ( )
signal

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

See also:
QwtScaleDraw::Alignment

Referenced by mouseDblClicked().


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: