[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-commit] traverso/src commands/AudioClipExternalProcessi...
From: |
Remon Sijrier |
Subject: |
[Traverso-commit] traverso/src commands/AudioClipExternalProcessi... |
Date: |
Wed, 10 Oct 2007 16:41:58 +0000 |
CVSROOT: /sources/traverso
Module name: traverso
Changes by: Remon Sijrier <r_sijrier> 07/10/10 16:41:58
Modified files:
src/commands : AudioClipExternalProcessing.cpp
AudioClipExternalProcessing.h
src/core : core.pro Project.cpp Project.h
ProjectManager.cpp ProjectManager.h
ReadSource.h Song.cpp Track.cpp
src/traverso : Interface.cpp Interface.h traverso.pro
traverso.qrc
Added files:
src/traverso/ui: ProjectConverterDialog.ui
Log message:
* Added project conversion logic, needs some more work
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/commands/AudioClipExternalProcessing.cpp?cvsroot=traverso&r1=1.32&r2=1.33
http://cvs.savannah.gnu.org/viewcvs/traverso/src/commands/AudioClipExternalProcessing.h?cvsroot=traverso&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/core.pro?cvsroot=traverso&r1=1.37&r2=1.38
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Project.cpp?cvsroot=traverso&r1=1.57&r2=1.58
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Project.h?cvsroot=traverso&r1=1.26&r2=1.27
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/ProjectManager.cpp?cvsroot=traverso&r1=1.44&r2=1.45
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/ProjectManager.h?cvsroot=traverso&r1=1.20&r2=1.21
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/ReadSource.h?cvsroot=traverso&r1=1.39&r2=1.40
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Song.cpp?cvsroot=traverso&r1=1.144&r2=1.145
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Track.cpp?cvsroot=traverso&r1=1.67&r2=1.68
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/Interface.cpp?cvsroot=traverso&r1=1.100&r2=1.101
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/Interface.h?cvsroot=traverso&r1=1.42&r2=1.43
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/traverso.pro?cvsroot=traverso&r1=1.72&r2=1.73
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/traverso.qrc?cvsroot=traverso&r1=1.21&r2=1.22
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/ui/ProjectConverterDialog.ui?cvsroot=traverso&rev=1.1
Patches:
Index: commands/AudioClipExternalProcessing.cpp
===================================================================
RCS file:
/sources/traverso/traverso/src/commands/AudioClipExternalProcessing.cpp,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -b -r1.32 -r1.33
--- commands/AudioClipExternalProcessing.cpp 28 Sep 2007 18:33:43 -0000
1.32
+++ commands/AudioClipExternalProcessing.cpp 10 Oct 2007 16:41:56 -0000
1.33
@@ -21,7 +21,6 @@
#include "AudioClipExternalProcessing.h"
-#include "AbstractAudioReader.h"
#include <AudioClip.h>
#include <AudioClipView.h>
#include <Track.h>
@@ -32,87 +31,13 @@
#include <ResourcesManager.h>
#include <Utils.h>
#include "Interface.h"
-#include "Export.h"
-#include "WriteSource.h"
-#include <QThread>
#include <QFile>
-#include <QApplication>
-
// Always put me below _all_ includes, this is needed
// in case we run with memory leak detection enabled!
#include "Debugger.h"
-class MergeThread : public QThread
-{
-public:
- MergeThread(ReadSource* source, QString outFileName) {
- m_outFileName = outFileName;
- m_readsource = source;
- }
-
- void run() {
- uint buffersize = 16384;
- DecodeBuffer decodebuffer;
-
- ExportSpecification* spec = new ExportSpecification();
- spec->startLocation = 0;
- spec->endLocation = m_readsource->get_length();
- spec->totalTime = spec->endLocation;
- spec->pos = 0;
- spec->isRecording = false;
-
- spec->exportdir = pm().get_project()->get_root_dir() +
"/audiosources/";
- spec->writerType = "sndfile";
- spec->extraFormat["filetype"] = "wav";
- spec->data_width = 16;
- spec->channels = 2;
- spec->sample_rate = m_readsource->get_rate();
- spec->blocksize = buffersize;
- spec->name = m_outFileName;
- spec->dataF = new audio_sample_t[buffersize * 2];
-
- WriteSource* writesource = new WriteSource(spec);
- if (writesource->prepare_export() == -1) {
- delete writesource;
- delete [] spec->dataF;
- delete spec;
- return;
- }
-
- do {
- nframes_t diff = (spec->endLocation -
spec->pos).to_frame(m_readsource->get_rate());
- nframes_t this_nframes = std::min(diff, buffersize);
- nframes_t nframes = this_nframes;
-
- memset (spec->dataF, 0, sizeof (spec->dataF[0]) *
nframes * spec->channels);
-
- m_readsource->file_read(&decodebuffer, spec->pos,
nframes);
-
- for (int chan=0; chan < 2; ++chan) {
- for (uint x = 0; x < nframes; ++x) {
- spec->dataF[chan+(x*spec->channels)] =
decodebuffer.destination[chan][x];
- }
- }
-
- writesource->process(buffersize);
-
- spec->pos.add_frames(nframes, m_readsource->get_rate());
-
- } while (spec->pos != spec->totalTime);
-
- writesource->finish_export();
- delete writesource;
- delete [] spec->dataF;
- delete spec;
- }
-
-private:
- QString m_outFileName;
- ReadSource* m_readsource;
-};
-
AudioClipExternalProcessing::AudioClipExternalProcessing(AudioClip* clip)
: Command(clip, tr("Clip: External Processing"))
@@ -172,7 +97,6 @@
setupUi(this);
m_acep = acep;
m_queryOptions = false;
- m_merger = 0;
m_processor = new QProcess(this);
m_processor->setProcessChannelMode(QProcess::MergedChannels);
@@ -222,15 +146,7 @@
m_filename.remove(".wav").remove(".").append("-").append(m_commandargs.simplified()).append(".wav");
-/* if (rs->get_channel_count() == 2 && rs->get_file_count() == 2) {
- m_merger = new MergeThread(rs, "merged.wav");
- connect(m_merger, SIGNAL(finished()), this,
SLOT(start_external_processing()));
- m_merger->start();
- statusText->setHtml(tr("Preparing audio data to a format that
can be used by <b>%1</b>, this can take a while for large
files!").arg(m_program));
- progressBar->setMaximum(0);
- } else { */
start_external_processing();
-// }
}
void ExternalProcessingDialog::start_external_processing()
@@ -242,14 +158,7 @@
m_arguments.append("-S");
}
- if (m_merger) {
- progressBar->setMaximum(100);
- m_arguments.append(pm().get_project()->get_audiosources_dir() +
"merged.wav");
- delete m_merger;
- } else {
m_arguments.append(m_infilename);
- }
-
m_arguments.append(m_outfilename);
m_arguments += m_commandargs.split(QRegExp("\\s+"));
Index: commands/AudioClipExternalProcessing.h
===================================================================
RCS file:
/sources/traverso/traverso/src/commands/AudioClipExternalProcessing.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- commands/AudioClipExternalProcessing.h 2 Jul 2007 17:10:28 -0000
1.3
+++ commands/AudioClipExternalProcessing.h 10 Oct 2007 16:41:56 -0000
1.4
@@ -31,7 +31,6 @@
class AudioClip;
class Track;
class AudioClipExternalProcessing;
-class MergeThread;
class ExternalProcessingDialog : public QDialog, protected
Ui::ExternalProcessing
{
@@ -45,7 +44,6 @@
private:
AudioClipExternalProcessing* m_acep;
QProcess* m_processor;
- MergeThread* m_merger;
QString m_filename;
QString m_program;
bool m_queryOptions;
Index: core/core.pro
===================================================================
RCS file: /sources/traverso/traverso/src/core/core.pro,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -b -r1.37 -r1.38
--- core/core.pro 31 Jul 2007 18:45:15 -0000 1.37
+++ core/core.pro 10 Oct 2007 16:41:57 -0000 1.38
@@ -51,7 +51,9 @@
Snappable.cpp \
TimeLine.cpp \
Marker.cpp \
- Themer.cpp
+ Themer.cpp \
+ AudioFileMerger.cpp \
+ ProjectConverter.cpp
HEADERS = precompile.h \
AudioClip.h \
AudioClipList.h \
@@ -94,7 +96,9 @@
CommandPlugin.h \
TimeLine.h \
Marker.h \
- Themer.h
+ Themer.h \
+ AudioFileMerger.h \
+ ProjectConverter.h
macx{
QMAKE_LIBDIR += /usr/local/qt/lib
}
Index: core/Project.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Project.cpp,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -b -r1.57 -r1.58
--- core/Project.cpp 6 Oct 2007 18:20:25 -0000 1.57
+++ core/Project.cpp 10 Oct 2007 16:41:57 -0000 1.58
@@ -169,7 +169,7 @@
if (!file.open(QIODevice::ReadOnly)) {
m_errorString = tr("Project %1: Cannot open project.tpf file!
(Reason: %2)").arg(m_title).arg(file.errorString());
info().critical(m_errorString);
- return -1;
+ return PROJECT_FILE_COULD_NOT_BE_OPENED;
}
// Check if important directories still exist!
@@ -187,7 +187,7 @@
if (!doc.setContent(&file, &errorMsg)) {
m_errorString = tr("Project %1: Failed to parse project.tpf
file! (Reason: %2)").arg(m_title).arg(errorMsg);
info().critical(m_errorString);
- return -1;
+ return SETTING_XML_CONTENT_FAILED;
}
QDomElement docElem = doc.documentElement();
@@ -197,7 +197,7 @@
if (e.attribute("projectfileversion", "-1").toInt() !=
PROJECT_FILE_VERSION) {
m_errorString = tr("Project File Version does not match, unable
to load Project!");
info().warning(m_errorString);
- return -1;
+ return PROJECT_FILE_VERSION_MISMATCH;
}
m_title = e.attribute( "title", "" );
Index: core/Project.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/Project.h,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -b -r1.26 -r1.27
--- core/Project.h 6 Oct 2007 18:20:25 -0000 1.26
+++ core/Project.h 10 Oct 2007 16:41:57 -0000 1.27
@@ -98,6 +98,12 @@
int start_export(ExportSpecification* spec);
int create_cdrdao_toc(ExportSpecification* spec);
+ enum {
+ SETTING_XML_CONTENT_FAILED = -1,
+ PROJECT_FILE_COULD_NOT_BE_OPENED = -2,
+ PROJECT_FILE_VERSION_MISMATCH = -3
+ };
+
public slots:
Command* select();
Index: core/ProjectManager.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/ProjectManager.cpp,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -b -r1.44 -r1.45
--- core/ProjectManager.cpp 6 Oct 2007 18:20:25 -0000 1.44
+++ core/ProjectManager.cpp 10 Oct 2007 16:41:57 -0000 1.45
@@ -199,8 +199,17 @@
set_current_project(newProject);
- if (currentProject->load() < 0) {
+ int err;
+ if ((err = currentProject->load()) < 0) {
+ switch (err) {
+ case Project::PROJECT_FILE_VERSION_MISMATCH: {
+ emit
projectFileVersionMismatch(currentProject->get_root_dir(),
currentProject->get_title());
+ break;
+ }
+ default: {
emit projectLoadFailed(currentProject->get_title(),
currentProject->get_error_string());
+ }
+ }
delete currentProject;
currentProject = 0;
set_current_project(0);
Index: core/ProjectManager.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/ProjectManager.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- core/ProjectManager.h 6 Oct 2007 18:20:26 -0000 1.20
+++ core/ProjectManager.h 10 Oct 2007 16:41:57 -0000 1.21
@@ -106,6 +106,7 @@
void unsupportedProjectDirChangeDetected();
void projectDirChangeDetected();
void projectLoadFailed(QString,QString);
+ void projectFileVersionMismatch(QString,QString);
private slots:
void project_dir_rename_detected(const QString& dirname);
Index: core/ReadSource.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/ReadSource.h,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -b -r1.39 -r1.40
--- core/ReadSource.h 28 Sep 2007 18:33:44 -0000 1.39
+++ core/ReadSource.h 10 Oct 2007 16:41:57 -0000 1.40
@@ -108,6 +108,7 @@
int rb_file_read(DecodeBuffer* buffer, nframes_t cnt);
friend class ResourcesManager;
+ friend class ProjectConverter;
signals:
void stateChanged();
Index: core/Song.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Song.cpp,v
retrieving revision 1.144
retrieving revision 1.145
diff -u -b -r1.144 -r1.145
--- core/Song.cpp 8 Oct 2007 20:46:48 -0000 1.144
+++ core/Song.cpp 10 Oct 2007 16:41:57 -0000 1.145
@@ -944,7 +944,7 @@
void Song::assign_buses()
{
if (m_masterOut) {
- m_masterOut->set_monitor_peaks(false);
+// m_masterOut->set_monitor_peaks(false);
}
m_playBackBus = audiodevice().get_playback_bus("Playback 1");
m_masterOut = audiodevice().get_playback_bus("Master Out");
Index: core/Track.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Track.cpp,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -b -r1.67 -r1.68
--- core/Track.cpp 8 Oct 2007 20:46:49 -0000 1.67
+++ core/Track.cpp 10 Oct 2007 16:41:57 -0000 1.68
@@ -295,7 +295,7 @@
info().warning(tr("Track: Cannot assign OutBus to %1, it does
not exist!").arg(bus.data()));
}
- if (m_outBus) {
+ if (m_outBus && !(m_busOutName.data() == QString("Out Bus"))) {
m_outBus->set_monitor_peaks(false);
}
Index: traverso/Interface.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/Interface.cpp,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -b -r1.100 -r1.101
--- traverso/Interface.cpp 6 Oct 2007 18:24:59 -0000 1.100
+++ traverso/Interface.cpp 10 Oct 2007 16:41:57 -0000 1.101
@@ -64,6 +64,7 @@
#include "dialogs/BusSelectorDialog.h"
#include "dialogs/InsertSilenceDialog.h"
#include "dialogs/RestoreProjectBackupDialog.h"
+#include "dialogs/ProjectConverterDialog.h"
// Always put me below _all_ includes, this is needed
// in case we run with memory leak detection enabled!
@@ -191,6 +192,7 @@
connect(&pm(), SIGNAL(aboutToDelete(Song*)), this,
SLOT(delete_songwidget(Song*)));
connect(&pm(), SIGNAL(unsupportedProjectDirChangeDetected()), this,
SLOT(project_dir_change_detected()));
connect(&pm(), SIGNAL(projectLoadFailed(QString,QString)), this,
SLOT(project_load_failed(QString,QString)));
+ connect(&pm(), SIGNAL(projectFileVersionMismatch(QString,QString)),
this, SLOT(project_file_mismatch(QString,QString)), Qt::QueuedConnection);
cpointer().add_contextitem(this);
@@ -1074,3 +1076,11 @@
show_restore_project_backup_dialog(project);
}
+
+
+void Interface::project_file_mismatch(QString rootdir, QString projectname)
+{
+ ProjectConverterDialog dialog(this);
+ dialog.set_project(rootdir, projectname);
+ dialog.exec();
+}
Index: traverso/Interface.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/Interface.h,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -b -r1.42 -r1.43
--- traverso/Interface.h 6 Oct 2007 18:20:26 -0000 1.42
+++ traverso/Interface.h 10 Oct 2007 16:41:58 -0000 1.43
@@ -155,7 +155,6 @@
void update_opengl();
void import_audio();
void show_restore_project_backup_dialog();
- void project_load_failed(QString project, QString reason);
Command* full_screen();
Command* about_traverso();
@@ -175,6 +174,8 @@
private slots:
void delete_songwidget(Song*);
void project_dir_change_detected();
+ void project_load_failed(QString project, QString reason);
+ void project_file_mismatch(QString rootdir, QString projectname);
};
Index: traverso/traverso.pro
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/traverso.pro,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -b -r1.72 -r1.73
--- traverso/traverso.pro 6 Oct 2007 14:17:59 -0000 1.72
+++ traverso/traverso.pro 10 Oct 2007 16:41:58 -0000 1.73
@@ -54,7 +54,8 @@
songcanvas/PositionIndicator.h \
widgets/ResourcesWidget.h \
dialogs/AudioClipEditDialog.h \
- dialogs/RestoreProjectBackupDialog.h
+ dialogs/RestoreProjectBackupDialog.h \
+ dialogs/ProjectConverterDialog.h
SOURCES += \
Traverso.cpp \
BusMonitor.cpp \
@@ -84,7 +85,8 @@
songcanvas/PositionIndicator.cpp \
widgets/ResourcesWidget.cpp \
dialogs/AudioClipEditDialog.cpp \
- dialogs/RestoreProjectBackupDialog.cpp
+ dialogs/RestoreProjectBackupDialog.cpp \
+ dialogs/ProjectConverterDialog.cpp
FORMS += ui/ExportWidget.ui \
ui/AudioSourcesManagerWidget.ui \
ui/SpectralMeterConfigWidget.ui \
@@ -109,7 +111,8 @@
ui/QuickStart.ui \
ui/InsertSilenceDialog.ui \
ui/AudioClipEditWidget.ui \
- ui/RestoreProjectBackupDialog.ui
+ ui/RestoreProjectBackupDialog.ui \
+ ui/ProjectConverterDialog.ui
INCLUDEPATH += ../core \
../commands \
Index: traverso/traverso.qrc
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/traverso.qrc,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- traverso/traverso.qrc 5 Jun 2007 14:02:16 -0000 1.21
+++ traverso/traverso.qrc 10 Oct 2007 16:41:58 -0000 1.22
@@ -46,5 +46,6 @@
<file alias="traverso_nl">../../traverso_nl.qm</file>
<file alias="traverso_de">../../traverso_de.qm</file>
<file alias="traverso_en">../../traverso_en.qm</file>
+ <file
alias="project_conversion_description_2_3">../../resources/projectconversion/2_to_3.html</file>
</qresource>
</RCC>
Index: traverso/ui/ProjectConverterDialog.ui
===================================================================
RCS file: traverso/ui/ProjectConverterDialog.ui
diff -N traverso/ui/ProjectConverterDialog.ui
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ traverso/ui/ProjectConverterDialog.ui 10 Oct 2007 16:41:58 -0000
1.1
@@ -0,0 +1,165 @@
+<ui version="4.0" >
+ <class>ProjectConverterDialog</class>
+ <widget class="QDialog" name="ProjectConverterDialog" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>452</width>
+ <height>480</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Project Converter</string>
+ </property>
+ <layout class="QVBoxLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="projectNameLable" >
+ <property name="text" >
+ <string>Project XXX (no translation needed)</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QTextBrowser" name="conversionInfoText" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>7</hsizetype>
+ <vsizetype>7</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>5</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="taskLable" >
+ <property name="text" >
+ <string>Conversion information</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QTextBrowser" name="taskTextBrowswer" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>7</hsizetype>
+ <vsizetype>7</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>1</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="progressLable" >
+ <property name="text" >
+ <string>Conversion progress</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QProgressBar" name="progressBar" >
+ <property name="value" >
+ <number>0</number>
+ </property>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QPushButton" name="startButton" >
+ <property name="text" >
+ <string>Start conversion</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="stopConversionButton" >
+ <property name="text" >
+ <string>Stop conversion</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="loadProjectButton" >
+ <property name="text" >
+ <string>Load Project</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="closeButton" >
+ <property name="text" >
+ <string>Close</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>closeButton</sender>
+ <signal>clicked()</signal>
+ <receiver>ProjectConverterDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>388</x>
+ <y>454</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>449</x>
+ <y>454</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>startButton</sender>
+ <signal>clicked()</signal>
+ <receiver>ProjectConverterDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>103</x>
+ <y>455</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>10</x>
+ <y>457</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Traverso-commit] traverso/src commands/AudioClipExternalProcessi...,
Remon Sijrier <=