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

Handles parts of the user interaction for a Plot by registering itself as an event filter for its QwtPlotCanvas. More...

#include <CanvasPicker.h>

List of all members.

Signals

void drawTextOff ()
void modified ()
void selectPlot ()
void showMarkerPopupMenu ()
void showPlotDialog (int)
void viewImageDialog ()
void viewLineDialog ()
void viewTextDialog ()

Public Member Functions

 CanvasPicker (Graph *plot)
void disableEditing ()
 Disable editing of d_editing_marker on a TAB-key event.
virtual bool eventFilter (QObject *, QEvent *)
void selectPeak (const QPoint &p)
void selectPoints (int n)

Private Member Functions

void drawLineMarker (const QPoint &, bool endArrow)
void drawTextMarker (const QPoint &)
Graphplot ()
 Return my parent as a Graph.
bool selectMarker (const QMouseEvent *e)
 Selects and highlights the marker at the given position.

Private Attributes

ArrowMarkerd_editing_marker
 The marker that is currently being edited, or NULL. Editing does explicitly not inlude moving and resizing, which are being handled by SelectionMoveResizer (see Graph::d_markers_selector). Currently, only ArrowMarker provides any other form of editing, but this really should be generalized. See ImageMarker for details.
QPoint endLinePoint
PlotplotWidget
 The Plot I handle user interaction for.
bool pointSelected
QPoint startLinePoint

Detailed Description

Handles parts of the user interaction for a Plot by registering itself as an event filter for its QwtPlotCanvas.

CanvasPicker relies heavily on its parent being the Graph that owns the Plot it operates on. Additionally, parts of the code use Graph::plotWidget instead of CanvasPicker::plotWidget.


Constructor & Destructor Documentation

CanvasPicker::CanvasPicker ( Graph plot)

Member Function Documentation

void CanvasPicker::disableEditing ( )

Disable editing of d_editing_marker on a TAB-key event.

Called by Graph::focusNextPrevChild ()

References d_editing_marker, and ArrowMarker::setEditable().

Referenced by Graph::focusNextPrevChild().

void CanvasPicker::drawLineMarker ( const QPoint &  point,
bool  endArrow 
)
private
void CanvasPicker::drawTextMarker ( const QPoint &  point)
private
void CanvasPicker::drawTextOff ( )
signal

Referenced by drawTextMarker().

bool CanvasPicker::eventFilter ( QObject *  object,
QEvent *  e 
)
virtual
void CanvasPicker::modified ( )
signal
Graph* CanvasPicker::plot ( )
inlineprivate

Return my parent as a Graph.

Note that contrary to the method name, this does NOT return the Plot I operate on.

Referenced by drawLineMarker(), drawTextMarker(), eventFilter(), and selectMarker().

bool CanvasPicker::selectMarker ( const QMouseEvent *  e)
private
void CanvasPicker::selectPeak ( const QPoint &  p)
void CanvasPicker::selectPlot ( )
signal

Referenced by eventFilter().

void CanvasPicker::selectPoints ( int  n)
void CanvasPicker::showMarkerPopupMenu ( )
signal

Referenced by eventFilter().

void CanvasPicker::showPlotDialog ( int  )
signal

Referenced by eventFilter().

void CanvasPicker::viewImageDialog ( )
signal

Referenced by eventFilter().

void CanvasPicker::viewLineDialog ( )
signal

Referenced by eventFilter().

void CanvasPicker::viewTextDialog ( )
signal

Referenced by eventFilter().


Member Data Documentation

ArrowMarker* CanvasPicker::d_editing_marker
private

The marker that is currently being edited, or NULL. Editing does explicitly not inlude moving and resizing, which are being handled by SelectionMoveResizer (see Graph::d_markers_selector). Currently, only ArrowMarker provides any other form of editing, but this really should be generalized. See ImageMarker for details.

Referenced by CanvasPicker(), disableEditing(), eventFilter(), and selectMarker().

QPoint CanvasPicker::endLinePoint
private
Plot* CanvasPicker::plotWidget
private

The Plot I handle user interaction for.

Note that this has to be owned by my parent Graph.

Referenced by CanvasPicker(), drawLineMarker(), drawTextMarker(), eventFilter(), and selectMarker().

bool CanvasPicker::pointSelected
private

Referenced by CanvasPicker().

QPoint CanvasPicker::startLinePoint
private

Referenced by drawLineMarker(), and eventFilter().


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