mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-07-26 17:38:15 +02:00
2022-08-04 Fred Gleason <fredg@paravelsystems.com>
* Added a 'Router' column to the event list in rdcatch(1). Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
cdc9c77139
commit
c142728131
@ -23223,3 +23223,5 @@
|
|||||||
2022-08-04 Fred Gleason <fredg@paravelsystems.com>
|
2022-08-04 Fred Gleason <fredg@paravelsystems.com>
|
||||||
* Added interlock logic to the 'Edit Switcher Event' dialog in
|
* Added interlock logic to the 'Edit Switcher Event' dialog in
|
||||||
rdcatch(1) to prevent creation of events containing null endpoints.
|
rdcatch(1) to prevent creation of events containing null endpoints.
|
||||||
|
2022-08-04 Fred Gleason <fredg@paravelsystems.com>
|
||||||
|
* Added a 'Router' column to the event list in rdcatch(1).
|
||||||
|
@ -48,88 +48,91 @@ RecordListModel::RecordListModel(QObject *parent)
|
|||||||
d_headers.push_back(tr("End")); // 03
|
d_headers.push_back(tr("End")); // 03
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Source")); // 04
|
d_headers.push_back(tr("Router")); // 04
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Destination")); // 05
|
d_headers.push_back(tr("Source")); // 05
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Su")); // 06
|
d_headers.push_back(tr("Destination")); // 06
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Mo")); // 07
|
d_headers.push_back(tr("Su")); // 07
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Tu")); // 08
|
d_headers.push_back(tr("Mo")); // 08
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("We")); // 09
|
d_headers.push_back(tr("Tu")); // 09
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Th")); // 10
|
d_headers.push_back(tr("We")); // 10
|
||||||
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
|
d_headers.push_back(tr("Th")); // 11
|
||||||
d_alignments.push_back(center);
|
d_alignments.push_back(center);
|
||||||
|
|
||||||
d_headers.push_back(tr("Fr")); // 11
|
d_headers.push_back(tr("Fr")); // 12
|
||||||
d_alignments.push_back(center);
|
d_alignments.push_back(center);
|
||||||
|
|
||||||
d_headers.push_back(tr("Sa")); // 12
|
d_headers.push_back(tr("Sa")); // 13
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("RSS Feed")); // 13
|
d_headers.push_back(tr("RSS Feed")); // 14
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Origin")); // 14
|
d_headers.push_back(tr("Origin")); // 15
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("One Shot")); // 15
|
d_headers.push_back(tr("One Shot")); // 16
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Trim Threshold")); // 16
|
d_headers.push_back(tr("Trim Threshold")); // 17
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("StartDate Offset")); // 17
|
d_headers.push_back(tr("StartDate Offset")); // 18
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("EndDate Offset")); // 18
|
d_headers.push_back(tr("EndDate Offset")); // 19
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Format")); // 19
|
d_headers.push_back(tr("Format")); // 20
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Channels")); // 20
|
d_headers.push_back(tr("Channels")); // 21
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Sample Rate")); // 21
|
d_headers.push_back(tr("Sample Rate")); // 22
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Bit Rate")); // 22
|
d_headers.push_back(tr("Bit Rate")); // 23
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Host")); // 23
|
d_headers.push_back(tr("Host")); // 24
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Deck")); // 24
|
d_headers.push_back(tr("Deck")); // 25
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Cut")); // 25
|
d_headers.push_back(tr("Cut")); // 26
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Cart")); // 26
|
d_headers.push_back(tr("Cart")); // 27
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("ID")); // 27
|
d_headers.push_back(tr("ID")); // 28
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Type")); // 28
|
d_headers.push_back(tr("Type")); // 29
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Status")); // 29
|
d_headers.push_back(tr("Status")); // 30
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("Exit Code")); // 30
|
d_headers.push_back(tr("Exit Code")); // 31
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
d_headers.push_back(tr("State")); // 31
|
d_headers.push_back(tr("State")); // 32
|
||||||
d_alignments.push_back(left);
|
d_alignments.push_back(left);
|
||||||
|
|
||||||
updateModel();
|
updateModel();
|
||||||
@ -493,9 +496,29 @@ void RecordListModel::updateModel()
|
|||||||
{
|
{
|
||||||
QList<QVariant> texts;
|
QList<QVariant> texts;
|
||||||
QList<QVariant> icons;
|
QList<QVariant> icons;
|
||||||
|
QString sql;
|
||||||
RDSqlQuery *q=NULL;
|
RDSqlQuery *q=NULL;
|
||||||
QString sql=sqlFields()+
|
|
||||||
|
//
|
||||||
|
// Load Router Table
|
||||||
|
//
|
||||||
|
d_router_names.clear();
|
||||||
|
sql=QString("select ")+
|
||||||
|
"`STATION_NAME`,"+ // 00
|
||||||
|
"`MATRIX`,"+ // 01
|
||||||
|
"`NAME` "+ // 02
|
||||||
|
"from `MATRICES`";
|
||||||
|
q=new RDSqlQuery(sql);
|
||||||
|
while(q->next()) {
|
||||||
|
d_router_names[q->value(0).toString()][q->value(1).toInt()]=
|
||||||
|
q->value(2).toString();
|
||||||
|
}
|
||||||
|
delete q;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Load Model Rows
|
||||||
|
//
|
||||||
|
sql=sqlFields()+
|
||||||
d_filter_sql+
|
d_filter_sql+
|
||||||
"order by `RECORDINGS`.`START_TIME` ";
|
"order by `RECORDINGS`.`START_TIME` ";
|
||||||
beginResetModel();
|
beginResetModel();
|
||||||
@ -545,6 +568,7 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
QString sql;
|
QString sql;
|
||||||
RDSqlQuery *q1=NULL;
|
RDSqlQuery *q1=NULL;
|
||||||
RDCut *cut=NULL;
|
RDCut *cut=NULL;
|
||||||
|
QMap<int,QString> names;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Event Values
|
// Event Values
|
||||||
@ -587,25 +611,25 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
}
|
}
|
||||||
texts[0]=q->value(1); // Description
|
texts[0]=q->value(1); // Description
|
||||||
if(q->value(7).toString()=="Y") { // Sun
|
if(q->value(7).toString()=="Y") { // Sun
|
||||||
texts[6]=tr("Su");
|
texts[7]=tr("Su");
|
||||||
}
|
}
|
||||||
if(q->value(8).toString()=="Y") { // Mon
|
if(q->value(8).toString()=="Y") { // Mon
|
||||||
texts[7]=tr("Mo");
|
texts[8]=tr("Mo");
|
||||||
}
|
}
|
||||||
if(q->value(9).toString()=="Y") { // Tue
|
if(q->value(9).toString()=="Y") { // Tue
|
||||||
texts[8]=tr("Tu");
|
texts[9]=tr("Tu");
|
||||||
}
|
}
|
||||||
if(q->value(10).toString()=="Y") { // Wed
|
if(q->value(10).toString()=="Y") { // Wed
|
||||||
texts[9]=tr("We");
|
texts[10]=tr("We");
|
||||||
}
|
}
|
||||||
if(q->value(11).toString()=="Y") { // Thu
|
if(q->value(11).toString()=="Y") { // Thu
|
||||||
texts[10]=tr("Th");
|
texts[11]=tr("Th");
|
||||||
}
|
}
|
||||||
if(q->value(12).toString()=="Y") { // Fri
|
if(q->value(12).toString()=="Y") { // Fri
|
||||||
texts[11]=tr("Fr");
|
texts[12]=tr("Fr");
|
||||||
}
|
}
|
||||||
if(q->value(13).toString()=="Y") { // Sat
|
if(q->value(13).toString()=="Y") { // Sat
|
||||||
texts[12]=tr("Sa");
|
texts[13]=tr("Sa");
|
||||||
}
|
}
|
||||||
|
|
||||||
switch((RDRecording::Type)q->value(26).toInt()) {
|
switch((RDRecording::Type)q->value(26).toInt()) {
|
||||||
@ -613,27 +637,27 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
case RDRecording::Playout:
|
case RDRecording::Playout:
|
||||||
case RDRecording::Download:
|
case RDRecording::Download:
|
||||||
case RDRecording::Upload:
|
case RDRecording::Upload:
|
||||||
texts[14]=q->value(40).toString()+" - "+q->value(41).toDateTime().
|
texts[15]=q->value(40).toString()+" - "+q->value(41).toDateTime().
|
||||||
toString("M/dd/yyyy hh:mm:ss");
|
toString("M/dd/yyyy hh:mm:ss");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
texts[15]=q->value(29).toString(); // One Shot
|
texts[16]=q->value(29).toString(); // One Shot
|
||||||
texts[16]=QString::asprintf("%d ", // Trim Threshold
|
texts[17]=QString::asprintf("%d ", // Trim Threshold
|
||||||
-q->value(17).toInt())+tr("dB");
|
-q->value(17).toInt())+tr("dB");
|
||||||
texts[17]=q->value(18).toString(); // Startdate Offset
|
texts[18]=q->value(18).toString(); // Startdate Offset
|
||||||
texts[18]=q->value(19).toString(); // Enddate Offset
|
texts[19]=q->value(19).toString(); // Enddate Offset
|
||||||
texts[23]=q->value(3).toString(); // Station
|
texts[24]=q->value(3).toString(); // Station
|
||||||
texts[24]=q->value(24).toString(); // Deck
|
texts[25]=q->value(24).toString(); // Deck
|
||||||
texts[25]=q->value(6).toString(); // Cut Name
|
texts[26]=q->value(6).toString(); // Cut Name
|
||||||
if(q->value(24).toInt()>=0) {
|
if(q->value(24).toInt()>=0) {
|
||||||
texts[26]=q->value(25).toString(); // Macro Cart
|
texts[27]=q->value(25).toString(); // Macro Cart
|
||||||
}
|
}
|
||||||
texts[27]=q->value(0).toString(); // Id
|
texts[28]=q->value(0).toString(); // Id
|
||||||
texts[28]=q->value(26).toString(); // Type
|
texts[29]=q->value(26).toString(); // Type
|
||||||
texts[31]=QString::asprintf("%u",RDDeck::Idle);
|
texts[32]=QString::asprintf("%u",RDDeck::Idle);
|
||||||
|
|
||||||
switch((RDRecording::Type)q->value(26).toInt()) {
|
switch((RDRecording::Type)q->value(26).toInt()) {
|
||||||
case RDRecording::Recording:
|
case RDRecording::Recording:
|
||||||
@ -668,7 +692,8 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
q->value(39).toInt());
|
q->value(39).toInt());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
texts[5]=tr("Cut")+" "+q->value(6).toString();
|
|
||||||
|
texts[6]=tr("Cut")+" "+q->value(6).toString();
|
||||||
sql=QString("select ")+
|
sql=QString("select ")+
|
||||||
"`SWITCH_STATION`,"+ // 00
|
"`SWITCH_STATION`,"+ // 00
|
||||||
"`SWITCH_MATRIX` "+ // 01
|
"`SWITCH_MATRIX` "+ // 01
|
||||||
@ -677,43 +702,43 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
QString::asprintf("(`CHANNEL`=%d)",q->value(24).toInt());
|
QString::asprintf("(`CHANNEL`=%d)",q->value(24).toInt());
|
||||||
q1=new RDSqlQuery(sql);
|
q1=new RDSqlQuery(sql);
|
||||||
if(q1->first()) { // Source
|
if(q1->first()) { // Source
|
||||||
texts[4]=GetSourceName(q1->value(0).toString(),q1->value(1).toInt(),
|
texts[5]=GetSourceName(q1->value(0).toString(),q1->value(1).toInt(),
|
||||||
q->value(14).toInt());
|
q->value(14).toInt());
|
||||||
}
|
}
|
||||||
delete q1;
|
delete q1;
|
||||||
switch((RDSettings::Format)q->value(20).toInt()) { // Format
|
switch((RDSettings::Format)q->value(20).toInt()) { // Format
|
||||||
case RDSettings::Pcm16:
|
case RDSettings::Pcm16:
|
||||||
texts[19]=tr("PCM16");
|
texts[20]=tr("PCM16");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::Pcm24:
|
case RDSettings::Pcm24:
|
||||||
texts[19]=tr("PCM24");
|
texts[20]=tr("PCM24");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::MpegL1:
|
case RDSettings::MpegL1:
|
||||||
texts[19]=tr("MPEG Layer 1");
|
texts[20]=tr("MPEG Layer 1");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::MpegL2:
|
case RDSettings::MpegL2:
|
||||||
case RDSettings::MpegL2Wav:
|
case RDSettings::MpegL2Wav:
|
||||||
texts[19]=tr("MPEG Layer 2");
|
texts[20]=tr("MPEG Layer 2");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::MpegL3:
|
case RDSettings::MpegL3:
|
||||||
texts[19]=tr("MPEG Layer 3");
|
texts[20]=tr("MPEG Layer 3");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::Flac:
|
case RDSettings::Flac:
|
||||||
texts[19]=tr("FLAC");
|
texts[20]=tr("FLAC");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::OggVorbis:
|
case RDSettings::OggVorbis:
|
||||||
texts[19]=tr("OggVorbis");
|
texts[20]=tr("OggVorbis");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
texts[20]=q->value(21).toString(); // Channels
|
texts[21]=q->value(21).toString(); // Channels
|
||||||
texts[21]=q->value(22).toString(); // Sample Rate
|
texts[22]=q->value(22).toString(); // Sample Rate
|
||||||
texts[22]=q->value(23).toString(); // Bit Rate
|
texts[23]=q->value(23).toString(); // Bit Rate
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDRecording::Playout:
|
case RDRecording::Playout:
|
||||||
@ -725,23 +750,25 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
texts[3]=tr("Len")+": "+RDGetTimeLength(cut->length(),false,false);
|
texts[3]=tr("Len")+": "+RDGetTimeLength(cut->length(),false,false);
|
||||||
}
|
}
|
||||||
delete cut;
|
delete cut;
|
||||||
texts[4]=tr("Cut")+" "+q->value(6).toString();
|
texts[5]=tr("Cut")+" "+q->value(6).toString();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDRecording::MacroEvent:
|
case RDRecording::MacroEvent:
|
||||||
texts[1]=q->value(3).toString();
|
texts[1]=q->value(3).toString();
|
||||||
texts[2]=tr("Hard")+": "+q->value(4).toTime().
|
texts[2]=tr("Hard")+": "+q->value(4).toTime().
|
||||||
toString(QString::asprintf("hh:mm:ss"));
|
toString(QString::asprintf("hh:mm:ss"));
|
||||||
texts[4]=tr("Cart")+QString::asprintf(" %06d",q->value(25).toInt());
|
texts[5]=tr("Cart")+QString::asprintf(" %06d",q->value(25).toInt());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDRecording::SwitchEvent:
|
case RDRecording::SwitchEvent:
|
||||||
texts[1]=q->value(3).toString();
|
texts[1]=q->value(3).toString();
|
||||||
texts[2]=tr("Hard")+": "+rda->timeString(q->value(4).toTime());
|
texts[2]=tr("Hard")+": "+rda->timeString(q->value(4).toTime());
|
||||||
texts[4]=GetSourceName(q->value(3).toString(), // Source
|
texts[4]=
|
||||||
|
d_router_names.value(q->value(3).toString()).value(q->value(24).toInt());
|
||||||
|
texts[5]=GetSourceName(q->value(3).toString(), // Source
|
||||||
q->value(24).toInt(),
|
q->value(24).toInt(),
|
||||||
q->value(14).toInt());
|
q->value(14).toInt());
|
||||||
texts[5]=GetDestinationName(q->value(3).toString(), // Dest
|
texts[6]=GetDestinationName(q->value(3).toString(), // Dest
|
||||||
q->value(24).toInt(),
|
q->value(24).toInt(),
|
||||||
q->value(27).toInt());
|
q->value(27).toInt());
|
||||||
break;
|
break;
|
||||||
@ -749,58 +776,58 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
|
|||||||
case RDRecording::Download:
|
case RDRecording::Download:
|
||||||
texts[1]=q->value(3).toString();
|
texts[1]=q->value(3).toString();
|
||||||
texts[2]=tr("Hard")+": "+rda->timeString(q->value(4).toTime());
|
texts[2]=tr("Hard")+": "+rda->timeString(q->value(4).toTime());
|
||||||
texts[4]=q->value(42).toString();
|
texts[5]=q->value(42).toString();
|
||||||
texts[5]=tr("Cut")+" "+q->value(6).toString();
|
texts[6]=tr("Cut")+" "+q->value(6).toString();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDRecording::Upload:
|
case RDRecording::Upload:
|
||||||
texts[1]=q->value(3).toString();
|
texts[1]=q->value(3).toString();
|
||||||
texts[2]=tr("Hard")+": "+rda->timeString(q->value(4).toTime());
|
texts[2]=tr("Hard")+": "+rda->timeString(q->value(4).toTime());
|
||||||
texts[4]=tr("Cut")+" "+q->value(6).toString();
|
texts[5]=tr("Cut")+" "+q->value(6).toString();
|
||||||
texts[5]=q->value(42).toString();
|
texts[6]=q->value(42).toString();
|
||||||
switch((RDSettings::Format)q->value(20).toInt()) { // Format
|
switch((RDSettings::Format)q->value(20).toInt()) { // Format
|
||||||
case RDSettings::Pcm16:
|
case RDSettings::Pcm16:
|
||||||
texts[19]=tr("PCM16");
|
texts[20]=tr("PCM16");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::Pcm24:
|
case RDSettings::Pcm24:
|
||||||
texts[19]=tr("PCM24");
|
texts[20]=tr("PCM24");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::MpegL1:
|
case RDSettings::MpegL1:
|
||||||
texts[19]=tr("MPEG Layer 1");
|
texts[20]=tr("MPEG Layer 1");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::MpegL2:
|
case RDSettings::MpegL2:
|
||||||
case RDSettings::MpegL2Wav:
|
case RDSettings::MpegL2Wav:
|
||||||
texts[19]=tr("MPEG Layer 2");
|
texts[20]=tr("MPEG Layer 2");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::MpegL3:
|
case RDSettings::MpegL3:
|
||||||
texts[19]=tr("MPEG Layer 3");
|
texts[20]=tr("MPEG Layer 3");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::Flac:
|
case RDSettings::Flac:
|
||||||
texts[19]=tr("FLAC");
|
texts[20]=tr("FLAC");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RDSettings::OggVorbis:
|
case RDSettings::OggVorbis:
|
||||||
texts[19]=tr("OggVorbis");
|
texts[20]=tr("OggVorbis");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if(q->value(44).toString().isEmpty()) {
|
if(q->value(44).toString().isEmpty()) {
|
||||||
texts[13]=tr("[none]");
|
texts[14]=tr("[none]");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
texts[13]=q->value(44).toString(); // Feed Key Name
|
texts[14]=q->value(44).toString(); // Feed Key Name
|
||||||
}
|
}
|
||||||
texts[20]=q->value(21).toString(); // Channels
|
texts[22]=q->value(21).toString(); // Channels
|
||||||
texts[21]=q->value(22).toString(); // Sample Rate
|
texts[23]=q->value(22).toString(); // Sample Rate
|
||||||
if(q->value(23).toInt()==0) { // Bit Rate/Quality
|
if(q->value(23).toInt()==0) { // Bit Rate/Quality
|
||||||
texts[22]=QString::asprintf("Qual %d",q->value(43).toInt());
|
texts[23]=QString::asprintf("Qual %d",q->value(43).toInt());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
texts[22]=QString::asprintf("%d kb/sec",q->value(23).toInt()/1000);
|
texts[23]=QString::asprintf("%d kb/sec",q->value(23).toInt()/1000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -96,6 +96,7 @@ class RecordListModel : public QAbstractTableModel
|
|||||||
QList<bool> d_is_nexts;
|
QList<bool> d_is_nexts;
|
||||||
QList<RDDeck::Status> d_statuses;
|
QList<RDDeck::Status> d_statuses;
|
||||||
QList<QList<QVariant> > d_icons;
|
QList<QList<QVariant> > d_icons;
|
||||||
|
QMap<QString,QMap<int,QString> > d_router_names;
|
||||||
QString d_filter_sql;
|
QString d_filter_sql;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user