traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso/src core/Export.h traverso/ExportWidge...


From: Remon Sijrier
Subject: [Traverso-commit] traverso/src core/Export.h traverso/ExportWidge...
Date: Tue, 15 May 2007 14:28:12 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Remon Sijrier <r_sijrier>       07/05/15 14:28:12

Modified files:
        src/core       : Export.h 
        src/traverso   : ExportWidget.cpp ExportWidget.h Interface.cpp 

Log message:
        * ask if the cd content should be re-rendered if it is allready there

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Export.h?cvsroot=traverso&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/ExportWidget.cpp?cvsroot=traverso&r1=1.28&r2=1.29
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/ExportWidget.h?cvsroot=traverso&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/Interface.cpp?cvsroot=traverso&r1=1.79&r2=1.80

Patches:
Index: core/Export.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/Export.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- core/Export.h       11 May 2007 11:16:32 -0000      1.9
+++ core/Export.h       15 May 2007 14:28:12 -0000      1.10
@@ -17,7 +17,7 @@
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA.
 
-$Id: Export.h,v 1.9 2007/05/11 11:16:32 r_sijrier Exp $
+$Id: Export.h,v 1.10 2007/05/15 14:28:12 r_sijrier Exp $
 */
 
 #ifndef EXPORT_H
@@ -86,6 +86,7 @@
        float           normvalue;
        bool            resumeTransport;
        nframes_t       resumeTransportFrame;
+       bool            renderfinished;
 };
 
 

Index: traverso/ExportWidget.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/ExportWidget.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -b -r1.28 -r1.29
--- traverso/ExportWidget.cpp   15 May 2007 12:33:55 -0000      1.28
+++ traverso/ExportWidget.cpp   15 May 2007 14:28:12 -0000      1.29
@@ -355,6 +355,7 @@
                }
                m_exportSpec = new ExportSpecification;
                m_exportSpec->exportdir = m_project->get_root_dir() + 
"/Export/";
+               m_exportSpec->renderfinished = false;
                exportDirName->setText(m_exportSpec->exportdir);
                
                connect(m_project, SIGNAL(songExportProgressChanged(int)), 
this, SLOT(update_song_progress(int)));
@@ -412,6 +413,7 @@
                update_cdburn_status(tr("Aborting Render process ..."), 
NORMAL_MESSAGE);
                m_exportSpec->stop = true;
                m_exportSpec->breakout = true;
+               m_exportSpec->renderfinished = false;
        }
        if (m_writingState == BURNING) {
                update_cdburn_status(tr("Aborting CD Burn process ..."), 
NORMAL_MESSAGE);
@@ -474,7 +476,20 @@
 {
        PENTER;
        
-       update_cdburn_status(tr("Rendering Song(s)"), NORMAL_MESSAGE);
+       if (m_wasClosed && m_exportSpec->renderfinished && 
(m_exportSpec->allSongs == cdAllSongsButton->isChecked()) ) {
+               
+               if (QMessageBox::question(this, tr("Rerender CD content"), 
+                               tr("Is the previous CD render still valid, or 
should I rerender the CD content?"), 
+                               QMessageBox::Yes | QMessageBox::No, 
+                               QMessageBox::No) == QMessageBox::Yes)
+               {
+                       m_exportSpec->renderfinished = false;
+                       m_wasClosed = false;
+               }
+       }
+
+       
+       if (!(m_exportSpec->renderfinished && (m_exportSpec->allSongs == 
cdAllSongsButton->isChecked()))) {
        
        m_exportSpec->extension = ".wav";
        m_exportSpec->data_width = 16;
@@ -502,12 +517,20 @@
        
        m_writingState = RENDER;
        
-       disable_ui_interaction();
-       
        connect(m_project, SIGNAL(overallExportProgressChanged(int)), this, 
SLOT(cd_export_progress(int)));
        connect(m_project, SIGNAL(exportFinished()), this, 
SLOT(cd_export_finished()));
        
+               update_cdburn_status(tr("Rendering Song(s)"), NORMAL_MESSAGE);
+               
+               disable_ui_interaction();
        m_project->export_project(m_exportSpec);
+       } else {
+               if (cdDiskExportOnlyCheckBox->isChecked()) {
+                       return;
+               }
+               disable_ui_interaction();
+               write_to_cd();
+       }
 }
 
 void ExportWidget::write_to_cd()
@@ -556,6 +579,7 @@
        
        if (cdDiskExportOnlyCheckBox->isChecked()) {
                update_cdburn_status(tr("Export to disk finished!"), 
NORMAL_MESSAGE);
+               m_exportSpec->renderfinished = true;
                enable_ui_interaction();
                return;
        }
@@ -566,6 +590,7 @@
                return;
        }
        
+       m_exportSpec->renderfinished = true;
        write_to_cd();
 }
 
@@ -714,6 +739,13 @@
        QDialog::closeEvent(event);
 }
 
+void ExportWidget::reject()
+{
+       if (m_writingState == NO_STATE && buttonBox->isEnabled()) {
+               hide();
+       }
+}
+
 void ExportWidget::disable_ui_interaction()
 {
        closeButton->setEnabled(false);
@@ -734,3 +766,9 @@
        stopButton->setEnabled(true);
        progressBar->setValue(0);
 }
+
+void ExportWidget::set_was_closed()
+{
+       m_wasClosed = true;
+}
+

Index: traverso/ExportWidget.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/ExportWidget.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- traverso/ExportWidget.h     15 May 2007 12:33:55 -0000      1.9
+++ traverso/ExportWidget.h     15 May 2007 14:28:12 -0000      1.10
@@ -39,9 +39,10 @@
         ExportWidget(QWidget* parent = 0);
         ~ExportWidget();
        
+       void set_was_closed();
        
 protected:
-       void closeEvent ( QCloseEvent * event );
+       void closeEvent(QCloseEvent* event);
 
 private:
         Project* m_project;
@@ -58,6 +59,7 @@
        void enable_ui_interaction();
        
        void update_cdburn_status(const QString& message, int type);
+       void unlock_device();
        
        enum {
                NO_STATE,
@@ -71,6 +73,7 @@
        };
        
        int m_writingState;
+       bool m_wasClosed;
 
 private slots:
        void set_project(Project* project);
@@ -91,8 +94,9 @@
        void cdrdao_process_finished(int exitcode, QProcess::ExitStatus 
exitstatus);
        void cd_export_finished();
        void cd_export_progress(int progress);
-       void unlock_device();
        void query_devices();
+       
+       void reject();
 };
 
 #endif

Index: traverso/Interface.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/Interface.cpp,v
retrieving revision 1.79
retrieving revision 1.80
diff -u -b -r1.79 -r1.80
--- traverso/Interface.cpp      10 May 2007 20:58:46 -0000      1.79
+++ traverso/Interface.cpp      15 May 2007 14:28:12 -0000      1.80
@@ -320,6 +320,7 @@
                exportWidget = new ExportWidget(this);
        }
        if (exportWidget->isHidden()) {
+               exportWidget->set_was_closed();
                exportWidget->show();
        }
        return (Command*) 0;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]