2021-04-26 Fred Gleason <fredg@paravelsystems.com>

* Fixed regressions caused by changes in behavior in the null
	constructor of 'QTime' between Qt4 and Qt5.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason 2021-04-26 11:28:14 -04:00
parent ca51019b4f
commit 65d249a9e1
22 changed files with 80 additions and 77 deletions

View File

@ -21609,3 +21609,6 @@
no groups were included in the search terms. no groups were included in the search terms.
2021-04-26 Fred Gleason <fredg@paravelsystems.com> 2021-04-26 Fred Gleason <fredg@paravelsystems.com>
* Fixed an invalid slot error in 'lib/rdlistsvcs.cpp'. * Fixed an invalid slot error in 'lib/rdlistsvcs.cpp'.
2021-04-26 Fred Gleason <fredg@paravelsystems.com>
* Fixed regressions caused by changes in behavior in the null
constructor of 'QTime' between Qt4 and Qt5.

View File

@ -131,7 +131,7 @@ bool RDReport::ExportBmiEmr(const QString &filename,const QDate &startdate,
RDReport::leftJustify(q->value(1).toString(),40)+ RDReport::leftJustify(q->value(1).toString(),40)+
RDReport::leftJustify(q->value(2).toString(),40)+ RDReport::leftJustify(q->value(2).toString(),40)+
RDReport::leftJustify(q->value(3).toString(),40)+ RDReport::leftJustify(q->value(3).toString(),40)+
QTime().addMSecs(q->value(4).toInt()).toString("hh:mm:ss")+" "+ QTime(0,0,0).addMSecs(q->value(4).toInt()).toString("hh:mm:ss")+" "+
RDReport::rightJustify(q->value(5).toString(),12)+ RDReport::rightJustify(q->value(5).toString(),12)+
usage_code+" \x0d\x0a"; usage_code+" \x0d\x0a";
records++; records++;

View File

@ -740,7 +740,7 @@ QDateTime RDCart::startDateTime() const
if(value.isValid()) { if(value.isValid()) {
return value; return value;
} }
return QDateTime(QDate(),QTime()); return QDateTime();
} }
@ -766,7 +766,7 @@ QDateTime RDCart::endDateTime() const
if(value.isValid()) { if(value.isValid()) {
return value; return value;
} }
return QDateTime(QDate(),QTime()); return QDateTime();
} }

View File

@ -166,7 +166,7 @@ bool RDClock::load()
while(q->next()) { while(q->next()) {
clock_events.push_back(new RDEventLine(clock_station)); clock_events.push_back(new RDEventLine(clock_station));
clock_events.back()->setName(q->value(0).toString()); clock_events.back()->setName(q->value(0).toString());
clock_events.back()->setStartTime(QTime().addMSecs(q->value(1).toInt())); clock_events.back()->setStartTime(QTime(0,0,0).addMSecs(q->value(1).toInt()));
clock_events.back()->setLength(q->value(2).toInt()); clock_events.back()->setLength(q->value(2).toInt());
clock_events.back()->load(); clock_events.back()->load();
} }
@ -215,7 +215,7 @@ bool RDClock::save()
"`CLOCK_NAME`='"+RDEscapeString(clock_name)+"',"+ "`CLOCK_NAME`='"+RDEscapeString(clock_name)+"',"+
"`EVENT_NAME`='"+RDEscapeString(clock_events.at(i)->name())+"',"+ "`EVENT_NAME`='"+RDEscapeString(clock_events.at(i)->name())+"',"+
QString().sprintf("`START_TIME`=%d,", QString().sprintf("`START_TIME`=%d,",
QTime().msecsTo(clock_events.at(i)->startTime()))+ QTime(0,0,0).msecsTo(clock_events.at(i)->startTime()))+
QString().sprintf("`LENGTH`=%d",clock_events.at(i)->length()); QString().sprintf("`LENGTH`=%d",clock_events.at(i)->length());
RDSqlQuery::apply(sql); RDSqlQuery::apply(sql);
} }
@ -283,7 +283,7 @@ bool RDClock::generateLog(int hour,const QString &logname,
while(q->next()) { while(q->next()) {
eventline.setName(q->value(0).toString()); eventline.setName(q->value(0).toString());
eventline.load(); eventline.load();
eventline.setStartTime(QTime().addMSecs(q->value(1).toInt()). eventline.setStartTime(QTime(0,0,0).addMSecs(q->value(1).toInt()).
addSecs(3600*hour)); addSecs(3600*hour));
eventline.setLength(q->value(2).toInt()); eventline.setLength(q->value(2).toInt());
eventline.generateLog(logname,svc_name,errors,clock_name); eventline.generateLog(logname,svc_name,errors,clock_name);

View File

@ -460,7 +460,7 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
if(event_preposition>=0) { if(event_preposition>=0) {
time_type=RDLogLine::Hard; time_type=RDLogLine::Hard;
grace_time=-1; grace_time=-1;
if(QTime().msecsTo(time)>event_preposition) { if(QTime(0,0,0).msecsTo(time)>event_preposition) {
time=time.addMSecs(-event_preposition); time=time.addMSecs(-event_preposition);
} }
else { else {
@ -480,7 +480,7 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
QString().sprintf("`COUNT`=%d,",count)+ QString().sprintf("`COUNT`=%d,",count)+
QString().sprintf("`TYPE`=%d,",i_item->eventType())+ QString().sprintf("`TYPE`=%d,",i_item->eventType())+
QString().sprintf("`SOURCE`=%d,",RDLogLine::Template)+ QString().sprintf("`SOURCE`=%d,",RDLogLine::Template)+
QString().sprintf("`START_TIME`=%d,",QTime().msecsTo(time))+ QString().sprintf("`START_TIME`=%d,",QTime(0,0,0).msecsTo(time))+
QString().sprintf("`GRACE_TIME`=%d,",grace_time)+ QString().sprintf("`GRACE_TIME`=%d,",grace_time)+
QString().sprintf("`CART_NUMBER`=%u,",i_item->cartNumber())+ QString().sprintf("`CART_NUMBER`=%u,",i_item->cartNumber())+
QString().sprintf("`TIME_TYPE`=%d,",time_type)+ QString().sprintf("`TIME_TYPE`=%d,",time_type)+
@ -520,13 +520,13 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
QString().sprintf("`COUNT`=%d,",count)+ QString().sprintf("`COUNT`=%d,",count)+
QString().sprintf("`TYPE`=%d,",link_type)+ QString().sprintf("`TYPE`=%d,",link_type)+
QString().sprintf("`SOURCE`=%d,",RDLogLine::Template)+ QString().sprintf("`SOURCE`=%d,",RDLogLine::Template)+
QString().sprintf("`START_TIME`=%d,",QTime().msecsTo(time))+ QString().sprintf("`START_TIME`=%d,",QTime(0,0,0).msecsTo(time))+
QString().sprintf("`GRACE_TIME`=%d,",grace_time)+ QString().sprintf("`GRACE_TIME`=%d,",grace_time)+
QString().sprintf("`TIME_TYPE`=%d,",time_type)+ QString().sprintf("`TIME_TYPE`=%d,",time_type)+
QString().sprintf("`TRANS_TYPE`=%d,",trans_type)+ QString().sprintf("`TRANS_TYPE`=%d,",trans_type)+
"`LINK_EVENT_NAME`='"+RDEscapeString(event_name)+"',"+ "`LINK_EVENT_NAME`='"+RDEscapeString(event_name)+"',"+
QString().sprintf("`LINK_START_TIME`=%d,", QString().sprintf("`LINK_START_TIME`=%d,",
QTime().msecsTo(event_start_time))+ QTime(0,0,0).msecsTo(event_start_time))+
QString().sprintf("`LINK_LENGTH`=%d,", QString().sprintf("`LINK_LENGTH`=%d,",
event_start_time.msecsTo(end_start_time))+ event_start_time.msecsTo(end_start_time))+
QString().sprintf("`LINK_ID`=%d,",link_id)+ QString().sprintf("`LINK_ID`=%d,",link_id)+
@ -841,7 +841,7 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
QString().sprintf("`COUNT`=%d,",count)+ QString().sprintf("`COUNT`=%d,",count)+
QString().sprintf("`TYPE`=%d,",RDLogLine::Cart)+ QString().sprintf("`TYPE`=%d,",RDLogLine::Cart)+
QString().sprintf("`SOURCE`=%d,",source)+ QString().sprintf("`SOURCE`=%d,",source)+
QString().sprintf("`START_TIME`=%d,",QTime().msecsTo(time))+ QString().sprintf("`START_TIME`=%d,",QTime(0,0,0).msecsTo(time))+
QString().sprintf("`GRACE_TIME`=%d,",grace_time)+ QString().sprintf("`GRACE_TIME`=%d,",grace_time)+
QString().sprintf("`CART_NUMBER`=%u,",schedCL->getItemCartNumber(schedpos))+ QString().sprintf("`CART_NUMBER`=%u,",schedCL->getItemCartNumber(schedpos))+
QString().sprintf("`TIME_TYPE`=%d,",time_type)+ QString().sprintf("`TIME_TYPE`=%d,",time_type)+
@ -894,7 +894,7 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
QString().sprintf("`COUNT`=%d,",count)+ QString().sprintf("`COUNT`=%d,",count)+
QString().sprintf("`TYPE`=%d,",i_item->eventType())+ QString().sprintf("`TYPE`=%d,",i_item->eventType())+
QString().sprintf("`SOURCE`=%d,",RDLogLine::Template)+ QString().sprintf("`SOURCE`=%d,",RDLogLine::Template)+
QString().sprintf("`START_TIME`=%d,",QTime().msecsTo(time))+ QString().sprintf("`START_TIME`=%d,",QTime(0,0,0).msecsTo(time))+
QString().sprintf("`GRACE_TIME`=%d,",grace_time)+ QString().sprintf("`GRACE_TIME`=%d,",grace_time)+
QString().sprintf("`CART_NUMBER`=%u,",i_item->cartNumber())+ QString().sprintf("`CART_NUMBER`=%u,",i_item->cartNumber())+
QString().sprintf("`TIME_TYPE`=%d,",time_type)+ QString().sprintf("`TIME_TYPE`=%d,",time_type)+
@ -1101,7 +1101,7 @@ bool RDEventLine::linkLog(RDLogModel *e,RDLog *log,const QString &svcname,
logline->setGraceTime(grace_time); logline->setGraceTime(grace_time);
logline->setTimeType(time_type); logline->setTimeType(time_type);
logline->setTransType(trans_type); logline->setTransType(trans_type);
logline->setExtStartTime(QTime().addSecs(3600*start_start_hour+ logline->setExtStartTime(QTime(0,0,0).addSecs(3600*start_start_hour+
q->value(1).toInt())); q->value(1).toInt()));
logline->setExtLength(q->value(2).toInt()); logline->setExtLength(q->value(2).toInt());
logline->setExtData(q->value(3).toString().trimmed()); logline->setExtData(q->value(3).toString().trimmed());
@ -1199,17 +1199,17 @@ bool RDEventLine::linkLog(RDLogModel *e,RDLog *log,const QString &svcname,
// Fill Check // Fill Check
// //
if(event_autofill_slop>=0) { if(event_autofill_slop>=0) {
int slop=QTime().msecsTo(end_time)-QTime().msecsTo(time); int slop=QTime(0,0,0).msecsTo(end_time)-QTime(0,0,0).msecsTo(time);
if(abs(slop)>=event_autofill_slop) { if(abs(slop)>=event_autofill_slop) {
if(slop>0) { if(slop>0) {
*errors+=QString(" ")+time.toString("hh:mm:ss")+ *errors+=QString(" ")+time.toString("hh:mm:ss")+
" -- \""+event_name+"\" "+QObject::tr("is underscheduled by")+" "+ " -- \""+event_name+"\" "+QObject::tr("is underscheduled by")+" "+
QTime().addMSecs(slop).toString("hh:mm:ss")+".\n"; QTime(0,0,0).addMSecs(slop).toString("hh:mm:ss")+".\n";
} }
else { else {
*errors+=QString(" ")+time.toString("hh:mm:ss")+ *errors+=QString(" ")+time.toString("hh:mm:ss")+
" -- \""+event_name+"\" "+QObject::tr("is overscheduled by")+" "+ " -- \""+event_name+"\" "+QObject::tr("is overscheduled by")+" "+
QTime().addMSecs(-slop).toString("hh:mm:ss")+".\n"; QTime(0,0,0).addMSecs(-slop).toString("hh:mm:ss")+".\n";
} }
} }
} }

View File

@ -1114,9 +1114,9 @@ int RDLogModel::LoadLines(const QString &logname,int id_offset,bool track_ptrs)
d_max_id=q->value(0).toInt()+id_offset; d_max_id=q->value(0).toInt()+id_offset;
} }
line.setStartTime(RDLogLine::Imported, line.setStartTime(RDLogLine::Imported,
QTime().addMSecs(q->value(2).toInt())); // Start Time QTime(0,0,0).addMSecs(q->value(2).toInt())); // Start Time
line.setStartTime(RDLogLine::Logged, line.setStartTime(RDLogLine::Logged,
QTime().addMSecs(q->value(2).toInt())); QTime(0,0,0).addMSecs(q->value(2).toInt()));
line. line.
setTimeType((RDLogLine::TimeType)q->value(3).toInt()); // Time Type setTimeType((RDLogLine::TimeType)q->value(3).toInt()); // Time Type
line. line.
@ -1128,7 +1128,7 @@ int RDLogModel::LoadLines(const QString &logname,int id_offset,bool track_ptrs)
line.setEventLength(q->value(62).toInt()); // Event Length line.setEventLength(q->value(62).toInt()); // Event Length
line.setSource((RDLogLine::Source)q->value(31).toUInt()); line.setSource((RDLogLine::Source)q->value(31).toUInt());
line.setLinkEventName(q->value(48).toString()); // Link Event Name line.setLinkEventName(q->value(48).toString()); // Link Event Name
line.setLinkStartTime(QTime().addMSecs(q->value(49).toInt())); // Link Start Time line.setLinkStartTime(QTime(0,0,0).addMSecs(q->value(49).toInt())); // Link Start Time
line.setLinkLength(q->value(50).toInt()); // Link Length line.setLinkLength(q->value(50).toInt()); // Link Length
line.setLinkStartSlop(q->value(56).toInt()); // Link Start Slop line.setLinkStartSlop(q->value(56).toInt()); // Link Start Slop
line.setLinkEndSlop(q->value(57).toInt()); // Link End Slop line.setLinkEndSlop(q->value(57).toInt()); // Link End Slop
@ -1410,7 +1410,7 @@ void RDLogModel::InsertLineValues(QString *query, int line)
QString().sprintf("%d,",ll->id())+ QString().sprintf("%d,",ll->id())+
QString().sprintf("%d,",line)+ QString().sprintf("%d,",line)+
QString().sprintf("%u,",ll->cartNumber())+ QString().sprintf("%u,",ll->cartNumber())+
QString().sprintf("%d,",QTime().msecsTo(ll->startTime(RDLogLine::Logged)))+ QString().sprintf("%d,",QTime(0,0,0).msecsTo(ll->startTime(RDLogLine::Logged)))+
QString().sprintf("%d,",ll->timeType())+ QString().sprintf("%d,",ll->timeType())+
QString().sprintf("%d,",ll->transType())+ QString().sprintf("%d,",ll->transType())+
QString().sprintf("%d,",ll->startPoint(RDLogLine::LogPointer))+ QString().sprintf("%d,",ll->startPoint(RDLogLine::LogPointer))+
@ -1434,7 +1434,7 @@ void RDLogModel::InsertLineValues(QString *query, int line)
QString().sprintf("%d,",ll->fadedownGain())+ QString().sprintf("%d,",ll->fadedownGain())+
QString().sprintf("%d,",ll->segueGain())+ QString().sprintf("%d,",ll->segueGain())+
"'"+RDEscapeString(ll->linkEventName())+"',"+ "'"+RDEscapeString(ll->linkEventName())+"',"+
QString().sprintf("%d,",QTime().msecsTo(ll->linkStartTime()))+ QString().sprintf("%d,",QTime(0,0,0).msecsTo(ll->linkStartTime()))+
QString().sprintf("%d,",ll->linkLength())+ QString().sprintf("%d,",ll->linkLength())+
QString().sprintf("%d,",ll->linkId())+ QString().sprintf("%d,",ll->linkId())+
"'"+RDYesNo(ll->linkEmbedded())+"',"+ "'"+RDYesNo(ll->linkEmbedded())+"',"+

View File

@ -2,7 +2,7 @@
// //
// An event timer engine. // An event timer engine.
// //
// (C) Copyright 2002-2004,2016 Fred Gleason <fredg@paravelsystems.com> // (C) Copyright 2002-2021 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 Library General Public License // it under the terms of the GNU Library General Public License
@ -151,7 +151,7 @@ void RDTimeEngine::SetTimer()
engine_timer->start(diff); engine_timer->start(diff);
return; return;
} }
diff=GetNextDiff(QTime(),&engine_pending_id); diff=GetNextDiff(QTime(0,0,0),&engine_pending_id);
if(diff!=86400001) { if(diff!=86400001) {
diff+=(current_time.msecsTo(QTime(23,59,59))+1000); diff+=(current_time.msecsTo(QTime(23,59,59))+1000);
engine_timer->start(diff); engine_timer->start(diff);

View File

@ -379,7 +379,7 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
lib_input_card->setPort(lib_lib->inputPort()); lib_input_card->setPort(lib_lib->inputPort());
lib_output_card->setCard(lib_lib->outputCard()); lib_output_card->setCard(lib_lib->outputCard());
lib_output_card->setPort(lib_lib->outputPort()); lib_output_card->setPort(lib_lib->outputPort());
lib_maxlength_time->setTime(QTime().addMSecs(lib_lib->maxLength())); lib_maxlength_time->setTime(QTime(0,0,0).addMSecs(lib_lib->maxLength()));
lib_vox_spin->setValue(lib_lib->voxThreshold()/100); lib_vox_spin->setValue(lib_lib->voxThreshold()/100);
lib_trim_spin->setValue(lib_lib->trimThreshold()/100); lib_trim_spin->setValue(lib_lib->trimThreshold()/100);
lib_preroll_spin->setValue(lib_lib->tailPreroll()); lib_preroll_spin->setValue(lib_lib->tailPreroll());
@ -511,7 +511,7 @@ void EditRDLibrary::okData()
lib_lib->setInputPort(lib_input_card->port()); lib_lib->setInputPort(lib_input_card->port());
lib_lib->setOutputCard(lib_output_card->card()); lib_lib->setOutputCard(lib_output_card->card());
lib_lib->setOutputPort(lib_output_card->port()); lib_lib->setOutputPort(lib_output_card->port());
lib_lib->setMaxLength(QTime().msecsTo(lib_maxlength_time->time())); lib_lib->setMaxLength(QTime(0,0,0).msecsTo(lib_maxlength_time->time()));
lib_lib->setVoxThreshold(100*lib_vox_spin->value()); lib_lib->setVoxThreshold(100*lib_vox_spin->value());
lib_lib->setTrimThreshold(100*lib_trim_spin->value()); lib_lib->setTrimThreshold(100*lib_trim_spin->value());
lib_lib->setTailPreroll(lib_preroll_spin->value()); lib_lib->setTailPreroll(lib_preroll_spin->value());

View File

@ -318,7 +318,7 @@ EditRDLogedit::EditRDLogedit(RDStation *station,RDStation *cae_station,
lib_input_card->setPort(lib_lib->inputPort()); lib_input_card->setPort(lib_lib->inputPort());
lib_output_card->setCard(lib_lib->outputCard()); lib_output_card->setCard(lib_lib->outputCard());
lib_output_card->setPort(lib_lib->outputPort()); lib_output_card->setPort(lib_lib->outputPort());
lib_maxlength_time->setTime(QTime().addMSecs(lib_lib->maxLength())); lib_maxlength_time->setTime(QTime(0,0,0).addMSecs(lib_lib->maxLength()));
lib_threshold_spin->setValue(lib_lib->trimThreshold()/100); lib_threshold_spin->setValue(lib_lib->trimThreshold()/100);
lib_normalization_spin->setValue(lib_lib->ripperLevel()/100); lib_normalization_spin->setValue(lib_lib->ripperLevel()/100);
lib_waveform_caption_edit->setText(lib_lib->waveformCaption()); lib_waveform_caption_edit->setText(lib_lib->waveformCaption());
@ -437,7 +437,7 @@ void EditRDLogedit::okData()
lib_lib->setInputPort(lib_input_card->port()); lib_lib->setInputPort(lib_input_card->port());
lib_lib->setOutputCard(lib_output_card->card()); lib_lib->setOutputCard(lib_output_card->card());
lib_lib->setOutputPort(lib_output_card->port()); lib_lib->setOutputPort(lib_output_card->port());
lib_lib->setMaxLength(QTime().msecsTo(lib_maxlength_time->time())); lib_lib->setMaxLength(QTime(0,0,0).msecsTo(lib_maxlength_time->time()));
lib_lib->setTrimThreshold(lib_threshold_spin->value()*100); lib_lib->setTrimThreshold(lib_threshold_spin->value()*100);
lib_lib->setRipperLevel(lib_normalization_spin->value()*100); lib_lib->setRipperLevel(lib_normalization_spin->value()*100);
lib_lib->setTailPreroll(lib_preroll_spin->value()); lib_lib->setTailPreroll(lib_preroll_spin->value());

View File

@ -188,7 +188,7 @@ int EditEvent::exec(int line)
default: default:
edit_grace_bgroup->button(2)->setChecked(true); edit_grace_bgroup->button(2)->setChecked(true);
graceClickedData(2); graceClickedData(2);
edit_grace_edit->setTime(QTime().addMSecs(edit_logline->graceTime())); edit_grace_edit->setTime(QTime(0,0,0).addMSecs(edit_logline->graceTime()));
break; break;
} }
edit_transtype_box->setCurrentIndex((int)edit_logline->transType()); edit_transtype_box->setCurrentIndex((int)edit_logline->transType());
@ -381,7 +381,7 @@ void EditEvent::okData()
case 2: case 2:
edit_logline-> edit_logline->
setGraceTime(QTime().msecsTo(edit_grace_edit->time())); setGraceTime(QTime(0,0,0).msecsTo(edit_grace_edit->time()));
break; break;
} }
} }

View File

@ -147,13 +147,13 @@ void PostCounter::UpdateDisplay()
if(post_offset_valid) { if(post_offset_valid) {
if(offset<-POST_COUNTER_MARGIN) { if(offset<-POST_COUNTER_MARGIN) {
state="-"+QTime().addMSecs(-offset).toString(); state="-"+QTime(0,0,0).addMSecs(-offset).toString();
setPalette(post_early_palette); setPalette(post_early_palette);
color=POSTPOINT_EARLY_COLOR; color=POSTPOINT_EARLY_COLOR;
} }
else { else {
if(offset>POST_COUNTER_MARGIN) { if(offset>POST_COUNTER_MARGIN) {
state="+"+QTime().addMSecs(offset).toString(); state="+"+QTime(0,0,0).addMSecs(offset).toString();
setPalette(post_late_palette); setPalette(post_late_palette);
color=POSTPOINT_LATE_COLOR; color=POSTPOINT_LATE_COLOR;
} }

View File

@ -472,7 +472,7 @@ EditRecording::EditRecording(int id,std::vector<int> *adds,QString *filter,
edit_startmatrix_spin->setValue(edit_recording->startMatrix()); edit_startmatrix_spin->setValue(edit_recording->startMatrix());
edit_startline_spin->setValue(edit_recording->startLine()); edit_startline_spin->setValue(edit_recording->startLine());
edit_startoffset_edit-> edit_startoffset_edit->
setTime(QTime().addMSecs(edit_recording->startOffset())); setTime(QTime(0,0,0).addMSecs(edit_recording->startOffset()));
edit_multirec_box-> edit_multirec_box->
setChecked(edit_recording->allowMultipleRecordings()); setChecked(edit_recording->allowMultipleRecordings());
break; break;
@ -482,7 +482,7 @@ EditRecording::EditRecording(int id,std::vector<int> *adds,QString *filter,
switch((RDRecording::EndType)edit_endtype_group->checkedId()) { switch((RDRecording::EndType)edit_endtype_group->checkedId()) {
case RDRecording::LengthEnd: case RDRecording::LengthEnd:
edit_endlength_edit-> edit_endlength_edit->
setTime(QTime().addMSecs(edit_recording->length())); setTime(QTime(0,0,0).addMSecs(edit_recording->length()));
break; break;
case RDRecording::HardEnd: case RDRecording::HardEnd:
@ -499,7 +499,7 @@ EditRecording::EditRecording(int id,std::vector<int> *adds,QString *filter,
break; break;
} }
edit_maxlength_edit-> edit_maxlength_edit->
setTime(QTime().addMSecs(edit_recording->maxGpiRecordingLength())); setTime(QTime(0,0,0).addMSecs(edit_recording->maxGpiRecordingLength()));
endTypeClickedData(edit_endtype_group->checkedId()); endTypeClickedData(edit_endtype_group->checkedId());
edit_cutname=edit_recording->cutName(); edit_cutname=edit_recording->cutName();
@ -865,7 +865,7 @@ void EditRecording::Save()
edit_recording->setStartMatrix(edit_startmatrix_spin->value()); edit_recording->setStartMatrix(edit_startmatrix_spin->value());
edit_recording->setStartLine(edit_startline_spin->value()); edit_recording->setStartLine(edit_startline_spin->value());
edit_recording-> edit_recording->
setStartOffset(QTime().msecsTo(edit_startoffset_edit->time())); setStartOffset(QTime(0,0,0).msecsTo(edit_startoffset_edit->time()));
edit_recording-> edit_recording->
setAllowMultipleRecordings(edit_multirec_box->isChecked()); setAllowMultipleRecordings(edit_multirec_box->isChecked());
break; break;
@ -873,11 +873,11 @@ void EditRecording::Save()
edit_recording-> edit_recording->
setEndType((RDRecording::EndType)edit_endtype_group->checkedId()); setEndType((RDRecording::EndType)edit_endtype_group->checkedId());
edit_recording-> edit_recording->
setMaxGpiRecordingLength(QTime().msecsTo(edit_maxlength_edit->time())); setMaxGpiRecordingLength(QTime(0,0,0).msecsTo(edit_maxlength_edit->time()));
switch((RDRecording::EndType)edit_endtype_group->checkedId()) { switch((RDRecording::EndType)edit_endtype_group->checkedId()) {
case RDRecording::LengthEnd: case RDRecording::LengthEnd:
edit_recording-> edit_recording->
setLength(QTime().msecsTo(edit_endlength_edit->time())); setLength(QTime(0,0,0).msecsTo(edit_endlength_edit->time()));
break; break;
case RDRecording::HardEnd: case RDRecording::HardEnd:

View File

@ -498,7 +498,7 @@ void MainWidget::nextEventData()
if(ShowNextEvents(i,QTime(),&next_time)>0) { if(ShowNextEvents(i,QTime(),&next_time)>0) {
int interval=current_time.msecsTo(QTime(23,59,59))+1000+ int interval=current_time.msecsTo(QTime(23,59,59))+1000+
86400000*extra_day+ 86400000*extra_day+
QTime().msecsTo(next_time); QTime(0,0,0).msecsTo(next_time);
catch_next_timer->start(interval); catch_next_timer->start(interval);
if(catch_scroll) { if(catch_scroll) {
UpdateScroll(); UpdateScroll();
@ -511,7 +511,7 @@ void MainWidget::nextEventData()
if(ShowNextEvents(i,QTime(),&next_time)>0) { if(ShowNextEvents(i,QTime(),&next_time)>0) {
int interval=current_time.msecsTo(QTime(23,59,59))+1000+ int interval=current_time.msecsTo(QTime(23,59,59))+1000+
86400000*extra_day+ 86400000*extra_day+
QTime().msecsTo(next_time); QTime(0,0,0).msecsTo(next_time);
catch_next_timer->start(interval); catch_next_timer->start(interval);
if(catch_scroll) { if(catch_scroll) {
UpdateScroll(); UpdateScroll();
@ -1116,7 +1116,7 @@ void MainWidget::midnightData()
filterChangedData(false); filterChangedData(false);
catch_midnight_timer-> catch_midnight_timer->
start(86400000+QTime::currentTime().addMSecs(catch_time_offset). start(86400000+QTime::currentTime().addMSecs(catch_time_offset).
msecsTo(QTime())); msecsTo(QTime(0,0,0)));
} }

View File

@ -608,7 +608,7 @@ void RecordListModel::updateRow(int row,RDSqlQuery *q)
","+q->value(4).toTime().addMSecs(q->value(31).toInt()). ","+q->value(4).toTime().addMSecs(q->value(31).toInt()).
toString("hh:mm:ss")+","+ toString("hh:mm:ss")+","+
QString().sprintf("%d:%d,",q->value(32).toInt(),q->value(33).toInt())+ QString().sprintf("%d:%d,",q->value(32).toInt(),q->value(33).toInt())+
QTime().addMSecs(q->value(34).toUInt()).toString("mm:ss"); QTime(0,0,0).addMSecs(q->value(34).toUInt()).toString("mm:ss");
break; break;
} }
switch((RDRecording::EndType)q->value(35).toUInt()) { switch((RDRecording::EndType)q->value(35).toUInt()) {

View File

@ -691,8 +691,8 @@ void MainObject::engineData(int id)
case RDRecording::GpiStart: case RDRecording::GpiStart:
catch_events[event].gpiStartTimer()-> catch_events[event].gpiStartTimer()->
start(catch_events[event].startLength()- start(catch_events[event].startLength()-
(QTime().msecsTo(current_time)- (QTime(0,0,0).msecsTo(current_time)-
QTime().msecsTo(catch_events[event].startTime()))); QTime(0,0,0).msecsTo(catch_events[event].startTime())));
catch_record_deck_status[catch_events[event].channel()-1]= catch_record_deck_status[catch_events[event].channel()-1]=
RDDeck::Waiting; RDDeck::Waiting;
catch_record_id[catch_events[event].channel()-1]= catch_record_id[catch_events[event].channel()-1]=

View File

@ -358,7 +358,7 @@ void AudioCart::deleteCutData()
rdcart_cut_model->removeCut(cutnames.at(i)); rdcart_cut_model->removeCut(cutnames.at(i));
} }
rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls-> QTime(0,0,0).msecsTo(rdcart_controls->
forced_length_edit->time())); forced_length_edit->time()));
rdcart_cart->resetRotation(); rdcart_cart->resetRotation();
disk_gauge->update(); disk_gauge->update();
@ -407,7 +407,7 @@ void AudioCart::pasteCutData()
cut_clipboard->copyTo(rda->station(),rda->user(), cut_clipboard->copyTo(rda->station(),rda->user(),
rdcart_cut_model->cutName(row),rda->config()); rdcart_cut_model->cutName(row),rda->config());
rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls-> QTime(0,0,0).msecsTo(rdcart_controls->
forced_length_edit->time())); forced_length_edit->time()));
rdcart_cart->resetRotation(); rdcart_cart->resetRotation();
rdcart_cut_model->refresh(row); rdcart_cut_model->refresh(row);
@ -455,7 +455,7 @@ void AudioCart::editCutData()
if(rdcart_marker_dialog->exec(RDCut::cartNumber(cutname),RDCut::cutNumber(cutname))) { if(rdcart_marker_dialog->exec(RDCut::cartNumber(cutname),RDCut::cutNumber(cutname))) {
emit cartDataChanged(); emit cartDataChanged();
rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls-> QTime(0,0,0).msecsTo(rdcart_controls->
forced_length_edit->time())); forced_length_edit->time()));
QModelIndex index=rdcart_cut_model->refresh(row); QModelIndex index=rdcart_cut_model->refresh(row);
if(index.isValid()) { if(index.isValid()) {
@ -484,7 +484,7 @@ void AudioCart::recordCutData()
disk_gauge->update(); disk_gauge->update();
emit cartDataChanged(); emit cartDataChanged();
rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls-> QTime(0,0,0).msecsTo(rdcart_controls->
forced_length_edit->time())); forced_length_edit->time()));
} }
@ -536,7 +536,7 @@ void AudioCart::ripCutData()
delete rec; delete rec;
disk_gauge->update(); disk_gauge->update();
rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls-> QTime(0,0,0).msecsTo(rdcart_controls->
forced_length_edit->time())); forced_length_edit->time()));
row=rdcart_cut_model->refresh(row); row=rdcart_cut_model->refresh(row);
if(row.isValid()) { if(row.isValid()) {
@ -617,7 +617,7 @@ void AudioCart::importCutData()
delete import; delete import;
disk_gauge->update(); disk_gauge->update();
rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls->enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls-> QTime(0,0,0).msecsTo(rdcart_controls->
forced_length_edit->time())); forced_length_edit->time()));
row=rdcart_cut_model->refresh(row); row=rdcart_cut_model->refresh(row);
if(row.isValid()) { if(row.isValid()) {

View File

@ -584,7 +584,7 @@ EditCart::EditCart(const QList<unsigned> &cartnums,QString *path,bool new_cart,
setText(RDGetTimeLength(rdcart_cart->averageLength())); setText(RDGetTimeLength(rdcart_cart->averageLength()));
} }
rdcart_controls.forced_length_edit-> rdcart_controls.forced_length_edit->
setTime(QTime().addMSecs(rdcart_cart->forcedLength())); setTime(QTime(0,0,0).addMSecs(rdcart_cart->forcedLength()));
rdcart_forced_length_ledit-> rdcart_forced_length_ledit->
setText(rdcart_controls.forced_length_edit->time().toString("hh:mm:ss")); setText(rdcart_controls.forced_length_edit->time().toString("hh:mm:ss"));
rdcart_controls.title_edit->setText(rdcart_cart->title()); rdcart_controls.title_edit->setText(rdcart_cart->title());
@ -792,13 +792,13 @@ void EditCart::okData()
rdcart_cart->calculateAverageLength(&rdcart_length_deviation); rdcart_cart->calculateAverageLength(&rdcart_length_deviation);
rdcart_cart->setLengthDeviation(rdcart_length_deviation); rdcart_cart->setLengthDeviation(rdcart_length_deviation);
rdcart_cart->updateLength(rdcart_controls.enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls.enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls. QTime(0,0,0).msecsTo(rdcart_controls.
forced_length_edit->time())); forced_length_edit->time()));
rdcart_cart-> rdcart_cart->
setAverageLength(RDSetTimeLength(rdcart_average_length_edit->text())); setAverageLength(RDSetTimeLength(rdcart_average_length_edit->text()));
if(rdcart_controls.enforce_length_box->isChecked()) { if(rdcart_controls.enforce_length_box->isChecked()) {
rdcart_cart-> rdcart_cart->
setForcedLength(QTime().msecsTo(rdcart_controls.forced_length_edit->time())); setForcedLength(QTime(0,0,0).msecsTo(rdcart_controls.forced_length_edit->time()));
rdcart_cart->setEnforceLength(true); rdcart_cart->setEnforceLength(true);
} }
else { else {
@ -907,7 +907,7 @@ void EditCart::cancelData()
rdcart_cart->setForcedLength(len); rdcart_cart->setForcedLength(len);
} }
rdcart_cart->updateLength(rdcart_controls.enforce_length_box->isChecked(), rdcart_cart->updateLength(rdcart_controls.enforce_length_box->isChecked(),
QTime().msecsTo(rdcart_controls. QTime(0,0,0).msecsTo(rdcart_controls.
forced_length_edit->time())); forced_length_edit->time()));
} }
done(false); done(false);
@ -920,7 +920,7 @@ void EditCart::forcedLengthData(bool state)
rdcart_controls.forced_length_edit->setEnabled(state); rdcart_controls.forced_length_edit->setEnabled(state);
if(state) { if(state) {
rdcart_controls.forced_length_edit-> rdcart_controls.forced_length_edit->
setTime(QTime(). setTime(QTime(0,0,0).
addMSecs(RDSetTimeLength(rdcart_average_length_edit->text()))); addMSecs(RDSetTimeLength(rdcart_average_length_edit->text())));
} }
} }
@ -955,7 +955,7 @@ void EditCart::closeEvent(QCloseEvent *e)
bool EditCart::ValidateLengths() bool EditCart::ValidateLengths()
{ {
return rdcart_cart->validateLengths(QTime(). return rdcart_cart->validateLengths(QTime(0,0,0).
msecsTo(rdcart_controls.forced_length_edit->time())); msecsTo(rdcart_controls.forced_length_edit->time()));
} }

View File

@ -130,7 +130,7 @@ EditEvent::EditEvent(RDLogLine *line,QWidget *parent)
default: default:
edit_grace_bgroup->button(2)->setChecked(true); edit_grace_bgroup->button(2)->setChecked(true);
edit_grace_timeedit->setTime(QTime().addMSecs(edit_logline->graceTime())); edit_grace_timeedit->setTime(QTime(0,0,0).addMSecs(edit_logline->graceTime()));
graceClickedData(2); graceClickedData(2);
break; break;
} }
@ -216,7 +216,7 @@ void EditEvent::okData()
break; break;
case 2: case 2:
edit_logline->setGraceTime(QTime().msecsTo(edit_grace_timeedit->time())); edit_logline->setGraceTime(QTime(0,0,0).msecsTo(edit_grace_timeedit->time()));
break; break;
} }
} }

View File

@ -624,7 +624,7 @@ void EditClock::UpdateClock(int line)
p->setBrush(edit_clocks_view->palette(). p->setBrush(edit_clocks_view->palette().
color(QPalette::Active,QPalette::Highlight)); color(QPalette::Active,QPalette::Highlight));
p->drawPie(-size_x/2,-size_y/2,size_x,size_y, p->drawPie(-size_x/2,-size_y/2,size_x,size_y,
-QTime().secsTo(edit_clocks_model->eventLine(line)->startTime())*5760/3600, -QTime(0,0,0).secsTo(edit_clocks_model->eventLine(line)->startTime())*5760/3600,
-(edit_clocks_model->eventLine(line)->length()/1000)*5760/3600); -(edit_clocks_model->eventLine(line)->length()/1000)*5760/3600);
} }
else { else {
@ -635,7 +635,7 @@ void EditClock::UpdateClock(int line)
p->setBrush(palette().color(QPalette::Active,QPalette::Base)); p->setBrush(palette().color(QPalette::Active,QPalette::Base));
} }
p->drawPie(-size_x/2,-size_y/2,size_x,size_y, p->drawPie(-size_x/2,-size_y/2,size_x,size_y,
-QTime().secsTo(edit_clocks_model->eventLine(i)->startTime())*5760/3600, -QTime(0,0,0).secsTo(edit_clocks_model->eventLine(i)->startTime())*5760/3600,
-(edit_clocks_model->eventLine(i)->length()/1000)*5760/3600); -(edit_clocks_model->eventLine(i)->length()/1000)*5760/3600);
} }
} }

View File

@ -745,7 +745,7 @@ EditEvent::EditEvent(QString eventname,bool new_event,
} }
else { else {
event_position_box->setChecked(true); event_position_box->setChecked(true);
event_position_edit->setTime(QTime().addMSecs(pos)); event_position_edit->setTime(QTime(0,0,0).addMSecs(pos));
prepositionToggledData(true); prepositionToggledData(true);
} }
@ -772,7 +772,7 @@ EditEvent::EditEvent(QString eventname,bool new_event,
default: default:
event_grace_group->button(2)->setChecked(true); event_grace_group->button(2)->setChecked(true);
event_grace_edit->setTime(QTime().addMSecs(grace)); event_grace_edit->setTime(QTime(0,0,0).addMSecs(grace));
break; break;
} }
@ -784,13 +784,13 @@ EditEvent::EditEvent(QString eventname,bool new_event,
int autofill_slop=event_event->autofillSlop(); int autofill_slop=event_event->autofillSlop();
if(autofill_slop>=0) { if(autofill_slop>=0) {
event_autofill_slop_box->setChecked(true); event_autofill_slop_box->setChecked(true);
event_autofill_slop_edit->setTime(QTime().addMSecs(autofill_slop)); event_autofill_slop_edit->setTime(QTime(0,0,0).addMSecs(autofill_slop));
} }
autofillToggledData(event_autofill_box->isChecked()); autofillToggledData(event_autofill_box->isChecked());
event_timescale_box->setChecked(event_event->useTimescale()); event_timescale_box->setChecked(event_event->useTimescale());
event_source_group->button(event_event->importSource())->setChecked(true); event_source_group->button(event_event->importSource())->setChecked(true);
event_startslop_edit->setTime(QTime().addMSecs(event_event->startSlop())); event_startslop_edit->setTime(QTime(0,0,0).addMSecs(event_event->startSlop()));
event_endslop_edit->setTime(QTime().addMSecs(event_event->endSlop())); event_endslop_edit->setTime(QTime(0,0,0).addMSecs(event_event->endSlop()));
if(event_position_box->isChecked()||event_timetype_check->isChecked()) { if(event_position_box->isChecked()||event_timetype_check->isChecked()) {
event_firsttrans_box->setCurrentIndex(event_event->firstTransType()); event_firsttrans_box->setCurrentIndex(event_event->firstTransType());
} }
@ -1269,7 +1269,7 @@ void EditEvent::Save()
event_event->setRemarks(event_remarks_edit->toPlainText()); event_event->setRemarks(event_remarks_edit->toPlainText());
if(event_position_box->isChecked()) { if(event_position_box->isChecked()) {
event_event->setPreposition(QTime().msecsTo(event_position_edit->time())); event_event->setPreposition(QTime(0,0,0).msecsTo(event_position_edit->time()));
} }
else { else {
event_event->setPreposition(-1); event_event->setPreposition(-1);
@ -1288,7 +1288,7 @@ void EditEvent::Save()
break; break;
default: default:
event_event->setGraceTime(QTime().msecsTo(event_grace_edit->time())); event_event->setGraceTime(QTime(0,0,0).msecsTo(event_grace_edit->time()));
break; break;
} }
} }
@ -1301,7 +1301,7 @@ void EditEvent::Save()
event_event->setUseAutofill(event_autofill_box->isChecked()); event_event->setUseAutofill(event_autofill_box->isChecked());
if(event_autofill_slop_box->isChecked()) { if(event_autofill_slop_box->isChecked()) {
event_event-> event_event->
setAutofillSlop(QTime().msecsTo(event_autofill_slop_edit->time())); setAutofillSlop(QTime(0,0,0).msecsTo(event_autofill_slop_edit->time()));
} }
else { else {
event_event->setAutofillSlop(-1); event_event->setAutofillSlop(-1);
@ -1309,8 +1309,8 @@ void EditEvent::Save()
event_event->setUseTimescale(event_timescale_box->isChecked()); event_event->setUseTimescale(event_timescale_box->isChecked());
event_event-> event_event->
setImportSource((RDEventLine::ImportSource)event_source_group->checkedId()); setImportSource((RDEventLine::ImportSource)event_source_group->checkedId());
event_event->setStartSlop(QTime().msecsTo(event_startslop_edit->time())); event_event->setStartSlop(QTime(0,0,0).msecsTo(event_startslop_edit->time()));
event_event->setEndSlop(QTime().msecsTo(event_endslop_edit->time())); event_event->setEndSlop(QTime(0,0,0).msecsTo(event_endslop_edit->time()));
if(!event_timetype_check->isChecked()) { if(!event_timetype_check->isChecked()) {
event_event-> event_event->
setFirstTransType((RDLogLine::TransType)event_firsttrans_box-> setFirstTransType((RDLogLine::TransType)event_firsttrans_box->
@ -1368,7 +1368,7 @@ QString EditEvent::GetProperties()
int grace_msec=-1; int grace_msec=-1;
if(event_position_box->isChecked()) { if(event_position_box->isChecked()) {
prepos_msec=QTime().msecsTo(event_position_edit->time()); prepos_msec=QTime(0,0,0).msecsTo(event_position_edit->time());
} }
if(event_timetype_check->isChecked()) { if(event_timetype_check->isChecked()) {
time_type=RDLogLine::Hard; time_type=RDLogLine::Hard;
@ -1384,7 +1384,7 @@ QString EditEvent::GetProperties()
break; break;
default: default:
grace_msec=QTime().msecsTo(event_grace_edit->time()); grace_msec=QTime(0,0,0).msecsTo(event_grace_edit->time());
break; break;
} }
} }

View File

@ -2188,8 +2188,8 @@ bool MainObject::UpdateSchema(int cur_schema,int set_schema,QString *err_msg)
while(q->next()) { while(q->next()) {
sql=QString(). sql=QString().
sprintf("update `RECORDINGS` set `MAX_GPI_REC_LENGTH`=%u where `ID`=%u", sprintf("update `RECORDINGS` set `MAX_GPI_REC_LENGTH`=%u where `ID`=%u",
QTime().msecsTo(q->value(2).toTime())+q->value(3).toUInt()- QTime(0,0,0).msecsTo(q->value(2).toTime())+q->value(3).toUInt()-
QTime().msecsTo(q->value(1).toTime()),q->value(0).toUInt()); QTime(0,0,0).msecsTo(q->value(1).toTime()),q->value(0).toUInt());
if(!RDSqlQuery::apply(sql,err_msg)) { if(!RDSqlQuery::apply(sql,err_msg)) {
return false; return false;
} }
@ -10976,7 +10976,7 @@ bool MainObject::ConvertTimeField186(const QString &table,const QString &field,
sql=QString("update `")+table+ sql=QString("update `")+table+
"` set `"+ "` set `"+
field+QString().sprintf("_TEMP`=%d where `ID`=%d", field+QString().sprintf("_TEMP`=%d where `ID`=%d",
QTime().msecsTo(q->value(1).toTime()), QTime(0,0,0).msecsTo(q->value(1).toTime()),
q->value(0).toInt()); q->value(0).toInt());
if(!RDSqlQuery::apply(sql,err_msg)) { if(!RDSqlQuery::apply(sql,err_msg)) {
return false; return false;

View File

@ -331,10 +331,10 @@ void Xport::SaveLog()
XmlExit("Missing "+line+"_START_TIME",400,"logs.cpp",LINE_NUMBER); XmlExit("Missing "+line+"_START_TIME",400,"logs.cpp",LINE_NUMBER);
} }
if(ll->timeType()==RDLogLine::Hard) { if(ll->timeType()==RDLogLine::Hard) {
ll->setStartTime(RDLogLine::Logged,QTime().addMSecs(integer1)); ll->setStartTime(RDLogLine::Logged,QTime(0,0,0).addMSecs(integer1));
} }
else { else {
ll->setStartTime(RDLogLine::Predicted,QTime().addMSecs(integer1)); ll->setStartTime(RDLogLine::Predicted,QTime(0,0,0).addMSecs(integer1));
} }
if(!xport_post->getValue(line+"_GRACE_TIME",&integer1)) { if(!xport_post->getValue(line+"_GRACE_TIME",&integer1)) {
@ -444,7 +444,7 @@ void Xport::SaveLog()
if(!xport_post->getValue(line+"_LINK_START_TIME",&integer1)) { if(!xport_post->getValue(line+"_LINK_START_TIME",&integer1)) {
XmlExit("Missing "+line+"_LINK_START_TIME",400,"logs.cpp",LINE_NUMBER); XmlExit("Missing "+line+"_LINK_START_TIME",400,"logs.cpp",LINE_NUMBER);
} }
ll->setLinkStartTime(QTime().addMSecs(integer1)); ll->setLinkStartTime(QTime(0,0,0).addMSecs(integer1));
if(!xport_post->getValue(line+"_LINK_LENGTH",&integer1)) { if(!xport_post->getValue(line+"_LINK_LENGTH",&integer1)) {
XmlExit("Missing "+line+"_LINK_LENGTH",400,"logs.cpp",LINE_NUMBER); XmlExit("Missing "+line+"_LINK_LENGTH",400,"logs.cpp",LINE_NUMBER);