| 1 | |
|---|
| 2 | PeakRepresentation # This is not a QWidget, but may need to be a QObject? |
|---|
| 3 | + draw(QPainter&) |
|---|
| 4 | | |
|---|
| 5 | PeakRepresentationSpherical |
|---|
| 6 | | PeakRepresentationElliptical |
|---|
| 7 | | PeakRepresentationCross |
|---|
| 8 | |
|---|
| 9 | PeakViewFactory (concrete type, no base) |
|---|
| 10 | + createView(const Peak&) : PeakView # calls makeView with shape |
|---|
| 11 | - makeView(const PeakShapeSpherical&) : PeakRepresentationSpherical |
|---|
| 12 | - makeView(const PeakShapeEliptical&) : PeakRepresentationElliptical |
|---|
| 13 | - makeView(const PeakShapeNone&) : PeakRepresentationCross |
|---|
| 14 | |
|---|
| 15 | PeakView (concrete type) : public QWidget |
|---|
| 16 | - vector<PeakRepresentation*> |
|---|
| 17 | PeakView(vector<PeakRepresentation> |
|---|
| 18 | + paint(QPaintEvent*) # overload |
|---|
| 19 | |
|---|
| 20 | |
|---|
| 21 | Peak |
|---|
| 22 | |
|---|
| 23 | PeakViewFactory - Refactored from PeakOverlayMulti{X}Factory |
|---|
| 24 | |
|---|
| 25 | PeakRepresentation is essentially the Physical{X}Peaks rolled into a public inherited hierarchy with an additional draw method taking a QPainter& |
|---|
| 26 | |
|---|
| 27 | PeakView is essentially PeakOverlayMulti{X}, inside the paint method, we now call PeakRepresentation::draw(QPainter). Each PeakView instance |
|---|
| 28 | has a unique m_foreground color and m_background color that are applied to all drawn peaks. |
|---|
| 29 | |
|---|
| 30 | |
|---|