summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Jonsson <spamatica@gmail.com>2013-01-01 21:40:01 +0000
committerRobert Jonsson <spamatica@gmail.com>2013-01-01 21:40:01 +0000
commit35100b50d8533d131800c5d873c3780be221b091 (patch)
treeeaa854a98b9df672704eab914503be86d6764e39
parent6e5e3f9216120582e25f032c1626f670355dd604 (diff)
speaker icon
-rw-r--r--muse2/ChangeLog2
-rw-r--r--muse2/muse/midiedit/dcanvas.cpp83
-rw-r--r--muse2/muse/midiedit/dcanvas.h3
-rw-r--r--muse2/muse/midiedit/ecanvas.cpp38
-rw-r--r--muse2/muse/midiedit/ecanvas.h11
-rw-r--r--muse2/muse/midiedit/prcanvas.cpp131
-rw-r--r--muse2/muse/midiedit/prcanvas.h4
7 files changed, 129 insertions, 143 deletions
diff --git a/muse2/ChangeLog b/muse2/ChangeLog
index 43856f22..f443b05f 100644
--- a/muse2/ChangeLog
+++ b/muse2/ChangeLog
@@ -1,3 +1,5 @@
+01.01.2013: Happy new year!
+ - Fixed playback of drumsounds during editing for new type drum editor (rj)
29.12.2012:
- Added clear automation to automation menu
- Changed automation color selection to hopefully make more sense with styles that
diff --git a/muse2/muse/midiedit/dcanvas.cpp b/muse2/muse/midiedit/dcanvas.cpp
index 8b324bde..3be0abbf 100644
--- a/muse2/muse/midiedit/dcanvas.cpp
+++ b/muse2/muse/midiedit/dcanvas.cpp
@@ -58,6 +58,7 @@
using MusEGlobal::debugMsg;
using MusEGlobal::heavyDebugMsg;
+using MusECore::MidiTrack;
namespace MusEGui {
@@ -97,11 +98,6 @@ CItem* DrumCanvas::addItem(MusECore::Part* part, MusECore::Event& event)
int diff = event.endTick()-part->lenTick();
if (diff > 0) {// too short part? extend it
- //printf("addItem - this code should not be run!\n"); DELETETHIS
- //MusECore::Part* newPart = part->clone();
- //newPart->setLenTick(newPart->lenTick()+diff);
- //MusEGlobal::audio->msgChangePart(part, newPart,false);
- //part = newPart;
part->setLenTick(part->lenTick()+diff);
}
@@ -172,6 +168,7 @@ DrumCanvas::~DrumCanvas()
MusECore::Undo DrumCanvas::moveCanvasItems(CItemList& items, int dp, int dx, DragType dtype)
{
+
if(editor->parts()->empty())
return MusECore::Undo(); //return empty list
@@ -304,16 +301,16 @@ bool DrumCanvas::moveItem(MusECore::Undo& operations, CItem* item, const QPoint&
MusECore::MidiPart* part = (MusECore::MidiPart*)nevent->part();
MusECore::MidiPart* dest_part = part;
- int nheight = y2pitch(pos.y());
- if (nheight<0) nheight=0;
- if (nheight>=getOurDrumMapSize()) nheight=getOurDrumMapSize()-1;
+ int instrument = y2pitch(pos.y());
+ if (instrument<0) instrument=0;
+ if (instrument>=getOurDrumMapSize()) instrument=getOurDrumMapSize()-1;
- if (!instrument_map[nheight].tracks.contains(dest_part->track()))
+ if (!instrument_map[instrument].tracks.contains(dest_part->track()))
{
if (debugMsg)
printf("trying to move an event into a different track. checking if curPart is set correctly...\n");
- if (!instrument_map[nheight].tracks.contains(curPart->track()))
+ if (!instrument_map[instrument].tracks.contains(curPart->track()))
{
printf ("ERROR: tried to move an event into a track which is different from both the initial part's and the curPart's track! ignoring this one...\n");
return false;
@@ -322,7 +319,9 @@ bool DrumCanvas::moveItem(MusECore::Undo& operations, CItem* item, const QPoint&
dest_part=(MusECore::MidiPart*)curPart;
}
+
MusECore::Event event = nevent->event();
+
int x = pos.x();
if (x < 0)
x = 0;
@@ -332,7 +331,7 @@ bool DrumCanvas::moveItem(MusECore::Undo& operations, CItem* item, const QPoint&
MusECore::Event newEvent = event.clone();
- int ev_pitch = instrument_map[nheight].pitch;
+ int ev_pitch = instrument_map[instrument].pitch;
newEvent.setPitch(ev_pitch);
newEvent.setTick(ntick);
@@ -414,6 +413,12 @@ CItem* DrumCanvas::newItem(int tick, int instrument, int velocity)
e.setPitch(instrument_map[instrument].pitch);
e.setVelo(velocity);
e.setLenTick(ourDrumMap[instrument].len);
+ if(_playEvents)
+ {
+ int port = old_style_drummap_mode ? ourDrumMap[instrument].port : dynamic_cast<MidiTrack*>(*instrument_map[instrument].tracks.begin())->outPort();
+ int channel = old_style_drummap_mode ? ourDrumMap[instrument].channel : dynamic_cast<MidiTrack*>(*instrument_map[instrument].tracks.begin())->outChannel();
+ startPlayEvent(e.pitch(),e.velo(), port, channel);
+ }
return new DEvent(e, curPart, instrument);
}
@@ -450,7 +455,11 @@ void DrumCanvas::newItem(CItem* item, bool noSnap, bool replace)
x = editor->rasterVal(x);
event.setTick(x - nevent->part()->tick());
int npitch = event.pitch();
- //event.setPitch(npitch); // commented out by flo: has no effect
+
+ if(_playEvents) {
+ //stopPlayEvent();
+ keyReleased(pitch2y(event.pitch()), true); // kinda backwards but this should pick the right port, stopPlayEvent does not know.
+ }
// check for existing event
// if found change command semantic from insert to delete
@@ -512,6 +521,35 @@ bool DrumCanvas::deleteItem(CItem* item)
}
//---------------------------------------------------------
+// itemPressed
+//---------------------------------------------------------
+
+void DrumCanvas::itemPressed(const MusEGui::CItem* item)
+ {
+ if (!_playEvents)
+ return;
+
+ MusECore::Event e = ((DEvent*)item)->event();
+ int pitch = e.pitch();
+
+ startPlayEvent(pitch, e.velo()); //, port, channel);
+ }
+
+//---------------------------------------------------------
+// itemReleased
+//---------------------------------------------------------
+
+void DrumCanvas::itemReleased(const MusEGui::CItem* item, const QPoint&)
+ {
+ if (!_playEvents)
+ return;
+ MusECore::Event e = ((DEvent*)item)->event();
+ keyReleased(pitch2y(e.pitch()), true); // kinda backwards but this should pick the right port, stopPlayEvent does not know.
+ //stopPlayEvent();
+ }
+
+
+//---------------------------------------------------------
// drawItem
//---------------------------------------------------------
@@ -590,6 +628,18 @@ void DrumCanvas::drawMoving(QPainter& p, const CItem* item, const QRect& rect)
p.setPen(Qt::black);
p.setBrush(Qt::black);
p.drawPolygon(pa);
+
+ int instrument = y2pitch(y);
+ int pitch = instrument_map[instrument].pitch;
+ MusECore::Event e = ((DEvent*)item)->event();
+ if (pitch != playedPitch && _playEvents) {
+ keyReleased(playedPitch, true); // kinda backwards but this should pick the right port, stopPlayEvent does not know.
+ if (moving.size() == 1) {
+ int port = old_style_drummap_mode ? ourDrumMap[instrument].port : dynamic_cast<MidiTrack*>(*instrument_map[instrument].tracks.begin())->outPort();
+ int channel = old_style_drummap_mode ? ourDrumMap[instrument].channel : dynamic_cast<MidiTrack*>(*instrument_map[instrument].tracks.begin())->outChannel();
+ startPlayEvent(pitch, e.velo(), port, channel);
+ }
+ }
}
//---------------------------------------------------------
@@ -869,12 +919,10 @@ void DrumCanvas::keyPressed(int index, int velocity)
int port = old_style_drummap_mode ? ourDrumMap[index].port : dynamic_cast<MidiTrack*>(*instrument_map[index].tracks.begin())->outPort();
int channel = old_style_drummap_mode ? ourDrumMap[index].channel : dynamic_cast<MidiTrack*>(*instrument_map[index].tracks.begin())->outChannel();
int pitch = old_style_drummap_mode ? ourDrumMap[index].anote : instrument_map[index].pitch;
-
// play note:
if(_playEvents)
{
- MusECore::MidiPlayEvent e(0, port, channel, 0x90, pitch, velocity);
- MusEGlobal::audio->msgPlayMidiEvent(&e);
+ startPlayEvent(pitch,velocity, port, channel);
}
if (_steprec) /* && pos[0] >= start_tick && pos[0] < end_tick [removed by flo93: this is handled in steprec->record] */
@@ -899,9 +947,7 @@ void DrumCanvas::keyPressed(int index, int velocity)
//---------------------------------------------------------
void DrumCanvas::keyReleased(int index, bool)
- {
- using MusECore::MidiTrack;
-
+ {
if ((index<0) || (index>=getOurDrumMapSize()))
return;
@@ -915,6 +961,7 @@ void DrumCanvas::keyReleased(int index, bool)
{
MusECore::MidiPlayEvent e(0, port, channel, 0x90, pitch, 0);
MusEGlobal::audio->msgPlayMidiEvent(&e);
+ playedPitch=-1;
}
}
diff --git a/muse2/muse/midiedit/dcanvas.h b/muse2/muse/midiedit/dcanvas.h
index d35a8891..fb4a5a96 100644
--- a/muse2/muse/midiedit/dcanvas.h
+++ b/muse2/muse/midiedit/dcanvas.h
@@ -116,6 +116,9 @@ class DrumCanvas : public EventCanvas {
virtual void newItem(CItem*, bool);
virtual void newItem(CItem*, bool, bool replace );
virtual bool deleteItem(CItem*);
+ virtual void itemPressed(const CItem*);
+ virtual void itemReleased(const CItem*, const QPoint&);
+
CItem* newItem(int tick, int instrument, int velocity);
int y2pitch(int y) const;
diff --git a/muse2/muse/midiedit/ecanvas.cpp b/muse2/muse/midiedit/ecanvas.cpp
index c1185688..e07fc99e 100644
--- a/muse2/muse/midiedit/ecanvas.cpp
+++ b/muse2/muse/midiedit/ecanvas.cpp
@@ -46,6 +46,7 @@
namespace MusEGui {
+
//---------------------------------------------------------
// EventCanvas
//---------------------------------------------------------
@@ -476,4 +477,41 @@ void EventCanvas::endMoveItems(const QPoint& pos, DragType dragtype, int dir)
redraw();
}
+//---------------------------------------------------------
+// startPlayEvent
+//---------------------------------------------------------
+
+void EventCanvas::startPlayEvent(int note, int velocity, int port, int channel)
+ {
+ if (MusEGlobal::debugMsg)
+ printf("EventCanvas::startPlayEvent %d %d %d %d\n", note, velocity, port, channel);
+ playedPitch = note + track()->transposition;
+
+ // play note:
+ MusECore::MidiPlayEvent e(0, port, channel, 0x90, playedPitch, velocity);
+ MusEGlobal::audio->msgPlayMidiEvent(&e);
+ }
+
+void EventCanvas::startPlayEvent(int note, int velocity)
+ {
+ int port = track()->outPort();
+ int channel = track()->outChannel();
+ startPlayEvent(note, velocity, port, channel);
+}
+
+//---------------------------------------------------------
+// stopPlayEvent
+//---------------------------------------------------------
+
+void EventCanvas::stopPlayEvent()
+ {
+ int port = track()->outPort();
+ int channel = track()->outChannel();
+
+ // release note:
+ MusECore::MidiPlayEvent ev(0, port, channel, 0x90, playedPitch, 0);
+ MusEGlobal::audio->msgPlayMidiEvent(&ev);
+ playedPitch = -1;
+ }
+
} // namespace MusEGui
diff --git a/muse2/muse/midiedit/ecanvas.h b/muse2/muse/midiedit/ecanvas.h
index 400072dc..b5120173 100644
--- a/muse2/muse/midiedit/ecanvas.h
+++ b/muse2/muse/midiedit/ecanvas.h
@@ -29,6 +29,8 @@
#include <QEvent>
#include <QKeyEvent>
+#define KH 13
+
class QMimeData;
class QDrag;
class QString;
@@ -51,6 +53,7 @@ typedef std::map<Part*, PartToChange>::iterator iPartToChange;
namespace MusEGui {
+
class MidiEditor;
//---------------------------------------------------------
// EventCanvas
@@ -64,6 +67,7 @@ class EventCanvas : public Canvas {
virtual void mouseMove(QMouseEvent* event);
protected:
+ int playedPitch;
bool _playEvents;
MidiEditor* editor;
unsigned start_tick, end_tick;
@@ -78,6 +82,11 @@ class EventCanvas : public Canvas {
virtual MusECore::Undo moveCanvasItems(CItemList&, int, int, DragType) = 0;
virtual bool moveItem(MusECore::Undo&, CItem*, const QPoint&, DragType) = 0;
virtual void endMoveItems(const QPoint&, DragType, int dir);
+ virtual void startPlayEvent(int note, int velocity);
+ virtual void startPlayEvent(int note, int velocity, int port, int channel);
+ virtual void stopPlayEvent();
+
+
public slots:
void redrawGrid() { redraw(); }
@@ -104,7 +113,7 @@ class EventCanvas : public Canvas {
virtual void selectAtTick(unsigned int tick);
virtual void viewDropEvent(QDropEvent* event);
virtual void modifySelected(NoteInfo::ValType, int /*val*/, bool /*delta_mode*/ = true) {}
- virtual void keyPress(QKeyEvent*);
+ virtual void keyPress(QKeyEvent*);
};
} // namespace MusEGui
diff --git a/muse2/muse/midiedit/prcanvas.cpp b/muse2/muse/midiedit/prcanvas.cpp
index 8273c8d9..0670625a 100644
--- a/muse2/muse/midiedit/prcanvas.cpp
+++ b/muse2/muse/midiedit/prcanvas.cpp
@@ -67,6 +67,7 @@ NEvent::NEvent(MusECore::Event& e, MusECore::Part* p, int y) : MusEGui::CItem(e,
setBBox(QRect(tick, y, e.lenTick(), KH/2));
}
+
//---------------------------------------------------------
// addItem
//---------------------------------------------------------
@@ -83,11 +84,6 @@ CItem* PianoCanvas::addItem(MusECore::Part* part, MusECore::Event& event)
int diff = event.tick()-part->lenTick();
if (diff > 0) {// too short part? extend it
- //printf("addItem - this code should not be run!\n"); DELETETHIS
- //MusECore::Part* newPart = part->clone();
- //newPart->setLenTick(newPart->lenTick()+diff);
- //MusEGlobal::audio->msgChangePart(part, newPart,false);
- //part = newPart;
part->setLenTick(part->lenTick()+diff);
}
@@ -248,24 +244,9 @@ void PianoCanvas::drawItem(QPainter& p, const MusEGui::CItem* item,
int mey = mer.y();
int mew = mer.width();
int meh = mer.height();
- //int mfx = mx; DELETETHIS
- //if(mfx == mex) mfx += 1;
- //int mfy = my;
- //if(mfy == mey) mfy += 1;
- //int mfw = mw;
- //if(mfw == mew) mfw -= 1;
- //if(mfx == mex) mfw -= 1;
- //int mfh = mh;
- //if(mfh == meh) mfh -= 1;
- //if(mfy == mey) mfh -= 1;
color.setAlpha(MusEGlobal::config.globalAlphaBlend);
- //QLinearGradient gradient(mex + 1, mey + 1, mex + 1, mey + meh - 2); // Inside the border DELETETHIS
- //gradient.setColorAt(0, color);
- //gradient.setColorAt(1, color.darker());
- //QBrush brush(gradient);
QBrush brush(color);
p.fillRect(mr, brush);
- //p.fillRect(mfx, mfy, mfw, mfh, brush); DELETETHIS
if(mex >= mx && mex <= mx + mw)
p.drawLine(mex, my, mex, my + mh - 1); // The left edge
@@ -451,17 +432,10 @@ bool PianoCanvas::moveItem(MusECore::Undo& operations, MusEGui::CItem* item, con
if (x < 0)
x = 0;
if (event.pitch() != npitch && _playEvents) {
- int port = track()->outPort();
- int channel = track()->outChannel();
- // release note:
- MusECore::MidiPlayEvent ev1(0, port, channel, 0x90, event.pitch() + track()->transposition, 0);
- MusEGlobal::audio->msgPlayMidiEvent(&ev1);
+ stopPlayEvent();
if (moving.size() == 1) {
- MusECore::MidiPlayEvent ev2(0, port, channel, 0x90, npitch + track()->transposition, event.velo());
- MusEGlobal::audio->msgPlayMidiEvent(&ev2);
+ startPlayEvent(npitch, event.velo());
}
- else
- playedPitch=-1;
}
MusECore::Part* part = nevent->part();
@@ -506,7 +480,7 @@ MusEGui::CItem* PianoCanvas::newItem(const QPoint& p, int)
NEvent *newEvent = new NEvent(e, curPart, pitch2y(pitch));
if(_playEvents)
- startPlayEvent(newEvent);
+ startPlayEvent(e.pitch(), e.velo());
return newEvent;
}
@@ -717,15 +691,10 @@ void PianoCanvas::pianoCmd(int cmd)
void PianoCanvas::pianoPressed(int pitch, int velocity, bool shift)
{
- int port = track()->outPort();
- int channel = track()->outChannel();
- pitch += track()->transposition;
-
// play note:
if(_playEvents)
{
- MusECore::MidiPlayEvent e(0, port, channel, 0x90, pitch, velocity);
- MusEGlobal::audio->msgPlayMidiEvent(&e);
+ startPlayEvent(pitch, velocity);
}
if (_steprec && curPart) // && pos[0] >= start_tick && pos[0] < end_tick [removed by flo93: this is handled in steprec->record]
@@ -736,18 +705,11 @@ void PianoCanvas::pianoPressed(int pitch, int velocity, bool shift)
// pianoReleased
//---------------------------------------------------------
-void PianoCanvas::pianoReleased(int pitch, bool)
+void PianoCanvas::pianoReleased(int /*pitch*/, bool)
{
- int port = track()->outPort();
- int channel = track()->outChannel();
- pitch += track()->transposition;
-
// release key:
if(_playEvents)
- {
- MusECore::MidiPlayEvent e(0, port, channel, 0x90, pitch, 0);
- MusEGlobal::audio->msgPlayMidiEvent(&e);
- }
+ stopPlayEvent();
}
//---------------------------------------------------------
@@ -761,56 +723,28 @@ void PianoCanvas::drawCanvas(QPainter& p, const QRect& rect)
int w = rect.width();
int h = rect.height();
- //DELETETHIS whoa, clean up the whole function. remove every commented out code line
-
- // Changed to draw in device coordinate space instead of virtual, transformed space. Tim. p4.0.30
-
- //int mx = mapx(x);
- //int my = mapy(y);
- //int mw = mapx(x + w) - mx;
- //int mw = mapx(x + w) - mx - 1;
- //int mh = mapy(y + h) - my;
- //int mh = mapy(y + h) - my - 1;
-
- // p.save();
- // FIXME Can't get horizontal lines quite right yet. Draw in virtual space for now...
- ///p.setWorldMatrixEnabled(false);
//---------------------------------------------------
// horizontal lines
//---------------------------------------------------
int yy = ((y-1) / KH) * KH + KH;
- //int yy = my + KH;
- //int yy = ((my-1) / KH) * KH + KH;
- //int yoff = -rmapy(yorg) - ypos;
int key = 75 - (yy / KH);
- //printf("PianoCanvas::drawCanvas x:%d y:%d w:%d h:%d mx:%d my:%d mw:%d mh:%d yy:%d key:%d\n", x, y, w, h, mx, my, mw, mh, yy, key);
for (; yy < y + h; yy += KH) {
- //for (; yy + yoff < my + mh; yy += KH) {
- //for (; yy < my + mh; yy += KH) {
switch (key % 7) {
case 0:
case 3:
p.setPen(Qt::black);
p.drawLine(x, yy, x + w, yy);
- //p.drawLine(mx, yy + yoff, mx + mw, yy + yoff);
- //p.drawLine(mx, yy, mx + mw, yy);
break;
default:
p.fillRect(x, yy-3, w, 6, QBrush(QColor(230,230,230)));
- //p.fillRect(mx, yy-3 + yoff, mw, 6, QBrush(QColor(230,230,230)));
- //p.fillRect(mx, yy-3, mw, 6, QBrush(QColor(230,230,230)));
break;
}
--key;
}
- //p.restore();
- ///p.setWorldMatrixEnabled(true);
-
- //p.setWorldMatrixEnabled(false);
//---------------------------------------------------
// vertical lines
@@ -818,8 +752,6 @@ void PianoCanvas::drawCanvas(QPainter& p, const QRect& rect)
drawTickRaster(p, x, y, w, h, editor->raster());
- //p.restore();
- //p.setWorldMatrixEnabled(true);
}
//---------------------------------------------------------
@@ -993,8 +925,6 @@ void PianoCanvas::dragEnterEvent(QDragEnterEvent* event)
void PianoCanvas::dragMoveEvent(QDragMoveEvent*)
{
- //printf("drag move %x\n", this); DELETETHIS (whole function?)
- //event->acceptProposedAction();
}
//---------------------------------------------------------
@@ -1003,8 +933,6 @@ void PianoCanvas::dragMoveEvent(QDragMoveEvent*)
void PianoCanvas::dragLeaveEvent(QDragLeaveEvent*)
{
- //printf("drag leave\n"); DELETETHIS (whole function?)
- //event->acceptProposedAction();
}
//---------------------------------------------------------
@@ -1015,7 +943,8 @@ void PianoCanvas::itemPressed(const MusEGui::CItem* item)
{
if (!_playEvents)
return;
- startPlayEvent(item);
+ MusECore::Event e = ((NEvent*)item)->event();
+ startPlayEvent(e.pitch(), e.velo());
}
//---------------------------------------------------------
@@ -1037,23 +966,16 @@ void PianoCanvas::itemMoved(const MusEGui::CItem* item, const QPoint& pos)
{
int npitch = y2pitch(pos.y());
if ((playedPitch != -1) && (playedPitch != npitch)) {
- int port = track()->outPort();
- int channel = track()->outChannel();
NEvent* nevent = (NEvent*) item;
MusECore::Event event = nevent->event();
// release note:
- MusECore::MidiPlayEvent ev1(0, port, channel, 0x90, playedPitch, 0);
- MusEGlobal::audio->msgPlayMidiEvent(&ev1);
+ stopPlayEvent();
if (moving.size() == 1) { // items moving
// play note:
- MusECore::MidiPlayEvent e2(0, port, channel, 0x90, npitch + track()->transposition, event.velo());
- MusEGlobal::audio->msgPlayMidiEvent(&e2);
- playedPitch = npitch + track()->transposition;
+ startPlayEvent(npitch, event.velo());
}
- else
- playedPitch = -1;
}
}
@@ -1173,37 +1095,6 @@ void PianoCanvas::resizeEvent(QResizeEvent* ev)
EventCanvas::resizeEvent(ev);
}
-//---------------------------------------------------------
-// startPlayEvent
-//---------------------------------------------------------
-void PianoCanvas::startPlayEvent(const MusEGui::CItem* item)
- {
- int port = track()->outPort();
- int channel = track()->outChannel();
- NEvent* nevent = (NEvent*) item;
- MusECore::Event event = nevent->event();
- playedPitch = event.pitch() + track()->transposition;
- int velo = event.velo();
-
- // play note:
- MusECore::MidiPlayEvent e(0, port, channel, 0x90, playedPitch, velo);
- MusEGlobal::audio->msgPlayMidiEvent(&e);
- }
-
-//---------------------------------------------------------
-// stopPlayEvent
-//---------------------------------------------------------
-
-void PianoCanvas::stopPlayEvent()
- {
- int port = track()->outPort();
- int channel = track()->outChannel();
-
- // release note:
- MusECore::MidiPlayEvent ev(0, port, channel, 0x90, playedPitch, 0);
- MusEGlobal::audio->msgPlayMidiEvent(&ev);
- playedPitch = -1;
- }
} // namespace MusEGui
diff --git a/muse2/muse/midiedit/prcanvas.h b/muse2/muse/midiedit/prcanvas.h
index cbe6c68c..0dfe806c 100644
--- a/muse2/muse/midiedit/prcanvas.h
+++ b/muse2/muse/midiedit/prcanvas.h
@@ -34,7 +34,6 @@
#include "steprec.h"
-#define KH 13
class QRect;
@@ -61,7 +60,6 @@ class PianoCanvas : public EventCanvas {
Q_OBJECT
int colorMode;
- int playedPitch;
bool noteHeldDown[128];
@@ -92,8 +90,6 @@ class PianoCanvas : public EventCanvas {
virtual void itemMoved(const CItem*, const QPoint&);
virtual void curPartChanged();
virtual void resizeEvent(QResizeEvent*);
- virtual void startPlayEvent(const CItem*);
- virtual void stopPlayEvent();
private slots:
void midiNote(int pitch, int velo);