KSeExpr 4.0.4.0
CCurveScene Class Reference

#include <ExprColorCurve.h>

Inheritance diagram for CCurveScene:

Public Slots

void interpChanged (int interp)
void selPosChanged (double pos)
void selValChanged (const KSeExpr::Vec3d &val)
void resize (int width, int height)

Signals

void cvSelected (double x, KSeExpr::Vec3d y, T_INTERP interp)
void curveChanged ()

Public Member Functions

 CCurveScene ()
 ~CCurveScene () override
void addPoint (double x, KSeExpr::Vec3d y, T_INTERP interp, bool select=true)
void removePoint (int index)
void removeAll ()
void keyPressEvent (QKeyEvent *event) override
void mouseMoveEvent (QGraphicsSceneMouseEvent *mouseEvent) override
void mousePressEvent (QGraphicsSceneMouseEvent *mouseEvent) override
void mouseReleaseEvent (QGraphicsSceneMouseEvent *mouseEvent) override
void contextMenuEvent (QGraphicsSceneContextMenuEvent *event) override
void drawRect ()
void drawPoints ()
QPixmap & getPixmap ()
void emitCurveChanged ()
void rebuildCurve ()

Public Attributes

std::vector< T_CURVE::CV > _cvs

Private Types

using T_CURVE = KSeExpr::Curve<KSeExpr::Vec3d>
using T_INTERP = T_CURVE::InterpType

Private Member Functions

QByteArray getCPixmap ()

Private Attributes

T_CURVE_curve
int _width
int _height
KSeExpr::Vec3d _color
T_INTERP _interp
std::vector< QGraphicsEllipseItem * > _circleObjects
int _selectedItem
QPixmap _pixmap
bool _pixmapDirty
QWidget * _baseRectW
QGraphicsProxyWidget * _baseRect
bool _lmb

Friends

class ExprColorCurve

Detailed Description

Definition at line 30 of file ExprColorCurve.h.

Member Typedef Documentation

◆ T_CURVE

Definition at line 34 of file ExprColorCurve.h.

◆ T_INTERP

Definition at line 35 of file ExprColorCurve.h.

Constructor & Destructor Documentation

◆ CCurveScene()

CCurveScene::CCurveScene ( )

◆ ~CCurveScene()

CCurveScene::~CCurveScene ( )
override

Definition at line 49 of file ExprColorCurve.cpp.

References _curve.

Member Function Documentation

◆ addPoint()

void CCurveScene::addPoint ( double x,
KSeExpr::Vec3d y,
T_INTERP interp,
bool select = true )

◆ contextMenuEvent()

void CCurveScene::contextMenuEvent ( QGraphicsSceneContextMenuEvent * event)
override

Definition at line 176 of file ExprColorCurve.cpp.

References _selectedItem, and removePoint().

◆ curveChanged

void CCurveScene::curveChanged ( )
signal

Referenced by emitCurveChanged().

◆ cvSelected

void CCurveScene::cvSelected ( double x,
KSeExpr::Vec3d y,
T_INTERP interp )
signal

◆ drawPoints()

void CCurveScene::drawPoints ( )

◆ drawRect()

void CCurveScene::drawRect ( )

Definition at line 289 of file ExprColorCurve.cpp.

References _baseRect, _baseRectW, and _width.

Referenced by resize().

◆ emitCurveChanged()

void CCurveScene::emitCurveChanged ( )

◆ getCPixmap()

QByteArray CCurveScene::getCPixmap ( )
private

Definition at line 252 of file ExprColorCurve.cpp.

References _curve, _height, and _width.

Referenced by getPixmap().

◆ getPixmap()

QPixmap & CCurveScene::getPixmap ( )

Definition at line 240 of file ExprColorCurve.cpp.

References _height, _pixmap, _pixmapDirty, _width, and getCPixmap().

◆ interpChanged

void CCurveScene::interpChanged ( int interp)
slot

◆ keyPressEvent()

void CCurveScene::keyPressEvent ( QKeyEvent * event)
override

Definition at line 111 of file ExprColorCurve.cpp.

References _selectedItem, and removePoint().

◆ mouseMoveEvent()

void CCurveScene::mouseMoveEvent ( QGraphicsSceneMouseEvent * mouseEvent)
override

◆ mousePressEvent()

void CCurveScene::mousePressEvent ( QGraphicsSceneMouseEvent * mouseEvent)
override

◆ mouseReleaseEvent()

void CCurveScene::mouseReleaseEvent ( QGraphicsSceneMouseEvent * mouseEvent)
override

Definition at line 187 of file ExprColorCurve.cpp.

References _lmb.

◆ rebuildCurve()

void CCurveScene::rebuildCurve ( )

◆ removeAll()

void CCurveScene::removeAll ( )

Definition at line 106 of file ExprColorCurve.cpp.

References _cvs.

◆ removePoint()

void CCurveScene::removePoint ( int index)

◆ resize

void CCurveScene::resize ( int width,
int height )
slot

Definition at line 54 of file ExprColorCurve.cpp.

References _height, _pixmap, _pixmapDirty, _width, drawPoints(), and drawRect().

Referenced by CCurveScene().

◆ selPosChanged

void CCurveScene::selPosChanged ( double pos)
slot

◆ selValChanged

void CCurveScene::selValChanged ( const KSeExpr::Vec3d & val)
slot

◆ ExprColorCurve

friend class ExprColorCurve
friend

Definition at line 63 of file ExprColorCurve.h.

References ExprColorCurve.

Referenced by ExprColorCurve.

Member Data Documentation

◆ _baseRect

QGraphicsProxyWidget* CCurveScene::_baseRect
private

Definition at line 89 of file ExprColorCurve.h.

Referenced by CCurveScene(), and drawRect().

◆ _baseRectW

QWidget* CCurveScene::_baseRectW
private

◆ _circleObjects

std::vector<QGraphicsEllipseItem *> CCurveScene::_circleObjects
private

Definition at line 84 of file ExprColorCurve.h.

Referenced by drawPoints(), and mousePressEvent().

◆ _color

KSeExpr::Vec3d CCurveScene::_color
private

Definition at line 82 of file ExprColorCurve.h.

Referenced by CCurveScene(), mousePressEvent(), and selValChanged().

◆ _curve

T_CURVE* CCurveScene::_curve
private

Definition at line 76 of file ExprColorCurve.h.

Referenced by CCurveScene(), getCPixmap(), mousePressEvent(), rebuildCurve(), and ~CCurveScene().

◆ _cvs

std::vector<T_CURVE::CV> CCurveScene::_cvs

◆ _height

int CCurveScene::_height
private

Definition at line 81 of file ExprColorCurve.h.

Referenced by CCurveScene(), drawPoints(), getCPixmap(), getPixmap(), and resize().

◆ _interp

T_INTERP CCurveScene::_interp
private

Definition at line 83 of file ExprColorCurve.h.

Referenced by CCurveScene(), interpChanged(), mouseMoveEvent(), and mousePressEvent().

◆ _lmb

bool CCurveScene::_lmb
private

Definition at line 90 of file ExprColorCurve.h.

Referenced by CCurveScene(), mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().

◆ _pixmap

QPixmap CCurveScene::_pixmap
private

Definition at line 86 of file ExprColorCurve.h.

Referenced by getPixmap(), and resize().

◆ _pixmapDirty

bool CCurveScene::_pixmapDirty
private

◆ _selectedItem

◆ _width

int CCurveScene::_width
private

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