summaryrefslogtreecommitdiff
path: root/muse_qt4_evolution/muse/midiedit/ecanvas.h
diff options
context:
space:
mode:
Diffstat (limited to 'muse_qt4_evolution/muse/midiedit/ecanvas.h')
-rw-r--r--muse_qt4_evolution/muse/midiedit/ecanvas.h173
1 files changed, 0 insertions, 173 deletions
diff --git a/muse_qt4_evolution/muse/midiedit/ecanvas.h b/muse_qt4_evolution/muse/midiedit/ecanvas.h
deleted file mode 100644
index f128e5fa..00000000
--- a/muse_qt4_evolution/muse/midiedit/ecanvas.h
+++ /dev/null
@@ -1,173 +0,0 @@
-//=============================================================================
-// MusE
-// Linux Music Editor
-// $Id:$
-//
-// Copyright (C) 2002-2006 by Werner Schweer and others
-//
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License version 2.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program; if not, write to the Free Software
-// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-//=============================================================================
-
-#ifndef __ECANVAS_H__
-#define __ECANVAS_H__
-
-#include "al/pos.h"
-#include "awl/tcanvas.h"
-#include "widgets/noteinfo.h"
-#include "citem.h"
-#include "ctrl/ctrledit.h"
-#include "widgets/tb1.h"
-
-class MidiTrack;
-class MidiEditor;
-class MidiEvent;
-class Part;
-class Event;
-class CtrlEdit;
-
-//---------------------------------------------------------
-// EventCanvas
-//---------------------------------------------------------
-
-class EventCanvas : public TimeCanvas {
- Q_OBJECT
-
- int startPitch; // on start dragging events
- int deltaPitch;
- int keyDown; // pressed key on piano keypad (or drum instrument list)
- int playedPitch;
-
- void noteOn(int pitch, int velocity, bool shift);
- void noteOff(int pitch);
- virtual void layout();
- virtual void magChanged();
-
- protected:
- enum DragMode {
- DRAG_OFF, DRAG_NEW,
- DRAG_MOVE_START, DRAG_MOVE,
- DRAG_COPY_START, DRAG_COPY,
- DRAGX_MOVE, DRAGY_MOVE,
- DRAGX_COPY, DRAGY_COPY,
- DRAG_DELETE,
- DRAG_RESIZE, DRAG_LASSO_START, DRAG_LASSO,
- };
-
- enum DragType {
- MOVE_MOVE, MOVE_COPY
- };
-
- CtrlEditList ctrlEditList;
- MidiEditor* editor;
- CItemList items;
- CItemList moving;
- CItem* curItem;
- Part* curPart;
- int canvasTools;
- int curSplitter; // -1 mouse not in splitter
- bool dragSplitter;
- int splitterY;
-
- DragMode drag;
- QRect lasso;
- QPoint start;
- QMenu* itemPopupMenu;
- QMenu* canvasPopupMenu;
-
- unsigned startTick, endTick;
- int curVelo;
-
- virtual void mousePress(QMouseEvent*);
- virtual void mouseDoubleClick(QMouseEvent*);
- virtual void mouseMove(QPoint);
- virtual void enterB();
- virtual void leaveB();
- virtual void mouseRelease(QMouseEvent*);
- void layoutPanelB(CtrlEdit* c);
-
- void updateSelection();
- virtual CItem* searchItem(const QPoint& p) const = 0;
- virtual void addItem(Part*, const Event&) = 0;
- virtual void moveItem(CItem*, DragType) = 0;
- virtual CItem* newItem(const QPoint&, int state) = 0;
- virtual void newItem(CItem*, bool noSnap=false) = 0;
- virtual bool deleteItem(CItem*) = 0;
- virtual void resizeItem(CItem*, bool noSnap=false) = 0;
-
- virtual void startDrag(CItem*, bool) {}
- virtual QMenu* genItemPopup(CItem*) { return 0; }
- virtual void itemPopup(CItem*, int, const QPoint&) {}
- virtual void itemReleased() {}
- virtual void itemPressed(const CItem*) {}
- virtual void itemMoved(const CItem*) {}
-
- virtual void addController();
-
- void endMoveItems(DragType);
- virtual void selectItem(CItem* e, bool);
- virtual void deselectAll();
- QMenu* genCanvasPopup();
- void canvasPopup(int);
- virtual void startUndo(DragType);
- virtual void endUndo(DragType);
- virtual void selectLasso(bool) {}
- void setCursor();
- virtual void deleteItem(const QPoint&);
- void moveItems(const QPoint& pos, int dir);
- void mousePressCanvasA(QPoint pos);
- void mousePressCanvasA(QMouseEvent*);
- void mouseMoveCanvasA(QPoint pos);
- void mouseReleaseCanvasA(QMouseEvent*);
-
- virtual void paintControllerCanvas(QPainter&, QRect);
- virtual void paintControllerPanel(QPainter&, QRect);
-
- void pasteAt(const QString& pt, unsigned pos);
- void updatePartControllerList();
-
- private slots:
- void removeController(QAction*);
- void midiNote(const MidiEvent&);
-
- public slots:
- void setQuant(int) { update(); }
- void songChanged(int);
-
- signals:
- void selectionChanged(int, Event&, Part*);
- void enterCanvas();
- void yChanged(int); // emitted from mouseMove in controller canvas
-
- public:
- EventCanvas(MidiEditor*, TimeCanvasType);
- MidiTrack* track() const;
- Part* part() const { return curPart; }
- QString getCaption() const;
- void range(AL::Pos& s, AL::Pos& e) const;
- void selectFirst();
- virtual void modifySelected(NoteInfo::ValType, int) {}
- virtual void keyPress(QKeyEvent*);
- int selectionSize() const;
- void setCurPart(Part*);
- QMimeData* getTextDrag();
- CItemList* getItems() { return &items; }
- CtrlEditList* getCtrlEditors() { return &ctrlEditList; }
- const CtrlEditList* getCtrlEditors() const { return &ctrlEditList; }
- void addController(int id, int h);
- void layout1();
- };
-
-extern void paintVLine(QPainter& p, int y1, int y2, int x);
-
-#endif
-