mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-07-03 06:03:15 +02:00
2020-02-02 Fred Gleason <fredg@paravelsystems.com>
* Added a 'STATIONS.BROWSER_PATH' field to the database. * Incremented the database version to 314. * Added a 'Web Browser' control to the 'Edit Host' dialog in rdadmin(1). * Added a MusicBrainz record lookup button to the full disc ripper in rdlibrary(1). * Added a MusicBrainz record lookup button to the disc track ripper in rdlibrary(1).
This commit is contained in:
parent
32a3e34c6e
commit
8dfd341cdf
@ -19464,3 +19464,12 @@
|
|||||||
to fail to save MBIDs to the database after a successful rip.
|
to fail to save MBIDs to the database after a successful rip.
|
||||||
* Fixed a bug in the disc track ripper in rdlibrary(1)that caused it
|
* Fixed a bug in the disc track ripper in rdlibrary(1)that caused it
|
||||||
to fail to save MBIDs to the database after a successful rip.
|
to fail to save MBIDs to the database after a successful rip.
|
||||||
|
2020-02-02 Fred Gleason <fredg@paravelsystems.com>
|
||||||
|
* Added a 'STATIONS.BROWSER_PATH' field to the database.
|
||||||
|
* Incremented the database version to 314.
|
||||||
|
* Added a 'Web Browser' control to the 'Edit Host' dialog in
|
||||||
|
rdadmin(1).
|
||||||
|
* Added a MusicBrainz record lookup button to the full disc ripper
|
||||||
|
in rdlibrary(1).
|
||||||
|
* Added a MusicBrainz record lookup button to the disc track ripper
|
||||||
|
in rdlibrary(1).
|
||||||
|
@ -17,8 +17,9 @@ BROADCAST_SECURITY int(10) unsigned 0=HostSec, 1=UserSec
|
|||||||
HEARTBEAT_CART int(10) unsigned
|
HEARTBEAT_CART int(10) unsigned
|
||||||
HEARTBEAT_INTERVAL int(10) unsigned
|
HEARTBEAT_INTERVAL int(10) unsigned
|
||||||
STARTUP_CART int(10) unsigned
|
STARTUP_CART int(10) unsigned
|
||||||
EDITOR_PATH varchar(191)
|
EDITOR_PATH varchar(191) Audio editor --e.g. Audacity
|
||||||
REPORT_EDITOR_PATH varchar(191)
|
REPORT_EDITOR_PATH varchar(191) Text Editor --e.g. GEdit
|
||||||
|
BROWSER_PATH varchar(191) Web Browser --e.g. Firefox
|
||||||
FILTER_MODE int(11) 0=Synchronous, 1=Asynchronous
|
FILTER_MODE int(11) 0=Synchronous, 1=Asynchronous
|
||||||
START_JACK enum('Y','N')
|
START_JACK enum('Y','N')
|
||||||
JACK_SERVER_NAME varchar(64)
|
JACK_SERVER_NAME varchar(64)
|
||||||
|
@ -283,6 +283,8 @@ EXTRA_DIST = admin.xpm\
|
|||||||
mic16.xpm\
|
mic16.xpm\
|
||||||
music.png\
|
music.png\
|
||||||
music.xpm\
|
music.xpm\
|
||||||
|
musicbrainz-159x25.xpm\
|
||||||
|
musicbrainz.svg\
|
||||||
note.xpm\
|
note.xpm\
|
||||||
note2.xpm\
|
note2.xpm\
|
||||||
notemarker.png\
|
notemarker.png\
|
||||||
|
62
icons/musicbrainz-159x25.xpm
Normal file
62
icons/musicbrainz-159x25.xpm
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
/* XPM */
|
||||||
|
static const char * musicbrainz_159x25_xpm[] = {
|
||||||
|
"159 25 34 1",
|
||||||
|
" c None",
|
||||||
|
". c #BA478F",
|
||||||
|
"+ c #EB743A",
|
||||||
|
"@ c #B9488F",
|
||||||
|
"# c #EB743B",
|
||||||
|
"$ c #B94790",
|
||||||
|
"% c #BA478E",
|
||||||
|
"& c #EB733A",
|
||||||
|
"* c #EA753B",
|
||||||
|
"= c #BB488F",
|
||||||
|
"- c #EC743C",
|
||||||
|
"; c #BB478F",
|
||||||
|
"> c #EB743C",
|
||||||
|
", c #EB753A",
|
||||||
|
"' c #B9478E",
|
||||||
|
") c #BA4790",
|
||||||
|
"! c #EB753B",
|
||||||
|
"~ c #BA468F",
|
||||||
|
"{ c #EB733C",
|
||||||
|
"] c #EB733B",
|
||||||
|
"^ c #EA743B",
|
||||||
|
"/ c #BA488F",
|
||||||
|
"( c #B9478F",
|
||||||
|
"_ c #BB4890",
|
||||||
|
": c #EC753A",
|
||||||
|
"< c #EA743A",
|
||||||
|
"[ c #BB468F",
|
||||||
|
"} c #EC733B",
|
||||||
|
"| c #EC743B",
|
||||||
|
"1 c #EA733B",
|
||||||
|
"2 c #BB468E",
|
||||||
|
"3 c #BA468E",
|
||||||
|
"4 c #BB478E",
|
||||||
|
"5 c #B94890",
|
||||||
|
" . + ",
|
||||||
|
" @.. ## ",
|
||||||
|
" $... #### ",
|
||||||
|
" %..... #####& .. ##* ",
|
||||||
|
" =....... #######- ..... ..... .... ########## #### ",
|
||||||
|
" ;........ ########> ..... ..... ;... ########### ,### ",
|
||||||
|
".......... ########## .....' ...... .) ####!!#####& !- ",
|
||||||
|
".......... ########## ...... ~..... ###! #### ",
|
||||||
|
".......... ########## ...).. ...... ...~ .... .....; .... ..... ###! #### ### {#> #####] ### ### ^#### #########+ ",
|
||||||
|
".......... ########## ...$... .../... ...( ...; ........ .... $.......; ###! #### ^####### ######## ### ########## ########## ",
|
||||||
|
".......... ########## ... ... ... ... ...( ...; .... _...; .... ....;)... #### #### ^####### ####,+###^ ### ####!###### #########: ",
|
||||||
|
".......... ########## ... %.. ../ ... ...( ...; ... ./// .... ;... ...; ########## ^####^< ### -### ### ###^ #### #### ",
|
||||||
|
".......... ########## ... [..~ ... ... ...( ...; .... .... .... =((. ########### ^### -### ### ### #### #### ",
|
||||||
|
".......... ########## ... ... ... ... ...( ...; /.....; .... ...$ #### -###> ^### +######## ### ### ###- #### ",
|
||||||
|
".......... ########## ... (.. ... ... ...( ...; ........ .... ...( ###} #### ^### -####!#### ### ### ###- !###! ",
|
||||||
|
".......... ########## ... ..).. )... ...( ...; ;..... .... .... ###} #### ^### ###- |### ### ### ###- ###{ ",
|
||||||
|
".......... ########## .... ..... (... ...= ...; ..[ %... .... .... $... ###} >### ^### 1### ^### ### ### ###- #### ",
|
||||||
|
".......... #########, ...2 ....( .... ....@ ....; %... ...) .... ....3 (...@ ######-##### ^### ##### #### ### ### ###- !####,,,,! ",
|
||||||
|
" ........ ######## ...2 ... .... (.........; .......... .... ........$ ########### ^### ########## ### ### ###- ########## ",
|
||||||
|
" @...... ###### ...2 ... .... $........; .......' .... ....... ########## ^### #####|### ### ### ###- ########## ",
|
||||||
|
" 4.... ####+ 5% )=3 ([ , ",
|
||||||
|
" %.. ##{ ",
|
||||||
|
" . # ",
|
||||||
|
" ",
|
||||||
|
" "};
|
1
icons/musicbrainz.svg
Normal file
1
icons/musicbrainz.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 5.8 KiB |
@ -24,7 +24,7 @@
|
|||||||
/*
|
/*
|
||||||
* Current Database Version
|
* Current Database Version
|
||||||
*/
|
*/
|
||||||
#define RD_VERSION_DATABASE 313
|
#define RD_VERSION_DATABASE 314
|
||||||
|
|
||||||
|
|
||||||
#endif // DBVERSION_H
|
#endif // DBVERSION_H
|
||||||
|
@ -63,6 +63,24 @@ QSize RDDiscLookup::sizeHint() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString RDDiscLookup::sourceName() const
|
||||||
|
{
|
||||||
|
return QString();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QPixmap RDDiscLookup::sourceLogo() const
|
||||||
|
{
|
||||||
|
return QPixmap();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString RDDiscLookup::sourceUrl() const
|
||||||
|
{
|
||||||
|
return QString();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void RDDiscLookup::setCddbRecord(RDDiscRecord *rec)
|
void RDDiscLookup::setCddbRecord(RDDiscRecord *rec)
|
||||||
{
|
{
|
||||||
lookup_record=rec;
|
lookup_record=rec;
|
||||||
@ -153,7 +171,7 @@ void RDDiscLookup::resizeEvent(QResizeEvent *e)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
RDDiscRecord *RDDiscLookup::discRecord()
|
RDDiscRecord *RDDiscLookup::discRecord() const
|
||||||
{
|
{
|
||||||
return lookup_record;
|
return lookup_record;
|
||||||
}
|
}
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
|
|
||||||
#include <qcombobox.h>
|
#include <qcombobox.h>
|
||||||
#include <qlabel.h>
|
#include <qlabel.h>
|
||||||
|
#include <qpixmap.h>
|
||||||
#include <qpushbutton.h>
|
#include <qpushbutton.h>
|
||||||
#include <qstringlist.h>
|
#include <qstringlist.h>
|
||||||
#include <qtcpsocket.h>
|
#include <qtcpsocket.h>
|
||||||
@ -40,7 +41,9 @@ class RDDiscLookup : public RDDialog
|
|||||||
enum Result {ExactMatch=0,NoMatch=1,LookupError=2};
|
enum Result {ExactMatch=0,NoMatch=1,LookupError=2};
|
||||||
RDDiscLookup(const QString &caption,FILE *profile_msgs,QWidget *parent=0);
|
RDDiscLookup(const QString &caption,FILE *profile_msgs,QWidget *parent=0);
|
||||||
QSize sizeHint() const;
|
QSize sizeHint() const;
|
||||||
virtual QString sourceName() const=0;
|
virtual QString sourceName() const;
|
||||||
|
virtual QPixmap sourceLogo() const;
|
||||||
|
virtual QString sourceUrl() const;
|
||||||
void setCddbRecord(RDDiscRecord *);
|
void setCddbRecord(RDDiscRecord *);
|
||||||
void lookup();
|
void lookup();
|
||||||
static bool isrcIsValid(const QString &isrc);
|
static bool isrcIsValid(const QString &isrc);
|
||||||
@ -58,7 +61,7 @@ class RDDiscLookup : public RDDialog
|
|||||||
protected:
|
protected:
|
||||||
virtual void lookupRecord()=0;
|
virtual void lookupRecord()=0;
|
||||||
void resizeEvent(QResizeEvent *e);
|
void resizeEvent(QResizeEvent *e);
|
||||||
RDDiscRecord *discRecord();
|
RDDiscRecord *discRecord() const;
|
||||||
void profile(const QString &msg);
|
void profile(const QString &msg);
|
||||||
QComboBox *titlesBox();
|
QComboBox *titlesBox();
|
||||||
QStringList *titlesKey();
|
QStringList *titlesKey();
|
||||||
|
@ -28,12 +28,7 @@ RDDummyLookup::RDDummyLookup(const QString &caption,FILE *profile_msgs,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QString RDDummyLookup::sourceName() const
|
|
||||||
{
|
|
||||||
return QString();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void RDDummyLookup::lookupRecord()
|
void RDDummyLookup::lookupRecord()
|
||||||
{
|
{
|
||||||
|
emit lookupDone(RDDiscLookup::NoMatch,"OK");
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,6 @@ class RDDummyLookup : public RDDiscLookup
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
RDDummyLookup(const QString &caption,FILE *profile_msgs,QWidget *parent=0);
|
RDDummyLookup(const QString &caption,FILE *profile_msgs,QWidget *parent=0);
|
||||||
QString sourceName() const;
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void lookupRecord();
|
void lookupRecord();
|
||||||
|
@ -40,6 +40,8 @@
|
|||||||
|
|
||||||
#include "rdmblookup.h"
|
#include "rdmblookup.h"
|
||||||
|
|
||||||
|
#include "../icons/musicbrainz-159x25.xpm"
|
||||||
|
|
||||||
QString err_str="OK";
|
QString err_str="OK";
|
||||||
RDDiscLookup::Result result_code=RDDiscLookup::ExactMatch;
|
RDDiscLookup::Result result_code=RDDiscLookup::ExactMatch;
|
||||||
|
|
||||||
@ -57,6 +59,22 @@ QString RDMbLookup::sourceName() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QPixmap RDMbLookup::sourceLogo() const
|
||||||
|
{
|
||||||
|
return QPixmap(musicbrainz_159x25_xpm);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString RDMbLookup::sourceUrl() const
|
||||||
|
{
|
||||||
|
if(discRecord()->discReleaseMbId().isEmpty()) {
|
||||||
|
return QString();
|
||||||
|
}
|
||||||
|
return "https://"+rda->libraryConf()->mbServer()+"/release/"+
|
||||||
|
discRecord()->discReleaseMbId();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void RDMbLookup::lookupRecord()
|
void RDMbLookup::lookupRecord()
|
||||||
{
|
{
|
||||||
MusicBrainz5::CQuery
|
MusicBrainz5::CQuery
|
||||||
|
@ -32,6 +32,8 @@ class RDMbLookup : public RDDiscLookup
|
|||||||
public:
|
public:
|
||||||
RDMbLookup(const QString &caption,FILE *profile_msgs,QWidget *parent=0);
|
RDMbLookup(const QString &caption,FILE *profile_msgs,QWidget *parent=0);
|
||||||
QString sourceName() const;
|
QString sourceName() const;
|
||||||
|
QPixmap sourceLogo() const;
|
||||||
|
QString sourceUrl() const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void lookupRecord();
|
void lookupRecord();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
//
|
//
|
||||||
// Abstract a Rivendell Workstation.
|
// Abstract a Rivendell Workstation.
|
||||||
//
|
//
|
||||||
// (C) Copyright 2002-2018 Fred Gleason <fredg@paravelsystems.com>
|
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||||
//
|
//
|
||||||
// This program is free software; you can redistribute it and/or modify
|
// This program is free software; you can redistribute it and/or modify
|
||||||
// it under the terms of the GNU General Public License version 2 as
|
// it under the terms of the GNU General Public License version 2 as
|
||||||
@ -270,6 +270,19 @@ void RDStation::setReportEditorPath(const QString &cmd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString RDStation::browserPath() const
|
||||||
|
{
|
||||||
|
return RDGetSqlValue("STATIONS","NAME",station_name,"BROWSER_PATH").
|
||||||
|
toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void RDStation::setBrowserPath(const QString &cmd) const
|
||||||
|
{
|
||||||
|
SetRow("BROWSER_PATH",cmd);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
RDStation::FilterMode RDStation::filterMode() const
|
RDStation::FilterMode RDStation::filterMode() const
|
||||||
{
|
{
|
||||||
return (RDStation::FilterMode)RDGetSqlValue("STATIONS","NAME",station_name,
|
return (RDStation::FilterMode)RDGetSqlValue("STATIONS","NAME",station_name,
|
||||||
|
@ -66,6 +66,8 @@ class RDStation
|
|||||||
void setEditorPath(const QString &cmd);
|
void setEditorPath(const QString &cmd);
|
||||||
QString reportEditorPath() const;
|
QString reportEditorPath() const;
|
||||||
void setReportEditorPath(const QString &cmd);
|
void setReportEditorPath(const QString &cmd);
|
||||||
|
QString browserPath() const;
|
||||||
|
void setBrowserPath(const QString &cmd) const;
|
||||||
RDStation::FilterMode filterMode() const;
|
RDStation::FilterMode filterMode() const;
|
||||||
void setFilterMode(RDStation::FilterMode mode) const;
|
void setFilterMode(RDStation::FilterMode mode) const;
|
||||||
bool startJack() const;
|
bool startJack() const;
|
||||||
|
@ -119,3 +119,44 @@ bool RDTextViewer(const QString &filename)
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool RDWebBrowser(const QString &url)
|
||||||
|
{
|
||||||
|
QString editor=RD_LINUX_EDITOR;
|
||||||
|
char cmd[PATH_MAX];
|
||||||
|
char *args[64];
|
||||||
|
|
||||||
|
editor=rda->station()->browserPath();
|
||||||
|
if(editor.isEmpty()) {
|
||||||
|
QMessageBox::warning(NULL,"Error",
|
||||||
|
"No web browser configured!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
memset(args,0,sizeof(args));
|
||||||
|
QStringList f0=editor.split(" ",QString::SkipEmptyParts);
|
||||||
|
if(f0.size()>64) {
|
||||||
|
QMessageBox::warning(NULL,"Error",
|
||||||
|
"Too many arguments to web browser!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
strncpy(cmd,f0.at(0).toUtf8(),PATH_MAX);
|
||||||
|
QStringList f1=f0.at(0).split("/");
|
||||||
|
args[0]=(char *)malloc(f1.back().toUtf8().size()+1);
|
||||||
|
strcpy(args[0],f1.back().toUtf8());
|
||||||
|
for(int i=1;i<f0.size();i++) {
|
||||||
|
args[i]=(char *)malloc(f0.at(i).toUtf8().size()+1);
|
||||||
|
strcpy(args[i],f0.at(i).toUtf8());
|
||||||
|
}
|
||||||
|
|
||||||
|
args[f0.size()]=(char *)malloc(url.toUtf8().length()+1);
|
||||||
|
strcpy(args[f0.size()],url.toUtf8());
|
||||||
|
|
||||||
|
args[f0.size()+1]=(char *)NULL;
|
||||||
|
|
||||||
|
if(fork()==0) {
|
||||||
|
execvp(cmd,args);
|
||||||
|
_exit(1);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
bool RDTextFile(const QString &data,bool delete_on_exit=true);
|
bool RDTextFile(const QString &data,bool delete_on_exit=true);
|
||||||
bool RDTextViewer(const QString &filename);
|
bool RDTextViewer(const QString &filename);
|
||||||
|
bool RDWebBrowser(const QString &url);
|
||||||
|
|
||||||
|
|
||||||
#endif // RDTEXTFILE_H
|
#endif // RDTEXTFILE_H
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
//
|
//
|
||||||
// Edit a Rivendell Workstation Configuration
|
// Edit a Rivendell Workstation Configuration
|
||||||
//
|
//
|
||||||
// (C) Copyright 2002-2019 Fred Gleason <fredg@paravelsystems.com>
|
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||||
//
|
//
|
||||||
// This program is free software; you can redistribute it and/or modify
|
// This program is free software; you can redistribute it and/or modify
|
||||||
// it under the terms of the GNU General Public License version 2 as
|
// it under the terms of the GNU General Public License version 2 as
|
||||||
@ -148,6 +148,16 @@ EditStation::EditStation(QString sname,QWidget *parent)
|
|||||||
station_report_editor_label->setFont(labelFont());
|
station_report_editor_label->setFont(labelFont());
|
||||||
station_report_editor_label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
station_report_editor_label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||||
|
|
||||||
|
//
|
||||||
|
// Web Browser Command
|
||||||
|
//
|
||||||
|
station_web_browser_edit=new QLineEdit(this);
|
||||||
|
station_web_browser_edit->setMaxLength(191);
|
||||||
|
station_web_browser_label=
|
||||||
|
new QLabel(station_web_browser_edit,tr("Web Browser")+":",this);
|
||||||
|
station_web_browser_label->setFont(labelFont());
|
||||||
|
station_web_browser_label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Station Time Offset
|
// Station Time Offset
|
||||||
//
|
//
|
||||||
@ -463,6 +473,7 @@ EditStation::EditStation(QString sname,QWidget *parent)
|
|||||||
station_address_edit->setText(station_station->address().toString());
|
station_address_edit->setText(station_station->address().toString());
|
||||||
station_audio_editor_edit->setText(station_station->editorPath());
|
station_audio_editor_edit->setText(station_station->editorPath());
|
||||||
station_report_editor_edit->setText(station_station->reportEditorPath());
|
station_report_editor_edit->setText(station_station->reportEditorPath());
|
||||||
|
station_web_browser_edit->setText(station_station->browserPath());
|
||||||
station_timeoffset_box->setValue(station_station->timeOffset());
|
station_timeoffset_box->setValue(station_station->timeOffset());
|
||||||
unsigned cartnum=station_station->startupCart();
|
unsigned cartnum=station_station->startupCart();
|
||||||
if(cartnum>0) {
|
if(cartnum>0) {
|
||||||
@ -575,8 +586,7 @@ EditStation::~EditStation()
|
|||||||
|
|
||||||
QSize EditStation::sizeHint() const
|
QSize EditStation::sizeHint() const
|
||||||
{
|
{
|
||||||
return QSize(415,744);
|
return QSize(415,765);
|
||||||
// return QSize(395,744);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -696,8 +706,8 @@ void EditStation::okData()
|
|||||||
station_station->setAddress(addr);
|
station_station->setAddress(addr);
|
||||||
station_station->
|
station_station->
|
||||||
setEditorPath(station_audio_editor_edit->text());
|
setEditorPath(station_audio_editor_edit->text());
|
||||||
station_station->
|
station_station->setReportEditorPath(station_report_editor_edit->text());
|
||||||
setReportEditorPath(station_report_editor_edit->text());
|
station_station->setBrowserPath(station_web_browser_edit->text());
|
||||||
station_station->setTimeOffset(station_timeoffset_box->value());
|
station_station->setTimeOffset(station_timeoffset_box->value());
|
||||||
cartnum=station_startup_cart_edit->text().toUInt(&ok);
|
cartnum=station_startup_cart_edit->text().toUInt(&ok);
|
||||||
if(ok&&(cartnum<=999999)) {
|
if(ok&&(cartnum<=999999)) {
|
||||||
@ -907,82 +917,85 @@ void EditStation::resizeEvent(QResizeEvent *e)
|
|||||||
station_report_editor_edit->setGeometry(115,137,size().width()-120,19);
|
station_report_editor_edit->setGeometry(115,137,size().width()-120,19);
|
||||||
station_report_editor_label->setGeometry(10,137,100,19);
|
station_report_editor_label->setGeometry(10,137,100,19);
|
||||||
|
|
||||||
station_timeoffset_box->setGeometry(115,158,80,19);
|
station_web_browser_edit->setGeometry(115,158,size().width()-120,19);
|
||||||
station_timeoffset_label->setGeometry(10,158,100,19);
|
station_web_browser_label->setGeometry(10,158,100,19);
|
||||||
|
|
||||||
station_startup_cart_edit->setGeometry(115,179,60,19);
|
station_timeoffset_box->setGeometry(115,179,80,19);
|
||||||
station_startup_cart_label->setGeometry(10,179,100,19);
|
station_timeoffset_label->setGeometry(10,179,100,19);
|
||||||
station_startup_select_button->setGeometry(180,178,50,22);
|
|
||||||
|
|
||||||
station_cue_sel->setGeometry(90,200,110,117);
|
station_startup_cart_edit->setGeometry(115,200,60,19);
|
||||||
station_cue_sel_label->setGeometry(10,200,100,19);
|
station_startup_cart_label->setGeometry(10,200,100,19);
|
||||||
|
station_startup_select_button->setGeometry(180,199,50,22);
|
||||||
|
|
||||||
station_start_cart_edit->setGeometry(290,200,60,20);
|
station_cue_sel->setGeometry(90,221,110,117);
|
||||||
station_start_cart_label->setGeometry(205,200,80,20);
|
station_cue_sel_label->setGeometry(10,221,100,19);
|
||||||
station_start_cart_button->setGeometry(355,199,50,22);
|
|
||||||
|
|
||||||
station_stop_cart_edit->setGeometry(290,222,60,20);
|
station_start_cart_edit->setGeometry(290,221,60,20);
|
||||||
station_stop_cart_label->setGeometry(205,222,80,20);
|
station_start_cart_label->setGeometry(205,221,80,20);
|
||||||
station_stop_cart_button->setGeometry(355,221,50,22);
|
station_start_cart_button->setGeometry(355,220,50,22);
|
||||||
|
|
||||||
station_heartbeat_box->setGeometry(10,247,15,15);
|
station_stop_cart_edit->setGeometry(290,243,60,20);
|
||||||
station_heartbeat_label->setGeometry(30,245,150,20);
|
station_stop_cart_label->setGeometry(205,243,80,20);
|
||||||
|
station_stop_cart_button->setGeometry(355,242,50,22);
|
||||||
|
|
||||||
station_filter_box->setGeometry(210,247,15,15);
|
station_heartbeat_box->setGeometry(10,268,15,15);
|
||||||
station_filter_label->setGeometry(230,245,150,20);
|
station_heartbeat_label->setGeometry(30,266,150,20);
|
||||||
|
|
||||||
station_hbcart_edit->setGeometry(65,269,60,19);
|
station_filter_box->setGeometry(210,268,15,15);
|
||||||
station_hbcart_label->setGeometry(10,269,50,19);
|
station_filter_label->setGeometry(230,266,150,20);
|
||||||
station_hbcart_button->setGeometry(140,266,60,26);
|
|
||||||
|
|
||||||
station_hbinterval_spin->setGeometry(275,269,45,19);
|
station_hbcart_edit->setGeometry(65,290,60,19);
|
||||||
station_hbinterval_label->setGeometry(220,269,50,19);
|
station_hbcart_label->setGeometry(10,290,50,19);
|
||||||
station_hbinterval_unit->setGeometry(325,269,100,19);
|
station_hbcart_button->setGeometry(140,287,60,26);
|
||||||
|
|
||||||
station_maint_box->setGeometry(10,296,15,15);
|
station_hbinterval_spin->setGeometry(275,290,45,19);
|
||||||
station_maint_label->setGeometry(30,294,size().width()-40,20);
|
station_hbinterval_label->setGeometry(220,290,50,19);
|
||||||
|
station_hbinterval_unit->setGeometry(325,290,100,19);
|
||||||
|
|
||||||
station_dragdrop_box->setGeometry(10,317,15,15);
|
station_maint_box->setGeometry(10,317,15,15);
|
||||||
station_dragdrop_label->setGeometry(30,314,size().width()-40,20);
|
station_maint_label->setGeometry(30,315,size().width()-40,20);
|
||||||
|
|
||||||
station_panel_enforce_box->setGeometry(25,335,15,15);
|
station_dragdrop_box->setGeometry(10,338,15,15);
|
||||||
station_panel_enforce_label->setGeometry(45,333,size().width()-55,20);
|
station_dragdrop_label->setGeometry(30,335,size().width()-40,20);
|
||||||
|
|
||||||
station_systemservices_groupbox->setGeometry(10,360,size().width()-20,60);
|
station_panel_enforce_box->setGeometry(25,356,15,15);
|
||||||
|
station_panel_enforce_label->setGeometry(45,356,size().width()-55,20);
|
||||||
|
|
||||||
station_http_station_box->setGeometry(145,375,size().width()-165,19);
|
station_systemservices_groupbox->setGeometry(10,381,size().width()-20,60);
|
||||||
station_http_station_label->setGeometry(11,375,130,19);
|
|
||||||
|
|
||||||
station_cae_station_box->setGeometry(145,396,size().width()-165,19);
|
station_http_station_box->setGeometry(145,396,size().width()-165,19);
|
||||||
station_cae_station_label->setGeometry(11,396,130,19);
|
station_http_station_label->setGeometry(11,396,130,19);
|
||||||
|
|
||||||
station_rdlibrary_button->setGeometry(30,434,80,50);
|
station_cae_station_box->setGeometry(145,417,size().width()-165,19);
|
||||||
|
station_cae_station_label->setGeometry(11,417,130,19);
|
||||||
|
|
||||||
station_rdcatch_button->setGeometry(120,434,80,50);
|
station_rdlibrary_button->setGeometry(30,455,80,50);
|
||||||
|
|
||||||
station_rdairplay_button->setGeometry(210,434,80,50);
|
station_rdcatch_button->setGeometry(120,455,80,50);
|
||||||
|
|
||||||
station_rdpanel_button->setGeometry(300,434,80,50);
|
station_rdairplay_button->setGeometry(210,455,80,50);
|
||||||
|
|
||||||
station_rdlogedit_button->setGeometry(30,494,80,50);
|
station_rdpanel_button->setGeometry(300,455,80,50);
|
||||||
|
|
||||||
station_rdcartslots_button->setGeometry(120,494,80,50);
|
station_rdlogedit_button->setGeometry(30,513,80,50);
|
||||||
|
|
||||||
station_dropboxes_button->setGeometry(210,494,80,50);
|
station_rdcartslots_button->setGeometry(120,513,80,50);
|
||||||
|
|
||||||
station_switchers_button->setGeometry(300,494,80,50);
|
station_dropboxes_button->setGeometry(210,513,80,50);
|
||||||
|
|
||||||
station_hostvars_button->setGeometry(30,554,80,50);
|
station_switchers_button->setGeometry(300,513,80,50);
|
||||||
|
|
||||||
station_audioports_button->setGeometry(120,554,80,50);
|
station_hostvars_button->setGeometry(30,575,80,50);
|
||||||
|
|
||||||
station_ttys_button->setGeometry(210,554,80,50);
|
station_audioports_button->setGeometry(120,575,80,50);
|
||||||
|
|
||||||
station_adapters_button->setGeometry(300,554,80,50);
|
station_ttys_button->setGeometry(210,575,80,50);
|
||||||
|
|
||||||
station_jack_button->setGeometry(120,614,80,50);
|
station_adapters_button->setGeometry(300,575,80,50);
|
||||||
|
|
||||||
station_pypad_button->setGeometry(210,614,80,50);
|
station_jack_button->setGeometry(120,635,80,50);
|
||||||
|
|
||||||
|
station_pypad_button->setGeometry(210,635,80,50);
|
||||||
|
|
||||||
station_ok_button->setGeometry(size().width()-180,size().height()-60,80,50);
|
station_ok_button->setGeometry(size().width()-180,size().height()-60,80,50);
|
||||||
station_cancel_button->
|
station_cancel_button->
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
//
|
//
|
||||||
// Edit a Rivendell Workstation
|
// Edit a Rivendell Workstation
|
||||||
//
|
//
|
||||||
// (C) Copyright 2002-2019 Fred Gleason <fredg@paravelsystems.com>
|
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||||
//
|
//
|
||||||
// This program is free software; you can redistribute it and/or modify
|
// This program is free software; you can redistribute it and/or modify
|
||||||
// it under the terms of the GNU General Public License version 2 as
|
// it under the terms of the GNU General Public License version 2 as
|
||||||
@ -92,6 +92,8 @@ class EditStation : public RDDialog
|
|||||||
QLineEdit *station_audio_editor_edit;
|
QLineEdit *station_audio_editor_edit;
|
||||||
QLabel *station_report_editor_label;
|
QLabel *station_report_editor_label;
|
||||||
QLineEdit *station_report_editor_edit;
|
QLineEdit *station_report_editor_edit;
|
||||||
|
QLabel *station_web_browser_label;
|
||||||
|
QLineEdit *station_web_browser_edit;
|
||||||
QLabel *station_timeoffset_label;
|
QLabel *station_timeoffset_label;
|
||||||
QSpinBox *station_timeoffset_box;
|
QSpinBox *station_timeoffset_box;
|
||||||
QLabel *station_startup_cart_label;
|
QLabel *station_startup_cart_label;
|
||||||
|
@ -3924,6 +3924,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -3797,6 +3797,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -3933,6 +3933,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -3175,6 +3175,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -3714,6 +3714,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -3714,6 +3714,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -3785,6 +3785,10 @@ Ports</source>
|
|||||||
Instances</source>
|
Instances</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Web Browser</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>EditSvc</name>
|
<name>EditSvc</name>
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
#include <rdconf.h>
|
#include <rdconf.h>
|
||||||
#include <rddisclookup_factory.h>
|
#include <rddisclookup_factory.h>
|
||||||
#include <rdtempdirectory.h>
|
#include <rdtempdirectory.h>
|
||||||
|
#include <rdtextfile.h>
|
||||||
|
|
||||||
#include "cdripper.h"
|
#include "cdripper.h"
|
||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
@ -40,7 +41,6 @@ CdRipper::CdRipper(QString cutname,RDDiscRecord *rec,RDLibraryConf *conf,
|
|||||||
: RDDialog(parent)
|
: RDDialog(parent)
|
||||||
{
|
{
|
||||||
rip_profile_rip=profile_rip;
|
rip_profile_rip=profile_rip;
|
||||||
// rip_isrc_read=false;
|
|
||||||
rip_conf=conf;
|
rip_conf=conf;
|
||||||
rip_disc_record=rec;
|
rip_disc_record=rec;
|
||||||
rip_track[0]=-1;
|
rip_track[0]=-1;
|
||||||
@ -139,6 +139,17 @@ CdRipper::CdRipper(QString cutname,RDDiscRecord *rec,RDLibraryConf *conf,
|
|||||||
rip_apply_box->setVisible(!rip_disc_lookup->sourceName().isNull());
|
rip_apply_box->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||||
rip_apply_label->setVisible(!rip_disc_lookup->sourceName().isNull());
|
rip_apply_label->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||||
|
|
||||||
|
//
|
||||||
|
// Web Browser Button
|
||||||
|
//
|
||||||
|
rip_browser_button=new QPushButton(this);
|
||||||
|
rip_browser_button->setPixmap(rip_disc_lookup->sourceLogo());
|
||||||
|
rip_browser_button->setDisabled(true);
|
||||||
|
connect(rip_browser_button,SIGNAL(clicked()),this,SLOT(openBrowserData()));
|
||||||
|
if(rip_disc_lookup->sourceLogo().isNull()) {
|
||||||
|
rip_browser_button->hide();
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Track List
|
// Track List
|
||||||
//
|
//
|
||||||
@ -284,7 +295,7 @@ CdRipper::~CdRipper()
|
|||||||
|
|
||||||
QSize CdRipper::sizeHint() const
|
QSize CdRipper::sizeHint() const
|
||||||
{
|
{
|
||||||
return QSize(470,606);
|
return QSize(730,606);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -586,6 +597,7 @@ void CdRipper::lookupDoneData(RDDiscLookup::Result result,const QString &err_msg
|
|||||||
rip_apply_box->setChecked(true);
|
rip_apply_box->setChecked(true);
|
||||||
rip_apply_box->setEnabled(true);
|
rip_apply_box->setEnabled(true);
|
||||||
rip_apply_label->setEnabled(true);
|
rip_apply_label->setEnabled(true);
|
||||||
|
rip_browser_button->setDisabled(rip_disc_lookup->sourceUrl().isNull());
|
||||||
trackSelectionChangedData();
|
trackSelectionChangedData();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -620,6 +632,12 @@ void CdRipper::autotrimCheckData(bool state)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void CdRipper::openBrowserData()
|
||||||
|
{
|
||||||
|
RDWebBrowser(rip_disc_lookup->sourceUrl());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void CdRipper::closeData()
|
void CdRipper::closeData()
|
||||||
{
|
{
|
||||||
if(rip_done) {
|
if(rip_done) {
|
||||||
@ -643,6 +661,7 @@ void CdRipper::resizeEvent(QResizeEvent *e)
|
|||||||
rip_other_edit->setGeometry(65,75,size().width()-125,60);
|
rip_other_edit->setGeometry(65,75,size().width()-125,60);
|
||||||
rip_apply_box->setGeometry(65,140,15,15);
|
rip_apply_box->setGeometry(65,140,15,15);
|
||||||
rip_apply_label->setGeometry(85,140,250,20);
|
rip_apply_label->setGeometry(85,140,250,20);
|
||||||
|
rip_browser_button->setGeometry(size().width()-260,139,200,35);
|
||||||
rip_track_list->setGeometry(10,178,size().width()-110,size().height()-290);
|
rip_track_list->setGeometry(10,178,size().width()-110,size().height()-290);
|
||||||
rip_track_label->setGeometry(10,162,100,14);
|
rip_track_label->setGeometry(10,162,100,14);
|
||||||
rip_bar->setGeometry(10,size().height()-100,size().width()-112,20);
|
rip_bar->setGeometry(10,size().height()-100,size().width()-112,20);
|
||||||
|
@ -21,14 +21,15 @@
|
|||||||
#ifndef CDRIPPER_H
|
#ifndef CDRIPPER_H
|
||||||
#define CDRIPPER_H
|
#define CDRIPPER_H
|
||||||
|
|
||||||
#include <qprogressbar.h>
|
|
||||||
|
|
||||||
#include <qlineedit.h>
|
|
||||||
#include <qdir.h>
|
|
||||||
#include <qspinbox.h>
|
|
||||||
#include <qcheckbox.h>
|
|
||||||
#include <q3textedit.h>
|
#include <q3textedit.h>
|
||||||
|
|
||||||
|
#include <qcheckbox.h>
|
||||||
|
#include <qdir.h>
|
||||||
|
#include <qlineedit.h>
|
||||||
|
#include <qpixmap.h>
|
||||||
|
#include <qprogressbar.h>
|
||||||
|
#include <qspinbox.h>
|
||||||
|
|
||||||
#include <rddialog.h>
|
#include <rddialog.h>
|
||||||
#include <rdcddblookup.h>
|
#include <rdcddblookup.h>
|
||||||
#include <rdcdplayer.h>
|
#include <rdcdplayer.h>
|
||||||
@ -60,6 +61,7 @@ class CdRipper : public RDDialog
|
|||||||
void lookupDoneData(RDDiscLookup::Result,const QString &err_msg);
|
void lookupDoneData(RDDiscLookup::Result,const QString &err_msg);
|
||||||
void normalizeCheckData(bool);
|
void normalizeCheckData(bool);
|
||||||
void autotrimCheckData(bool);
|
void autotrimCheckData(bool);
|
||||||
|
void openBrowserData();
|
||||||
void closeData();
|
void closeData();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@ -91,6 +93,7 @@ class CdRipper : public RDDialog
|
|||||||
Q3TextEdit *rip_other_edit;
|
Q3TextEdit *rip_other_edit;
|
||||||
QCheckBox *rip_apply_box;
|
QCheckBox *rip_apply_box;
|
||||||
QLabel *rip_apply_label;
|
QLabel *rip_apply_label;
|
||||||
|
QPushButton *rip_browser_button;
|
||||||
RDTransportButton *rip_eject_button;
|
RDTransportButton *rip_eject_button;
|
||||||
RDTransportButton *rip_play_button;
|
RDTransportButton *rip_play_button;
|
||||||
RDTransportButton *rip_stop_button;
|
RDTransportButton *rip_stop_button;
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
#include <rdgroup.h>
|
#include <rdgroup.h>
|
||||||
#include <rdlist_groups.h>
|
#include <rdlist_groups.h>
|
||||||
#include <rdtempdirectory.h>
|
#include <rdtempdirectory.h>
|
||||||
|
#include <rdtextfile.h>
|
||||||
|
|
||||||
#include "disk_ripper.h"
|
#include "disk_ripper.h"
|
||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
@ -37,7 +38,6 @@ DiskRipper::DiskRipper(QString *filter,QString *group,QString *schedcode,
|
|||||||
bool profile_rip,QWidget *parent)
|
bool profile_rip,QWidget *parent)
|
||||||
: RDDialog(parent)
|
: RDDialog(parent)
|
||||||
{
|
{
|
||||||
// rip_isrc_read=false;
|
|
||||||
rip_filter_text=filter;
|
rip_filter_text=filter;
|
||||||
rip_group_text=group;
|
rip_group_text=group;
|
||||||
rip_schedcode_text=schedcode;
|
rip_schedcode_text=schedcode;
|
||||||
@ -116,7 +116,7 @@ DiskRipper::DiskRipper(QString *filter,QString *group,QString *schedcode,
|
|||||||
rip_other_edit->setReadOnly(true);
|
rip_other_edit->setReadOnly(true);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Apply FreeDB Check Box
|
// Apply Lookup Data Check Box
|
||||||
//
|
//
|
||||||
rip_apply_box=new QCheckBox(this);
|
rip_apply_box=new QCheckBox(this);
|
||||||
rip_apply_box->setChecked(true);
|
rip_apply_box->setChecked(true);
|
||||||
@ -131,6 +131,17 @@ DiskRipper::DiskRipper(QString *filter,QString *group,QString *schedcode,
|
|||||||
rip_apply_box->setVisible(!rip_disc_lookup->sourceName().isNull());
|
rip_apply_box->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||||
rip_apply_label->setVisible(!rip_disc_lookup->sourceName().isNull());
|
rip_apply_label->setVisible(!rip_disc_lookup->sourceName().isNull());
|
||||||
|
|
||||||
|
//
|
||||||
|
// Web Browser Button
|
||||||
|
//
|
||||||
|
rip_browser_button=new QPushButton(this);
|
||||||
|
rip_browser_button->setPixmap(rip_disc_lookup->sourceLogo());
|
||||||
|
rip_browser_button->setDisabled(true);
|
||||||
|
connect(rip_browser_button,SIGNAL(clicked()),this,SLOT(openBrowserData()));
|
||||||
|
if(rip_disc_lookup->sourceLogo().isNull()) {
|
||||||
|
rip_browser_button->hide();
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Track List
|
// Track List
|
||||||
//
|
//
|
||||||
@ -470,6 +481,7 @@ void DiskRipper::ejectedData()
|
|||||||
rip_apply_box->setChecked(false);
|
rip_apply_box->setChecked(false);
|
||||||
rip_apply_box->setDisabled(true);
|
rip_apply_box->setDisabled(true);
|
||||||
rip_apply_label->setDisabled(true);
|
rip_apply_label->setDisabled(true);
|
||||||
|
rip_browser_button->setDisabled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -804,6 +816,7 @@ void DiskRipper::lookupDoneData(RDDiscLookup::Result result,
|
|||||||
rip_apply_box->setChecked(true);
|
rip_apply_box->setChecked(true);
|
||||||
rip_apply_box->setEnabled(true);
|
rip_apply_box->setEnabled(true);
|
||||||
rip_apply_label->setEnabled(true);
|
rip_apply_label->setEnabled(true);
|
||||||
|
rip_browser_button->setDisabled(rip_disc_lookup->sourceUrl().isNull());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDDiscLookup::NoMatch:
|
case RDDiscLookup::NoMatch:
|
||||||
@ -878,6 +891,12 @@ void DiskRipper::selectionChangedData()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DiskRipper::openBrowserData()
|
||||||
|
{
|
||||||
|
RDWebBrowser(rip_disc_lookup->sourceUrl());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void DiskRipper::doubleClickedData(Q3ListViewItem *item,const QPoint &pt,
|
void DiskRipper::doubleClickedData(Q3ListViewItem *item,const QPoint &pt,
|
||||||
int col)
|
int col)
|
||||||
{
|
{
|
||||||
@ -904,6 +923,7 @@ void DiskRipper::resizeEvent(QResizeEvent *e)
|
|||||||
rip_other_edit->setGeometry(65,53,size().width()-125,60);
|
rip_other_edit->setGeometry(65,53,size().width()-125,60);
|
||||||
rip_apply_box->setGeometry(65,118,15,15);
|
rip_apply_box->setGeometry(65,118,15,15);
|
||||||
rip_apply_label->setGeometry(85,118,250,20);
|
rip_apply_label->setGeometry(85,118,250,20);
|
||||||
|
rip_browser_button->setGeometry(size().width()-260,117,200,35);
|
||||||
rip_track_label->setGeometry(100,140,100,14);
|
rip_track_label->setGeometry(100,140,100,14);
|
||||||
rip_track_list->setGeometry(100,156,size().width()-202,size().height()-342);
|
rip_track_list->setGeometry(100,156,size().width()-202,size().height()-342);
|
||||||
rip_diskbar_label->setGeometry(10,size().height()-174,size().width()-110,20);
|
rip_diskbar_label->setGeometry(10,size().height()-174,size().width()-110,20);
|
||||||
|
@ -61,6 +61,7 @@ class DiskRipper : public RDDialog
|
|||||||
void normalizeCheckData(bool);
|
void normalizeCheckData(bool);
|
||||||
void autotrimCheckData(bool);
|
void autotrimCheckData(bool);
|
||||||
void selectionChangedData();
|
void selectionChangedData();
|
||||||
|
void openBrowserData();
|
||||||
void doubleClickedData(Q3ListViewItem *item,const QPoint &pt,int col);
|
void doubleClickedData(Q3ListViewItem *item,const QPoint &pt,int col);
|
||||||
void closeData();
|
void closeData();
|
||||||
|
|
||||||
@ -88,6 +89,7 @@ class DiskRipper : public RDDialog
|
|||||||
QTextEdit *rip_other_edit;
|
QTextEdit *rip_other_edit;
|
||||||
QCheckBox *rip_apply_box;
|
QCheckBox *rip_apply_box;
|
||||||
QLabel *rip_apply_label;
|
QLabel *rip_apply_label;
|
||||||
|
QPushButton *rip_browser_button;
|
||||||
RDTransportButton *rip_eject_button;
|
RDTransportButton *rip_eject_button;
|
||||||
RDTransportButton *rip_play_button;
|
RDTransportButton *rip_play_button;
|
||||||
RDTransportButton *rip_stop_button;
|
RDTransportButton *rip_stop_button;
|
||||||
@ -125,7 +127,6 @@ class DiskRipper : public RDDialog
|
|||||||
std::vector<RDWaveData *> rip_wave_datas;
|
std::vector<RDWaveData *> rip_wave_datas;
|
||||||
bool rip_aborting;
|
bool rip_aborting;
|
||||||
bool rip_profile_rip;
|
bool rip_profile_rip;
|
||||||
// bool rip_isrc_read;
|
|
||||||
RDWaveDataDialog *rip_wavedata_dialog;
|
RDWaveDataDialog *rip_wavedata_dialog;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -40,6 +40,15 @@ bool MainObject::RevertSchema(int cur_schema,int set_schema,QString *err_msg)
|
|||||||
|
|
||||||
// NEW SCHEMA REVERSIONS GO HERE...
|
// NEW SCHEMA REVERSIONS GO HERE...
|
||||||
|
|
||||||
|
//
|
||||||
|
// Revert 314
|
||||||
|
//
|
||||||
|
if((cur_schema==314)&&(set_schema<cur_schema)) {
|
||||||
|
DropColumn("STATIONS","BROWSER_PATH");
|
||||||
|
|
||||||
|
WriteSchemaVersion(--cur_schema);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Revert 313
|
// Revert 313
|
||||||
//
|
//
|
||||||
|
@ -159,7 +159,7 @@ void MainObject::InitializeSchemaMap() {
|
|||||||
global_version_map["3.0"]=308;
|
global_version_map["3.0"]=308;
|
||||||
global_version_map["3.1"]=310;
|
global_version_map["3.1"]=310;
|
||||||
global_version_map["3.2"]=311;
|
global_version_map["3.2"]=311;
|
||||||
global_version_map["3.3"]=313;
|
global_version_map["3.3"]=314;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -9893,6 +9893,16 @@ bool MainObject::UpdateSchema(int cur_schema,int set_schema,QString *err_msg)
|
|||||||
WriteSchemaVersion(++cur_schema);
|
WriteSchemaVersion(++cur_schema);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if((cur_schema<314)&&(set_schema>cur_schema)) {
|
||||||
|
sql=QString("alter table STATIONS add column ")+
|
||||||
|
"BROWSER_PATH varchar(191) default 'firefox' after REPORT_EDITOR_PATH";
|
||||||
|
if(!RDSqlQuery::apply(sql,err_msg)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
WriteSchemaVersion(++cur_schema);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// NEW SCHEMA UPDATES GO HERE...
|
// NEW SCHEMA UPDATES GO HERE...
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user