summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Jonsson <spamatica@gmail.com>2006-06-03 21:16:43 +0000
committerRobert Jonsson <spamatica@gmail.com>2006-06-03 21:16:43 +0000
commit15e22db33204c608b09a13ca6c11c76effbfca98 (patch)
tree4068b17e0f3884826515110e165c834e2f1d4176
parent69583a1e2cc5437b30b62cbfc97f4aa6f3889fda (diff)
* fixed plugin drag&drop problem
* enabled tool shortcuts in arran
-rw-r--r--muse/ChangeLog3
-rw-r--r--muse/muse/aboutbox.ui2
-rw-r--r--muse/muse/arranger/arranger.cpp20
-rw-r--r--muse/muse/arranger/arranger.h1
-rw-r--r--muse/muse/mixer/rack.cpp14
-rw-r--r--muse/muse/muse.cpp1
6 files changed, 34 insertions, 7 deletions
diff --git a/muse/ChangeLog b/muse/ChangeLog
index d91d8eab..5fae2df6 100644
--- a/muse/ChangeLog
+++ b/muse/ChangeLog
@@ -1,3 +1,6 @@
+3.6. (rj)
+ * fixed plugin drag&drop problem
+ * enabled tool shortcuts in arranger
1.6. (ws)
* fix crash when loading new song (old song has midi channels, new
song has not)
diff --git a/muse/muse/aboutbox.ui b/muse/muse/aboutbox.ui
index bd8595a4..cce92f1f 100644
--- a/muse/muse/aboutbox.ui
+++ b/muse/muse/aboutbox.ui
@@ -335,7 +335,7 @@
</sizepolicy>
</property>
<property name="text" >
- <string>&lt;html>&lt;head>&lt;meta name="qrichtext" content="1" />&lt;/head>&lt;body style=" white-space: pre-wrap; font-family:Arial; font-size:10pt; font-weight:400; font-style:normal; text-decoration:none;">&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:14pt; font-weight:600;">MusE&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:14pt; font-weight:600;">&lt;span style=" font-size:10pt; font-weight:400;">Version 1.0pre1&lt;/span>&lt;/p>&lt;p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(C) Copyright 1999-2004 Werner Schweer and others. &lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">See http://lmuse.sourceforge.net for new versions and&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">more information.&lt;/p>&lt;p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Published under the GNU Public License&lt;/p>&lt;/body>&lt;/html></string>
+ <string>&lt;html>&lt;head>&lt;meta name="qrichtext" content="1" />&lt;/head>&lt;body style=" white-space: pre-wrap; font-family:Arial; font-size:10pt; font-weight:400; font-style:normal; text-decoration:none;">&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:14pt; font-weight:600;">MusE&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:14pt; font-weight:600;">&lt;span style=" font-size:10pt; font-weight:400;">Version 1.0pre1&lt;/span>&lt;/p>&lt;p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(C) Copyright 1999-2006 Werner Schweer and others. &lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">See http://muse-sequencer.org for new versions and&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">more information.&lt;/p>&lt;p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">&lt;/p>&lt;p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Published under the GNU Public License&lt;/p>&lt;/body>&lt;/html></string>
</property>
<property name="wordWrap" >
<bool>false</bool>
diff --git a/muse/muse/arranger/arranger.cpp b/muse/muse/arranger/arranger.cpp
index c678d3de..6626627d 100644
--- a/muse/muse/arranger/arranger.cpp
+++ b/muse/muse/arranger/arranger.cpp
@@ -1250,6 +1250,7 @@ void Arranger::keyPressEvent(QKeyEvent* e)
shortcutsKbdMovement.setPos(nextRight->tick(), nextRight->tick() + nextRight->lenTick());
}
}
+
else if (key == shortcuts[SHRT_SEL_ABOVE].key) {
// TODO
}
@@ -1257,7 +1258,24 @@ void Arranger::keyPressEvent(QKeyEvent* e)
// TODO
}
} // -- end movement
-
+ else {
+ if (key == shortcuts[SHRT_TOOL_POINTER].key) {
+ emit toolChanged(PointerTool);
+ return;
+ }
+ else if (key == shortcuts[SHRT_TOOL_PENCIL].key) {
+ emit toolChanged(PencilTool);
+ return;
+ }
+ else if (key == shortcuts[SHRT_TOOL_RUBBER].key) {
+ emit toolChanged(RubberTool);
+ return;
+ }
+ else if (key == shortcuts[SHRT_TOOL_LINEDRAW].key) {
+ emit toolChanged(DrawTool);
+ return;
+ }
+ }
// If we haven't dealt with the keypress, pass it along
if (!keypress_handled) {
e->ignore();
diff --git a/muse/muse/arranger/arranger.h b/muse/muse/arranger/arranger.h
index 527022fb..044fcfc9 100644
--- a/muse/muse/arranger/arranger.h
+++ b/muse/muse/arranger/arranger.h
@@ -141,6 +141,7 @@ class Arranger : public QWidget {
signals:
void configChanged();
+ void toolChanged(int);
void editPart(Part*);
void cursorPos(const AL::Pos&,bool);
diff --git a/muse/muse/mixer/rack.cpp b/muse/muse/mixer/rack.cpp
index fb25e491..609f571f 100644
--- a/muse/muse/mixer/rack.cpp
+++ b/muse/muse/mixer/rack.cpp
@@ -216,8 +216,9 @@ void EffectRack::doubleClicked(QListWidgetItem* it)
void EffectRack::startDrag(int idx)
{
- QBuffer buffer;
- AL::Xml xml(&buffer);
+ QString buffer;
+ AL::Xml xml(NULL);
+ xml.setString(&buffer);
Pipeline* pipe = track->efxPipe();
if (pipe) {
if ((*pipe)[idx] != NULL) {
@@ -234,6 +235,7 @@ void EffectRack::startDrag(int idx)
fval.setNum(plug->param(i)); // wierd stuff to avoid localization
QString str="<control name=\"" + name + "\" val=\""+ fval+"\" />";
xml.put(str.toLatin1().data());
+ printf("%s\n",str.toLatin1().data());
}
xml.etag("plugin");
@@ -248,8 +250,9 @@ void EffectRack::startDrag(int idx)
//printf("no pipe!\n");
return;
}
-
- QByteArray xmldump = buffer.buffer();
+ //printf("and i wish you were here: %s\n", xml.readAll().toLatin1().data());
+ QByteArray xmldump = xml.readAll().toLatin1();
+ //printf("xmldump=%s\n",xmldump.data());
QDrag *drag = new QDrag(this);
QMimeData *mime = new QMimeData();
mime->setData("text/x-muse-plugin", xmldump);
@@ -262,6 +265,7 @@ void EffectRack::startDrag(int idx)
//---------------------------------------------------------
void EffectRack::dropEvent(QDropEvent *event)
{
+ //printf("drop!\n");
QString text;
QListWidgetItem *i = itemAt( (event->pos()) );
int idx = row(i);
@@ -301,7 +305,7 @@ void EffectRack::dropEvent(QDropEvent *event)
else if (event->mimeData()->hasFormat("text/x-muse-plugin"))
{
QByteArray outxml = event->mimeData()->data("text/x-muse-plugin");
- //printf("%s\n",outxml.data());
+ //printf("DATA:%s\n",outxml.data());
QDomDocument doc;
doc.setContent(outxml);
QDomNode node = doc.documentElement().firstChild();
diff --git a/muse/muse/muse.cpp b/muse/muse/muse.cpp
index d659b63c..6812a9f9 100644
--- a/muse/muse/muse.cpp
+++ b/muse/muse/muse.cpp
@@ -960,6 +960,7 @@ MusE::MusE()
setCentralWidget(arranger);
connect(tools1, SIGNAL(toolChanged(int)), SLOT(setTool(int)));
+ connect(arranger, SIGNAL(toolChanged(int)), SLOT(setTool(int)));
connect(arranger, SIGNAL(editPart(Part*)), SLOT(startEditor(Part*)));
//TODO1 connect(arranger, SIGNAL(dropSongFile(const QString&)), SLOT(loadProject(const QString&)));
//TODO1 connect(arranger, SIGNAL(dropMidiFile(const QString&)), SLOT(importMidi(const QString&)));