Added ripcd to optional features, deleted ui_ripcd on destruction, added a warning in case cdio_open returns NULL
This commit is contained in:
parent
2859d826ae
commit
7cebf23bba
|
@ -351,7 +351,6 @@ set(SOURCES
|
||||||
ui/organiseerrordialog.cpp
|
ui/organiseerrordialog.cpp
|
||||||
ui/playbacksettingspage.cpp
|
ui/playbacksettingspage.cpp
|
||||||
ui/qtsystemtrayicon.cpp
|
ui/qtsystemtrayicon.cpp
|
||||||
ui/ripcd.cpp
|
|
||||||
ui/screensaver.cpp
|
ui/screensaver.cpp
|
||||||
ui/settingsdialog.cpp
|
ui/settingsdialog.cpp
|
||||||
ui/settingspage.cpp
|
ui/settingspage.cpp
|
||||||
|
@ -630,7 +629,6 @@ set(HEADERS
|
||||||
ui/organiseerrordialog.h
|
ui/organiseerrordialog.h
|
||||||
ui/playbacksettingspage.h
|
ui/playbacksettingspage.h
|
||||||
ui/qtsystemtrayicon.h
|
ui/qtsystemtrayicon.h
|
||||||
ui/ripcd.h
|
|
||||||
ui/settingsdialog.h
|
ui/settingsdialog.h
|
||||||
ui/settingspage.h
|
ui/settingspage.h
|
||||||
ui/standarditemiconloader.h
|
ui/standarditemiconloader.h
|
||||||
|
@ -753,7 +751,6 @@ set(UI
|
||||||
ui/organisedialog.ui
|
ui/organisedialog.ui
|
||||||
ui/organiseerrordialog.ui
|
ui/organiseerrordialog.ui
|
||||||
ui/playbacksettingspage.ui
|
ui/playbacksettingspage.ui
|
||||||
ui/ripcd.ui
|
|
||||||
ui/settingsdialog.ui
|
ui/settingsdialog.ui
|
||||||
ui/trackselectiondialog.ui
|
ui/trackselectiondialog.ui
|
||||||
|
|
||||||
|
@ -1030,9 +1027,13 @@ optional_source(HAVE_AUDIOCD
|
||||||
SOURCES
|
SOURCES
|
||||||
devices/cddadevice.cpp
|
devices/cddadevice.cpp
|
||||||
devices/cddalister.cpp
|
devices/cddalister.cpp
|
||||||
|
ui/ripcd.cpp
|
||||||
HEADERS
|
HEADERS
|
||||||
devices/cddadevice.h
|
devices/cddadevice.h
|
||||||
devices/cddalister.h
|
devices/cddalister.h
|
||||||
|
ui/ripcd.h
|
||||||
|
UI
|
||||||
|
ui/ripcd.ui
|
||||||
)
|
)
|
||||||
|
|
||||||
# mtp device
|
# mtp device
|
||||||
|
|
|
@ -1676,7 +1676,12 @@ void MainWindow::OpenRipCD() {
|
||||||
if (!rip_cd_) {
|
if (!rip_cd_) {
|
||||||
rip_cd_.reset(new RipCD);
|
rip_cd_.reset(new RipCD);
|
||||||
}
|
}
|
||||||
rip_cd_->show();
|
if(rip_cd_->CDIOIsValid()) {
|
||||||
|
rip_cd_->show();
|
||||||
|
} else {
|
||||||
|
QMessageBox cdio_fail(QMessageBox::Critical, tr("Error"), tr("Failed reading CD drive"));
|
||||||
|
cdio_fail.exec();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::AddCDTracks() {
|
void MainWindow::AddCDTracks() {
|
||||||
|
|
|
@ -73,7 +73,8 @@ RipCD::RipCD(QWidget* parent) :
|
||||||
finished_failed_(0),
|
finished_failed_(0),
|
||||||
ui_(new Ui_RipCD)
|
ui_(new Ui_RipCD)
|
||||||
{
|
{
|
||||||
// Init
|
|
||||||
|
// Init
|
||||||
ui_->setupUi(this);
|
ui_->setupUi(this);
|
||||||
cancel_button_ = ui_->button_box->button(QDialogButtonBox::Cancel);
|
cancel_button_ = ui_->button_box->button(QDialogButtonBox::Cancel);
|
||||||
|
|
||||||
|
@ -93,19 +94,26 @@ RipCD::RipCD(QWidget* parent) :
|
||||||
setWindowTitle(tr("Rip CD"));
|
setWindowTitle(tr("Rip CD"));
|
||||||
|
|
||||||
cdio_ = cdio_open(NULL, DRIVER_UNKNOWN);
|
cdio_ = cdio_open(NULL, DRIVER_UNKNOWN);
|
||||||
i_tracks = cdio_get_num_tracks(cdio_);
|
if(!cdio_) {
|
||||||
ui_->tableWidget->setRowCount(i_tracks);
|
qLog(Error) << "Failed to read CD drive";
|
||||||
|
return;
|
||||||
for (int i = 1; i <= i_tracks; i++) {
|
} else {
|
||||||
QCheckBox *checkbox_i = new QCheckBox(ui_->tableWidget);
|
i_tracks = cdio_get_num_tracks(cdio_);
|
||||||
checkbox_i->setCheckState(Qt::Checked);
|
ui_->tableWidget->setRowCount(i_tracks);
|
||||||
checkboxes_.append(checkbox_i);
|
for (int i = 1; i <= i_tracks; i++) {
|
||||||
ui_->tableWidget->setCellWidget(i - 1, kCheckboxColumn, checkbox_i);
|
QCheckBox *checkbox_i = new QCheckBox(ui_->tableWidget);
|
||||||
ui_->tableWidget->setCellWidget(i - 1, kTrackNumberColumn, new QLabel(QString::number(i)));
|
checkbox_i->setCheckState(Qt::Checked);
|
||||||
QString track_title = QString("Track %1").arg(i);
|
checkboxes_.append(checkbox_i);
|
||||||
QLineEdit *line_edit_track_title_i = new QLineEdit(track_title,ui_->tableWidget);
|
ui_->tableWidget->setCellWidget(i - 1, kCheckboxColumn, checkbox_i);
|
||||||
track_names_.append(line_edit_track_title_i);
|
ui_->tableWidget->setCellWidget(i - 1, kTrackNumberColumn,
|
||||||
ui_->tableWidget->setCellWidget(i - 1, kTrackTitleColumn, line_edit_track_title_i);
|
new QLabel(QString::number(i)));
|
||||||
|
QString track_title = QString("Track %1").arg(i);
|
||||||
|
QLineEdit *line_edit_track_title_i = new QLineEdit(track_title,
|
||||||
|
ui_->tableWidget);
|
||||||
|
track_names_.append(line_edit_track_title_i);
|
||||||
|
ui_->tableWidget->setCellWidget(i - 1, kTrackTitleColumn,
|
||||||
|
line_edit_track_title_i);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Get presets
|
// Get presets
|
||||||
QList <TranscoderPreset> presets = Transcoder::GetAllPresets();
|
QList <TranscoderPreset> presets = Transcoder::GetAllPresets();
|
||||||
|
@ -134,6 +142,11 @@ RipCD::RipCD(QWidget* parent) :
|
||||||
ui_->progress_bar->setMaximum(100);
|
ui_->progress_bar->setMaximum(100);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RipCD::~RipCD() {
|
||||||
|
delete ui_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* WAV Header documentation
|
* WAV Header documentation
|
||||||
* as taken from:
|
* as taken from:
|
||||||
|
@ -369,3 +382,7 @@ void RipCD::AddDestination() {
|
||||||
void RipCD::Cancel() {
|
void RipCD::Cancel() {
|
||||||
transcoder_->Cancel();
|
transcoder_->Cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool RipCD::CDIOIsValid() const {
|
||||||
|
return (cdio_);
|
||||||
|
}
|
||||||
|
|
|
@ -35,6 +35,8 @@ class RipCD: public QDialog {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit RipCD(QWidget* parent = 0);
|
explicit RipCD(QWidget* parent = 0);
|
||||||
|
~RipCD();
|
||||||
|
bool CDIOIsValid() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static const char* kSettingsGroup;
|
static const char* kSettingsGroup;
|
||||||
|
|
Loading…
Reference in New Issue