summaryrefslogtreecommitdiff
path: root/muse2/muse/arranger/pcanvas.h
diff options
context:
space:
mode:
Diffstat (limited to 'muse2/muse/arranger/pcanvas.h')
-rw-r--r--muse2/muse/arranger/pcanvas.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/muse2/muse/arranger/pcanvas.h b/muse2/muse/arranger/pcanvas.h
index 927a64e1..2bce9035 100644
--- a/muse2/muse/arranger/pcanvas.h
+++ b/muse2/muse/arranger/pcanvas.h
@@ -25,6 +25,7 @@
#define __PCANVAS_H__
#include <QVector>
+#include <set>
#include "song.h"
#include "canvas.h"
@@ -124,9 +125,10 @@ class PartCanvas : public MusEWidget::Canvas {
void splitItem(MusEWidget::CItem* item, const QPoint&);
void copy(PartList*);
- void paste(bool clone = false, bool toTrack = true, bool doInsert=false);
- Undo pasteAt(const QString&, Track*, unsigned int, bool clone = false, bool toTrack = true, int* finalPosPtr = NULL);
- Undo movePartsTotheRight(unsigned int startTick, int length);
+ void copy_in_range(PartList*);
+ enum paste_mode_t { PASTEMODE_MIX, PASTEMODE_MOVEALL, PASTEMODE_MOVESOME };
+ void paste(bool clone = false, paste_mode_t paste_mode = PASTEMODE_MIX, bool to_single_track=false, int amount=1, int raster=1536);
+ Undo pasteAt(const QString&, Track*, unsigned int, bool clone = false, bool toTrack = true, int* finalPosPtr = NULL, std::set<Track*>* affected_tracks = NULL);
//Part* readClone(Xml&, Track*, bool toTrack = true);
void drawWavePart(QPainter&, const QRect&, WavePart*, const QRect&);
//void drawMidiPart(QPainter&, const QRect& rect, EventList* events, MidiTrack*mt, const QRect& r, int pTick, int from, int to);
@@ -141,8 +143,6 @@ class PartCanvas : public MusEWidget::Canvas {
double dbToVal(double inDb);
double valToDb(double inV);
-
-
protected:
virtual void drawCanvas(QPainter&, const QRect&);
virtual void endMoveItems(const QPoint&, DragType, int dir);
@@ -165,8 +165,8 @@ class PartCanvas : public MusEWidget::Canvas {
void returnPressed();
public:
- enum { CMD_CUT_PART, CMD_COPY_PART, CMD_PASTE_PART, CMD_PASTE_CLONE_PART, CMD_PASTE_PART_TO_TRACK, CMD_PASTE_CLONE_PART_TO_TRACK,
- CMD_INSERT_PART, CMD_INSERT_EMPTYMEAS };
+ enum { CMD_CUT_PART, CMD_COPY_PART, CMD_COPY_PART_IN_RANGE, CMD_PASTE_PART, CMD_PASTE_CLONE_PART,
+ CMD_PASTE_DIALOG, CMD_PASTE_CLONE_DIALOG, CMD_INSERT_EMPTYMEAS };
PartCanvas(int* raster, QWidget* parent, int, int);
void partsChanged();