mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-08-02 08:59:33 +02:00
2022-09-01 Fred Gleason <fredg@paravelsystems.com>
* Added icons to the CD rippers in rdlibrary(1) to indicate the provenance of detected metadata. Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
6cc8f2f834
commit
0599b009f2
@ -23244,3 +23244,6 @@
|
||||
2022-09-01 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Fixed a bug in rdlibrary(1) that could throw a segfault when
|
||||
encountering an error in ripping a CD.
|
||||
2022-09-01 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Added icons to the CD rippers in rdlibrary(1) to indicate the
|
||||
provenance of detected metadata.
|
||||
|
@ -161,7 +161,12 @@ void RDDiscLookup::lookup()
|
||||
//
|
||||
// Call the low-level driver to do its lookup.
|
||||
//
|
||||
lookupRecord();
|
||||
if(lookup_has_cd_text&&(sourceName()=="CDDB")) {
|
||||
RDDiscLookup::lookupRecord(); // Skip CDDB lookup if we have CD-Text
|
||||
}
|
||||
else {
|
||||
lookupRecord();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -251,6 +256,12 @@ void RDDiscLookup::resizeEvent(QResizeEvent *e)
|
||||
}
|
||||
|
||||
|
||||
void RDDiscLookup::closeEvent(QCloseEvent *e)
|
||||
{
|
||||
cancelData();
|
||||
}
|
||||
|
||||
|
||||
RDDiscRecord *RDDiscLookup::discRecord() const
|
||||
{
|
||||
return lookup_record;
|
||||
|
@ -71,6 +71,7 @@ class RDDiscLookup : public RDDialog
|
||||
virtual void lookupRecord();
|
||||
void processLookup(RDDiscLookup::Result result,const QString &err_msg);
|
||||
void resizeEvent(QResizeEvent *e);
|
||||
void closeEvent(QCloseEvent *e);
|
||||
RDDiscRecord *discRecord() const;
|
||||
void profile(const QString &msg);
|
||||
QComboBox *titlesBox();
|
||||
|
@ -143,6 +143,20 @@ CdRipper::CdRipper(QString cutname,RDDiscRecord *rec,RDLibraryConf *conf,
|
||||
rip_apply_box->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||
rip_apply_label->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||
|
||||
//
|
||||
// Data Source Labels
|
||||
//
|
||||
rip_cdtext_label=new QLabel(this);
|
||||
rip_cdtext_label->setFrameStyle(QFrame::Panel|QFrame::Raised);
|
||||
rip_cdtext_label->
|
||||
setPixmap(RDLibraryConf::cdServerLogo(RDLibraryConf::DummyType));
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label=new QLabel(this);
|
||||
rip_cddb_label->setFrameStyle(QFrame::Panel|QFrame::Raised);
|
||||
rip_cddb_label->
|
||||
setPixmap(RDLibraryConf::cdServerLogo(RDLibraryConf::CddbType));
|
||||
rip_cddb_label->hide();
|
||||
|
||||
//
|
||||
// Web Browser Button
|
||||
//
|
||||
@ -177,7 +191,7 @@ CdRipper::CdRipper(QString cutname,RDDiscRecord *rec,RDLibraryConf *conf,
|
||||
rip_track_view->setModel(rip_track_model);
|
||||
rip_track_view->hideColumn(5);
|
||||
rip_track_label=new QLabel(tr("Tracks"),this);
|
||||
rip_track_label->setFont(sectionLabelFont());
|
||||
rip_track_label->setFont(bigLabelFont());
|
||||
connect(rip_track_view->selectionModel(),
|
||||
SIGNAL(selectionChanged(const QItemSelection &,
|
||||
const QItemSelection &)),
|
||||
@ -545,6 +559,9 @@ void CdRipper::ripTrackButtonData()
|
||||
void CdRipper::ejectedData()
|
||||
{
|
||||
rip_track_model->clear();
|
||||
rip_browser_button->setDisabled(true);
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
rip_artist_edit->clear();
|
||||
rip_album_edit->clear();
|
||||
rip_other_edit->clear();
|
||||
@ -598,6 +615,8 @@ void CdRipper::lookupDoneData(RDDiscLookup::Result result,const QString &err_msg
|
||||
rip_apply_label->hide();
|
||||
rip_track[0]=-1;
|
||||
rip_track[1]=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
return; // Apply no metadata
|
||||
}
|
||||
}
|
||||
@ -609,6 +628,8 @@ void CdRipper::lookupDoneData(RDDiscLookup::Result result,const QString &err_msg
|
||||
rip_apply_label->hide();
|
||||
rip_track[0]=-1;
|
||||
rip_track[1]=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
return;
|
||||
}
|
||||
rip_artist_edit->setText(rip_disc_record->discArtist(src));
|
||||
@ -619,6 +640,16 @@ void CdRipper::lookupDoneData(RDDiscLookup::Result result,const QString &err_msg
|
||||
rip_apply_box->setChecked(true);
|
||||
rip_apply_box->setEnabled(true);
|
||||
rip_apply_label->setEnabled(true);
|
||||
if(rip_disc_lookup->hasCdText()) {
|
||||
rip_cdtext_label->show();
|
||||
rip_cddb_label->hide();
|
||||
}
|
||||
else {
|
||||
rip_cdtext_label->hide();
|
||||
if(rip_disc_lookup->sourceName()=="CDDB") {
|
||||
rip_cddb_label->show();
|
||||
}
|
||||
}
|
||||
rip_browser_button->setDisabled(rip_disc_lookup->sourceUrl().isNull());
|
||||
rip_browser_label->setDisabled(rip_disc_lookup->sourceUrl().isNull());
|
||||
rip_apply_box->show();
|
||||
@ -631,6 +662,8 @@ void CdRipper::lookupDoneData(RDDiscLookup::Result result,const QString &err_msg
|
||||
rip_apply_label->hide();
|
||||
rip_track[0]=-1;
|
||||
rip_track[1]=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
break;
|
||||
|
||||
case RDDiscLookup::LookupError:
|
||||
@ -640,6 +673,8 @@ void CdRipper::lookupDoneData(RDDiscLookup::Result result,const QString &err_msg
|
||||
rip_apply_label->hide();
|
||||
rip_track[0]=-1;
|
||||
rip_track[1]=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -692,16 +727,35 @@ void CdRipper::resizeEvent(QResizeEvent *e)
|
||||
rip_other_edit->setGeometry(65,97,size().width()-125,60);
|
||||
rip_apply_box->setGeometry(65,162,15,15);
|
||||
rip_apply_label->setGeometry(85,162,250,20);
|
||||
|
||||
|
||||
if(rip_disc_lookup->sourceName()=="MusicBrainz") {
|
||||
rip_cdtext_label->setGeometry(size().width()-270-rip_cdtext_label->sizeHint().width(),161,rip_cdtext_label->sizeHint().width(),rip_cdtext_label->sizeHint().height());
|
||||
rip_cddb_label->setGeometry(size().width()-270-rip_cddb_label->sizeHint().width(),161,rip_cddb_label->sizeHint().width(),rip_cddb_label->sizeHint().height());
|
||||
}
|
||||
else {
|
||||
rip_cdtext_label->setGeometry(size().width()-270-rip_cdtext_label->sizeHint().width()+210,
|
||||
161,
|
||||
rip_cdtext_label->sizeHint().width(),
|
||||
rip_cdtext_label->sizeHint().height());
|
||||
rip_cddb_label->setGeometry(size().width()-270-rip_cddb_label->sizeHint().width()+210,
|
||||
161,
|
||||
rip_cddb_label->sizeHint().width(),
|
||||
rip_cddb_label->sizeHint().height());
|
||||
}
|
||||
|
||||
|
||||
|
||||
rip_browser_button->setGeometry(size().width()-260,161,200,35);
|
||||
rip_browser_button->setIconSize(QSize(198,33));
|
||||
rip_browser_label->setGeometry(size().width()-260,161,200,35);
|
||||
rip_track_view->setGeometry(10,200,size().width()-110,size().height()-305);
|
||||
rip_track_label->setGeometry(10,184,100,14);
|
||||
rip_track_view->setGeometry(10,200+12,size().width()-110,size().height()-305-12);
|
||||
rip_track_label->setGeometry(10,184+12,100,14);
|
||||
rip_bar->setGeometry(10,size().height()-100,size().width()-110,20);
|
||||
rip_eject_button->setGeometry(size().width()-90,200,80,50);
|
||||
rip_play_button->setGeometry(size().width()-90,260,80,50);
|
||||
rip_stop_button->setGeometry(size().width()-90,320,80,50);
|
||||
rip_rip_button->setGeometry(size().width()-90,424,80,50);
|
||||
rip_eject_button->setGeometry(size().width()-90,200+12,80,50);
|
||||
rip_play_button->setGeometry(size().width()-90,260+12,80,50);
|
||||
rip_stop_button->setGeometry(size().width()-90,320+12,80,50);
|
||||
rip_rip_button->setGeometry(size().width()-90,424+12,80,50);
|
||||
rip_normalize_box->setGeometry(10,size().height()-76,20,20);
|
||||
rip_normalize_box_label->setGeometry(30,size().height()-76,85,20);
|
||||
rip_normalize_label->setGeometry(120,size().height()-76,45,20);
|
||||
|
@ -118,6 +118,8 @@ class CdRipper : public RDDialog
|
||||
QLabel *rip_autotrim_unit;
|
||||
bool rip_done;
|
||||
bool rip_profile_rip;
|
||||
QLabel *rip_cddb_label;
|
||||
QLabel *rip_cdtext_label;
|
||||
};
|
||||
|
||||
|
||||
|
@ -132,6 +132,20 @@ DiskRipper::DiskRipper(QString *filter,QString *group,QString *schedcode,
|
||||
rip_apply_box->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||
rip_apply_label->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||
|
||||
//
|
||||
// Data Source Labels
|
||||
//
|
||||
rip_cdtext_label=new QLabel(this);
|
||||
rip_cdtext_label->setFrameStyle(QFrame::Panel|QFrame::Raised);
|
||||
rip_cdtext_label->
|
||||
setPixmap(RDLibraryConf::cdServerLogo(RDLibraryConf::DummyType));
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label=new QLabel(this);
|
||||
rip_cddb_label->setFrameStyle(QFrame::Panel|QFrame::Raised);
|
||||
rip_cddb_label->
|
||||
setPixmap(RDLibraryConf::cdServerLogo(RDLibraryConf::CddbType));
|
||||
rip_cddb_label->hide();
|
||||
|
||||
//
|
||||
// Web Browser Button/Label
|
||||
//
|
||||
@ -165,7 +179,7 @@ DiskRipper::DiskRipper(QString *filter,QString *group,QString *schedcode,
|
||||
rip_track_model->setPalette(palette());
|
||||
rip_track_view->setModel(rip_track_model);
|
||||
rip_track_label=new QLabel(tr("Tracks"),this);
|
||||
rip_track_label->setFont(sectionLabelFont());
|
||||
rip_track_label->setFont(bigLabelFont());
|
||||
connect(rip_track_view,SIGNAL(doubleClicked(const QModelIndex &)),
|
||||
this,SLOT(doubleClickedData(const QModelIndex &)));
|
||||
connect(rip_track_view->selectionModel(),
|
||||
@ -352,7 +366,7 @@ DiskRipper::~DiskRipper()
|
||||
|
||||
QSize DiskRipper::sizeHint() const
|
||||
{
|
||||
return QSize(730,716);
|
||||
return QSize(730,716+12);
|
||||
}
|
||||
|
||||
|
||||
@ -474,6 +488,10 @@ void DiskRipper::ripDiskButtonData()
|
||||
void DiskRipper::ejectedData()
|
||||
{
|
||||
rip_track_model->clear();
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
rip_track=-1;
|
||||
rip_artist_edit->clear();
|
||||
rip_album_edit->clear();
|
||||
@ -706,6 +724,10 @@ void DiskRipper::mediaChangedData()
|
||||
rip_setsingle_button->setDisabled(true);
|
||||
rip_cartlabel_button->setDisabled(true);
|
||||
rip_clear_button->setDisabled(true);
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
for(int i=rip_cdrom->tracks();i>0;i--) {
|
||||
rip_cutnames.push_back(QString());
|
||||
rip_end_track.push_back(-1);
|
||||
@ -749,6 +771,8 @@ void DiskRipper::lookupDoneData(RDDiscLookup::Result result,
|
||||
rip_apply_box->hide();
|
||||
rip_apply_label->hide();
|
||||
rip_track=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
return; // Apply no metadata
|
||||
}
|
||||
}
|
||||
@ -759,6 +783,8 @@ void DiskRipper::lookupDoneData(RDDiscLookup::Result result,
|
||||
rip_apply_box->hide();
|
||||
rip_apply_label->hide();
|
||||
rip_track=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
return;
|
||||
}
|
||||
rip_artist_edit->setText(rip_disc_record.discArtist(src));
|
||||
@ -775,6 +801,16 @@ void DiskRipper::lookupDoneData(RDDiscLookup::Result result,
|
||||
rip_wave_datas[rip_wave_datas.size()-i-1]->
|
||||
setLabel(rip_disc_record.discLabel());
|
||||
}
|
||||
if(rip_disc_lookup->hasCdText()) {
|
||||
rip_cdtext_label->show();
|
||||
rip_cddb_label->hide();
|
||||
}
|
||||
else {
|
||||
rip_cdtext_label->hide();
|
||||
if(rip_disc_lookup->sourceName()=="CDDB") {
|
||||
rip_cddb_label->show();
|
||||
}
|
||||
}
|
||||
rip_apply_box->setChecked(true);
|
||||
rip_apply_box->setEnabled(true);
|
||||
rip_apply_label->setEnabled(true);
|
||||
@ -782,12 +818,24 @@ void DiskRipper::lookupDoneData(RDDiscLookup::Result result,
|
||||
rip_browser_label->setDisabled(rip_disc_lookup->sourceUrl().isNull());
|
||||
rip_apply_box->show();
|
||||
rip_apply_label->show();
|
||||
if(rip_disc_lookup->hasCdText()) {
|
||||
rip_cdtext_label->show();
|
||||
rip_cddb_label->hide();
|
||||
}
|
||||
else {
|
||||
rip_cdtext_label->hide();
|
||||
if(rip_disc_lookup->sourceName()=="CDDB") {
|
||||
rip_cddb_label->show();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RDDiscLookup::NoMatch:
|
||||
rip_apply_box->hide();
|
||||
rip_apply_label->hide();
|
||||
rip_track=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
break;
|
||||
|
||||
case RDDiscLookup::LookupError:
|
||||
@ -796,6 +844,8 @@ void DiskRipper::lookupDoneData(RDDiscLookup::Result result,
|
||||
rip_apply_box->hide();
|
||||
rip_apply_label->hide();
|
||||
rip_track=-1;
|
||||
rip_cdtext_label->hide();
|
||||
rip_cddb_label->hide();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -873,23 +923,37 @@ void DiskRipper::resizeEvent(QResizeEvent *e)
|
||||
rip_other_edit->setGeometry(65,53,size().width()-125,60);
|
||||
rip_apply_box->setGeometry(65,118,15,15);
|
||||
rip_apply_label->setGeometry(85,118,250,20);
|
||||
if(rip_disc_lookup->sourceName()=="MusicBrainz") {
|
||||
rip_cdtext_label->setGeometry(size().width()-270-rip_cdtext_label->sizeHint().width(),117,rip_cdtext_label->sizeHint().width(),rip_cdtext_label->sizeHint().height());
|
||||
rip_cddb_label->setGeometry(size().width()-270-rip_cddb_label->sizeHint().width(),117,rip_cddb_label->sizeHint().width(),rip_cddb_label->sizeHint().height());
|
||||
}
|
||||
else {
|
||||
rip_cdtext_label->setGeometry(size().width()-270-rip_cdtext_label->sizeHint().width()+210,
|
||||
117,
|
||||
rip_cdtext_label->sizeHint().width(),
|
||||
rip_cdtext_label->sizeHint().height());
|
||||
rip_cddb_label->setGeometry(size().width()-270-rip_cddb_label->sizeHint().width()+210,
|
||||
117,
|
||||
rip_cddb_label->sizeHint().width(),
|
||||
rip_cddb_label->sizeHint().height());
|
||||
}
|
||||
rip_browser_button->setGeometry(size().width()-260,117,200,35);
|
||||
rip_browser_button->setIconSize(QSize(198,33));
|
||||
rip_browser_label->setGeometry(size().width()-260,117,200,35);
|
||||
rip_track_label->setGeometry(100,140,100,14);
|
||||
rip_track_view->setGeometry(100,156,size().width()-202,size().height()-342);
|
||||
rip_diskbar_label->setGeometry(10,size().height()-174,size().width()-110,20);
|
||||
rip_track_label->setGeometry(100,140+12,100,14);
|
||||
rip_track_view->setGeometry(100,156+12,size().width()-202,size().height()-342);
|
||||
rip_diskbar_label->setGeometry(10,size().height()-174+0,size().width()-110,20);
|
||||
rip_disk_bar->setGeometry(10,size().height()-154,size().width()-110,20);
|
||||
rip_trackbar_label->setGeometry(10,size().height()-126,size().width()-110,20);
|
||||
rip_track_bar->setGeometry(10,size().height()-106,size().width()-110,20);
|
||||
rip_eject_button->setGeometry(10,156,80,50);
|
||||
rip_play_button->setGeometry(10,216,80,50);
|
||||
rip_stop_button->setGeometry(10,276,80,50);
|
||||
rip_setcut_button->setGeometry(size().width()-90,156,80,50);
|
||||
rip_setall_button->setGeometry(size().width()-90,216,80,50);
|
||||
rip_setsingle_button->setGeometry(size().width()-90,276,80,50);
|
||||
rip_cartlabel_button->setGeometry(size().width()-90,420,80,50);
|
||||
rip_clear_button->setGeometry(size().width()-90,480,80,50);
|
||||
rip_eject_button->setGeometry(10,156+12,80,50);
|
||||
rip_play_button->setGeometry(10,216+12,80,50);
|
||||
rip_stop_button->setGeometry(10,276+12,80,50);
|
||||
rip_setcut_button->setGeometry(size().width()-90,156+12,80,50);
|
||||
rip_setall_button->setGeometry(size().width()-90,216+12,80,50);
|
||||
rip_setsingle_button->setGeometry(size().width()-90,276+12,80,50);
|
||||
rip_cartlabel_button->setGeometry(size().width()-90,420+12,80,50);
|
||||
rip_clear_button->setGeometry(size().width()-90,480+12,80,50);
|
||||
rip_normalizebox_label->setGeometry(30,size().height()-78,85,20);
|
||||
rip_normalize_box->setGeometry(10,size().height()-78,20,20);
|
||||
rip_normalize_label->setGeometry(120,size().height()-78,45,20);
|
||||
|
@ -97,6 +97,8 @@ class DiskRipper : public RDDialog
|
||||
QLabel *rip_apply_label;
|
||||
QPushButton *rip_browser_button;
|
||||
QLabel *rip_browser_label;
|
||||
QLabel *rip_cddb_label;
|
||||
QLabel *rip_cdtext_label;
|
||||
RDTransportButton *rip_eject_button;
|
||||
RDTransportButton *rip_play_button;
|
||||
RDTransportButton *rip_stop_button;
|
||||
|
Loading…
x
Reference in New Issue
Block a user