summaryrefslogtreecommitdiff
path: root/muse2/muse/arranger
diff options
context:
space:
mode:
authorTim E. Real <termtech@rogers.com>2012-08-04 22:14:50 +0000
committerTim E. Real <termtech@rogers.com>2012-08-04 22:14:50 +0000
commit345fb0cc41b94b08134dc1f40020b4bf26e1d46b (patch)
tree78f6da3cf9cd64a84ead190e615a175a6a82242d /muse2/muse/arranger
parent8ee7ac503d93d7a0b6cf3b49c3255d389ba59c17 (diff)
REWRITE: Introducing: More bits for Song Changed SC_* flags.
Added MusECore::SongChangedFlags_t (in new type_defs.h file). Declared as int64 type. All Song Changed parameters, handlers, connections, calls, colateral operations etc. now use this new SongChangedFlags_t. All the handlers are now ready for the code bodies to accept any extra flags, devs need not do anything more than define new SC_* flags and write support inside the handlers. Please beware these possible extra flags when writing songChanged handlers and setting updateFlags.
Diffstat (limited to 'muse2/muse/arranger')
-rw-r--r--muse2/muse/arranger/arranger.cpp8
-rw-r--r--muse2/muse/arranger/arranger.h5
-rw-r--r--muse2/muse/arranger/arrangerview.cpp4
-rw-r--r--muse2/muse/arranger/arrangerview.h3
-rw-r--r--muse2/muse/arranger/pcanvas.cpp2
-rw-r--r--muse2/muse/arranger/pcanvas.h3
-rw-r--r--muse2/muse/arranger/tlist.cpp4
-rw-r--r--muse2/muse/arranger/tlist.h3
8 files changed, 18 insertions, 14 deletions
diff --git a/muse2/muse/arranger/arranger.cpp b/muse2/muse/arranger/arranger.cpp
index 62c405d3..d25aa0b9 100644
--- a/muse2/muse/arranger/arranger.cpp
+++ b/muse2/muse/arranger/arranger.cpp
@@ -524,7 +524,7 @@ Arranger::Arranger(ArrangerView* parent, const char* name)
connect(canvas, SIGNAL(dclickPart(MusECore::Track*)), SIGNAL(editPart(MusECore::Track*)));
connect(canvas, SIGNAL(startEditor(MusECore::PartList*,int)), SIGNAL(startEditor(MusECore::PartList*, int)));
- connect(MusEGlobal::song, SIGNAL(songChanged(int, int)), SLOT(songChanged(int)));
+ connect(MusEGlobal::song, SIGNAL(songChanged(MusECore::SongChangedFlags_t)), SLOT(songChanged(MusECore::SongChangedFlags_t)));
connect(canvas, SIGNAL(followEvent(int)), hscroll, SLOT(setOffset(int)));
connect(canvas, SIGNAL(selectionChanged()), SIGNAL(selectionChanged()));
connect(canvas, SIGNAL(dropSongFile(const QString&)), SIGNAL(dropSongFile(const QString&)));
@@ -643,7 +643,7 @@ void Arranger::songlenChanged(int n)
// songChanged
//---------------------------------------------------------
-void Arranger::songChanged(int type)
+void Arranger::songChanged(MusECore::SongChangedFlags_t type)
{
// Is it simply a midi controller value adjustment? Forget it.
if(type != SC_MIDI_CONTROLLER)
@@ -1160,7 +1160,7 @@ void Arranger::genTrackInfo(QWidget* parent)
// updateTrackInfo
//---------------------------------------------------------
-void Arranger::updateTrackInfo(int flags)
+void Arranger::updateTrackInfo(MusECore::SongChangedFlags_t flags)
{
if (!showTrackinfoFlag) {
switchInfo(-1);
@@ -1198,7 +1198,7 @@ void Arranger::switchInfo(int n)
delete w;
w = new AudioStrip(trackInfo, (MusECore::AudioTrack*)selected);
//w->setFocusPolicy(Qt::TabFocus); // p4.0.9
- connect(MusEGlobal::song, SIGNAL(songChanged(int, int)), w, SLOT(songChanged(int)));
+ connect(MusEGlobal::song, SIGNAL(songChanged(MusECore::SongChangedFlags_t)), w, SLOT(songChanged(MusECore::SongChangedFlags_t)));
connect(MusEGlobal::muse, SIGNAL(configChanged()), w, SLOT(configChanged()));
w->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
trackInfo->addWidget(w, 2);
diff --git a/muse2/muse/arranger/arranger.h b/muse2/muse/arranger/arranger.h
index 60390a8f..f37edd9b 100644
--- a/muse2/muse/arranger/arranger.h
+++ b/muse2/muse/arranger/arranger.h
@@ -29,6 +29,7 @@
#include <QScrollBar>
#include <QResizeEvent>
+#include "type_defs.h"
#include "midieditor.h"
#include "pcanvas.h"
#include "trackautomationview.h"
@@ -156,7 +157,7 @@ class Arranger : public QWidget {
void showTrackInfo(bool);
void trackSelectionChanged();
void trackInfoScroll(int);
- void songChanged(int);
+ void songChanged(MusECore::SongChangedFlags_t);
void modeChange(int);
void setTime(unsigned);
void globalPitchChanged(int);
@@ -184,7 +185,7 @@ class Arranger : public QWidget {
public slots:
void dclickPart(MusECore::Track*);
void setTool(int);
- void updateTrackInfo(int flags);
+ void updateTrackInfo(MusECore::SongChangedFlags_t flags);
void configChanged();
void controllerChanged(MusECore::Track *t, int ctrlId);
void focusCanvas();
diff --git a/muse2/muse/arranger/arrangerview.cpp b/muse2/muse/arranger/arrangerview.cpp
index 14a0d8ef..66e3bbbb 100644
--- a/muse2/muse/arranger/arrangerview.cpp
+++ b/muse2/muse/arranger/arrangerview.cpp
@@ -113,7 +113,7 @@ ArrangerView::ArrangerView(QWidget* parent)
connect(MusEGlobal::muse, SIGNAL(configChanged()), arranger, SLOT(configChanged()));
connect(arranger, SIGNAL(setUsedTool(int)), editTools, SLOT(set(int)));
connect(arranger, SIGNAL(selectionChanged()), SLOT(selectionChanged()));
- connect(MusEGlobal::song, SIGNAL(songChanged(int, int)), this, SLOT(songChanged(int)));
+ connect(MusEGlobal::song, SIGNAL(songChanged(MusECore::SongChangedFlags_t)), this, SLOT(songChanged(MusECore::SongChangedFlags_t)));
@@ -379,7 +379,7 @@ void ArrangerView::closeEvent(QCloseEvent* e)
// songChanged
//---------------------------------------------------------
-void ArrangerView::songChanged(int type)
+void ArrangerView::songChanged(MusECore::SongChangedFlags_t type)
{
// TEST Try these, may need more/less. Esp more: Originally songChanged was directly connected to updateVisibleTracksButtons, so...
if(type & (SC_TRACK_INSERTED | SC_TRACK_REMOVED | SC_TRACK_MODIFIED |
diff --git a/muse2/muse/arranger/arrangerview.h b/muse2/muse/arranger/arrangerview.h
index 94e49e96..6a8f47c9 100644
--- a/muse2/muse/arranger/arrangerview.h
+++ b/muse2/muse/arranger/arrangerview.h
@@ -41,6 +41,7 @@
#include <QToolButton>
#include <limits.h>
+#include "type_defs.h"
#include "noteinfo.h"
#include "cobject.h"
#include "event.h"
@@ -128,7 +129,7 @@ class ArrangerView : public TopWin
void cmd(int);
void addNewTrack(QAction* action);
void configCustomColumns();
- void songChanged(int);
+ void songChanged(MusECore::SongChangedFlags_t);
signals:
void isDeleting(MusEGui::TopWin*);
diff --git a/muse2/muse/arranger/pcanvas.cpp b/muse2/muse/arranger/pcanvas.cpp
index c5c3ca6d..5e754e25 100644
--- a/muse2/muse/arranger/pcanvas.cpp
+++ b/muse2/muse/arranger/pcanvas.cpp
@@ -266,7 +266,7 @@ void PartCanvas::viewMouseDoubleClickEvent(QMouseEvent* event)
// update
//---------------------------------------------------------
-void PartCanvas::updateSong(DragType t, int flags)
+void PartCanvas::updateSong(DragType t, MusECore::SongChangedFlags_t flags)
{
MusEGlobal::song->update(flags | ((t == MOVE_COPY || t == MOVE_CLONE)
? SC_PART_INSERTED : SC_PART_MODIFIED));
diff --git a/muse2/muse/arranger/pcanvas.h b/muse2/muse/arranger/pcanvas.h
index 1b766c5d..c9e4c946 100644
--- a/muse2/muse/arranger/pcanvas.h
+++ b/muse2/muse/arranger/pcanvas.h
@@ -28,6 +28,7 @@
#include <set>
#include <QTime>
+#include "type_defs.h"
#include "song.h"
#include "canvas.h"
#include "trackautomationview.h"
@@ -123,7 +124,7 @@ class PartCanvas : public Canvas {
virtual void moveCanvasItems(CItemList&, int, int, DragType);
virtual bool moveItem(MusECore::Undo& operations, CItem*, const QPoint&, DragType);
- virtual void updateSong(DragType, int);
+ virtual void updateSong(DragType, MusECore::SongChangedFlags_t);
virtual void startDrag(CItem*, DragType);
virtual void dragEnterEvent(QDragEnterEvent*);
virtual void viewDropEvent(QDropEvent*);
diff --git a/muse2/muse/arranger/tlist.cpp b/muse2/muse/arranger/tlist.cpp
index 4d2a1251..6f8837e8 100644
--- a/muse2/muse/arranger/tlist.cpp
+++ b/muse2/muse/arranger/tlist.cpp
@@ -113,7 +113,7 @@ TList::TList(Header* hdr, QWidget* parent, const char* name)
//setAttribute(Qt::WA_OpaquePaintEvent);
resizeFlag = false;
- connect(MusEGlobal::song, SIGNAL(songChanged(int, int)), SLOT(songChanged(int)));
+ connect(MusEGlobal::song, SIGNAL(songChanged(MusECore::SongChangedFlags_t)), SLOT(songChanged(MusECore::SongChangedFlags_t)));
connect(MusEGlobal::muse, SIGNAL(configChanged()), SLOT(redraw()));
connect(MusEGlobal::heartBeatTimer, SIGNAL(timeout()), SLOT(maybeUpdateVolatileCustomColumns()));
}
@@ -122,7 +122,7 @@ TList::TList(Header* hdr, QWidget* parent, const char* name)
// songChanged
//---------------------------------------------------------
-void TList::songChanged(int flags)
+void TList::songChanged(MusECore::SongChangedFlags_t flags)
{
if (flags & (SC_MUTE | SC_SOLO | SC_RECFLAG | SC_TRACK_INSERTED
| SC_TRACK_REMOVED | SC_TRACK_MODIFIED | SC_ROUTE | SC_CHANNELS | SC_MIDI_TRACK_PROP
diff --git a/muse2/muse/arranger/tlist.h b/muse2/muse/arranger/tlist.h
index d3701451..fd05cac9 100644
--- a/muse2/muse/arranger/tlist.h
+++ b/muse2/muse/arranger/tlist.h
@@ -23,6 +23,7 @@
#ifndef __TLIST_H__
#define __TLIST_H__
+#include "type_defs.h"
#include "track.h"
#include <map>
#include <QWidget>
@@ -123,7 +124,7 @@ class TList : public QWidget {
void chanValueFinished();
void ctrlValueFinished();
void instrPopupActivated(QAction*);
- void songChanged(int flags);
+ void songChanged(MusECore::SongChangedFlags_t flags);
void changeAutomation(QAction*);
void changeAutomationColor(QAction*);
void loadTrackDrummap(MusECore::MidiTrack*, const char* filename=NULL);