mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-05-25 16:58:04 +02:00
2019-01-02 Fred Gleason <fredg@paravelsystems.com>
* Added a 'lineNumber' parameter to the 'padUpdate' structure. * Added a 'FIELD_LINE_NUMBER' data value to PyPAD. * Defined the '%z' metadata wildcard to refer to log line number. * Added a 'lineId' parameter to the 'padUpdate' structure. * Added 'FIELD_LINE_ID' data value to PyPAD. * Defined the '%x' metadata wildcard to refer to log line ID.
This commit is contained in:
parent
b3846cd08c
commit
af9a155965
@ -18259,3 +18259,10 @@
|
|||||||
2018-12-20 Fred Gleason <fredg@paravelsystems.com>
|
2018-12-20 Fred Gleason <fredg@paravelsystems.com>
|
||||||
* Added a 'pypad_serial.py' PyPAD script.
|
* Added a 'pypad_serial.py' PyPAD script.
|
||||||
* Removed the 'rlm_serial' RLM.
|
* Removed the 'rlm_serial' RLM.
|
||||||
|
2019-01-02 Fred Gleason <fredg@paravelsystems.com>
|
||||||
|
* Added a 'lineNumber' parameter to the 'padUpdate' structure.
|
||||||
|
* Added a 'FIELD_LINE_NUMBER' data value to PyPAD.
|
||||||
|
* Defined the '%z' metadata wildcard to refer to log line number.
|
||||||
|
* Added a 'lineId' parameter to the 'padUpdate' structure.
|
||||||
|
* Added 'FIELD_LINE_ID' data value to PyPAD.
|
||||||
|
* Defined the '%x' metadata wildcard to refer to log line ID.
|
||||||
|
@ -46,6 +46,8 @@ TYPE_NEXT='next'
|
|||||||
# Field Names
|
# Field Names
|
||||||
#
|
#
|
||||||
FIELD_START_DATETIME='startDateTime'
|
FIELD_START_DATETIME='startDateTime'
|
||||||
|
FIELD_LINE_NUMBER='lineNumber'
|
||||||
|
FIELD_LINE_ID='lineId'
|
||||||
FIELD_CART_NUMBER='cartNumber'
|
FIELD_CART_NUMBER='cartNumber'
|
||||||
FIELD_CART_TYPE='cartType'
|
FIELD_CART_TYPE='cartType'
|
||||||
FIELD_CUT_NUMBER='cutNumber'
|
FIELD_CUT_NUMBER='cutNumber'
|
||||||
@ -393,9 +395,9 @@ class Update(object):
|
|||||||
string=self.__replaceWildcardPair('u','userDefined',string,esc)
|
string=self.__replaceWildcardPair('u','userDefined',string,esc)
|
||||||
#string=self.__replaceWildcardPair('v',sfield,string,esc) # Length, rounded down
|
#string=self.__replaceWildcardPair('v',sfield,string,esc) # Length, rounded down
|
||||||
#string=self.__replaceWildcardPair('w',sfield,string,esc) # Unassigned
|
#string=self.__replaceWildcardPair('w',sfield,string,esc) # Unassigned
|
||||||
#string=self.__replaceWildcardPair('x',sfield,string,esc) # Unassigned
|
string=self.__replaceWildcardPair('x','lineId',string,esc) # Log Line ID
|
||||||
string=self.__replaceWildcardPair('y','year',string,esc)
|
string=self.__replaceWildcardPair('y','year',string,esc)
|
||||||
#string=self.__replaceWildcardPair('z',sfield,string,esc) # Unassigned
|
string=self.__replaceWildcardPair('z','lineNumber',string,esc) # Log Line #
|
||||||
string=string.replace('\\b','\b')
|
string=string.replace('\\b','\b')
|
||||||
string=string.replace('\\f','\f')
|
string=string.replace('\\f','\f')
|
||||||
string=string.replace('\\n','\n')
|
string=string.replace('\\n','\n')
|
||||||
@ -480,6 +482,8 @@ class Update(object):
|
|||||||
PyPAD.FIELD_ISCI - The 'ISCI' field (string)
|
PyPAD.FIELD_ISCI - The 'ISCI' field (string)
|
||||||
PyPAD.FIELD_LABEL - The 'Label' field (string)
|
PyPAD.FIELD_LABEL - The 'Label' field (string)
|
||||||
PyPAD.FIELD_LENGTH - The 'Length' field (integer)
|
PyPAD.FIELD_LENGTH - The 'Length' field (integer)
|
||||||
|
PyPAD.FIELD_LINE_ID - The log line ID (integer)
|
||||||
|
PyPAD.FIELD_LINE_NUMBER - The log line number (integer)
|
||||||
PyPAD.FIELD_OUTCUE - The 'Outcue' field (string)
|
PyPAD.FIELD_OUTCUE - The 'Outcue' field (string)
|
||||||
PyPAD.FIELD_PUBLISHER - The 'Publisher' field (string)
|
PyPAD.FIELD_PUBLISHER - The 'Publisher' field (string)
|
||||||
PyPAD.FIELD_SONG_ID - The 'Song ID' field (string)
|
PyPAD.FIELD_SONG_ID - The 'Song ID' field (string)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# now_and_next.py
|
# now_and_next.py
|
||||||
#
|
#
|
||||||
# Example PyPAD script for Rivendell
|
# Barebones example PyPAD script for Rivendell
|
||||||
#
|
#
|
||||||
# (C) Copyright 2018 Fred Gleason <fredg@paravelsystems.com>
|
# (C) Copyright 2018 Fred Gleason <fredg@paravelsystems.com>
|
||||||
#
|
#
|
||||||
@ -35,15 +35,21 @@ import PyPAD
|
|||||||
# the PAD information is supplied as the single argument.
|
# the PAD information is supplied as the single argument.
|
||||||
#
|
#
|
||||||
def ProcessPad(update):
|
def ProcessPad(update):
|
||||||
print
|
print()
|
||||||
if update.hasPadType(PyPAD.TYPE_NOW):
|
if update.hasPadType(PyPAD.TYPE_NOW):
|
||||||
print("Log %03d NOW: " % update.machine()+update.resolvePadFields("%a - %t",PyPAD.ESCAPE_NONE))
|
msg='%03d:' % update.machine()
|
||||||
|
msg+='%04d ' % update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_LINE_NUMBER)
|
||||||
|
msg+='NOW: '+update.resolvePadFields('%a - %t',PyPAD.ESCAPE_NONE)
|
||||||
|
print(msg)
|
||||||
else:
|
else:
|
||||||
print("Log %03d NOW: [none]" % update.machine())
|
print("%03d:xxxx NOW: [none]" % update.machine())
|
||||||
if update.hasPadType(PyPAD.TYPE_NEXT):
|
if update.hasPadType(PyPAD.TYPE_NEXT):
|
||||||
print("Log %03d NEXT: " % update.machine()+update.resolvePadFields("%A - %T",PyPAD.ESCAPE_NONE))
|
msg='%03d:' % update.machine()
|
||||||
|
msg+='%04d ' % update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_LINE_NUMBER)
|
||||||
|
msg+='NEXT: '+update.resolvePadFields('%A - %T',PyPAD.ESCAPE_NONE)
|
||||||
|
print(msg)
|
||||||
else:
|
else:
|
||||||
print("Log %03d NEXT: [none]" % update.machine())
|
print("%03d:xxxx NEXT: [none]" % update.machine())
|
||||||
|
|
||||||
#
|
#
|
||||||
# Create an instance of 'PyPADReceiver'
|
# Create an instance of 'PyPADReceiver'
|
||||||
|
@ -59,6 +59,8 @@ def ProcessPad(update):
|
|||||||
print(' startDateTime(): '+update.startDateTime(PyPAD.TYPE_NOW).isoformat(' '))
|
print(' startDateTime(): '+update.startDateTime(PyPAD.TYPE_NOW).isoformat(' '))
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
print(' startDateTime(): None')
|
print(' startDateTime(): None')
|
||||||
|
print(' lineNumber(): '+str(update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_LINE_NUMBER))+'/'+update.resolvePadFields('%z',PyPAD.ESCAPE_NONE))
|
||||||
|
print(' lineId(): '+str(update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_LINE_ID))+'/'+update.resolvePadFields('%x',PyPAD.ESCAPE_NONE))
|
||||||
print(' cartType(): '+update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_CART_TYPE))
|
print(' cartType(): '+update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_CART_TYPE))
|
||||||
print(' cartNumber(): %u / ' % update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_CART_NUMBER)+update.resolvePadFields("%n",PyPAD.ESCAPE_NONE))
|
print(' cartNumber(): %u / ' % update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_CART_NUMBER)+update.resolvePadFields("%n",PyPAD.ESCAPE_NONE))
|
||||||
print(' cutNumber(): %u / ' % update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_CUT_NUMBER)+update.resolvePadFields("%j",PyPAD.ESCAPE_NONE))
|
print(' cutNumber(): %u / ' % update.padField(PyPAD.TYPE_NOW,PyPAD.FIELD_CUT_NUMBER)+update.resolvePadFields("%j",PyPAD.ESCAPE_NONE))
|
||||||
@ -96,6 +98,8 @@ def ProcessPad(update):
|
|||||||
print(' startDateTime(): '+update.startDateTime(PyPAD.TYPE_NEXT).isoformat(' '))
|
print(' startDateTime(): '+update.startDateTime(PyPAD.TYPE_NEXT).isoformat(' '))
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
print(' startDateTime(): None')
|
print(' startDateTime(): None')
|
||||||
|
print(' lineNumber(): '+str(update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_LINE_NUMBER))+'/'+update.resolvePadFields('%Z',PyPAD.ESCAPE_NONE))
|
||||||
|
print(' lineId(): '+str(update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_LINE_ID))+'/'+update.resolvePadFields('%X',PyPAD.ESCAPE_NONE))
|
||||||
print(' cartType(): '+update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_CART_TYPE))
|
print(' cartType(): '+update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_CART_TYPE))
|
||||||
print(' cartNumber(): %u / ' % update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_CART_NUMBER)+update.resolvePadFields("%N",PyPAD.ESCAPE_NONE))
|
print(' cartNumber(): %u / ' % update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_CART_NUMBER)+update.resolvePadFields("%N",PyPAD.ESCAPE_NONE))
|
||||||
print(' cutNumber(): %u / ' % update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_CUT_NUMBER)+update.resolvePadFields("%J",PyPAD.ESCAPE_NONE))
|
print(' cutNumber(): %u / ' % update.padField(PyPAD.TYPE_NEXT,PyPAD.FIELD_CUT_NUMBER)+update.resolvePadFields("%J",PyPAD.ESCAPE_NONE))
|
||||||
|
@ -38,9 +38,9 @@
|
|||||||
<row><entry><userinput>%u</userinput></entry><entry><userinput>%U</userinput></entry><entry>User Definied</entry></row>
|
<row><entry><userinput>%u</userinput></entry><entry><userinput>%U</userinput></entry><entry>User Definied</entry></row>
|
||||||
<row><entry><userinput>%v</userinput></entry><entry><userinput>%V</userinput></entry><entry>Event length (seconds, rounded down)</entry></row>
|
<row><entry><userinput>%v</userinput></entry><entry><userinput>%V</userinput></entry><entry>Event length (seconds, rounded down)</entry></row>
|
||||||
<row><entry><userinput>%w</userinput></entry><entry><userinput>%W</userinput></entry><entry>[Unassigned]</entry></row>
|
<row><entry><userinput>%w</userinput></entry><entry><userinput>%W</userinput></entry><entry>[Unassigned]</entry></row>
|
||||||
<row><entry><userinput>%x</userinput></entry><entry><userinput>%X</userinput></entry><entry>[Unassigned]</entry></row>
|
<row><entry><userinput>%x</userinput></entry><entry><userinput>%X</userinput></entry><entry>Log line ID (numeric)</entry></row>
|
||||||
<row><entry><userinput>%y</userinput></entry><entry><userinput>%Y</userinput></entry><entry>Release Year</entry></row>
|
<row><entry><userinput>%y</userinput></entry><entry><userinput>%Y</userinput></entry><entry>Release Year</entry></row>
|
||||||
<row><entry><userinput>%z</userinput></entry><entry><userinput>%Z</userinput></entry><entry>[Unassigned]</entry></row>
|
<row><entry><userinput>%z</userinput></entry><entry><userinput>%Z</userinput></entry><entry>Log line number (numeric)</entry></row>
|
||||||
<row><entry><userinput>\r</userinput></entry><entry><userinput>\r</userinput></entry><entry>Literal Carriage Return (ASCII 13)</entry></row>
|
<row><entry><userinput>\r</userinput></entry><entry><userinput>\r</userinput></entry><entry>Literal Carriage Return (ASCII 13)</entry></row>
|
||||||
<row><entry><userinput>\n</userinput></entry><entry><userinput>\n</userinput></entry><entry>Literal Linefeed (ASCII 10)</entry></row>
|
<row><entry><userinput>\n</userinput></entry><entry><userinput>\n</userinput></entry><entry>Literal Linefeed (ASCII 10)</entry></row>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
@ -3002,7 +3002,8 @@ void RDLogPlay::SendNowNext()
|
|||||||
QDateTime(QDate::currentDate(),logline[0]->startTime(RDLogLine::Actual));
|
QDateTime(QDate::currentDate(),logline[0]->startTime(RDLogLine::Actual));
|
||||||
}
|
}
|
||||||
play_pad_socket->
|
play_pad_socket->
|
||||||
write(GetPadJson("now",logline[0],start_datetime,8,false).toUtf8());
|
write(GetPadJson("now",logline[0],start_datetime,now_line,8,false).
|
||||||
|
toUtf8());
|
||||||
|
|
||||||
//
|
//
|
||||||
// Next
|
// Next
|
||||||
@ -3012,7 +3013,7 @@ void RDLogPlay::SendNowNext()
|
|||||||
next_datetime=start_datetime.addSecs(logline[0]->forcedLength()/1000);
|
next_datetime=start_datetime.addSecs(logline[0]->forcedLength()/1000);
|
||||||
}
|
}
|
||||||
play_pad_socket->write(GetPadJson("next",logline[1],
|
play_pad_socket->write(GetPadJson("next",logline[1],
|
||||||
next_datetime,8,true).toUtf8());
|
next_datetime,nextLine(),8,true).toUtf8());
|
||||||
|
|
||||||
//
|
//
|
||||||
// Commit the update
|
// Commit the update
|
||||||
@ -3031,12 +3032,12 @@ void RDLogPlay::SendNowNext()
|
|||||||
//
|
//
|
||||||
// Premordial integrated interface
|
// Premordial integrated interface
|
||||||
//
|
//
|
||||||
RDResolveNowNext(&cmd,logline,0);
|
RDResolveNowNext(&cmd,logline,now_line,0);
|
||||||
play_nownext_socket->
|
play_nownext_socket->
|
||||||
writeBlock(cmd,cmd.length(),play_nownext_address,play_nownext_port);
|
writeBlock(cmd,cmd.length(),play_nownext_address,play_nownext_port);
|
||||||
|
|
||||||
cmd=play_nownext_rml;
|
cmd=play_nownext_rml;
|
||||||
RDResolveNowNext(&cmd,logline,0);
|
RDResolveNowNext(&cmd,logline,now_line,0);
|
||||||
play_event_player->exec(cmd);
|
play_event_player->exec(cmd);
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -3052,8 +3053,8 @@ void RDLogPlay::SendNowNext()
|
|||||||
|
|
||||||
|
|
||||||
QString RDLogPlay::GetPadJson(const QString &name,RDLogLine *ll,
|
QString RDLogPlay::GetPadJson(const QString &name,RDLogLine *ll,
|
||||||
const QDateTime &start_datetime,int padding,
|
const QDateTime &start_datetime,int line,
|
||||||
bool final) const
|
int padding,bool final) const
|
||||||
{
|
{
|
||||||
QString ret;
|
QString ret;
|
||||||
|
|
||||||
@ -3068,6 +3069,8 @@ QString RDLogPlay::GetPadJson(const QString &name,RDLogLine *ll,
|
|||||||
else {
|
else {
|
||||||
ret+=RDJsonNullField("startDateTime",4+padding);
|
ret+=RDJsonNullField("startDateTime",4+padding);
|
||||||
}
|
}
|
||||||
|
ret+=RDJsonField("lineNumber",line,4+padding);
|
||||||
|
ret+=RDJsonField("lineId",ll->id(),4+padding);
|
||||||
ret+=RDJsonField("cartNumber",ll->cartNumber(),4+padding);
|
ret+=RDJsonField("cartNumber",ll->cartNumber(),4+padding);
|
||||||
ret+=RDJsonField("cartType",RDCart::typeText(ll->cartType()),4+padding);
|
ret+=RDJsonField("cartType",RDCart::typeText(ll->cartType()),4+padding);
|
||||||
if(ll->cartType()==RDCart::Audio) {
|
if(ll->cartType()==RDCart::Audio) {
|
||||||
|
@ -190,7 +190,7 @@ class RDLogPlay : public QObject,public RDLogEvent
|
|||||||
bool ClearBlock(int start_line);
|
bool ClearBlock(int start_line);
|
||||||
void SendNowNext();
|
void SendNowNext();
|
||||||
QString GetPadJson(const QString &name,RDLogLine *ll,
|
QString GetPadJson(const QString &name,RDLogLine *ll,
|
||||||
const QDateTime &start_datetime,int padding,
|
const QDateTime &start_datetime,int line,int padding,
|
||||||
bool final=false) const;
|
bool final=false) const;
|
||||||
void LogTraffic(RDLogLine *logline,RDLogLine::PlaySource src,
|
void LogTraffic(RDLogLine *logline,RDLogLine::PlaySource src,
|
||||||
RDAirPlayConf::TrafficAction action,bool onair_flag) const;
|
RDAirPlayConf::TrafficAction action,bool onair_flag) const;
|
||||||
|
@ -73,7 +73,7 @@ QString RDResolveNowNextEncode(const QString &str,int encoding)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding)
|
void RDResolveNowNext(QString *str,RDLogLine **loglines,int line,int encoding)
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// NOW PLAYING Event
|
// NOW PLAYING Event
|
||||||
@ -104,6 +104,7 @@ void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding)
|
|||||||
str->replace("%o",RDResolveNowNextEncode(loglines[0]->outcue(),encoding));
|
str->replace("%o",RDResolveNowNextEncode(loglines[0]->outcue(),encoding));
|
||||||
str->replace("%i",RDResolveNowNextEncode(loglines[0]->description(),
|
str->replace("%i",RDResolveNowNextEncode(loglines[0]->description(),
|
||||||
encoding));
|
encoding));
|
||||||
|
str->replace("%x",QString().sprintf("%d",loglines[0]->id()));
|
||||||
RDResolveNowNextDateTime(str,"%d(",loglines[0]->startDatetime());
|
RDResolveNowNextDateTime(str,"%d(",loglines[0]->startDatetime());
|
||||||
}
|
}
|
||||||
else { // No NOW PLAYING Event
|
else { // No NOW PLAYING Event
|
||||||
@ -125,6 +126,7 @@ void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding)
|
|||||||
str->replace("%u","");
|
str->replace("%u","");
|
||||||
str->replace("%o","");
|
str->replace("%o","");
|
||||||
str->replace("%i","");
|
str->replace("%i","");
|
||||||
|
str->replace("%z","");
|
||||||
RDResolveNowNextDateTime(str,"%d(",QDateTime());
|
RDResolveNowNextDateTime(str,"%d(",QDateTime());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -156,6 +158,7 @@ void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding)
|
|||||||
str->replace("%O",RDResolveNowNextEncode(loglines[1]->outcue(),encoding));
|
str->replace("%O",RDResolveNowNextEncode(loglines[1]->outcue(),encoding));
|
||||||
str->replace("%I",RDResolveNowNextEncode(loglines[1]->description(),
|
str->replace("%I",RDResolveNowNextEncode(loglines[1]->description(),
|
||||||
encoding));
|
encoding));
|
||||||
|
str->replace("%X",QString().sprintf("%d",loglines[1]->id()));
|
||||||
RDResolveNowNextDateTime(str,"%D(",loglines[1]->startDatetime());
|
RDResolveNowNextDateTime(str,"%D(",loglines[1]->startDatetime());
|
||||||
}
|
}
|
||||||
else { // No NEXT Event
|
else { // No NEXT Event
|
||||||
@ -177,6 +180,7 @@ void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding)
|
|||||||
str->replace("%U","");
|
str->replace("%U","");
|
||||||
str->replace("%O","");
|
str->replace("%O","");
|
||||||
str->replace("%I","");
|
str->replace("%I","");
|
||||||
|
str->replace("%X","");
|
||||||
RDResolveNowNextDateTime(str,"%D(",QDateTime());
|
RDResolveNowNextDateTime(str,"%D(",QDateTime());
|
||||||
}
|
}
|
||||||
str->replace("%%","%");
|
str->replace("%%","%");
|
||||||
@ -185,7 +189,7 @@ void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QString RDResolveNowNext(const QString &pattern,RDLogLine *ll)
|
QString RDResolveNowNext(const QString &pattern,RDLogLine *ll,int line)
|
||||||
{
|
{
|
||||||
QString ret=pattern;
|
QString ret=pattern;
|
||||||
|
|
||||||
|
@ -24,8 +24,8 @@
|
|||||||
#include <rdlog_line.h>
|
#include <rdlog_line.h>
|
||||||
#include "../apis/rlm/rlm.h"
|
#include "../apis/rlm/rlm.h"
|
||||||
|
|
||||||
void RDResolveNowNext(QString *str,RDLogLine **loglines,int encoding);
|
void RDResolveNowNext(QString *str,RDLogLine **loglines,int line,int encoding);
|
||||||
QString RDResolveNowNext(const QString &pattern,RDLogLine *ll);
|
QString RDResolveNowNext(const QString &pattern,RDLogLine *ll,int line);
|
||||||
|
|
||||||
|
|
||||||
#endif // RDNOWNEXT_H
|
#endif // RDNOWNEXT_H
|
||||||
|
@ -436,7 +436,7 @@ const char *RLMResolveNowNextEncoded(void *ptr,const struct rlm_pad *now,
|
|||||||
loglines[1]=new RDLogLine();
|
loglines[1]=new RDLogLine();
|
||||||
RDRLMHost::saveMetadata(now,loglines[0]);
|
RDRLMHost::saveMetadata(now,loglines[0]);
|
||||||
RDRLMHost::saveMetadata(next,loglines[1]);
|
RDRLMHost::saveMetadata(next,loglines[1]);
|
||||||
RDResolveNowNext(&str,loglines,encoding);
|
RDResolveNowNext(&str,loglines,0,encoding);
|
||||||
strncpy(host->plugin_value_string,str,1024);
|
strncpy(host->plugin_value_string,str,1024);
|
||||||
delete loglines[1];
|
delete loglines[1];
|
||||||
delete loglines[0];
|
delete loglines[0];
|
||||||
|
@ -352,7 +352,7 @@ void RDSlotBox::setCart(RDLogLine *logline)
|
|||||||
(!line_logline->originDateTime().isValid())) {
|
(!line_logline->originDateTime().isValid())) {
|
||||||
line_title_label->
|
line_title_label->
|
||||||
setText(RDResolveNowNext(line_airplay_conf->titleTemplate(),
|
setText(RDResolveNowNext(line_airplay_conf->titleTemplate(),
|
||||||
logline));
|
logline,log_id+1));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
line_title_label->setText(line_logline->title()+" -- "+
|
line_title_label->setText(line_logline->title()+" -- "+
|
||||||
@ -362,10 +362,10 @@ void RDSlotBox::setCart(RDLogLine *logline)
|
|||||||
}
|
}
|
||||||
line_description_label->
|
line_description_label->
|
||||||
setText(RDResolveNowNext(line_airplay_conf->descriptionTemplate(),
|
setText(RDResolveNowNext(line_airplay_conf->descriptionTemplate(),
|
||||||
logline));
|
logline,log_id+1));
|
||||||
line_artist_label->
|
line_artist_label->
|
||||||
setText(RDResolveNowNext(line_airplay_conf->artistTemplate(),
|
setText(RDResolveNowNext(line_airplay_conf->artistTemplate(),
|
||||||
logline));
|
logline,log_id+1));
|
||||||
line_up_label->
|
line_up_label->
|
||||||
setText(RDGetTimeLength(line_logline->playPosition(),true,true));
|
setText(RDGetTimeLength(line_logline->playPosition(),true,true));
|
||||||
line_down_label->
|
line_down_label->
|
||||||
@ -378,7 +378,7 @@ void RDSlotBox::setCart(RDLogLine *logline)
|
|||||||
setText(QString().sprintf("%03u",logline->cutNumber()));
|
setText(QString().sprintf("%03u",logline->cutNumber()));
|
||||||
line_outcue_label->
|
line_outcue_label->
|
||||||
setText(RDResolveNowNext(line_airplay_conf->outcueTemplate(),
|
setText(RDResolveNowNext(line_airplay_conf->outcueTemplate(),
|
||||||
logline));
|
logline,log_id+1));
|
||||||
line_position_bar->show();
|
line_position_bar->show();
|
||||||
line_up_label->show();
|
line_up_label->show();
|
||||||
line_down_label->show();
|
line_down_label->show();
|
||||||
|
@ -526,7 +526,7 @@ void LogLineBox::setEvent(int line,RDLogLine::TransType next_type,
|
|||||||
line_logline->originUser().isEmpty()||
|
line_logline->originUser().isEmpty()||
|
||||||
(!line_logline->originDateTime().isValid())) {
|
(!line_logline->originDateTime().isValid())) {
|
||||||
line_title_label->
|
line_title_label->
|
||||||
setText(RDResolveNowNext(line_title_template,line_logline));
|
setText(RDResolveNowNext(line_title_template,line_logline,line));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
line_title_label->setText(line_logline->title()+" -- "+
|
line_title_label->setText(line_logline->title()+" -- "+
|
||||||
@ -535,9 +535,10 @@ void LogLineBox::setEvent(int line,RDLogLine::TransType next_type,
|
|||||||
toString("M/d hh:mm"));
|
toString("M/d hh:mm"));
|
||||||
}
|
}
|
||||||
line_description_label->
|
line_description_label->
|
||||||
setText(RDResolveNowNext(line_description_template,line_logline));
|
setText(RDResolveNowNext(line_description_template,line_logline,
|
||||||
|
line));
|
||||||
line_artist_label->
|
line_artist_label->
|
||||||
setText(RDResolveNowNext(line_artist_template,line_logline));
|
setText(RDResolveNowNext(line_artist_template,line_logline,line));
|
||||||
line_up_label->
|
line_up_label->
|
||||||
setText(RDGetTimeLength(line_logline->playPosition(),true,true));
|
setText(RDGetTimeLength(line_logline->playPosition(),true,true));
|
||||||
line_down_label->
|
line_down_label->
|
||||||
@ -549,7 +550,7 @@ void LogLineBox::setEvent(int line,RDLogLine::TransType next_type,
|
|||||||
line_cut_label->
|
line_cut_label->
|
||||||
setText(QString().sprintf("%03u",logline->cutNumber()));
|
setText(QString().sprintf("%03u",logline->cutNumber()));
|
||||||
line_outcue_label->
|
line_outcue_label->
|
||||||
setText(RDResolveNowNext(line_outcue_template,line_logline));
|
setText(RDResolveNowNext(line_outcue_template,line_logline,line));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setBackgroundColor(QColor(LOGLINEBOX_MISSING_COLOR));
|
setBackgroundColor(QColor(LOGLINEBOX_MISSING_COLOR));
|
||||||
@ -664,13 +665,13 @@ void LogLineBox::setEvent(int line,RDLogLine::TransType next_type,
|
|||||||
false,false));
|
false,false));
|
||||||
|
|
||||||
line_title_label->
|
line_title_label->
|
||||||
setText(RDResolveNowNext(line_title_template,line_logline));
|
setText(RDResolveNowNext(line_title_template,line_logline,line));
|
||||||
line_description_label->
|
line_description_label->
|
||||||
setText(RDResolveNowNext(line_description_template,line_logline));
|
setText(RDResolveNowNext(line_description_template,line_logline,line));
|
||||||
line_artist_label->
|
line_artist_label->
|
||||||
setText(RDResolveNowNext(line_artist_template,line_logline));
|
setText(RDResolveNowNext(line_artist_template,line_logline,line));
|
||||||
line_outcue_label->
|
line_outcue_label->
|
||||||
setText(RDResolveNowNext(line_outcue_template,line_logline));
|
setText(RDResolveNowNext(line_outcue_template,line_logline,line));
|
||||||
delete cart;
|
delete cart;
|
||||||
delete cut;
|
delete cut;
|
||||||
setMode(line_mode);
|
setMode(line_mode);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user