libkpl  5.0
A Library for Graphical Presentation of Data Sets and Functions
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
FrameItem Class Reference

Frame item class. More...

#include <frameitem.h>

Inheritance diagram for FrameItem:
Inheritance graph
[legend]

Public Types

enum  GridMode {
  FrameOnly, Axes, AxesWithLabels, Grid,
  GridWithLabels
}
 Grid mode. More...
 
enum  { Type = UserType + Frame }
 Specific QGraphicsItem type number for function type() More...
 
- Public Types inherited from KplItem
enum  FillStyle {
  NoBrush, SolidPattern, HorPattern, VerPattern,
  CrossPattern, BDiagPattern, FDiagPattern, DiagCrossPattern
}
 Fill styles. More...
 
enum  ItemType {
  Frame = 1, Array, Function, ParFunction,
  Spline, Array3D, Function3D, Legend,
  Text, Line, Arrow, Arc,
  Rectangle, Ellipse, Image, ScaleBar
}
 Item types. More...
 
enum  PenType { FramePen, GridPen, DataPen }
 Pen types. More...
 
enum  Symbol {
  Invisible = -17, FilledOctagon, FilledHourglass, FilledTriangle,
  FilledSquare, FilledDiamond, FilledCircle, Umbrella,
  Ypsilon, Plus, Cross, OpenOctagon,
  OpenHourglass, OpenTriangle, OpenSquare, OpenDiamond,
  Dot, OpenCircle, SolidLine, DashLine1,
  DashLine2, DotLine1, DashLine3, DashDotLine,
  DashLine4, DashLine5, DotLine2
}
 Symbol types. More...
 

Public Member Functions

 FrameItem (double x0=4, double y0=3, double width=15, double height=10, unsigned colorFrame=0, unsigned colorGrid=0, bool logX=false, bool logY=false, GridMode gridMode=AxesWithLabels, double xMax=15, double yMax=10, const QString &textX="", const QString &textY="", const QString &header="", double relSize=1, int numDigX=-1, int numDigY=-1, int minTicX=5, int minTicY=2, int expX=0, int expY=0, double xMin=0, double yMin=0, double xTic=5, double yTic=2, bool collapsed=false, bool visible=true, double xOffset=0, double yOffset=0, bool xBottom=true, bool xTop=false, bool yLeft=true, bool yRight=false)
 Constructor. More...
 
 FrameItem (const FrameItem &a)
 Copy constructor. More...
 
 FrameItem (const KConfigGroup *plo, double x0=4, double y0=3, double width=15, double height=10, unsigned colorFrame=0, unsigned colorGrid=0, GridMode gridMode=AxesWithLabels)
 Constructor. More...
 
virtual ~FrameItem ()
 Destructor. More...
 
void autoScale (double xmi, double xma, double fx, double ymi, double yma, double fy)
 Calculates and sets the scaling parameters. More...
 
void autoScale (bool autoNorm=true)
 Calculates and sets the scaling parameters. More...
 
virtual QRectF boundingRect () const
 Calculates bounding rectangle. More...
 
bool calcAutoScale (bool autoNorm, const QList< QGraphicsItem * > &items, double &fx, double &fy)
 Calculates scaling parameters for a frame item and all its child items. More...
 
QRectF clipRect () const
 Returns clipping rectangle. More...
 
unsigned colorFrame () const
 Returns color for frame and labels. More...
 
unsigned colorGrid () const
 Returns color for grids and tics. More...
 
int expX () const
 Returns logarithm of normalization factor for x axis. More...
 
int expY () const
 Returns logarithm of normalization factor for y axis. More...
 
GridMode gridMode () const
 Returns grid mode. More...
 
QString header () const
 Returns heading text. More...
 
double height () const
 Returns height in cm. More...
 
bool collapsed () const
 Returns collapse state for list view. More...
 
bool logX () const
 Returns true for logarithmic x axis. More...
 
bool logY () const
 Returns true for logarithmic y axis. More...
 
QPointF mapFromUser (const QPointF &p) const
 Maps from user to pixel coordinates. More...
 
QPointF mapToUser (const QPointF &p) const
 Maps from pixel to user coordinates. More...
 
QRectF mapToUser (const QRectF &rect) const
 Maps from pixel to user coordinates. More...
 
int minTicX () const
 Returns number of intervals between major tics of x axis. More...
 
int minTicY () const
 Returns number of intervals between major tics of y axis. More...
 
double normX () const
 Returns normalization factor for x values. More...
 
double normY () const
 Returns normalization factor for y values. More...
 
int numDigX () const
 Returns number of digits for x axis. More...
 
int numDigY () const
 Returns number of digits for y axis. More...
 
virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
 Paints item. More...
 
QPointF rectPos () const
 Returns position in cm units. More...
 
void setColorFrame (unsigned color)
 Sets color for frame and labels. More...
 
void setColorGrid (unsigned color)
 Sets color for grids and tics. More...
 
void setExpX (int expX)
 Sets exponent of x normalization factor. More...
 
void setExpY (int expY)
 Sets exponent of y normalization factor. More...
 
void setGridMode (GridMode gridMode)
 Sets grid mode. More...
 
void setHeight (double height)
 Sets height. More...
 
void setLogX (bool logX)
 Sets logarithmic mode of x axis. More...
 
void setLogY (bool logY)
 Sets logarithmic mode of y axis. More...
 
void setMinTicX (int minTicX)
 Sets number of intervals between major tics of x axis. More...
 
void setMinTicY (int minTicY)
 Sets number of intervals between major tics of y axis. More...
 
void setNumDigX (int numDigX)
 Sets number of digits for x axis. More...
 
void setNumDigY (int numDigY)
 Sets number of digits for y axis. More...
 
void setProperties (const QTransform &m)
 Sets properties according to transformation matrix. More...
 
void setHeader (const QString &text)
 Sets heading text. More...
 
void setTextX (const QString &text)
 Sets x axis text. More...
 
void setTextY (const QString &text)
 Sets y axis text. More...
 
void setWidth (double width)
 Sets width. More...
 
void setX0 (double x0)
 Sets left page margin. More...
 
void setXBottom (bool xBottom)
 Sets bottom side label mode. More...
 
void setXMax (double xMax)
 Sets upper x data limit. More...
 
void setXMin (double xMin)
 Sets lower x data limit. More...
 
void setXOffset (double xOffset)
 Sets x offset. More...
 
void setXTic (double xTic)
 Sets x tick distance. More...
 
void setXTop (bool xTop)
 Sets top side label mode. More...
 
void setY0 (double y0)
 Sets bottom page margin. More...
 
void setYLeft (bool yLeft)
 Sets left side label mode. More...
 
void setYMax (double yMax)
 Sets upper y data limit. More...
 
void setYMin (double yMin)
 Sets lower y data limit. More...
 
void setYOffset (double yOffset)
 Sets y offset. More...
 
void setYRight (bool yRight)
 Sets right side label mode. More...
 
void setYTic (double yTic)
 Sets y tick distance. More...
 
QPointF steps () const
 Returns user units steps for one pixel steps. More...
 
QString textX () const
 Returns x axis text. More...
 
QString textY () const
 Returns y axis text. More...
 
virtual int type () const
 Returns specific QGraphicsItem type number. More...
 
void toggleCollapsed ()
 Toggles collapse state. More...
 
void update ()
 Applies changes and forces redrawing. More...
 
void updatePos (QPointF p)
 Sets position. More...
 
bool valid (double x, double y) const
 Checks coordinates for validity. More...
 
double width () const
 Returns width in cm. More...
 
void writePlo (KConfigGroup *plo) const
 Writes into plot file. More...
 
double x0 () const
 Returns left page margin in cm. More...
 
bool xBottom () const
 Returns true for x axis labels on bottom side. More...
 
double xMax () const
 Returns x value of right data window margin in user units. More...
 
double xMin () const
 Returns x value of left data window margin in user units. More...
 
double xOffset () const
 Returns offset for first major x tick. More...
 
double xTic () const
 Returns distance between major tics of x axis. More...
 
bool xTop () const
 Returns true for x axis labels on top side. More...
 
double y0 () const
 
bool yLeft () const
 Returns true for y axis labels on left side. More...
 
bool yRight () const
 Returns true for y axis labels on right side. More...
 
double yMax () const
 Returns y value of upper data window margin in user units. More...
 
double yMin () const
 Returns y value of lower data window margin in user units. More...
 
double yOffset () const
 Returns offset for first major y tick. More...
 
double yTic () const
 Returns distance between major tics of y axis. More...
 
- Public Member Functions inherited from KplItem
 KplItem (double relSize=1)
 Constructor. More...
 
 KplItem (const KplItem &a)
 Copy constructor. More...
 
 KplItem (const KConfigGroup *plo)
 Constructor. More...
 
virtual ~KplItem ()
 Destructor. More...
 
void readPlo (const KConfigGroup *plo)
 Initializes corresponding to plot file. More...
 
double relSize () const
 Returns relative size of item. More...
 
void setRelSize (double relSize)
 Sets relative size of item. More...
 
void writePlo (KConfigGroup *plo, bool visible=true) const
 Writes into plot file. More...
 
- Public Member Functions inherited from QGraphicsRectItem
 QGraphicsRectItem (QGraphicsItem *parent)
 
 QGraphicsRectItem (const QRectF &rect, QGraphicsItem *parent)
 
 QGraphicsRectItem (qreal x, qreal y, qreal width, qreal height, QGraphicsItem *parent)
 
QRectF rect () const
 
void setRect (const QRectF &rectangle)
 
void setRect (qreal x, qreal y, qreal width, qreal height)
 
virtual QPainterPath shape () const
 
virtual bool contains (const QPointF &point) const
 
virtual bool isObscuredBy (const QGraphicsItem *item) const
 
virtual QPainterPath opaqueArea () const
 
- Public Member Functions inherited from QAbstractGraphicsShapeItem
 QAbstractGraphicsShapeItem (QGraphicsItem *parent)
 
QPen pen () const
 
void setPen (const QPen &pen)
 
QBrush brush () const
 
void setBrush (const QBrush &brush)
 
- Public Member Functions inherited from QGraphicsItem
 QGraphicsItem (QGraphicsItem *parent)
 
QGraphicsScenescene () const
 
QGraphicsItemparentItem () const
 
QGraphicsItemtopLevelItem () const
 
QGraphicsObjectparentObject () const
 
QGraphicsWidgetparentWidget () const
 
QGraphicsWidgettopLevelWidget () const
 
QGraphicsWidgetwindow () const
 
QGraphicsItempanel () const
 
void setParentItem (QGraphicsItem *newParent)
 
QList< QGraphicsItem * > children () const
 
QList< QGraphicsItem * > childItems () const
 
bool isWidget () const
 
bool isWindow () const
 
bool isPanel () const
 
QGraphicsObjecttoGraphicsObject ()
 
const QGraphicsObjecttoGraphicsObject () const
 
QGraphicsItemGroupgroup () const
 
void setGroup (QGraphicsItemGroup *group)
 
GraphicsItemFlags flags () const
 
void setFlag (GraphicsItemFlag flag, bool enabled)
 
void setFlags (GraphicsItemFlags flags)
 
CacheMode cacheMode () const
 
void setCacheMode (CacheMode mode, const QSize &logicalCacheSize)
 
PanelModality panelModality () const
 
void setPanelModality (PanelModality panelModality)
 
bool isBlockedByModalPanel (QGraphicsItem **blockingPanel) const
 
QString toolTip () const
 
void setToolTip (const QString &toolTip)
 
QCursor cursor () const
 
void setCursor (const QCursor &cursor)
 
bool hasCursor () const
 
void unsetCursor ()
 
bool isVisible () const
 
bool isVisibleTo (const QGraphicsItem *parent) const
 
void setVisible (bool visible)
 
void hide ()
 
void show ()
 
bool isEnabled () const
 
void setEnabled (bool enabled)
 
bool isSelected () const
 
void setSelected (bool selected)
 
bool acceptDrops () const
 
void setAcceptDrops (bool on)
 
qreal opacity () const
 
qreal effectiveOpacity () const
 
void setOpacity (qreal opacity)
 
QGraphicsEffectgraphicsEffect () const
 
void setGraphicsEffect (QGraphicsEffect *effect)
 
Qt::MouseButtons acceptedMouseButtons () const
 
void setAcceptedMouseButtons (Qt::MouseButtons buttons)
 
bool acceptsHoverEvents () const
 
void setAcceptsHoverEvents (bool enabled)
 
bool acceptHoverEvents () const
 
void setAcceptHoverEvents (bool enabled)
 
bool acceptTouchEvents () const
 
void setAcceptTouchEvents (bool enabled)
 
bool filtersChildEvents () const
 
void setFiltersChildEvents (bool enabled)
 
bool handlesChildEvents () const
 
void setHandlesChildEvents (bool enabled)
 
bool isActive () const
 
void setActive (bool active)
 
bool hasFocus () const
 
void setFocus (Qt::FocusReason focusReason)
 
void clearFocus ()
 
QGraphicsItemfocusProxy () const
 
void setFocusProxy (QGraphicsItem *item)
 
QGraphicsItemfocusItem () const
 
void grabMouse ()
 
void ungrabMouse ()
 
void grabKeyboard ()
 
void ungrabKeyboard ()
 
QPointF pos () const
 
qreal x () const
 
void setX (qreal x)
 
qreal y () const
 
void setY (qreal y)
 
QPointF scenePos () const
 
void setPos (const QPointF &pos)
 
void setPos (qreal x, qreal y)
 
void moveBy (qreal dx, qreal dy)
 
void ensureVisible (const QRectF &rect, int xmargin, int ymargin)
 
void ensureVisible (qreal x, qreal y, qreal w, qreal h, int xmargin, int ymargin)
 
QMatrix matrix () const
 
QMatrix sceneMatrix () const
 
void setMatrix (const QMatrix &matrix, bool combine)
 
void resetMatrix ()
 
QTransform transform () const
 
QTransform sceneTransform () const
 
QTransform deviceTransform (const QTransform &viewportTransform) const
 
QTransform itemTransform (const QGraphicsItem *other, bool *ok) const
 
void setTransform (const QTransform &matrix, bool combine)
 
void resetTransform ()
 
void rotate (qreal angle)
 
void scale (qreal sx, qreal sy)
 
void shear (qreal sh, qreal sv)
 
void translate (qreal dx, qreal dy)
 
void setRotation (qreal angle)
 
qreal rotation () const
 
void setScale (qreal factor)
 
qreal scale () const
 
QList< QGraphicsTransform * > transformations () const
 
void setTransformations (const QList< QGraphicsTransform * > &transformations)
 
QPointF transformOriginPoint () const
 
void setTransformOriginPoint (const QPointF &origin)
 
void setTransformOriginPoint (qreal x, qreal y)
 
virtual void advance (int phase)
 
qreal zValue () const
 
void setZValue (qreal z)
 
void stackBefore (const QGraphicsItem *sibling)
 
QRectF childrenBoundingRect () const
 
QRectF sceneBoundingRect () const
 
bool isClipped () const
 
QPainterPath clipPath () const
 
virtual bool collidesWithItem (const QGraphicsItem *other, Qt::ItemSelectionMode mode) const
 
virtual bool collidesWithPath (const QPainterPath &path, Qt::ItemSelectionMode mode) const
 
QList< QGraphicsItem * > collidingItems (Qt::ItemSelectionMode mode) const
 
bool isObscured (const QRectF &rect) const
 
bool isObscured (qreal x, qreal y, qreal w, qreal h) const
 
QRegion boundingRegion (const QTransform &itemToDeviceTransform) const
 
qreal boundingRegionGranularity () const
 
void setBoundingRegionGranularity (qreal granularity)
 
void update (const QRectF &rect)
 
void update (qreal x, qreal y, qreal width, qreal height)
 
void scroll (qreal dx, qreal dy, const QRectF &rect)
 
QPointF mapToItem (const QGraphicsItem *item, const QPointF &point) const
 
QPointF mapToParent (const QPointF &point) const
 
QPointF mapToScene (const QPointF &point) const
 
QPolygonF mapToItem (const QGraphicsItem *item, const QRectF &rect) const
 
QPolygonF mapToParent (const QRectF &rect) const
 
QPolygonF mapToScene (const QRectF &rect) const
 
QRectF mapRectToItem (const QGraphicsItem *item, const QRectF &rect) const
 
QRectF mapRectToParent (const QRectF &rect) const
 
QRectF mapRectToScene (const QRectF &rect) const
 
QPolygonF mapToItem (const QGraphicsItem *item, const QPolygonF &polygon) const
 
QPolygonF mapToParent (const QPolygonF &polygon) const
 
QPolygonF mapToScene (const QPolygonF &polygon) const
 
QPainterPath mapToItem (const QGraphicsItem *item, const QPainterPath &path) const
 
QPainterPath mapToParent (const QPainterPath &path) const
 
QPainterPath mapToScene (const QPainterPath &path) const
 
QPointF mapFromItem (const QGraphicsItem *item, const QPointF &point) const
 
QPointF mapFromParent (const QPointF &point) const
 
QPointF mapFromScene (const QPointF &point) const
 
QPolygonF mapFromItem (const QGraphicsItem *item, const QRectF &rect) const
 
QPolygonF mapFromParent (const QRectF &rect) const
 
QPolygonF mapFromScene (const QRectF &rect) const
 
QRectF mapRectFromItem (const QGraphicsItem *item, const QRectF &rect) const
 
QRectF mapRectFromParent (const QRectF &rect) const
 
QRectF mapRectFromScene (const QRectF &rect) const
 
QPolygonF mapFromItem (const QGraphicsItem *item, const QPolygonF &polygon) const
 
QPolygonF mapFromParent (const QPolygonF &polygon) const
 
QPolygonF mapFromScene (const QPolygonF &polygon) const
 
QPainterPath mapFromItem (const QGraphicsItem *item, const QPainterPath &path) const
 
QPainterPath mapFromParent (const QPainterPath &path) const
 
QPainterPath mapFromScene (const QPainterPath &path) const
 
QPointF mapToItem (const QGraphicsItem *item, qreal x, qreal y) const
 
QPointF mapToParent (qreal x, qreal y) const
 
QPointF mapToScene (qreal x, qreal y) const
 
QPolygonF mapToItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapToParent (qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapToScene (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectToItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectToParent (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectToScene (qreal x, qreal y, qreal w, qreal h) const
 
QPointF mapFromItem (const QGraphicsItem *item, qreal x, qreal y) const
 
QPointF mapFromParent (qreal x, qreal y) const
 
QPointF mapFromScene (qreal x, qreal y) const
 
QPolygonF mapFromItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapFromParent (qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapFromScene (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectFromItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectFromParent (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectFromScene (qreal x, qreal y, qreal w, qreal h) const
 
bool isAncestorOf (const QGraphicsItem *child) const
 
QGraphicsItemcommonAncestorItem (const QGraphicsItem *other) const
 
bool isUnderMouse () const
 
QVariant data (int key) const
 
void setData (int key, const QVariant &value)
 
Qt::InputMethodHints inputMethodHints () const
 
void setInputMethodHints (Qt::InputMethodHints hints)
 
void installSceneEventFilter (QGraphicsItem *filterItem)
 
void removeSceneEventFilter (QGraphicsItem *filterItem)
 

Static Public Member Functions

static void autoScale (double &xMin, double &xMax, double &tick, int &minTic, int &numDig, double xmi, double xma, double f, double c, bool log)
 Calculates scaling parameters. More...
 
static bool valid (double v, bool log=false)
 Checks a double value for validity. More...
 
- Static Public Member Functions inherited from KplItem
static QUrl absoluteUrl (const QString &path, const QUrl &urlPlo)
 Constructs absolute file URL. More...
 
static QBrush createBrush (unsigned color, FillStyle fillStyle=NoBrush)
 Creates brush. More...
 
static QPen createPen (double width, unsigned color, PenType penType, Symbol symbol)
 Creates pen. More...
 
static void paintSymbol (QPainter *painter, const QRectF &rect, Symbol symbol=OpenCircle)
 Paints symbol. More...
 
static QPixmap pixmap (Symbol symbol)
 Returns black decoration pixmap of plot symbol for use in dialog GUI. More...
 
static QPixmap pixmap (QPen pen, Symbol symbol=SolidLine)
 Returns decoration pixmap of plot symbol for use in item lists. More...
 
static QString path (const QUrl &urlPlo, const QUrl &url, bool absolute=false)
 Constructs absolute or (if possible) relative file path. More...
 
static void resetDashOffset ()
 Resets offset for dashed lines. More...
 
static unsigned rgb (const QString &color)
 Converts rgb string to QRgb. More...
 
static unsigned rgbQt1 (unsigned rgb)
 Converts QRgb to Qt1 QRgb. More...
 

Protected Member Functions

void drawText (QPainter *painter, const QString &text, double x, double y, TextItem::Alignment alignment, double dir=0) const
 Plots text. More...
 
double incLog (double &x, double f) const
 Increment logarithm for next major axis tick. More...
 
virtual void mouseReleaseEvent (QGraphicsSceneMouseEvent *event)
 Updates position. More...
 
int number (double v, int numDig, QString &label) const
 Prepares number label. More...
 
void paintCond (QPainter *painter) const
 Paints or calculates bounding area. More...
 
void setProperties ()
 Sets properties according to transformation matrix. More...
 
double tick (double tic, bool log) const
 Calculates actual distance between major tics. More...
 
- Protected Member Functions inherited from KplItem
QPenchangePenWidth (QPen &pen, double width) const
 Changes pen width. More...
 
QPen createPen (QGraphicsItem *item, unsigned color=0, PenType penType=DataPen, Symbol symbol=SolidLine) const
 Creates pen for plot item. More...
 
double penWidth (const QGraphicsItem *item, PenType penType=DataPen) const
 Calculates pen width for plot item. More...
 
- Protected Member Functions inherited from QGraphicsItem
void updateMicroFocus ()
 
virtual bool sceneEventFilter (QGraphicsItem *watched, QEvent *event)
 
virtual bool sceneEvent (QEvent *event)
 
virtual void contextMenuEvent (QGraphicsSceneContextMenuEvent *event)
 
virtual void dragEnterEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void dragLeaveEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void dragMoveEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void dropEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void focusInEvent (QFocusEvent *event)
 
virtual void focusOutEvent (QFocusEvent *event)
 
virtual void hoverEnterEvent (QGraphicsSceneHoverEvent *event)
 
virtual void hoverMoveEvent (QGraphicsSceneHoverEvent *event)
 
virtual void hoverLeaveEvent (QGraphicsSceneHoverEvent *event)
 
virtual void keyPressEvent (QKeyEvent *event)
 
virtual void keyReleaseEvent (QKeyEvent *event)
 
virtual void mousePressEvent (QGraphicsSceneMouseEvent *event)
 
virtual void mouseMoveEvent (QGraphicsSceneMouseEvent *event)
 
virtual void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event)
 
virtual void wheelEvent (QGraphicsSceneWheelEvent *event)
 
virtual void inputMethodEvent (QInputMethodEvent *event)
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery query) const
 
virtual QVariant itemChange (GraphicsItemChange change, const QVariant &value)
 
void prepareGeometryChange ()
 

Protected Attributes

bool m_logX
 
bool m_logY
 
bool m_xBottom
 
bool m_xTop
 
bool m_yLeft
 
bool m_yRight
 
bool m_collapsed
 
int m_numDigX
 
int m_numDigY
 
int m_minTicX
 
int m_minTicY
 
int m_expX
 
int m_expY
 
GridMode m_gridMode
 
unsigned m_colorFrame
 
unsigned m_colorGrid
 
double m_x0
 
double m_y0
 
double m_width
 
double m_height
 
double m_xMin
 
double m_xMax
 
double m_yMin
 
double m_yMax
 
double m_xTic
 
double m_yTic
 
double m_xOffset
 
double m_yOffset
 
double m_normX
 
double m_normY
 
double xminl
 
double xmaxl
 
double yminl
 
double ymaxl
 
QString m_textX
 
QString m_textY
 
QString m_header
 
QRectF bRect
 
QRectF cRect
 
QTransform md
 
QTransform m_inv
 
QTransform m_matrix
 
- Protected Attributes inherited from KplItem
double m_relSize
 

Additional Inherited Members

- Public Attributes inherited from QGraphicsItem
typedef GraphicsItemFlags
 
- Static Protected Member Functions inherited from KplItem
static double parentWidth (const QGraphicsItem *item)
 Returns width of item's parent frame or width of scene if the item has no parent item. More...
 
static double penWidthFactor (PenType penType)
 Returns factor to calculate pen width from frame width. More...
 
- Static Protected Attributes inherited from KplItem
static double m_dashOffset
 

Detailed Description

Frame item class.

Class for frame items with tics, grid, labels.

Author
Werner Stille

Member Enumeration Documentation

anonymous enum

Specific QGraphicsItem type number for function type()

Enumerator
Type 

Specific QGraphicsItem type number of FrameItem for function type().

Grid mode.

Determines how the frame should be plotted.

Enumerator
FrameOnly 

Only rectangular frame.

Axes 

Axes with tics and without labels.

AxesWithLabels 

Axes with tics and labels.

Grid 

Grid without labels.

GridWithLabels 

Grid with labels.

Constructor & Destructor Documentation

FrameItem::FrameItem ( double  x0 = 4,
double  y0 = 3,
double  width = 15,
double  height = 10,
unsigned  colorFrame = 0,
unsigned  colorGrid = 0,
bool  logX = false,
bool  logY = false,
GridMode  gridMode = AxesWithLabels,
double  xMax = 15,
double  yMax = 10,
const QString textX = "",
const QString textY = "",
const QString header = "",
double  relSize = 1,
int  numDigX = -1,
int  numDigY = -1,
int  minTicX = 5,
int  minTicY = 2,
int  expX = 0,
int  expY = 0,
double  xMin = 0,
double  yMin = 0,
double  xTic = 5,
double  yTic = 2,
bool  collapsed = false,
bool  visible = true,
double  xOffset = 0,
double  yOffset = 0,
bool  xBottom = true,
bool  xTop = false,
bool  yLeft = true,
bool  yRight = false 
)

Constructor.

Initializes corresponding to arguments.

Parameters
x0left page margin in cm.
y0bottom page margin in cm.
widthwidth in cm.
heightheight in cm.
colorFramecolor for frame and labels.
colorGridcolor for grids and tics.
logXtrue for logarithmic x axis.
logYtrue for logarithmic y axis.
gridModegrid mode.
xMaxx value of right data window margin in user units.
yMaxy value of top window data margin in user units.
textXx axis text.
textYy axis text.
headerheading text.
relSizerelative size of text, markers and lines.
numDigXnumber of digits for x axis.
numDigYnumber of digits for y axis.
minTicXnumber of intervals between major tics of x axis.
minTicYnumber of intervals between major tics of y axis.
expXlogarithm of normalization factor for x axis.
expYlogarithm of normalization factor for y axis.
xMinx value of left data window margin in user units.
yMiny value of bottom data window margin in user units.
xTicdistance between major tics of x axis.
yTicdistance between major tics of y axis.
collapsedtrue for collapsed in list view.
visibletrue for visible item.
xOffsetoffset for first major x tick.
yOffsetoffset for first major y tick.
xBottomtrue for x axis labels on bottom side.
xToptrue for x axis labels on top side.
yLefttrue for y axis labels on left side.
yRighttrue for y axis labels on right side.
FrameItem::FrameItem ( const FrameItem a)

Copy constructor.

Parameters
asource item.
FrameItem::FrameItem ( const KConfigGroup *  plo,
double  x0 = 4,
double  y0 = 3,
double  width = 15,
double  height = 10,
unsigned  colorFrame = 0,
unsigned  colorGrid = 0,
GridMode  gridMode = AxesWithLabels 
)

Constructor.

Initializes corresponding to plot file.

Parameters
plopointer to KConfigGroup object containing item data.
x0default value for left page margin in cm.
y0default value for bottom page margin in cm.
widthdefault value for width in cm.
heightdefault value for height in cm.
colorFramedefault value for color for frame and labels.
colorGriddefault value for color for grids and tics.
gridModegrid mode.
virtual FrameItem::~FrameItem ( )
virtual

Destructor.

Member Function Documentation

static void FrameItem::autoScale ( double &  xMin,
double &  xMax,
double &  tick,
int &  minTic,
int &  numDig,
double  xmi,
double  xma,
double  f,
double  c,
bool  log 
)
static

Calculates scaling parameters.

Parameters
xMinpointer to double for rounded minimum value.
xMaxpointer to double for rounded maximum value.
tickpointer to double for major tick distance.
minTicpointer to int for intervals between major tics.
numDigpointer to int for number of places after decimal point for lettering.
xmiminimum value.
xmamaximum value.
fnormalization factor.
cscaling constant, desired value for tick / (xma - xmi).
logtrue for logarithmic axis.
void FrameItem::autoScale ( double  xmi,
double  xma,
double  fx,
double  ymi,
double  yma,
double  fy 
)

Calculates and sets the scaling parameters.

Parameters
xmiminimum x value.
xmamaximum x value.
fxx normalization factor.
ymiminimum y value.
ymamaximum y value.
fyy normalization factor.
void FrameItem::autoScale ( bool  autoNorm = true)

Calculates and sets the scaling parameters.

Parameters
autoNormtrue for automatic normalization.
virtual QRectF FrameItem::boundingRect ( ) const
virtual

Calculates bounding rectangle.

Reimplemented from QGraphicsRectItem.

Reimplemented in ThreeDItem.

bool FrameItem::calcAutoScale ( bool  autoNorm,
const QList< QGraphicsItem * > &  items,
double &  fx,
double &  fy 
)

Calculates scaling parameters for a frame item and all its child items.

Parameters
autoNormtrue for automatic normalization.
itemslist of child items.
fxnormalization factor for x axis.
fynormalization factor for y axis.
Returns
true when scaling was successful.
QRectF FrameItem::clipRect ( ) const
inline

Returns clipping rectangle.

bool FrameItem::collapsed ( ) const
inline

Returns collapse state for list view.

unsigned FrameItem::colorFrame ( ) const
inline

Returns color for frame and labels.

unsigned FrameItem::colorGrid ( ) const
inline

Returns color for grids and tics.

void FrameItem::drawText ( QPainter painter,
const QString text,
double  x,
double  y,
TextItem::Alignment  alignment,
double  dir = 0 
) const
protected

Plots text.

Parameters
painterpointer to QPainter object.
texttext.
xx position in pixel units.
yy position in pixel units.
alignmenthorizontal alignment.
dirtext direction in degree.
int FrameItem::expX ( ) const
inline

Returns logarithm of normalization factor for x axis.

int FrameItem::expY ( ) const
inline

Returns logarithm of normalization factor for y axis.

GridMode FrameItem::gridMode ( ) const
inline

Returns grid mode.

QString FrameItem::header ( ) const
inline

Returns heading text.

double FrameItem::height ( ) const
inline

Returns height in cm.

double FrameItem::incLog ( double &  x,
double  f 
) const
protected

Increment logarithm for next major axis tick.

Parameters
xlogarithm of tick value.
ffactor to get second tick in a decade.
Returns
mantissa of x.
bool FrameItem::logX ( ) const
inline

Returns true for logarithmic x axis.

bool FrameItem::logY ( ) const
inline

Returns true for logarithmic y axis.

QPointF FrameItem::mapFromUser ( const QPointF p) const

Maps from user to pixel coordinates.

Parameters
puser coordinates.
Returns
pixel coordinates.
QPointF FrameItem::mapToUser ( const QPointF p) const

Maps from pixel to user coordinates.

Parameters
ppixel coordinates.
Returns
user coordinates.
QRectF FrameItem::mapToUser ( const QRectF rect) const

Maps from pixel to user coordinates.

Parameters
rectrectangle given in pixel coordinates.
Returns
rectangle given in user coordinates.
int FrameItem::minTicX ( ) const
inline

Returns number of intervals between major tics of x axis.

int FrameItem::minTicY ( ) const
inline

Returns number of intervals between major tics of y axis.

virtual void FrameItem::mouseReleaseEvent ( QGraphicsSceneMouseEvent event)
protectedvirtual

Updates position.

Reimplemented from QGraphicsItem.

double FrameItem::normX ( ) const
inline

Returns normalization factor for x values.

double FrameItem::normY ( ) const
inline

Returns normalization factor for y values.

int FrameItem::number ( double  v,
int  numDig,
QString label 
) const
protected

Prepares number label.

Parameters
vvalue in user units.
numDignumber of digits after decimal point (-1: no display of decimal point).
labellabel (output).
Returns
length of label string.
int FrameItem::numDigX ( ) const
inline

Returns number of digits for x axis.

int FrameItem::numDigY ( ) const
inline

Returns number of digits for y axis.

virtual void FrameItem::paint ( QPainter painter,
const QStyleOptionGraphicsItem option,
QWidget widget = 0 
)
virtual

Paints item.

Reimplemented from QGraphicsRectItem.

Reimplemented in Array3DItem, ThreeDItem, and Fun3DItem.

void FrameItem::paintCond ( QPainter painter) const
protected

Paints or calculates bounding area.

Parameters
painterQPainter object, 0 for calculating bounding area.
QPointF FrameItem::rectPos ( ) const

Returns position in cm units.

void FrameItem::setColorFrame ( unsigned  color)
inline

Sets color for frame and labels.

Parameters
colorcolor.
void FrameItem::setColorGrid ( unsigned  color)
inline

Sets color for grids and tics.

Parameters
colorcolor.
void FrameItem::setExpX ( int  expX)
inline

Sets exponent of x normalization factor.

Parameters
expXexponent.
void FrameItem::setExpY ( int  expY)
inline

Sets exponent of y normalization factor.

Parameters
expYexponent.
void FrameItem::setGridMode ( GridMode  gridMode)
inline

Sets grid mode.

Parameters
gridModegrid mode.
void FrameItem::setHeader ( const QString text)
inline

Sets heading text.

Parameters
textheading text.
void FrameItem::setHeight ( double  height)
inline

Sets height.

Parameters
heightheight in cm.
void FrameItem::setLogX ( bool  logX)
inline

Sets logarithmic mode of x axis.

Parameters
logXtrue for logarithmic x axis.
void FrameItem::setLogY ( bool  logY)
inline

Sets logarithmic mode of y axis.

Parameters
logYtrue for logarithmic y axis.
void FrameItem::setMinTicX ( int  minTicX)
inline

Sets number of intervals between major tics of x axis.

Parameters
minTicXnumber of intervals.
void FrameItem::setMinTicY ( int  minTicY)
inline

Sets number of intervals between major tics of y axis.

Parameters
minTicYnumber of intervals.
void FrameItem::setNumDigX ( int  numDigX)
inline

Sets number of digits for x axis.

Parameters
numDigXnumber of digits.
void FrameItem::setNumDigY ( int  numDigY)
inline

Sets number of digits for y axis.

Parameters
numDigYnumber of digits.
void FrameItem::setProperties ( const QTransform m)

Sets properties according to transformation matrix.

Parameters
mtransformation matrix.
void FrameItem::setProperties ( )
protected

Sets properties according to transformation matrix.

void FrameItem::setTextX ( const QString text)
inline

Sets x axis text.

Parameters
textaxis text.
void FrameItem::setTextY ( const QString text)
inline

Sets y axis text.

Parameters
textaxis text.
void FrameItem::setWidth ( double  width)
inline

Sets width.

Parameters
widthwidth in cm.
void FrameItem::setX0 ( double  x0)
inline

Sets left page margin.

Parameters
x0page margin in cm.
void FrameItem::setXBottom ( bool  xBottom)
inline

Sets bottom side label mode.

Parameters
xBottomtrue for x axis labels on bottom side.
void FrameItem::setXMax ( double  xMax)
inline

Sets upper x data limit.

Parameters
xMaxx value of right data window margin in user units.
void FrameItem::setXMin ( double  xMin)
inline

Sets lower x data limit.

Parameters
xMinx value of left data window margin in user units.
void FrameItem::setXOffset ( double  xOffset)
inline

Sets x offset.

Parameters
xOffsetoffset for first major x tick.
void FrameItem::setXTic ( double  xTic)
inline

Sets x tick distance.

Parameters
xTicdistance between major tics of x axis.
void FrameItem::setXTop ( bool  xTop)
inline

Sets top side label mode.

Parameters
xToptrue for x axis labels on top side.
void FrameItem::setY0 ( double  y0)
inline

Sets bottom page margin.

Parameters
y0page margin in cm.
void FrameItem::setYLeft ( bool  yLeft)
inline

Sets left side label mode.

Parameters
yLefttrue for x axis labels on left side.
void FrameItem::setYMax ( double  yMax)
inline

Sets upper y data limit.

Parameters
yMaxy value of upper data window margin in user units.
void FrameItem::setYMin ( double  yMin)
inline

Sets lower y data limit.

Parameters
yMiny value of lower data window margin in user units.
void FrameItem::setYOffset ( double  yOffset)
inline

Sets y offset.

Parameters
yOffsetoffset for first major y tick.
void FrameItem::setYRight ( bool  yRight)
inline

Sets right side label mode.

Parameters
yRighttrue for x axis labels on right side.
void FrameItem::setYTic ( double  yTic)
inline

Sets y tick distance.

Parameters
yTicdistance between major tics of y axis.
QPointF FrameItem::steps ( ) const

Returns user units steps for one pixel steps.

QString FrameItem::textX ( ) const
inline

Returns x axis text.

QString FrameItem::textY ( ) const
inline

Returns y axis text.

double FrameItem::tick ( double  tic,
bool  log 
) const
protected

Calculates actual distance between major tics.

Parameters
tictick distance in user units.
logtrue for logarithmic axis.
Returns
optimized value in case of logarithmic axis.
void FrameItem::toggleCollapsed ( )
inline

Toggles collapse state.

virtual int FrameItem::type ( ) const
inlinevirtual

Returns specific QGraphicsItem type number.

Reimplemented from QGraphicsRectItem.

Reimplemented in Array3DItem, and Fun3DItem.

void FrameItem::update ( )

Applies changes and forces redrawing.

void FrameItem::updatePos ( QPointF  p)

Sets position.

Parameters
pposition of bottom left corner in cm.
static bool FrameItem::valid ( double  v,
bool  log = false 
)
inlinestatic

Checks a double value for validity.

Parameters
vdouble value.
logtrue for use as argument of log function.
Returns
true for valid.
bool FrameItem::valid ( double  x,
double  y 
) const

Checks coordinates for validity.

Parameters
xx value.
yy value.
Returns
true for valid.
double FrameItem::width ( ) const
inline

Returns width in cm.

void FrameItem::writePlo ( KConfigGroup *  plo) const

Writes into plot file.

Parameters
ploKConfigGroup object.
double FrameItem::x0 ( ) const
inline

Returns left page margin in cm.

bool FrameItem::xBottom ( ) const
inline

Returns true for x axis labels on bottom side.

double FrameItem::xMax ( ) const
inline

Returns x value of right data window margin in user units.

double FrameItem::xMin ( ) const
inline

Returns x value of left data window margin in user units.

double FrameItem::xOffset ( ) const
inline

Returns offset for first major x tick.

double FrameItem::xTic ( ) const
inline

Returns distance between major tics of x axis.

bool FrameItem::xTop ( ) const
inline

Returns true for x axis labels on top side.

bool FrameItem::yLeft ( ) const
inline

Returns true for y axis labels on left side.

double FrameItem::yMax ( ) const
inline

Returns y value of upper data window margin in user units.

double FrameItem::yMin ( ) const
inline

Returns y value of lower data window margin in user units.

double FrameItem::yOffset ( ) const
inline

Returns offset for first major y tick.

bool FrameItem::yRight ( ) const
inline

Returns true for y axis labels on right side.

double FrameItem::yTic ( ) const
inline

Returns distance between major tics of y axis.


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