mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-09-16 16:30:26 +02:00
2021-09-16 Fred Gleason <fredg@paravelsystems.com>
* Added an 'RDAIRPLAY.LOGO_PATH' field to the database. * Incremented the database version to 355. * Added 'RDAirPlayConf::logoPath()' and 'RDAirPlayConf::setLogoPath()' methods. * Added a 'Logo Image' control to the 'Configure RDAirPlay' dialog in rdadmin(1). Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
1bf1d94bfe
commit
db8652b13e
@ -22429,3 +22429,10 @@
|
||||
* Added an 'RDGroups::remove()' static method.
|
||||
2021-09-16 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Added a ' SaveWebgetFilesDirectory=' directive to rd.conf(5).
|
||||
2021-09-16 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Added an 'RDAIRPLAY.LOGO_PATH' field to the database.
|
||||
* Incremented the database version to 355.
|
||||
* Added 'RDAirPlayConf::logoPath()' and
|
||||
'RDAirPlayConf::setLogoPath()' methods.
|
||||
* Added a 'Logo Image' control to the 'Configure RDAirPlay' dialog
|
||||
in rdadmin(1).
|
||||
|
@ -28,6 +28,7 @@ EXIT_CODE int(11) 0=clean, 1=dirty
|
||||
VIRTUAL_EXIT_CODE int(11) 0=clean, 1=dirty
|
||||
EXIT_PASSWORD varchar(48)
|
||||
SKIN_PATH varchar(191)
|
||||
LOGO_PATH varchar(191)
|
||||
SHOW_COUNTERS enum('N','Y')
|
||||
AUDITION_PREROLL int(11)
|
||||
TITLE_TEMPLATE varchar(64)
|
||||
|
@ -183,6 +183,8 @@ install-exec-am:
|
||||
cp rdpanel-512x512.png $(DESTDIR)@prefix@/share/icons/hicolor/512x512/apps/rdpanel.png
|
||||
mkdir -p $(DESTDIR)@prefix@/share/icons/hicolor/128x128/apps
|
||||
cp rdpanel-128x128.png $(DESTDIR)@prefix@/share/icons/hicolor/128x128/apps/rdpanel.png
|
||||
mkdir -p $(DESTDIR)@prefix@/share/pixmaps/rivendell
|
||||
cp rdairplay_logo.png $(DESTDIR)@prefix@/share/pixmaps/rivendell/
|
||||
mkdir -p $(DESTDIR)@prefix@/share/X11/fvwm2/pixmaps
|
||||
cp rivendell-16x16.xpm $(DESTDIR)@prefix@/share/X11/fvwm2/pixmaps/mini.rivendell.xpm
|
||||
cp rivendell-32x32.xpm $(DESTDIR)@prefix@/share/X11/fvwm2/pixmaps/rivendell.xpm
|
||||
@ -268,6 +270,7 @@ uninstall-local:
|
||||
rm -f $(DESTDIR)@prefix@/share/icons/hicolor/128x128/apps/rdpanel-128x128.png
|
||||
rm -f $(DESTDIR)@prefix@/share/icons/hicolor/256x256/apps/rdpanel.png
|
||||
rm -f $(DESTDIR)@prefix@/share/icons/hicolor/512x512/apps/rdpanel.png
|
||||
rm -f $(DESTDIR)@prefix@/share/pixmaps/rivendell/rdairplay_logo.png
|
||||
./update_icons.sh
|
||||
|
||||
EXTRA_DIST = admin.xpm\
|
||||
@ -314,6 +317,7 @@ EXTRA_DIST = admin.xpm\
|
||||
post3.xpm\
|
||||
progressbar.gif\
|
||||
progressbar.xcf\
|
||||
rdairplay_logo.png\
|
||||
record.xpm\
|
||||
record2.xpm\
|
||||
record3.xpm\
|
||||
|
BIN
icons/rdairplay_logo.png
Normal file
BIN
icons/rdairplay_logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.7 KiB |
@ -24,7 +24,7 @@
|
||||
/*
|
||||
* Current Database Version
|
||||
*/
|
||||
#define RD_VERSION_DATABASE 354
|
||||
#define RD_VERSION_DATABASE 355
|
||||
|
||||
|
||||
#endif // DBVERSION_H
|
||||
|
@ -736,6 +736,18 @@ void RDAirPlayConf::setSkinPath(const QString &path) const
|
||||
}
|
||||
|
||||
|
||||
QString RDAirPlayConf::logoPath() const
|
||||
{
|
||||
return RDGetSqlValue(air_tablename,"ID",air_id,"LOGO_PATH").toString();
|
||||
}
|
||||
|
||||
|
||||
void RDAirPlayConf::setLogoPath(const QString &path) const
|
||||
{
|
||||
SetRow("LOGO_PATH",path);
|
||||
}
|
||||
|
||||
|
||||
bool RDAirPlayConf::showCounters() const
|
||||
{
|
||||
return RDBool(RDGetSqlValue(air_tablename,"ID",air_id,"SHOW_COUNTERS").
|
||||
|
@ -138,6 +138,8 @@ class RDAirPlayConf
|
||||
void setExitPassword(const QString &passwd) const;
|
||||
QString skinPath() const;
|
||||
void setSkinPath(const QString &path) const;
|
||||
QString logoPath() const;
|
||||
void setLogoPath(const QString &path) const;
|
||||
bool showCounters() const;
|
||||
void setShowCounters(bool state) const;
|
||||
int auditionPreroll() const;
|
||||
|
@ -809,44 +809,58 @@ EditRDAirPlay::EditRDAirPlay(RDStation *station,RDStation *cae_station,
|
||||
button->setGeometry(740,400,50,25);
|
||||
connect(button,SIGNAL(clicked()),this,SLOT(selectSkinData()));
|
||||
|
||||
//
|
||||
// Logo Path
|
||||
//
|
||||
air_logo_edit=new QLineEdit(this);
|
||||
air_logo_edit->setGeometry(555,433,180,20);
|
||||
label=new QLabel(tr("Logo Image:"),this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(435,433,115,20);
|
||||
label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
button=new QPushButton(tr("Select"),this);
|
||||
button->setFont(subButtonFont());
|
||||
button->setGeometry(740,430,50,25);
|
||||
connect(button,SIGNAL(clicked()),this,SLOT(selectLogoData()));
|
||||
|
||||
//
|
||||
// Title Template
|
||||
//
|
||||
air_title_template_edit=new QLineEdit(this);
|
||||
air_title_template_edit->setGeometry(555,425,180,20);
|
||||
air_title_template_edit->setGeometry(555,455,180,20);
|
||||
label=new QLabel(tr("Title Template:"),this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(430,425,120,20);
|
||||
label->setGeometry(430,455,120,20);
|
||||
label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
|
||||
//
|
||||
// Artist Template
|
||||
//
|
||||
air_artist_template_edit=new QLineEdit(this);
|
||||
air_artist_template_edit->setGeometry(555,447,180,20);
|
||||
air_artist_template_edit->setGeometry(555,477,180,20);
|
||||
label=new QLabel(tr("Artist Template:"),this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(430,447,120,20);
|
||||
label->setGeometry(430,477,120,20);
|
||||
label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
|
||||
//
|
||||
// Outcue Template
|
||||
//
|
||||
air_outcue_template_edit=new QLineEdit(this);
|
||||
air_outcue_template_edit->setGeometry(555,469,180,20);
|
||||
air_outcue_template_edit->setGeometry(555,499,180,20);
|
||||
label=new QLabel(tr("Outcue Template:"),this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(430,469,120,20);
|
||||
label->setGeometry(430,499,120,20);
|
||||
label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
|
||||
//
|
||||
// Description Template
|
||||
//
|
||||
air_description_template_edit=new QLineEdit(this);
|
||||
air_description_template_edit->setGeometry(555,491,180,20);
|
||||
air_description_template_edit->setGeometry(555,521,180,20);
|
||||
label=new QLabel(tr("Description Template:"),this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(425,491,125,20);
|
||||
label->setGeometry(425,521,125,20);
|
||||
label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
|
||||
//
|
||||
@ -854,18 +868,18 @@ EditRDAirPlay::EditRDAirPlay(RDStation *station,RDStation *cae_station,
|
||||
//
|
||||
label=new QLabel(tr("Log Mode Control"),this);
|
||||
label->setFont(sectionLabelFont());
|
||||
label->setGeometry(435,530,200,16);
|
||||
label->setGeometry(435,560,200,16);
|
||||
|
||||
//
|
||||
// Mode Control Style
|
||||
//
|
||||
air_modecontrol_box=new QComboBox(this);
|
||||
air_modecontrol_box->setGeometry(560,550,110,20);
|
||||
air_modecontrol_box->setGeometry(560,580,110,20);
|
||||
connect(air_modecontrol_box,SIGNAL(activated(int)),
|
||||
this,SLOT(modeControlActivatedData(int)));
|
||||
label=new QLabel(tr("Mode Control Style:"),this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(435,550,120,20);
|
||||
label->setGeometry(435,580,120,20);
|
||||
label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
air_modecontrol_box->insertItem(0,tr("Unified"));
|
||||
air_modecontrol_box->insertItem(1,tr("Independent"));
|
||||
@ -875,12 +889,12 @@ EditRDAirPlay::EditRDAirPlay(RDStation *station,RDStation *cae_station,
|
||||
//
|
||||
for(int i=0;i<3;i++) {
|
||||
air_logstartmode_box[i]=new QComboBox(this);
|
||||
air_logstartmode_box[i]->setGeometry(615,572+i*22,110,20);
|
||||
air_logstartmode_box[i]->setGeometry(615,602+i*22,110,20);
|
||||
connect(air_logstartmode_box[i],SIGNAL(activated(int)),
|
||||
this,SLOT(logStartupModeActivatedData(int)));
|
||||
air_logstartmode_label[i]=new QLabel(this);
|
||||
air_logstartmode_label[i]->setFont(subLabelFont());
|
||||
air_logstartmode_label[i]->setGeometry(470,572+i*22,140,20);
|
||||
air_logstartmode_label[i]->setGeometry(470,602+i*22,140,20);
|
||||
air_logstartmode_label[i]->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
air_logstartmode_box[i]->insertItem(0,tr("Previous"));
|
||||
air_logstartmode_box[i]->insertItem(1,tr("LiveAssist"));
|
||||
@ -892,7 +906,7 @@ EditRDAirPlay::EditRDAirPlay(RDStation *station,RDStation *cae_station,
|
||||
air_logstartmode_label[2]->setText(tr("Aux 2 Log Startup Mode:"));
|
||||
|
||||
air_virtual_logstartsel_box=new QComboBox(this);
|
||||
air_virtual_logstartsel_box->setGeometry(435,638,120,20);
|
||||
air_virtual_logstartsel_box->setGeometry(435,668,120,20);
|
||||
connect(air_virtual_logstartsel_box,SIGNAL(activated(int)),
|
||||
this,SLOT(virtualModeActivatedData(int)));
|
||||
for(int i=0;i<RD_RDVAIRPLAY_LOG_QUAN;i++) {
|
||||
@ -902,10 +916,10 @@ EditRDAirPlay::EditRDAirPlay(RDStation *station,RDStation *cae_station,
|
||||
}
|
||||
label=new QLabel(":",this);
|
||||
label->setFont(subLabelFont());
|
||||
label->setGeometry(555,638,5,20);
|
||||
label->setGeometry(555,668,5,20);
|
||||
label->setAlignment(Qt::AlignCenter|Qt::AlignVCenter);
|
||||
air_virtual_logstartmode_box=new QComboBox(this);
|
||||
air_virtual_logstartmode_box->setGeometry(565,638,110,20);
|
||||
air_virtual_logstartmode_box->setGeometry(565,668,110,20);
|
||||
air_virtual_logstartmode_box->insertItem(0,tr("Previous"));
|
||||
air_virtual_logstartmode_box->insertItem(1,tr("LiveAssist"));
|
||||
air_virtual_logstartmode_box->insertItem(2,tr("Automatic"));
|
||||
@ -1024,6 +1038,7 @@ EditRDAirPlay::EditRDAirPlay(RDStation *station,RDStation *cae_station,
|
||||
air_startlog_edit->setText(air_startlogs[air_logmachine]);
|
||||
air_autorestart_box->setChecked(air_autorestarts[air_logmachine]);
|
||||
air_skin_edit->setText(air_conf->skinPath());
|
||||
air_logo_edit->setText(air_conf->logoPath());
|
||||
startModeChangedData(air_startmodes[air_logmachine]);
|
||||
|
||||
for(unsigned i=0;i<RDAirPlayConf::LastChannel;i++) {
|
||||
@ -1040,7 +1055,7 @@ EditRDAirPlay::~EditRDAirPlay()
|
||||
|
||||
QSize EditRDAirPlay::sizeHint() const
|
||||
{
|
||||
return QSize(1010,680);
|
||||
return QSize(1010,716);
|
||||
}
|
||||
|
||||
|
||||
@ -1192,6 +1207,18 @@ void EditRDAirPlay::selectSkinData()
|
||||
}
|
||||
|
||||
|
||||
void EditRDAirPlay::selectLogoData()
|
||||
{
|
||||
QString filename=air_logo_edit->text();
|
||||
filename=QFileDialog::getOpenFileName(this,"RDAdmin - "+
|
||||
tr("Select Image File"),filename,
|
||||
RD_IMAGE_FILE_FILTER);
|
||||
if(!filename.isNull()) {
|
||||
air_logo_edit->setText(filename);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void EditRDAirPlay::modeControlActivatedData(int n)
|
||||
{
|
||||
if(n==0) {
|
||||
@ -1308,6 +1335,7 @@ void EditRDAirPlay::okData()
|
||||
air_conf->setOpMode(i+RD_RDVAIRPLAY_LOG_BASE,air_virtual_opmodes[i]);
|
||||
}
|
||||
air_conf->setSkinPath(air_skin_edit->text());
|
||||
air_conf->setLogoPath(air_logo_edit->text());
|
||||
done(0);
|
||||
}
|
||||
|
||||
|
@ -60,6 +60,7 @@ class EditRDAirPlay : public RDDialog
|
||||
void selectData();
|
||||
// void editHotKeys();
|
||||
void selectSkinData();
|
||||
void selectLogoData();
|
||||
void modeControlActivatedData(int n);
|
||||
void logStartupModeActivatedData(int n);
|
||||
void okData();
|
||||
@ -137,6 +138,7 @@ class EditRDAirPlay : public RDDialog
|
||||
QMap<int,bool> air_autorestarts;
|
||||
QLabel *air_autorestart_label;
|
||||
QLineEdit *air_skin_edit;
|
||||
QLineEdit *air_logo_edit;
|
||||
QLineEdit *air_title_template_edit;
|
||||
QLineEdit *air_artist_template_edit;
|
||||
QLineEdit *air_outcue_template_edit;
|
||||
|
@ -61,13 +61,17 @@ TopStrip::TopStrip(QWidget *parent)
|
||||
//
|
||||
// Logo
|
||||
//
|
||||
QPixmap pix(rda->airplayConf()->logoPath());
|
||||
d_logo=new QLabel(this);
|
||||
d_logo->setAlignment(Qt::AlignCenter);
|
||||
d_logo->setPixmap(pix);
|
||||
/*
|
||||
d_logo->setFont(bannerFont());
|
||||
d_logo->setText(QString::asprintf("User Logo\n(%dx%d)",
|
||||
RD_RDAIRPLAY_LOGO_WIDTH,
|
||||
RD_RDAIRPLAY_LOGO_HEIGHT));
|
||||
d_logo->setStyleSheet("background-color: #99FF99");
|
||||
*/
|
||||
|
||||
setFocusPolicy(Qt::NoFocus);
|
||||
}
|
||||
|
@ -361,6 +361,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_datadir}/icons/hicolor/512x512/apps/rdlogedit.png
|
||||
%{_datadir}/icons/hicolor/512x512/apps/rdlogmanager.png
|
||||
%{_datadir}/icons/hicolor/512x512/apps/rdpanel.png
|
||||
%{_datadir}/pixmaps/rivendell/rdairplay_logo.png
|
||||
%{_datadir}/X11/fvwm2/pixmaps/mini.rivendell.xpm
|
||||
%{_datadir}/X11/fvwm2/pixmaps/rivendell.xpm
|
||||
%{_datadir}/applications/rivendell-rdadmin.desktop
|
||||
|
@ -41,6 +41,15 @@ bool MainObject::RevertSchema(int cur_schema,int set_schema,QString *err_msg)
|
||||
// NEW SCHEMA REVERSIONS GO HERE...
|
||||
|
||||
|
||||
//
|
||||
// Revert 355
|
||||
//
|
||||
if((cur_schema==355)&&(set_schema<cur_schema)) {
|
||||
DropColumn("RDAIRPLAY","LOGO_PATH");
|
||||
|
||||
WriteSchemaVersion(--cur_schema);
|
||||
}
|
||||
|
||||
//
|
||||
// Revert 354
|
||||
//
|
||||
|
@ -160,7 +160,7 @@ void MainObject::InitializeSchemaMap() {
|
||||
global_version_map["3.4"]=317;
|
||||
global_version_map["3.5"]=346;
|
||||
global_version_map["3.6"]=347;
|
||||
global_version_map["4.0"]=354;
|
||||
global_version_map["4.0"]=355;
|
||||
}
|
||||
|
||||
|
||||
|
@ -10949,6 +10949,15 @@ bool MainObject::UpdateSchema(int cur_schema,int set_schema,QString *err_msg)
|
||||
WriteSchemaVersion(++cur_schema);
|
||||
}
|
||||
|
||||
if((cur_schema<355)&&(set_schema>cur_schema)) {
|
||||
sql=QString("alter table `RDAIRPLAY` ")+
|
||||
"add column `LOGO_PATH` varchar(191) default '/usr/share/pixmaps/rivendell/rdairplay_logo.png' after `SKIN_PATH`";
|
||||
if(!RDSqlQuery::apply(sql,err_msg)) {
|
||||
return false;
|
||||
}
|
||||
WriteSchemaVersion(++cur_schema);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// NEW SCHEMA UPDATES GO HERE...
|
||||
|
Loading…
x
Reference in New Issue
Block a user