mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-24 11:12:27 -04:00
CW keyer keyboard input: REST API updates. Make sure that in iambic mode complete dots and dashes are generated
This commit is contained in:
parent
11eef9f02e
commit
2c72e885ec
@ -648,22 +648,7 @@ int AMMod::webapiSettingsPutPatch(
|
|||||||
{
|
{
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getAmModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getAmModSettings()->getCwKeyer();
|
||||||
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
|
m_cwKeyer.webapiSettingsPutPatch(channelSettingsKeys, cwKeyerSettings, apiCwKeyerSettings);
|
||||||
if (channelSettingsKeys.contains("cwKeyer.loop")) {
|
|
||||||
cwKeyerSettings.m_loop = apiCwKeyerSettings->getLoop() != 0;
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.mode")) {
|
|
||||||
cwKeyerSettings.m_mode = (CWKeyerSettings::CWMode) apiCwKeyerSettings->getMode();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.text")) {
|
|
||||||
cwKeyerSettings.m_text = *apiCwKeyerSettings->getText();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.sampleRate")) {
|
|
||||||
cwKeyerSettings.m_sampleRate = apiCwKeyerSettings->getSampleRate();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.wpm")) {
|
|
||||||
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getWpm();
|
|
||||||
}
|
|
||||||
|
|
||||||
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
||||||
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
||||||
@ -732,17 +717,7 @@ void AMMod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& respons
|
|||||||
|
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getAmModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getAmModSettings()->getCwKeyer();
|
||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode((int) cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
|
|
||||||
if (apiCwKeyerSettings->getText()) {
|
|
||||||
*apiCwKeyerSettings->getText() = cwKeyerSettings.m_text;
|
|
||||||
} else {
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
}
|
|
||||||
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
if (response.getAmModSettings()->getAudioDeviceName()) {
|
if (response.getAmModSettings()->getAudioDeviceName()) {
|
||||||
*response.getAmModSettings()->getAudioDeviceName() = settings.m_audioDeviceName;
|
*response.getAmModSettings()->getAudioDeviceName() = settings.m_audioDeviceName;
|
||||||
@ -821,11 +796,7 @@ void AMMod::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, const
|
|||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
swgAMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgAMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgAMModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgAMModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
@ -857,11 +828,7 @@ void AMMod::webapiReverseSendCWSettings(const CWKeyerSettings& cwKeyerSettings)
|
|||||||
|
|
||||||
swgAMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgAMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgAMModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgAMModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
.arg(m_settings.m_reverseAPIAddress)
|
.arg(m_settings.m_reverseAPIAddress)
|
||||||
|
@ -913,22 +913,7 @@ int FreeDVMod::webapiSettingsPutPatch(
|
|||||||
{
|
{
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getFreeDvModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getFreeDvModSettings()->getCwKeyer();
|
||||||
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
|
m_cwKeyer.webapiSettingsPutPatch(channelSettingsKeys, cwKeyerSettings, apiCwKeyerSettings);
|
||||||
if (channelSettingsKeys.contains("cwKeyer.loop")) {
|
|
||||||
cwKeyerSettings.m_loop = apiCwKeyerSettings->getLoop() != 0;
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.mode")) {
|
|
||||||
cwKeyerSettings.m_mode = (CWKeyerSettings::CWMode) apiCwKeyerSettings->getMode();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.text")) {
|
|
||||||
cwKeyerSettings.m_text = *apiCwKeyerSettings->getText();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.sampleRate")) {
|
|
||||||
cwKeyerSettings.m_sampleRate = apiCwKeyerSettings->getSampleRate();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.wpm")) {
|
|
||||||
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getWpm();
|
|
||||||
}
|
|
||||||
|
|
||||||
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
||||||
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
||||||
@ -1004,17 +989,7 @@ void FreeDVMod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& res
|
|||||||
|
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getFreeDvModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getFreeDvModSettings()->getCwKeyer();
|
||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode((int) cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
|
|
||||||
if (apiCwKeyerSettings->getText()) {
|
|
||||||
*apiCwKeyerSettings->getText() = cwKeyerSettings.m_text;
|
|
||||||
} else {
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
}
|
|
||||||
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
response.getFreeDvModSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
response.getFreeDvModSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||||
|
|
||||||
@ -1090,11 +1065,7 @@ void FreeDVMod::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, c
|
|||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
swgFreeDVModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgFreeDVModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgFreeDVModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgFreeDVModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
@ -1126,11 +1097,7 @@ void FreeDVMod::webapiReverseSendCWSettings(const CWKeyerSettings& cwKeyerSettin
|
|||||||
|
|
||||||
swgFreeDVModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgFreeDVModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgFreeDVModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgFreeDVModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
.arg(m_settings.m_reverseAPIAddress)
|
.arg(m_settings.m_reverseAPIAddress)
|
||||||
|
@ -704,22 +704,7 @@ int NFMMod::webapiSettingsPutPatch(
|
|||||||
{
|
{
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getNfmModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getNfmModSettings()->getCwKeyer();
|
||||||
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
|
m_cwKeyer.webapiSettingsPutPatch(channelSettingsKeys, cwKeyerSettings, apiCwKeyerSettings);
|
||||||
if (channelSettingsKeys.contains("cwKeyer.loop")) {
|
|
||||||
cwKeyerSettings.m_loop = apiCwKeyerSettings->getLoop() != 0;
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.mode")) {
|
|
||||||
cwKeyerSettings.m_mode = (CWKeyerSettings::CWMode) apiCwKeyerSettings->getMode();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.text")) {
|
|
||||||
cwKeyerSettings.m_text = *apiCwKeyerSettings->getText();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.sampleRate")) {
|
|
||||||
cwKeyerSettings.m_sampleRate = apiCwKeyerSettings->getSampleRate();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.wpm")) {
|
|
||||||
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getWpm();
|
|
||||||
}
|
|
||||||
|
|
||||||
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
||||||
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
||||||
@ -791,15 +776,7 @@ void NFMMod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& respon
|
|||||||
|
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getNfmModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getNfmModSettings()->getCwKeyer();
|
||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode((int) cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
|
|
||||||
if (apiCwKeyerSettings->getText()) {
|
|
||||||
*apiCwKeyerSettings->getText() = cwKeyerSettings.m_text;
|
|
||||||
} else {
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (response.getNfmModSettings()->getAudioDeviceName()) {
|
if (response.getNfmModSettings()->getAudioDeviceName()) {
|
||||||
*response.getNfmModSettings()->getAudioDeviceName() = settings.m_audioDeviceName;
|
*response.getNfmModSettings()->getAudioDeviceName() = settings.m_audioDeviceName;
|
||||||
@ -889,11 +866,7 @@ void NFMMod::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, cons
|
|||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
swgNFMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgNFMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgNFMModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgNFMModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
@ -925,11 +898,7 @@ void NFMMod::webapiReverseSendCWSettings(const CWKeyerSettings& cwKeyerSettings)
|
|||||||
|
|
||||||
swgNFModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgNFModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgNFModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgNFModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
.arg(m_settings.m_reverseAPIAddress)
|
.arg(m_settings.m_reverseAPIAddress)
|
||||||
|
@ -1000,22 +1000,7 @@ int SSBMod::webapiSettingsPutPatch(
|
|||||||
{
|
{
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getSsbModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getSsbModSettings()->getCwKeyer();
|
||||||
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
|
m_cwKeyer.webapiSettingsPutPatch(channelSettingsKeys, cwKeyerSettings, apiCwKeyerSettings);
|
||||||
if (channelSettingsKeys.contains("cwKeyer.loop")) {
|
|
||||||
cwKeyerSettings.m_loop = apiCwKeyerSettings->getLoop() != 0;
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.mode")) {
|
|
||||||
cwKeyerSettings.m_mode = (CWKeyerSettings::CWMode) apiCwKeyerSettings->getMode();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.text")) {
|
|
||||||
cwKeyerSettings.m_text = *apiCwKeyerSettings->getText();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.sampleRate")) {
|
|
||||||
cwKeyerSettings.m_sampleRate = apiCwKeyerSettings->getSampleRate();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.wpm")) {
|
|
||||||
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getWpm();
|
|
||||||
}
|
|
||||||
|
|
||||||
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
||||||
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
||||||
@ -1096,17 +1081,7 @@ void SSBMod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& respon
|
|||||||
|
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getSsbModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getSsbModSettings()->getCwKeyer();
|
||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode((int) cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
|
|
||||||
if (apiCwKeyerSettings->getText()) {
|
|
||||||
*apiCwKeyerSettings->getText() = cwKeyerSettings.m_text;
|
|
||||||
} else {
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
}
|
|
||||||
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
response.getSsbModSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
response.getSsbModSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||||
|
|
||||||
@ -1197,11 +1172,7 @@ void SSBMod::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, cons
|
|||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
swgSSBModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgSSBModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgSSBModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgSSBModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
@ -1233,11 +1204,7 @@ void SSBMod::webapiReverseSendCWSettings(const CWKeyerSettings& cwKeyerSettings)
|
|||||||
|
|
||||||
swgSSBModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgSSBModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgSSBModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgSSBModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
.arg(m_settings.m_reverseAPIAddress)
|
.arg(m_settings.m_reverseAPIAddress)
|
||||||
|
@ -677,22 +677,7 @@ int WFMMod::webapiSettingsPutPatch(
|
|||||||
{
|
{
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getWfmModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getWfmModSettings()->getCwKeyer();
|
||||||
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
CWKeyerSettings cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
|
m_cwKeyer.webapiSettingsPutPatch(channelSettingsKeys, cwKeyerSettings, apiCwKeyerSettings);
|
||||||
if (channelSettingsKeys.contains("cwKeyer.loop")) {
|
|
||||||
cwKeyerSettings.m_loop = apiCwKeyerSettings->getLoop() != 0;
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.mode")) {
|
|
||||||
cwKeyerSettings.m_mode = (CWKeyerSettings::CWMode) apiCwKeyerSettings->getMode();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.text")) {
|
|
||||||
cwKeyerSettings.m_text = *apiCwKeyerSettings->getText();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.sampleRate")) {
|
|
||||||
cwKeyerSettings.m_sampleRate = apiCwKeyerSettings->getSampleRate();
|
|
||||||
}
|
|
||||||
if (channelSettingsKeys.contains("cwKeyer.wpm")) {
|
|
||||||
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getWpm();
|
|
||||||
}
|
|
||||||
|
|
||||||
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
CWKeyer::MsgConfigureCWKeyer *msgCwKeyer = CWKeyer::MsgConfigureCWKeyer::create(cwKeyerSettings, force);
|
||||||
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
m_cwKeyer.getInputMessageQueue()->push(msgCwKeyer);
|
||||||
@ -762,17 +747,7 @@ void WFMMod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& respon
|
|||||||
|
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getWfmModSettings()->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = response.getWfmModSettings()->getCwKeyer();
|
||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode((int) cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
|
|
||||||
if (apiCwKeyerSettings->getText()) {
|
|
||||||
*apiCwKeyerSettings->getText() = cwKeyerSettings.m_text;
|
|
||||||
} else {
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
}
|
|
||||||
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
if (response.getWfmModSettings()->getAudioDeviceName()) {
|
if (response.getWfmModSettings()->getAudioDeviceName()) {
|
||||||
*response.getWfmModSettings()->getAudioDeviceName() = settings.m_audioDeviceName;
|
*response.getWfmModSettings()->getAudioDeviceName() = settings.m_audioDeviceName;
|
||||||
@ -854,11 +829,7 @@ void WFMMod::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, cons
|
|||||||
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
const CWKeyerSettings& cwKeyerSettings = m_cwKeyer.getSettings();
|
||||||
swgWFMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgWFMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgWFMModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgWFMModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
@ -890,11 +861,7 @@ void WFMMod::webapiReverseSendCWSettings(const CWKeyerSettings& cwKeyerSettings)
|
|||||||
|
|
||||||
swgWFMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
swgWFMModSettings->setCwKeyer(new SWGSDRangel::SWGCWKeyerSettings());
|
||||||
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgWFMModSettings->getCwKeyer();
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings = swgWFMModSettings->getCwKeyer();
|
||||||
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
m_cwKeyer.webapiFormatChannelSettings(apiCwKeyerSettings, cwKeyerSettings);
|
||||||
apiCwKeyerSettings->setMode(cwKeyerSettings.m_mode);
|
|
||||||
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
|
||||||
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
|
||||||
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
|
||||||
|
|
||||||
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
|
||||||
.arg(m_settings.m_reverseAPIAddress)
|
.arg(m_settings.m_reverseAPIAddress)
|
||||||
|
@ -438,7 +438,6 @@ void CWKeyer::setKeyboardSilence()
|
|||||||
{
|
{
|
||||||
m_dot = false;
|
m_dot = false;
|
||||||
m_dash = false;
|
m_dash = false;
|
||||||
m_keyIambicState = KeySilent;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CWSmoother::CWSmoother() :
|
CWSmoother::CWSmoother() :
|
||||||
@ -596,3 +595,64 @@ void CWKeyer::applySettings(const CWKeyerSettings& settings, bool force)
|
|||||||
|
|
||||||
m_settings = settings;
|
m_settings = settings;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CWKeyer::webapiSettingsPutPatch(
|
||||||
|
const QStringList& channelSettingsKeys,
|
||||||
|
CWKeyerSettings& cwKeyerSettings,
|
||||||
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings
|
||||||
|
)
|
||||||
|
{
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.loop")) {
|
||||||
|
cwKeyerSettings.m_loop = apiCwKeyerSettings->getLoop() != 0;
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.mode")) {
|
||||||
|
cwKeyerSettings.m_mode = (CWKeyerSettings::CWMode) apiCwKeyerSettings->getMode();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.text")) {
|
||||||
|
cwKeyerSettings.m_text = *apiCwKeyerSettings->getText();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.sampleRate")) {
|
||||||
|
cwKeyerSettings.m_sampleRate = apiCwKeyerSettings->getSampleRate();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.wpm")) {
|
||||||
|
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getWpm();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.keyboardIambic")) {
|
||||||
|
cwKeyerSettings.m_wpm = apiCwKeyerSettings->getKeyboardIambic() != 0;
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.dotKey")) {
|
||||||
|
cwKeyerSettings.m_dotKey = (Qt::Key) apiCwKeyerSettings->getDotKey();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.dotKeyModifiers")) {
|
||||||
|
cwKeyerSettings.m_dotKeyModifiers = (Qt::KeyboardModifiers) apiCwKeyerSettings->getDotKeyModifiers();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.dashKey")) {
|
||||||
|
cwKeyerSettings.m_dashKey = (Qt::Key) apiCwKeyerSettings->getDashKey();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("cwKeyer.dashKeyModifiers")) {
|
||||||
|
cwKeyerSettings.m_dashKeyModifiers = (Qt::KeyboardModifiers) apiCwKeyerSettings->getDashKeyModifiers();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void CWKeyer::webapiFormatChannelSettings(
|
||||||
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings,
|
||||||
|
const CWKeyerSettings& cwKeyerSettings
|
||||||
|
)
|
||||||
|
{
|
||||||
|
apiCwKeyerSettings->setLoop(cwKeyerSettings.m_loop ? 1 : 0);
|
||||||
|
apiCwKeyerSettings->setMode((int) cwKeyerSettings.m_mode);
|
||||||
|
apiCwKeyerSettings->setSampleRate(cwKeyerSettings.m_sampleRate);
|
||||||
|
|
||||||
|
if (apiCwKeyerSettings->getText()) {
|
||||||
|
*apiCwKeyerSettings->getText() = cwKeyerSettings.m_text;
|
||||||
|
} else {
|
||||||
|
apiCwKeyerSettings->setText(new QString(cwKeyerSettings.m_text));
|
||||||
|
}
|
||||||
|
|
||||||
|
apiCwKeyerSettings->setWpm(cwKeyerSettings.m_wpm);
|
||||||
|
apiCwKeyerSettings->setKeyboardIambic(cwKeyerSettings.m_keyboardIambic ? 1 : 0);
|
||||||
|
apiCwKeyerSettings->setDotKey((int) cwKeyerSettings.m_dotKey);
|
||||||
|
apiCwKeyerSettings->setDotKeyModifiers((unsigned int) cwKeyerSettings.m_dotKeyModifiers);
|
||||||
|
apiCwKeyerSettings->setDashKey((int) cwKeyerSettings.m_dashKey);
|
||||||
|
apiCwKeyerSettings->setDashKeyModifiers((unsigned int) cwKeyerSettings.m_dashKeyModifiers);
|
||||||
|
}
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
#include "util/message.h"
|
#include "util/message.h"
|
||||||
#include "util/messagequeue.h"
|
#include "util/messagequeue.h"
|
||||||
#include "cwkeyersettings.h"
|
#include "cwkeyersettings.h"
|
||||||
|
#include "SWGChannelSettings.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ancillary class to smooth out CW transitions with a sine shape
|
* Ancillary class to smooth out CW transitions with a sine shape
|
||||||
@ -116,6 +117,17 @@ public:
|
|||||||
void setKeyboardDashes();
|
void setKeyboardDashes();
|
||||||
void setKeyboardSilence();
|
void setKeyboardSilence();
|
||||||
|
|
||||||
|
void webapiSettingsPutPatch(
|
||||||
|
const QStringList& channelSettingsKeys,
|
||||||
|
CWKeyerSettings& cwKeyerSettings,
|
||||||
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings
|
||||||
|
);
|
||||||
|
|
||||||
|
void webapiFormatChannelSettings(
|
||||||
|
SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings,
|
||||||
|
const CWKeyerSettings& cwKeyerSettings
|
||||||
|
);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QMutex m_mutex;
|
QMutex m_mutex;
|
||||||
CWKeyerSettings m_settings;
|
CWKeyerSettings m_settings;
|
||||||
|
@ -1693,16 +1693,39 @@ margin-bottom: 20px;
|
|||||||
"type" : "integer"
|
"type" : "integer"
|
||||||
},
|
},
|
||||||
"wpm" : {
|
"wpm" : {
|
||||||
"type" : "integer"
|
"type" : "integer",
|
||||||
|
"description" : "Words Per Minute keying speed"
|
||||||
},
|
},
|
||||||
"mode" : {
|
"mode" : {
|
||||||
"type" : "integer"
|
"type" : "integer",
|
||||||
|
"description" : "see enum CWKeyerSettings::CWMode"
|
||||||
},
|
},
|
||||||
"text" : {
|
"text" : {
|
||||||
"type" : "string"
|
"type" : "string"
|
||||||
},
|
},
|
||||||
"loop" : {
|
"loop" : {
|
||||||
"type" : "integer"
|
"type" : "integer",
|
||||||
|
"description" : "1 to loop on text keying"
|
||||||
|
},
|
||||||
|
"keyboardIambic" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "1 for iambic input 0 for straight input using the keyboard"
|
||||||
|
},
|
||||||
|
"dotKey" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key for dots keyboard input. See enum Qt::Key"
|
||||||
|
},
|
||||||
|
"dotKeyModifiers" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key modifier for dots keyboard input. See flags Qt::KeyboardModifiers"
|
||||||
|
},
|
||||||
|
"dashKey" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key for dashes keyboard input. See enum Qt::Key"
|
||||||
|
},
|
||||||
|
"dashKeyModifiers" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key modifier for dashes keyboard input. See flags Qt::KeyboardModifiers"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -26341,7 +26364,7 @@ except ApiException as e:
|
|||||||
</div>
|
</div>
|
||||||
<div id="generator">
|
<div id="generator">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
Generated 2019-07-25T13:46:45.997+02:00
|
Generated 2019-07-30T10:33:29.454+02:00
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,10 +3,28 @@ CWKeyerSettings:
|
|||||||
sampleRate:
|
sampleRate:
|
||||||
type: integer
|
type: integer
|
||||||
wpm:
|
wpm:
|
||||||
|
description: Words Per Minute keying speed
|
||||||
type: integer
|
type: integer
|
||||||
mode:
|
mode:
|
||||||
|
description: see enum CWKeyerSettings::CWMode
|
||||||
type: integer
|
type: integer
|
||||||
text:
|
text:
|
||||||
type: string
|
type: string
|
||||||
loop:
|
loop:
|
||||||
|
description: 1 to loop on text keying
|
||||||
|
type: integer
|
||||||
|
keyboardIambic:
|
||||||
|
description: 1 for iambic input 0 for straight input using the keyboard
|
||||||
|
type: integer
|
||||||
|
dotKey:
|
||||||
|
description: key for dots keyboard input. See enum Qt::Key
|
||||||
|
type: integer
|
||||||
|
dotKeyModifiers:
|
||||||
|
description: key modifier for dots keyboard input. See flags Qt::KeyboardModifiers
|
||||||
|
type: integer
|
||||||
|
dashKey:
|
||||||
|
description: key for dashes keyboard input. See enum Qt::Key
|
||||||
|
type: integer
|
||||||
|
dashKeyModifiers:
|
||||||
|
description: key modifier for dashes keyboard input. See flags Qt::KeyboardModifiers
|
||||||
type: integer
|
type: integer
|
@ -3,10 +3,28 @@ CWKeyerSettings:
|
|||||||
sampleRate:
|
sampleRate:
|
||||||
type: integer
|
type: integer
|
||||||
wpm:
|
wpm:
|
||||||
|
description: Words Per Minute keying speed
|
||||||
type: integer
|
type: integer
|
||||||
mode:
|
mode:
|
||||||
|
description: see enum CWKeyerSettings::CWMode
|
||||||
type: integer
|
type: integer
|
||||||
text:
|
text:
|
||||||
type: string
|
type: string
|
||||||
loop:
|
loop:
|
||||||
|
description: 1 to loop on text keying
|
||||||
|
type: integer
|
||||||
|
keyboardIambic:
|
||||||
|
description: 1 for iambic input 0 for straight input using the keyboard
|
||||||
|
type: integer
|
||||||
|
dotKey:
|
||||||
|
description: key for dots keyboard input. See enum Qt::Key
|
||||||
|
type: integer
|
||||||
|
dotKeyModifiers:
|
||||||
|
description: key modifier for dots keyboard input. See flags Qt::KeyboardModifiers
|
||||||
|
type: integer
|
||||||
|
dashKey:
|
||||||
|
description: key for dashes keyboard input. See enum Qt::Key
|
||||||
|
type: integer
|
||||||
|
dashKeyModifiers:
|
||||||
|
description: key modifier for dashes keyboard input. See flags Qt::KeyboardModifiers
|
||||||
type: integer
|
type: integer
|
@ -1693,16 +1693,39 @@ margin-bottom: 20px;
|
|||||||
"type" : "integer"
|
"type" : "integer"
|
||||||
},
|
},
|
||||||
"wpm" : {
|
"wpm" : {
|
||||||
"type" : "integer"
|
"type" : "integer",
|
||||||
|
"description" : "Words Per Minute keying speed"
|
||||||
},
|
},
|
||||||
"mode" : {
|
"mode" : {
|
||||||
"type" : "integer"
|
"type" : "integer",
|
||||||
|
"description" : "see enum CWKeyerSettings::CWMode"
|
||||||
},
|
},
|
||||||
"text" : {
|
"text" : {
|
||||||
"type" : "string"
|
"type" : "string"
|
||||||
},
|
},
|
||||||
"loop" : {
|
"loop" : {
|
||||||
"type" : "integer"
|
"type" : "integer",
|
||||||
|
"description" : "1 to loop on text keying"
|
||||||
|
},
|
||||||
|
"keyboardIambic" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "1 for iambic input 0 for straight input using the keyboard"
|
||||||
|
},
|
||||||
|
"dotKey" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key for dots keyboard input. See enum Qt::Key"
|
||||||
|
},
|
||||||
|
"dotKeyModifiers" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key modifier for dots keyboard input. See flags Qt::KeyboardModifiers"
|
||||||
|
},
|
||||||
|
"dashKey" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key for dashes keyboard input. See enum Qt::Key"
|
||||||
|
},
|
||||||
|
"dashKeyModifiers" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "key modifier for dashes keyboard input. See flags Qt::KeyboardModifiers"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -26341,7 +26364,7 @@ except ApiException as e:
|
|||||||
</div>
|
</div>
|
||||||
<div id="generator">
|
<div id="generator">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
Generated 2019-07-25T13:46:45.997+02:00
|
Generated 2019-07-30T10:33:29.454+02:00
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -38,6 +38,16 @@ SWGCWKeyerSettings::SWGCWKeyerSettings() {
|
|||||||
m_text_isSet = false;
|
m_text_isSet = false;
|
||||||
loop = 0;
|
loop = 0;
|
||||||
m_loop_isSet = false;
|
m_loop_isSet = false;
|
||||||
|
keyboard_iambic = 0;
|
||||||
|
m_keyboard_iambic_isSet = false;
|
||||||
|
dot_key = 0;
|
||||||
|
m_dot_key_isSet = false;
|
||||||
|
dot_key_modifiers = 0;
|
||||||
|
m_dot_key_modifiers_isSet = false;
|
||||||
|
dash_key = 0;
|
||||||
|
m_dash_key_isSet = false;
|
||||||
|
dash_key_modifiers = 0;
|
||||||
|
m_dash_key_modifiers_isSet = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
SWGCWKeyerSettings::~SWGCWKeyerSettings() {
|
SWGCWKeyerSettings::~SWGCWKeyerSettings() {
|
||||||
@ -56,6 +66,16 @@ SWGCWKeyerSettings::init() {
|
|||||||
m_text_isSet = false;
|
m_text_isSet = false;
|
||||||
loop = 0;
|
loop = 0;
|
||||||
m_loop_isSet = false;
|
m_loop_isSet = false;
|
||||||
|
keyboard_iambic = 0;
|
||||||
|
m_keyboard_iambic_isSet = false;
|
||||||
|
dot_key = 0;
|
||||||
|
m_dot_key_isSet = false;
|
||||||
|
dot_key_modifiers = 0;
|
||||||
|
m_dot_key_modifiers_isSet = false;
|
||||||
|
dash_key = 0;
|
||||||
|
m_dash_key_isSet = false;
|
||||||
|
dash_key_modifiers = 0;
|
||||||
|
m_dash_key_modifiers_isSet = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -67,6 +87,11 @@ SWGCWKeyerSettings::cleanup() {
|
|||||||
delete text;
|
delete text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SWGCWKeyerSettings*
|
SWGCWKeyerSettings*
|
||||||
@ -90,6 +115,16 @@ SWGCWKeyerSettings::fromJsonObject(QJsonObject &pJson) {
|
|||||||
|
|
||||||
::SWGSDRangel::setValue(&loop, pJson["loop"], "qint32", "");
|
::SWGSDRangel::setValue(&loop, pJson["loop"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&keyboard_iambic, pJson["keyboardIambic"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&dot_key, pJson["dotKey"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&dot_key_modifiers, pJson["dotKeyModifiers"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&dash_key, pJson["dashKey"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&dash_key_modifiers, pJson["dashKeyModifiers"], "qint32", "");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString
|
QString
|
||||||
@ -121,6 +156,21 @@ SWGCWKeyerSettings::asJsonObject() {
|
|||||||
if(m_loop_isSet){
|
if(m_loop_isSet){
|
||||||
obj->insert("loop", QJsonValue(loop));
|
obj->insert("loop", QJsonValue(loop));
|
||||||
}
|
}
|
||||||
|
if(m_keyboard_iambic_isSet){
|
||||||
|
obj->insert("keyboardIambic", QJsonValue(keyboard_iambic));
|
||||||
|
}
|
||||||
|
if(m_dot_key_isSet){
|
||||||
|
obj->insert("dotKey", QJsonValue(dot_key));
|
||||||
|
}
|
||||||
|
if(m_dot_key_modifiers_isSet){
|
||||||
|
obj->insert("dotKeyModifiers", QJsonValue(dot_key_modifiers));
|
||||||
|
}
|
||||||
|
if(m_dash_key_isSet){
|
||||||
|
obj->insert("dashKey", QJsonValue(dash_key));
|
||||||
|
}
|
||||||
|
if(m_dash_key_modifiers_isSet){
|
||||||
|
obj->insert("dashKeyModifiers", QJsonValue(dash_key_modifiers));
|
||||||
|
}
|
||||||
|
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
@ -175,6 +225,56 @@ SWGCWKeyerSettings::setLoop(qint32 loop) {
|
|||||||
this->m_loop_isSet = true;
|
this->m_loop_isSet = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGCWKeyerSettings::getKeyboardIambic() {
|
||||||
|
return keyboard_iambic;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGCWKeyerSettings::setKeyboardIambic(qint32 keyboard_iambic) {
|
||||||
|
this->keyboard_iambic = keyboard_iambic;
|
||||||
|
this->m_keyboard_iambic_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGCWKeyerSettings::getDotKey() {
|
||||||
|
return dot_key;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGCWKeyerSettings::setDotKey(qint32 dot_key) {
|
||||||
|
this->dot_key = dot_key;
|
||||||
|
this->m_dot_key_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGCWKeyerSettings::getDotKeyModifiers() {
|
||||||
|
return dot_key_modifiers;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGCWKeyerSettings::setDotKeyModifiers(qint32 dot_key_modifiers) {
|
||||||
|
this->dot_key_modifiers = dot_key_modifiers;
|
||||||
|
this->m_dot_key_modifiers_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGCWKeyerSettings::getDashKey() {
|
||||||
|
return dash_key;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGCWKeyerSettings::setDashKey(qint32 dash_key) {
|
||||||
|
this->dash_key = dash_key;
|
||||||
|
this->m_dash_key_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGCWKeyerSettings::getDashKeyModifiers() {
|
||||||
|
return dash_key_modifiers;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGCWKeyerSettings::setDashKeyModifiers(qint32 dash_key_modifiers) {
|
||||||
|
this->dash_key_modifiers = dash_key_modifiers;
|
||||||
|
this->m_dash_key_modifiers_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
SWGCWKeyerSettings::isSet(){
|
SWGCWKeyerSettings::isSet(){
|
||||||
@ -185,6 +285,11 @@ SWGCWKeyerSettings::isSet(){
|
|||||||
if(m_mode_isSet){ isObjectUpdated = true; break;}
|
if(m_mode_isSet){ isObjectUpdated = true; break;}
|
||||||
if(text != nullptr && *text != QString("")){ isObjectUpdated = true; break;}
|
if(text != nullptr && *text != QString("")){ isObjectUpdated = true; break;}
|
||||||
if(m_loop_isSet){ isObjectUpdated = true; break;}
|
if(m_loop_isSet){ isObjectUpdated = true; break;}
|
||||||
|
if(m_keyboard_iambic_isSet){ isObjectUpdated = true; break;}
|
||||||
|
if(m_dot_key_isSet){ isObjectUpdated = true; break;}
|
||||||
|
if(m_dot_key_modifiers_isSet){ isObjectUpdated = true; break;}
|
||||||
|
if(m_dash_key_isSet){ isObjectUpdated = true; break;}
|
||||||
|
if(m_dash_key_modifiers_isSet){ isObjectUpdated = true; break;}
|
||||||
}while(false);
|
}while(false);
|
||||||
return isObjectUpdated;
|
return isObjectUpdated;
|
||||||
}
|
}
|
||||||
|
@ -57,6 +57,21 @@ public:
|
|||||||
qint32 getLoop();
|
qint32 getLoop();
|
||||||
void setLoop(qint32 loop);
|
void setLoop(qint32 loop);
|
||||||
|
|
||||||
|
qint32 getKeyboardIambic();
|
||||||
|
void setKeyboardIambic(qint32 keyboard_iambic);
|
||||||
|
|
||||||
|
qint32 getDotKey();
|
||||||
|
void setDotKey(qint32 dot_key);
|
||||||
|
|
||||||
|
qint32 getDotKeyModifiers();
|
||||||
|
void setDotKeyModifiers(qint32 dot_key_modifiers);
|
||||||
|
|
||||||
|
qint32 getDashKey();
|
||||||
|
void setDashKey(qint32 dash_key);
|
||||||
|
|
||||||
|
qint32 getDashKeyModifiers();
|
||||||
|
void setDashKeyModifiers(qint32 dash_key_modifiers);
|
||||||
|
|
||||||
|
|
||||||
virtual bool isSet() override;
|
virtual bool isSet() override;
|
||||||
|
|
||||||
@ -76,6 +91,21 @@ private:
|
|||||||
qint32 loop;
|
qint32 loop;
|
||||||
bool m_loop_isSet;
|
bool m_loop_isSet;
|
||||||
|
|
||||||
|
qint32 keyboard_iambic;
|
||||||
|
bool m_keyboard_iambic_isSet;
|
||||||
|
|
||||||
|
qint32 dot_key;
|
||||||
|
bool m_dot_key_isSet;
|
||||||
|
|
||||||
|
qint32 dot_key_modifiers;
|
||||||
|
bool m_dot_key_modifiers_isSet;
|
||||||
|
|
||||||
|
qint32 dash_key;
|
||||||
|
bool m_dash_key_isSet;
|
||||||
|
|
||||||
|
qint32 dash_key_modifiers;
|
||||||
|
bool m_dash_key_modifiers_isSet;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user