CADrawableFunctionMarkingSupport Class Reference

Rectangles, key names, numbers below/above function, lines etc. Support class which draws the key of the function, rectangle around it, chord area, ellipse etc. These drawable music elements aren't selectable, but they can't be drawn by a single CADrawableFunctionMarking because they're usually dependent on more than one function marking. More...

#include <drawablefunctionmarking.h>

Inheritance diagram for CADrawableFunctionMarkingSupport:

Inheritance graph
[legend]

List of all members.

Public Types

enum  CADrawableFunctionMarkingSupportType {
  Key, Rectangle, ChordArea, Tonicization,
  Ellipse, Alterations
}

Public Member Functions

 CADrawableFunctionMarkingSupport (CADrawableFunctionMarkingSupportType, const QString key, CADrawableContext *c, int x, int y)
 CADrawableFunctionMarkingSupport (CADrawableFunctionMarkingSupportType, CADrawableFunctionMarking *function, CADrawableContext *c, int x, int y, CADrawableFunctionMarking *function2=0)
 CADrawableFunctionMarkingSupport (CADrawableFunctionMarkingSupportType, CAFunctionMarking *function, CADrawableContext *c, int x, int y)
 ~CADrawableFunctionMarkingSupport ()
void draw (QPainter *p, const CADrawSettings s)
CADrawableFunctionMarkingSupportclone (CADrawableContext *newContext=0)
CADrawableFunctionMarkingSupportType drawableFunctionMarkingSupportType ()
bool isExtenderLineVisible ()
void setExtenderLineVisible (bool visible)
bool rectWider ()
void setRectWider (bool wider)

Private Attributes

CADrawableFunctionMarkingSupportType _drawableFunctionMarkingSupportType
QString _key
CADrawableFunctionMarking_function1
CADrawableFunctionMarking_function2
bool _extenderLineVisible
bool _rectWider


Detailed Description

Rectangles, key names, numbers below/above function, lines etc. Support class which draws the key of the function, rectangle around it, chord area, ellipse etc. These drawable music elements aren't selectable, but they can't be drawn by a single CADrawableFunctionMarking because they're usually dependent on more than one function marking.

See also:
CADrawableFunctionMarking

Definition at line 39 of file drawablefunctionmarking.h.


Member Enumeration Documentation

enum CADrawableFunctionMarkingSupport::CADrawableFunctionMarkingSupportType

Enumerator:
Key 
Rectangle 
ChordArea 
Tonicization 
Ellipse 
Alterations 

Definition at line 41 of file drawablefunctionmarking.h.


Constructor & Destructor Documentation

CADrawableFunctionMarkingSupport::CADrawableFunctionMarkingSupport ( CADrawableFunctionMarkingSupportType  type,
const QString  key,
CADrawableContext c,
int  x,
int  y 
)

KeyName constructor.

Todo:
Width determination should be done automatically using QPainter::boundingRect() method

Definition at line 127 of file drawablefunctionmarking.cpp.

References _drawableFunctionMarkingSupportType, CADrawableMusElement::_drawableMusElementType, _function1, _function2, CADrawable::_height, _key, CADrawable::_neededHeight, CADrawable::_neededWidth, CADrawable::_width, CADrawableMusElement::DrawableFunctionMarkingSupport, Key, and CADrawable::setSelectable().

Referenced by clone().

Here is the call graph for this function:

Here is the caller graph for this function:

CADrawableFunctionMarkingSupport::CADrawableFunctionMarkingSupport ( CADrawableFunctionMarkingSupportType  type,
CADrawableFunctionMarking f1,
CADrawableContext c,
int  x,
int  y,
CADrawableFunctionMarking f2 = 0 
)

ChordArea, Tonicization, Modulation/ChordArea Rectangle, Ellipse constructor.

Todo:
Width determination should be done automatically using QPainter::boundingRect() method

Todo:
Width determination should be done automatically using QPainter::boundingRect() method

Definition at line 166 of file drawablefunctionmarking.cpp.

References _drawableFunctionMarkingSupportType, CADrawableMusElement::_drawableMusElementType, _extenderLineVisible, _function1, _function2, CADrawable::_height, CADrawable::_neededHeight, CADrawable::_neededWidth, _rectWider, CADrawable::_width, CADrawable::_xPos, CADrawable::_yPos, CAFunctionMarking::chordArea(), ChordArea, CAFunctionMarking::D, CADrawableMusElement::DrawableFunctionMarkingSupport, Ellipse, CADrawableFunctionMarking::functionMarking(), CADrawable::height(), CAFunctionMarking::I, CAFunctionMarking::II, CAFunctionMarking::III, CAFunctionMarking::isTonicDegreeMinor(), CAFunctionMarking::IV, Rectangle, CAFunctionMarking::S, CADrawable::setSelectable(), CAFunctionMarking::T, CAFunctionMarking::tonicDegree(), Tonicization, CAFunctionMarking::V, CAFunctionMarking::VI, CAFunctionMarking::VII, CADrawable::width(), CADrawable::xPos(), and CADrawable::yPos().

Here is the call graph for this function:

CADrawableFunctionMarkingSupport::CADrawableFunctionMarkingSupport ( CADrawableFunctionMarkingSupportType  type,
CAFunctionMarking function,
CADrawableContext c,
int  x,
int  y 
)

Alterations constructor.

Definition at line 230 of file drawablefunctionmarking.cpp.

References _drawableFunctionMarkingSupportType, CADrawableMusElement::_drawableMusElementType, _extenderLineVisible, _function1, _function2, CADrawable::_height, CADrawable::_neededHeight, CADrawable::_neededWidth, _rectWider, CADrawable::_width, CAFunctionMarking::addedDegrees(), CAFunctionMarking::alteredDegrees(), CADrawableMusElement::DrawableFunctionMarkingSupport, CAFunctionMarking::function(), CADrawable::setSelectable(), and CAFunctionMarking::Undefined.

Here is the call graph for this function:

CADrawableFunctionMarkingSupport::~CADrawableFunctionMarkingSupport (  ) 

Definition at line 253 of file drawablefunctionmarking.cpp.


Member Function Documentation

void CADrawableFunctionMarkingSupport::draw ( QPainter *  p,
const CADrawSettings  s 
) [virtual]

Implements CADrawable.

Definition at line 256 of file drawablefunctionmarking.cpp.

References _drawableFunctionMarkingSupportType, _extenderLineVisible, _function1, _function2, CADrawable::_height, _key, CADrawableMusElement::_musElement, CADrawable::_width, CAFunctionMarking::addedDegrees(), Alterations, CAFunctionMarking::alteredDegrees(), CAFunctionMarking::chordArea(), ChordArea, CADrawSettings::color, CAFunctionMarking::D, Ellipse, CAFunctionMarking::F, CAFunctionMarking::function(), CADrawableFunctionMarking::functionMarking(), CADrawable::height(), CAFunctionMarking::I, CAFunctionMarking::II, CAFunctionMarking::III, CAFunctionMarking::isChordAreaMinor(), CAFunctionMarking::isTonicDegreeMinor(), CAFunctionMarking::IV, CAFunctionMarking::K, Key, CAFunctionMarking::L, CAFunctionMarking::N, Rectangle, CAFunctionMarking::S, CAFunctionMarking::T, CAFunctionMarking::tonicDegree(), Tonicization, CAFunctionMarking::Undefined, CAFunctionMarking::V, CAFunctionMarking::VI, CAFunctionMarking::VII, CADrawable::width(), CADrawSettings::x, CADrawable::xPos(), CADrawSettings::y, and CADrawSettings::z.

Here is the call graph for this function:

CADrawableFunctionMarkingSupport * CADrawableFunctionMarkingSupport::clone ( CADrawableContext newContext = 0  )  [virtual]

Implements CADrawableMusElement.

Definition at line 392 of file drawablefunctionmarking.cpp.

References CADrawableMusElement::_drawableContext, _drawableFunctionMarkingSupportType, _function1, _function2, _key, CADrawableMusElement::_musElement, CADrawable::_xPos, CADrawable::_yPos, Alterations, CADrawableFunctionMarkingSupport(), ChordArea, Ellipse, Key, Rectangle, Tonicization, and CADrawable::width().

Here is the call graph for this function:

CADrawableFunctionMarkingSupportType CADrawableFunctionMarkingSupport::drawableFunctionMarkingSupportType (  )  [inline]

Definition at line 60 of file drawablefunctionmarking.h.

References _drawableFunctionMarkingSupportType.

bool CADrawableFunctionMarkingSupport::isExtenderLineVisible (  )  [inline]

Definition at line 62 of file drawablefunctionmarking.h.

References _extenderLineVisible.

void CADrawableFunctionMarkingSupport::setExtenderLineVisible ( bool  visible  )  [inline]

Definition at line 63 of file drawablefunctionmarking.h.

References _extenderLineVisible.

bool CADrawableFunctionMarkingSupport::rectWider (  )  [inline]

Definition at line 64 of file drawablefunctionmarking.h.

References _rectWider.

void CADrawableFunctionMarkingSupport::setRectWider ( bool  wider  )  [inline]

Definition at line 65 of file drawablefunctionmarking.h.

References CADrawable::_height, _rectWider, and CADrawable::_yPos.

Referenced by CAEngraver::reposit().

Here is the caller graph for this function:


Member Data Documentation

CADrawableFunctionMarkingSupportType CADrawableFunctionMarkingSupport::_drawableFunctionMarkingSupportType [private]

Definition at line 68 of file drawablefunctionmarking.h.

Referenced by CADrawableFunctionMarkingSupport(), clone(), draw(), and drawableFunctionMarkingSupportType().

QString CADrawableFunctionMarkingSupport::_key [private]

Definition at line 69 of file drawablefunctionmarking.h.

Referenced by CADrawableFunctionMarkingSupport(), clone(), and draw().

CADrawableFunctionMarking* CADrawableFunctionMarkingSupport::_function1 [private]

Definition at line 70 of file drawablefunctionmarking.h.

Referenced by CADrawableFunctionMarkingSupport(), clone(), and draw().

CADrawableFunctionMarking * CADrawableFunctionMarkingSupport::_function2 [private]

Definition at line 70 of file drawablefunctionmarking.h.

Referenced by CADrawableFunctionMarkingSupport(), clone(), and draw().

bool CADrawableFunctionMarkingSupport::_extenderLineVisible [private]

Definition at line 71 of file drawablefunctionmarking.h.

Referenced by CADrawableFunctionMarkingSupport(), draw(), isExtenderLineVisible(), and setExtenderLineVisible().

bool CADrawableFunctionMarkingSupport::_rectWider [private]

Definition at line 72 of file drawablefunctionmarking.h.

Referenced by CADrawableFunctionMarkingSupport(), rectWider(), and setRectWider().


The documentation for this class was generated from the following files:
Generated on Sat Feb 9 13:12:47 2008 for Canorus by  doxygen 1.5.3