2019-03-28 02:17:15 +01:00
|
|
|
//
|
|
|
|
// Created by Syméon on 28/03/2019.
|
|
|
|
//
|
|
|
|
|
|
|
|
#ifndef FEIS_CHARTWITHHIST_H
|
|
|
|
#define FEIS_CHARTWITHHIST_H
|
|
|
|
|
|
|
|
#include "Chart.h"
|
|
|
|
#include "NotesClipboard.h"
|
|
|
|
#include "TimeSelection.h"
|
|
|
|
#include "HistoryActions.h"
|
|
|
|
#include "History.h"
|
2019-04-06 22:35:17 +02:00
|
|
|
#include "Widgets/DensityGraph.h"
|
|
|
|
|
2019-03-28 02:17:15 +01:00
|
|
|
|
|
|
|
struct Chart_with_History {
|
|
|
|
explicit Chart_with_History(Chart &c);
|
|
|
|
Chart& ref;
|
|
|
|
std::set<Note> selectedNotes;
|
|
|
|
NotesClipboard notesClipboard;
|
|
|
|
SelectionState timeSelection;
|
|
|
|
std::optional<std::pair<Note,Note>> longNoteBeingCreated;
|
|
|
|
bool creatingLongNote;
|
|
|
|
History<std::shared_ptr<ActionWithMessage>> history;
|
2019-04-06 22:35:17 +02:00
|
|
|
DensityGraph densityGraph;
|
2019-03-28 02:17:15 +01:00
|
|
|
|
|
|
|
std::optional<Note> makeLongNoteDummy(int current_tick) const;
|
|
|
|
std::optional<Note> makeCurrentLongNote() const;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif //FEIS_CHARTWITHHIST_H
|