mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2024-09-27 15:56:48 -04:00
Merge pull request #305 from george-viaud/master
Adds feature #304 - Auto-Zero squelch
This commit is contained in:
commit
44ae37905b
@ -141,7 +141,7 @@ AppFrame::AppFrame() :
|
||||
demodSignalMeter->setMin(DEMOD_SIGNAL_MIN);
|
||||
demodSignalMeter->setLevel(DEMOD_SIGNAL_MIN);
|
||||
demodSignalMeter->setInputValue(DEMOD_SIGNAL_MIN);
|
||||
demodSignalMeter->setHelpTip("Current Signal Level. Click / Drag to set Squelch level.");
|
||||
demodSignalMeter->setHelpTip("Current Signal Level. Click / Drag to set Squelch level. Right-Click to Auto-Zero Squelch");
|
||||
demodSignalMeter->SetMinSize(wxSize(12,24));
|
||||
demodTray->Add(demodSignalMeter, 1, wxEXPAND | wxALL, 0);
|
||||
|
||||
|
@ -20,6 +20,9 @@ EVT_IDLE(MeterCanvas::OnIdle)
|
||||
EVT_MOTION(MeterCanvas::OnMouseMoved)
|
||||
EVT_LEFT_DOWN(MeterCanvas::OnMouseDown)
|
||||
EVT_LEFT_UP(MeterCanvas::OnMouseReleased)
|
||||
EVT_MOUSEWHEEL(MeterCanvas::OnMouseWheelMoved)
|
||||
EVT_RIGHT_DOWN(MeterCanvas::OnMouseRightDown)
|
||||
EVT_RIGHT_UP(MeterCanvas::OnMouseRightReleased)
|
||||
EVT_LEAVE_WINDOW(MeterCanvas::OnMouseLeftWindow)
|
||||
EVT_ENTER_WINDOW(MeterCanvas::OnMouseEnterWindow)
|
||||
wxEND_EVENT_TABLE()
|
||||
@ -126,17 +129,30 @@ void MeterCanvas::OnMouseDown(wxMouseEvent& event) {
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void MeterCanvas::OnMouseWheelMoved(wxMouseEvent& event) {
|
||||
InteractiveCanvas::OnMouseWheelMoved(event);
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void MeterCanvas::OnMouseReleased(wxMouseEvent& event) {
|
||||
InteractiveCanvas::OnMouseReleased(event);
|
||||
userInputValue = mouseTracker.getMouseY() * (level_max-level_min) + level_min;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void MeterCanvas::OnMouseRightDown(wxMouseEvent& event) {
|
||||
InteractiveCanvas::OnMouseRightDown(event);
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void MeterCanvas::OnMouseRightReleased(wxMouseEvent& event) {
|
||||
InteractiveCanvas::OnMouseRightReleased(event);
|
||||
userInputValue = level - level * 0.02;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void MeterCanvas::OnMouseWheelMoved(wxMouseEvent& event) {
|
||||
InteractiveCanvas::OnMouseWheelMoved(event);
|
||||
float movement = (float)event.GetWheelRotation() / (float)event.GetLinesPerAction();
|
||||
userInputValue = userInputValue + movement / 1000;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void MeterCanvas::OnMouseLeftWindow(wxMouseEvent& event) {
|
||||
InteractiveCanvas::OnMouseLeftWindow(event);
|
||||
SetCursor(wxCURSOR_CROSS);
|
||||
|
@ -38,8 +38,10 @@ private:
|
||||
|
||||
void OnMouseMoved(wxMouseEvent& event);
|
||||
void OnMouseDown(wxMouseEvent& event);
|
||||
void OnMouseWheelMoved(wxMouseEvent& event);
|
||||
void OnMouseReleased(wxMouseEvent& event);
|
||||
void OnMouseWheelMoved(wxMouseEvent& event);
|
||||
void OnMouseRightDown(wxMouseEvent& event);
|
||||
void OnMouseRightReleased(wxMouseEvent& event);
|
||||
void OnMouseEnterWindow(wxMouseEvent& event);
|
||||
void OnMouseLeftWindow(wxMouseEvent& event);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user