2019-03-14 Fred Gleason <fredg@paravelsystems.com>

* Fixed a regression that broke the 'Command Send' ['CC'] RML.
This commit is contained in:
Fred Gleason 2019-03-14 16:53:21 -04:00
parent 3c363ff5f5
commit 9dfdd87c5d
4 changed files with 81 additions and 4 deletions

View File

@ -18529,3 +18529,5 @@
'RDWaveData::talkEndPos()'. 'RDWaveData::talkEndPos()'.
* Renamed the 'RDWaveData::setIntroEndPos()' method to * Renamed the 'RDWaveData::setIntroEndPos()' method to
'RDWaveData::setTalkEndPos()'. 'RDWaveData::setTalkEndPos()'.
2019-03-14 Fred Gleason <fredg@paravelsystems.com>
* Fixed a regression that broke the 'Command Send' ['CC'] RML.

View File

@ -53,6 +53,81 @@ void RDMacro::setCommand(RDMacro::Command cmd)
} }
void RDMacro::setCommand(const QString &str)
{
RDMacro::Command cmd=RDMacro::NN;
cmd=(RDMacro::Command)((str.at(0).latin1()<<8)+str.at(1).latin1());
switch(cmd) {
case RDMacro::AG:
case RDMacro::AL:
case RDMacro::BO:
case RDMacro::CC:
case RDMacro::CE:
case RDMacro::CL:
case RDMacro::CP:
case RDMacro::DL:
case RDMacro::DP:
case RDMacro::DS:
case RDMacro::DX:
case RDMacro::EX:
case RDMacro::FS:
case RDMacro::GE:
case RDMacro::GI:
case RDMacro::GO:
case RDMacro::JC:
case RDMacro::JD:
case RDMacro::LB:
case RDMacro::LC:
case RDMacro::LL:
case RDMacro::LO:
case RDMacro::MB:
case RDMacro::MD:
case RDMacro::MN:
case RDMacro::MT:
case RDMacro::NN:
case RDMacro::PB:
case RDMacro::PC:
case RDMacro::PE:
case RDMacro::PL:
case RDMacro::PM:
case RDMacro::PN:
case RDMacro::PP:
case RDMacro::PS:
case RDMacro::PT:
case RDMacro::PU:
case RDMacro::PW:
case RDMacro::PX:
case RDMacro::RL:
case RDMacro::RS:
case RDMacro::RR:
case RDMacro::RN:
case RDMacro::SN:
case RDMacro::ST:
case RDMacro::SA:
case RDMacro::SC:
case RDMacro::SD:
case RDMacro::SG:
case RDMacro::SI:
case RDMacro::SO:
case RDMacro::SP:
case RDMacro::SR:
case RDMacro::SL:
case RDMacro::SX:
case RDMacro::SY:
case RDMacro::SZ:
case RDMacro::TA:
case RDMacro::UO:
case RDMacro::PD:
setCommand(cmd);
break;
default:
setCommand(RDMacro::NN);
break;
}
}
QHostAddress RDMacro::address() const QHostAddress RDMacro::address() const
{ {
return rml_addr; return rml_addr;

View File

@ -49,6 +49,7 @@ class RDMacro
void setRole(RDMacro::Role role); void setRole(RDMacro::Role role);
RDMacro::Command command() const; RDMacro::Command command() const;
void setCommand(RDMacro::Command cmd); void setCommand(RDMacro::Command cmd);
void setCommand(const QString &str);
QHostAddress address() const; QHostAddress address() const;
void setAddress(QHostAddress addr); void setAddress(QHostAddress addr);
Q_UINT16 port() const; Q_UINT16 port() const;

View File

@ -267,10 +267,9 @@ void RDMacroEvent::exec(int line)
} }
delete station; delete station;
} }
cmd=event_cmds[line]->command(); rml.setCommand(event_cmds[line]->arg(1));
rml.setCommand(cmd); for(int i=2;i<event_cmds[line]->argQuantity();i++) {
for(int i=0;i<rml.argQuantity();i++) { rml.addArg(event_cmds[line]->arg(i));
rml.addArg(event_cmds[line]->arg(i+2));
} }
rml.setRole(RDMacro::Cmd); rml.setRole(RDMacro::Cmd);
rml.setPort(port); rml.setPort(port);