summaryrefslogtreecommitdiff
path: root/muse2/muse/arranger
diff options
context:
space:
mode:
authorOrcan Ogetbil <oget.fedora@gmail.com>2011-09-15 04:13:10 +0000
committerOrcan Ogetbil <oget.fedora@gmail.com>2011-09-15 04:13:10 +0000
commit3859b10f9a5eaca7df8f85394756375af0b17a1c (patch)
tree4ed55ccfbc5691a212e2a995982db7cf662541c8 /muse2/muse/arranger
parentd020b82fd8108351eacb56a2d0c39f149a1c5057 (diff)
New namespaces and change in default colors. See ChangeLog.
Diffstat (limited to 'muse2/muse/arranger')
-rw-r--r--muse2/muse/arranger/alayout.cpp4
-rw-r--r--muse2/muse/arranger/alayout.h5
-rw-r--r--muse2/muse/arranger/arranger.cpp12
-rw-r--r--muse2/muse/arranger/arranger.h12
-rw-r--r--muse2/muse/arranger/arrangerview.cpp3
-rw-r--r--muse2/muse/arranger/arrangerview.h4
-rw-r--r--muse2/muse/arranger/pcanvas.cpp108
-rw-r--r--muse2/muse/arranger/pcanvas.h16
-rw-r--r--muse2/muse/arranger/tlist.cpp28
-rw-r--r--muse2/muse/arranger/tlist.h4
-rw-r--r--muse2/muse/arranger/trackautomationview.cpp4
-rw-r--r--muse2/muse/arranger/trackautomationview.h4
12 files changed, 79 insertions, 125 deletions
diff --git a/muse2/muse/arranger/alayout.cpp b/muse2/muse/arranger/alayout.cpp
index f316dec9..2c2ee719 100644
--- a/muse2/muse/arranger/alayout.cpp
+++ b/muse2/muse/arranger/alayout.cpp
@@ -25,6 +25,8 @@
#include <QScrollBar>
+namespace MusEArranger {
+
//---------------------------------------------------------
// wadd
//---------------------------------------------------------
@@ -213,3 +215,5 @@ void TLLayout::clear()
delete child;
}
}
+
+} // namespace MusEArranger
diff --git a/muse2/muse/arranger/alayout.h b/muse2/muse/arranger/alayout.h
index 88f03e7a..fe41eeb2 100644
--- a/muse2/muse/arranger/alayout.h
+++ b/muse2/muse/arranger/alayout.h
@@ -29,6 +29,8 @@
class QLayoutItem;
class QScrollBar;
+namespace MusEArranger {
+
class WidgetStack;
//---------------------------------------------------------
@@ -72,4 +74,7 @@ class TLLayout : public QLayout
virtual QLayoutItem* takeAt(int); // { return 0;} // ddskrjo, is pure virtual, overridden
///virtual int count() const { return ilist.count(); } // ddskrjo, is pure virtual, overridden
};
+
+} // namespace MusEArranger
+
#endif
diff --git a/muse2/muse/arranger/arranger.cpp b/muse2/muse/arranger/arranger.cpp
index 09e67151..1900b622 100644
--- a/muse2/muse/arranger/arranger.cpp
+++ b/muse2/muse/arranger/arranger.cpp
@@ -70,6 +70,8 @@
#include "spinbox.h"
#include "shortcuts.h"
+namespace MusEArranger {
+
//---------------------------------------------------------
// Arranger::setHeaderToolTips
//---------------------------------------------------------
@@ -595,7 +597,7 @@ void Arranger::songChanged(int type)
if(type & SC_TRACK_REMOVED)
{
- AudioStrip* w = (AudioStrip*)(trackInfo->getWidget(2));
+ MusEMixer::AudioStrip* w = (MusEMixer::AudioStrip*)(trackInfo->getWidget(2));
//AudioStrip* w = (AudioStrip*)(trackInfo->widget(2));
if(w)
{
@@ -954,7 +956,7 @@ QSize WidgetStack::minimumSizeHint() const
void Arranger::clear()
{
- AudioStrip* w = (AudioStrip*)(trackInfo->getWidget(2));
+ MusEMixer::AudioStrip* w = (MusEMixer::AudioStrip*)(trackInfo->getWidget(2));
if (w)
delete w;
trackInfo->addWidget(0, 2);
@@ -1054,11 +1056,11 @@ void Arranger::updateTrackInfo(int flags)
void Arranger::switchInfo(int n)
{
if (n == 2) {
- AudioStrip* w = (AudioStrip*)(trackInfo->getWidget(2));
+ MusEMixer::AudioStrip* w = (MusEMixer::AudioStrip*)(trackInfo->getWidget(2));
if (w == 0 || selected != w->getTrack()) {
if (w)
delete w;
- w = new AudioStrip(trackInfo, (AudioTrack*)selected);
+ w = new MusEMixer::AudioStrip(trackInfo, (AudioTrack*)selected);
//w->setFocusPolicy(Qt::TabFocus); // p4.0.9
connect(song, SIGNAL(songChanged(int)), w, SLOT(songChanged(int)));
connect(MusEGlobal::muse, SIGNAL(configChanged()), w, SLOT(configChanged()));
@@ -1138,3 +1140,5 @@ void Arranger::horizontalZoomOut()
hscroll->setMag(newmag);
}
+
+} // namespace MusEArranger
diff --git a/muse2/muse/arranger/arranger.h b/muse2/muse/arranger/arranger.h
index 1e3943be..f65c69a6 100644
--- a/muse2/muse/arranger/arranger.h
+++ b/muse2/muse/arranger/arranger.h
@@ -39,12 +39,13 @@ class QWheelEvent;
class QKeyEvent;
//class QStackedWidget;
-class TList;
class Track;
class Xml;
-class TLLayout;
class WidgetStack;
+
+namespace MusEMixer {
class AudioStrip;
+}
namespace MusEWidget {
class Header;
@@ -57,7 +58,10 @@ class Splitter;
class SpinBox;
}
+namespace MusEArranger {
class ArrangerView;
+class TList;
+class TLLayout;
//---------------------------------------------------------
// WidgetStack
@@ -101,7 +105,7 @@ class Arranger : public QWidget {
QScrollBar* infoScroll;
//MidiTrackInfoBase* midiTrackInfo;
MusEWidget::MidiTrackInfo* midiTrackInfo;
- AudioStrip* waveTrackInfo;
+ MusEMixer::AudioStrip* waveTrackInfo;
QWidget* noTrackInfo;
TLLayout* tgrid;
@@ -193,5 +197,7 @@ class Arranger : public QWidget {
ArrangerView* parentWin;
};
+} // namespace MusEArranger
+
#endif
diff --git a/muse2/muse/arranger/arrangerview.cpp b/muse2/muse/arranger/arrangerview.cpp
index 0cc75db9..db1a9778 100644
--- a/muse2/muse/arranger/arrangerview.cpp
+++ b/muse2/muse/arranger/arrangerview.cpp
@@ -68,6 +68,7 @@
#include "visibletracks.h"
#include "xml.h"
+namespace MusEArranger {
//---------------------------------------------------------
// ArrangerView
@@ -724,3 +725,5 @@ void ArrangerView::updateVisibleTracksButtons()
void ArrangerView::globalCut() { ::globalCut(); }
void ArrangerView::globalInsert() { ::globalInsert(); }
void ArrangerView::globalSplit() { ::globalSplit(); }
+
+} // namespace MusEArranger
diff --git a/muse2/muse/arranger/arrangerview.h b/muse2/muse/arranger/arrangerview.h
index bdb450ae..20655840 100644
--- a/muse2/muse/arranger/arrangerview.h
+++ b/muse2/muse/arranger/arrangerview.h
@@ -55,6 +55,7 @@
namespace MusEWidget { class VisibleTracks; }
+namespace MusEArranger {
class ArrangerView : public TopWin
{
@@ -149,8 +150,7 @@ class ArrangerView : public TopWin
static void writeConfiguration(int, Xml&);
};
-
-
+} // namespace MusEArranger
#endif
diff --git a/muse2/muse/arranger/pcanvas.cpp b/muse2/muse/arranger/pcanvas.cpp
index 056dcce7..10cd9735 100644
--- a/muse2/muse/arranger/pcanvas.cpp
+++ b/muse2/muse/arranger/pcanvas.cpp
@@ -34,7 +34,7 @@
#include <QLineEdit>
#include <QMenu>
#include <QMessageBox>
-#include <QPainter>
+//#include <QPainter>
#include <QUrl>
#include <QPoint>
@@ -48,7 +48,7 @@
#include "globals.h"
#include "icons.h"
#include "event.h"
-#include "xml.h"
+//#include "xml.h"
#include "wave.h"
#include "audio.h"
#include "shortcuts.h"
@@ -70,24 +70,7 @@
using std::set;
-int get_paste_len();
-
-//---------------------------------------------------------
-// colorRect
-// paints a rectangular icon with a given color
-//---------------------------------------------------------
-
-QIcon colorRect(const QColor& color, int width, int height) {
- QPainter painter;
- QPixmap image(width, height);
- painter.begin(&image);
- painter.setBrush(color);
- QRect rectangle(0, 0, width, height);
- painter.drawRect(rectangle);
- painter.end();
- QIcon icon(image);
- return icon;
-}
+namespace MusEArranger {
//---------------------------------------------------------
// NPart
@@ -646,7 +629,7 @@ QMenu* PartCanvas::genItemPopup(MusEWidget::CItem* item)
// part color selection
for (int i = 0; i < NUM_PARTCOLORS; ++i) {
- QAction *act_color = colorPopup->addAction(colorRect(MusEConfig::config.partColors[i], 80, 80), MusEConfig::config.partColorNames[i]);
+ QAction *act_color = colorPopup->addAction(MusEUtil::colorRect(MusEConfig::config.partColors[i], 80, 80), MusEConfig::config.partColorNames[i]);
act_color->setData(20+i);
}
@@ -2623,7 +2606,7 @@ void PartCanvas::cmd(int cmd)
case CMD_PASTE_CLONE_DIALOG:
{
unsigned temp_begin = AL::sigmap.raster1(song->vcpos(),0);
- unsigned temp_end = AL::sigmap.raster2(temp_begin + get_paste_len(), 0);
+ unsigned temp_end = AL::sigmap.raster2(temp_begin + MusEUtil::get_paste_len(), 0);
paste_dialog->raster = temp_end - temp_begin;
paste_dialog->clone = (cmd == CMD_PASTE_CLONE_DIALOG);
@@ -2805,86 +2788,6 @@ void PartCanvas::copy(PartList* pl)
}
-
-int get_paste_len()
-{
- QClipboard* cb = QApplication::clipboard();
- const QMimeData* md = cb->mimeData(QClipboard::Clipboard);
-
- QString pfx("text/");
- QString mdpl("x-muse-midipartlist");
- QString wvpl("x-muse-wavepartlist");
- QString mxpl("x-muse-mixedpartlist");
- QString txt;
-
- if(md->hasFormat(pfx + mdpl))
- txt = cb->text(mdpl, QClipboard::Clipboard);
- else if(md->hasFormat(pfx + wvpl))
- txt = cb->text(wvpl, QClipboard::Clipboard);
- else if(md->hasFormat(pfx + mxpl))
- txt = cb->text(mxpl, QClipboard::Clipboard);
- else
- return 0;
-
-
- QByteArray ba = txt.toLatin1();
- const char* ptxt = ba.constData();
- Xml xml(ptxt);
- bool end = false;
-
- unsigned begin_tick=-1; //this uses the greatest possible begin_tick
- unsigned end_tick=0;
-
- for (;;)
- {
- Xml::Token token = xml.parse();
- const QString& tag = xml.s1();
- switch (token)
- {
- case Xml::Error:
- case Xml::End:
- end = true;
- break;
-
- case Xml::TagStart:
- if (tag == "part")
- {
- Part* p = 0;
- p = readXmlPart(xml, NULL, false, false);
-
- if (p)
- {
- if (p->tick() < begin_tick)
- begin_tick=p->tick();
-
- if (p->endTick() > end_tick)
- end_tick=p->endTick();
-
- delete p;
- }
- }
- else
- xml.unknown("PartCanvas::get_paste_len");
- break;
-
- case Xml::TagEnd:
- break;
-
- default:
- end = true;
- break;
- }
- if(end)
- break;
- }
-
- if (begin_tick > end_tick)
- return 0;
- else
- return end_tick - begin_tick;
-}
-
-
Undo PartCanvas::pasteAt(const QString& pt, Track* track, unsigned int pos, bool clone, bool toTrack, int* finalPosPtr, set<Track*>* affected_tracks)
{
Undo operations;
@@ -4046,3 +3949,4 @@ void PartCanvas::endMoveItems(const QPoint& pos, DragType dragtype, int dir)
redraw();
}
+} // namespace MusEArranger
diff --git a/muse2/muse/arranger/pcanvas.h b/muse2/muse/arranger/pcanvas.h
index 2bce9035..7eec87c6 100644
--- a/muse2/muse/arranger/pcanvas.h
+++ b/muse2/muse/arranger/pcanvas.h
@@ -36,9 +36,17 @@ class QMouseEvent;
class QKeyEvent;
class QEvent;
class QDragEnterEvent;
+class QLineEdit;
+
+class MidiEditor;
+class QMenu;
+class Xml;
+class CtrlVal;
#define beats 4
+namespace MusEArranger {
+
//---------------------------------------------------------
// NPart
// ''visual'' Part
@@ -68,12 +76,6 @@ struct AutomationObject {
ControllerVals controllerState;
};
-class QLineEdit;
-class MidiEditor;
-class QMenu;
-class Xml;
-class CtrlVal;
-
//---------------------------------------------------------
// PartCanvas
//---------------------------------------------------------
@@ -176,5 +178,7 @@ class PartCanvas : public MusEWidget::Canvas {
void controllerChanged(Track *t);
};
+} // namespace MusEArranger
+
#endif
diff --git a/muse2/muse/arranger/tlist.cpp b/muse2/muse/arranger/tlist.cpp
index 28b12fdc..91c939db 100644
--- a/muse2/muse/arranger/tlist.cpp
+++ b/muse2/muse/arranger/tlist.cpp
@@ -67,6 +67,8 @@
#include "dssihost.h"
#endif
+namespace MusEArranger {
+
static const int MIN_TRACKHEIGHT = 20;
static const int WHEEL_DELTA = 120;
QColor collist[] = { Qt::red, Qt::yellow, Qt::blue , Qt::black, Qt::white, Qt::green };
@@ -184,6 +186,14 @@ void TList::paint(const QRect& r)
// Tracks
//---------------------------------------------------
+ QColor mask_edge = QColor(90, 90, 90, 45);
+ QColor mask_center = QColor(240, 240, 240, 175);
+ QLinearGradient mask;
+ mask.setColorAt(0, mask_edge);
+ mask.setColorAt(0.15, mask_center);
+ mask.setColorAt(0.3, mask_center);
+ mask.setColorAt(1, mask_edge);
+
TrackList* l = song->tracks();
int idx = 0;
int yy = -ypos;
@@ -201,12 +211,7 @@ void TList::paint(const QRect& r)
// clear one row
//
QColor bg;
- if (track->selected()) {
- bg = MusEConfig::config.selectTrackBg;
- //p.setPen(palette().active().text());
- p.setPen(MusEConfig::config.selectTrackFg);
- }
- else {
+
switch(type) {
case Track::MIDI:
bg = MusEConfig::config.midiTrackBg;
@@ -233,10 +238,16 @@ void TList::paint(const QRect& r)
bg = MusEConfig::config.synthTrackBg;
break;
}
- p.setPen(palette().color(QPalette::Active, QPalette::Text));
- }
+
+ p.setPen(palette().color(QPalette::Active, QPalette::Text));
p.fillRect(x1, yy, w, trackHeight, bg);
+ if (track->selected()) {
+ mask.setStart(QPointF(0, yy));
+ mask.setFinalStop(QPointF(0, yy + trackHeight));
+ p.fillRect(x1, yy, w, trackHeight, mask);
+ }
+
int x = 0;
for (int index = 0; index < header->count(); ++index) {
int section = header->logicalIndex(index);
@@ -1789,3 +1800,4 @@ void TList::classesPopupMenu(Track* t, int x, int y)
}
}
+} // namespace MusEArranger
diff --git a/muse2/muse/arranger/tlist.h b/muse2/muse/arranger/tlist.h
index 970df420..01b13eb3 100644
--- a/muse2/muse/arranger/tlist.h
+++ b/muse2/muse/arranger/tlist.h
@@ -46,6 +46,8 @@ class Header;
class PopupMenu;
}
+namespace MusEArranger {
+
enum TrackColumn {
COL_RECORD = 0,
COL_MUTE,
@@ -140,5 +142,7 @@ class TList : public QWidget {
void readStatus(Xml&, const char* name);
};
+} // namespace MusEArranger
+
#endif
diff --git a/muse2/muse/arranger/trackautomationview.cpp b/muse2/muse/arranger/trackautomationview.cpp
index 343d853f..13973a68 100644
--- a/muse2/muse/arranger/trackautomationview.cpp
+++ b/muse2/muse/arranger/trackautomationview.cpp
@@ -28,6 +28,8 @@
#include "track.h"
+namespace MusEArranger {
+
TrackAutomationView::TrackAutomationView(QWidget *parent, Track *t) : QWidget(parent)
{
printf("created trackautomationview\n");
@@ -72,3 +74,5 @@ void TrackAutomationView::collectAutomationData()
// CtrlListList cll =((AudioTrack*)_t)->controller();
// cll.count()
}
+
+} // namespace MusEArranger
diff --git a/muse2/muse/arranger/trackautomationview.h b/muse2/muse/arranger/trackautomationview.h
index 360ea898..f169e968 100644
--- a/muse2/muse/arranger/trackautomationview.h
+++ b/muse2/muse/arranger/trackautomationview.h
@@ -28,6 +28,8 @@ class QWidget;
#include "track.h"
+namespace MusEArranger {
+
class TrackAutomationView : public QWidget
{
Track *_t;
@@ -39,4 +41,6 @@ public:
void collectAutomationData();
};
+} // namespace MusEArranger
+
#endif // TRACKAUTOMATIONVIEW_H