mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2025-03-30 16:18:54 -04:00
Universal [ nudge ] keys
This commit is contained in:
parent
c4826cab7b
commit
a1c7d0b5f8
@ -1810,6 +1810,20 @@ FrequencyDialog::FrequencyDialogTarget AppFrame::getFrequencyDialogTarget() {
|
||||
return target;
|
||||
}
|
||||
|
||||
void AppFrame::gkNudgeLeft(DemodulatorInstance *demod, int snap) {
|
||||
if (demod) {
|
||||
demod->setFrequency(demod->getFrequency()-snap);
|
||||
demod->updateLabel(demod->getFrequency());
|
||||
}
|
||||
}
|
||||
|
||||
void AppFrame::gkNudgeRight(DemodulatorInstance *demod, int snap) {
|
||||
if (demod) {
|
||||
demod->setFrequency(demod->getFrequency()+snap);
|
||||
demod->updateLabel(demod->getFrequency());
|
||||
}
|
||||
}
|
||||
|
||||
int AppFrame::OnGlobalKeyDown(wxKeyEvent &event) {
|
||||
if (!this->IsActive()) {
|
||||
return -1;
|
||||
@ -1824,6 +1838,18 @@ int AppFrame::OnGlobalKeyDown(wxKeyEvent &event) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef wxHAS_RAW_KEY_CODES
|
||||
switch (event.GetRawKeyCode()) {
|
||||
case 30:
|
||||
gkNudgeRight(lastDemod, snap);
|
||||
return 1;
|
||||
case 33:
|
||||
gkNudgeLeft(lastDemod, snap);
|
||||
return 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
switch (event.GetKeyCode()) {
|
||||
case WXK_UP:
|
||||
case WXK_NUMPAD_UP:
|
||||
@ -1838,19 +1864,11 @@ int AppFrame::OnGlobalKeyDown(wxKeyEvent &event) {
|
||||
case 'V':
|
||||
return 1;
|
||||
case ']':
|
||||
if (lastDemod) {
|
||||
lastDemod->setFrequency(lastDemod->getFrequency()+snap);
|
||||
lastDemod->updateLabel(lastDemod->getFrequency());
|
||||
}
|
||||
gkNudgeRight(lastDemod, snap);
|
||||
return 1;
|
||||
break;
|
||||
case '[':
|
||||
if (lastDemod) {
|
||||
lastDemod->setFrequency(lastDemod->getFrequency()-snap);
|
||||
lastDemod->updateLabel(lastDemod->getFrequency());
|
||||
}
|
||||
gkNudgeLeft(lastDemod, snap);
|
||||
return 1;
|
||||
break;
|
||||
case 'A':
|
||||
case 'F':
|
||||
case 'L':
|
||||
@ -1885,7 +1903,6 @@ int AppFrame::OnGlobalKeyDown(wxKeyEvent &event) {
|
||||
wxGetApp().getDemodMgr().setActiveDemodulator(demod, false);
|
||||
}
|
||||
return 1;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@ -1906,6 +1923,15 @@ int AppFrame::OnGlobalKeyUp(wxKeyEvent &event) {
|
||||
|
||||
DemodulatorInstance *lastDemod = wxGetApp().getDemodMgr().getLastActiveDemodulator();
|
||||
|
||||
#ifdef wxHAS_RAW_KEY_CODES
|
||||
switch (event.GetRawKeyCode()) {
|
||||
case 30:
|
||||
return 1;
|
||||
case 33:
|
||||
return 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
switch (event.GetKeyCode()) {
|
||||
case WXK_SPACE:
|
||||
if (!demodTuner->getMouseTracker()->mouseInView()) {
|
||||
|
@ -84,6 +84,9 @@ public:
|
||||
void updateModemProperties(ModemArgInfoList args);
|
||||
void setMainWaterfallFFTSize(int fftSize);
|
||||
|
||||
void gkNudgeLeft(DemodulatorInstance *demod, int snap);
|
||||
void gkNudgeRight(DemodulatorInstance *demod, int snap);
|
||||
|
||||
int OnGlobalKeyDown(wxKeyEvent &event);
|
||||
int OnGlobalKeyUp(wxKeyEvent &event);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user