/* CIRCLEELEMENT_H * CLASS DECLARATION * * CHANGLOG: * NAME: | CHANGES: | DATE: | * Mewes, Lars | Neuerstellung | 24.09.2021 | * | | | * | | | * | | | * * DESCRIPTION: * Diese Klasse "CircleElement" realisiert die einzelnen, farbigen Kreise des Quintenzirkels "CircleOfFifths". * Um den Signal-Slot-Mechanismus von Qt nutzen zu können, ist sowohl die Ableitung von der "QObject"-Klasse, als auch das "Q_OBJECT"-Makro notwendig. * (siehe dazu die Qt-Dokumentation) * Für die graphische Darstellung erbt die "CircleElement"-Klasse von "QGraphicsEllipseItem". Diese Klasse stellt alle wichtigen Funktionen und Attribute * für die Darstellung in einer "QGraphicsScene" zur Verfügung (siehe Klassendeklaration "CircleOfFifths") * * der Slot "void redraw();" wird ausgelöst, sobald (z.B. mittels Color-Picker) die Farbe eines Tons geändert wird. (siehe Klassendeklaration "Tone") * * TO-DOs: * Beschriftung auf den Elementen ergänzen * */ #pragma once #include #include "Tone.h" class CircleElement:public QObject, public QGraphicsEllipseItem{ Q_OBJECT Tone * tone; public: CircleElement(Tone * tone); CircleElement(); Tone * getTone()const; virtual ~CircleElement(); public slots: void redraw(); };