ifdef'd windows focus calls, remove unnecessary meter refreshes

This commit is contained in:
Charles J. Cliffe 2016-05-30 00:17:08 -04:00
parent a0d15026df
commit ce1cd27007
6 changed files with 13 additions and 9 deletions

View File

@ -1779,10 +1779,11 @@ void AppFrame::refreshGainUI() {
gainCanvas->Refresh(); gainCanvas->Refresh();
} }
#ifdef _WIN32
bool AppFrame::canFocus() { bool AppFrame::canFocus() {
return (!wxGetApp().isDeviceSelectorOpen() && (!modemProps || !modemProps->isMouseInView())); return (!wxGetApp().isDeviceSelectorOpen() && (!modemProps || !modemProps->isMouseInView()));
} }
#endif
FrequencyDialog::FrequencyDialogTarget AppFrame::getFrequencyDialogTarget() { FrequencyDialog::FrequencyDialogTarget AppFrame::getFrequencyDialogTarget() {
FrequencyDialog::FrequencyDialogTarget target = FrequencyDialog::FrequencyDialogTarget::FDIALOG_TARGET_DEFAULT; FrequencyDialog::FrequencyDialogTarget target = FrequencyDialog::FrequencyDialogTarget::FDIALOG_TARGET_DEFAULT;

View File

@ -96,8 +96,10 @@ public:
FrequencyDialog::FrequencyDialogTarget getFrequencyDialogTarget(); FrequencyDialog::FrequencyDialogTarget getFrequencyDialogTarget();
void refreshGainUI(); void refreshGainUI();
#ifdef _WIN32
bool canFocus(); bool canFocus();
#endif
private: private:
void OnMenu(wxCommandEvent& event); void OnMenu(wxCommandEvent& event);
void OnClose(wxCloseEvent& event); void OnClose(wxCloseEvent& event);

View File

@ -126,18 +126,15 @@ void MeterCanvas::OnMouseDown(wxMouseEvent& event) {
InteractiveCanvas::OnMouseDown(event); InteractiveCanvas::OnMouseDown(event);
userInputValue = mouseTracker.getMouseY() * (level_max-level_min) + level_min; userInputValue = mouseTracker.getMouseY() * (level_max-level_min) + level_min;
mouseTracker.setHorizDragLock(true); mouseTracker.setHorizDragLock(true);
Refresh();
} }
void MeterCanvas::OnMouseReleased(wxMouseEvent& event) { void MeterCanvas::OnMouseReleased(wxMouseEvent& event) {
InteractiveCanvas::OnMouseReleased(event); InteractiveCanvas::OnMouseReleased(event);
userInputValue = mouseTracker.getMouseY() * (level_max-level_min) + level_min; userInputValue = mouseTracker.getMouseY() * (level_max-level_min) + level_min;
Refresh();
} }
void MeterCanvas::OnMouseRightDown(wxMouseEvent& event) { void MeterCanvas::OnMouseRightDown(wxMouseEvent& event) {
InteractiveCanvas::OnMouseRightDown(event); InteractiveCanvas::OnMouseRightDown(event);
Refresh();
} }
void MeterCanvas::OnMouseRightReleased(wxMouseEvent& event) { void MeterCanvas::OnMouseRightReleased(wxMouseEvent& event) {
@ -145,7 +142,6 @@ void MeterCanvas::OnMouseRightReleased(wxMouseEvent& event) {
if (showUserInput) { if (showUserInput) {
userInputValue = level - level * 0.02; userInputValue = level - level * 0.02;
} }
Refresh();
} }
void MeterCanvas::OnMouseWheelMoved(wxMouseEvent& event) { void MeterCanvas::OnMouseWheelMoved(wxMouseEvent& event) {
@ -169,8 +165,6 @@ void MeterCanvas::OnMouseWheelMoved(wxMouseEvent& event) {
} }
userInputValue = currentValue; userInputValue = currentValue;
Refresh();
} }
void MeterCanvas::OnMouseLeftWindow(wxMouseEvent& event) { void MeterCanvas::OnMouseLeftWindow(wxMouseEvent& event) {
@ -182,10 +176,11 @@ void MeterCanvas::OnMouseLeftWindow(wxMouseEvent& event) {
void MeterCanvas::OnMouseEnterWindow(wxMouseEvent& event) { void MeterCanvas::OnMouseEnterWindow(wxMouseEvent& event) {
InteractiveCanvas::mouseTracker.OnMouseEnterWindow(event); InteractiveCanvas::mouseTracker.OnMouseEnterWindow(event);
SetCursor(wxCURSOR_CROSS); SetCursor(wxCURSOR_CROSS);
Refresh(); #ifdef _WIN32
if (wxGetApp().getAppFrame()->canFocus()) { if (wxGetApp().getAppFrame()->canFocus()) {
this->SetFocus(); this->SetFocus();
} }
#endif
} }
void MeterCanvas::setHelpTip(std::string tip) { void MeterCanvas::setHelpTip(std::string tip) {

View File

@ -259,11 +259,13 @@ void SpectrumCanvas::OnMouseReleased(wxMouseEvent& event) {
void SpectrumCanvas::OnMouseEnterWindow(wxMouseEvent& event) { void SpectrumCanvas::OnMouseEnterWindow(wxMouseEvent& event) {
InteractiveCanvas::OnMouseEnterWindow(event); InteractiveCanvas::OnMouseEnterWindow(event);
SetCursor(wxCURSOR_SIZEWE); SetCursor(wxCURSOR_SIZEWE);
#ifdef _WIN32
if (waterfallCanvas) { if (waterfallCanvas) {
if (wxGetApp().getAppFrame()->canFocus()) { if (wxGetApp().getAppFrame()->canFocus()) {
this->SetFocus(); this->SetFocus();
} }
} }
#endif
} }
void SpectrumCanvas::OnMouseLeftWindow(wxMouseEvent& event) { void SpectrumCanvas::OnMouseLeftWindow(wxMouseEvent& event) {

View File

@ -410,9 +410,11 @@ void TuningCanvas::OnMouseEnterWindow(wxMouseEvent& event) {
hoverIndex = 0; hoverIndex = 0;
hoverState = TUNING_HOVER_NONE; hoverState = TUNING_HOVER_NONE;
lastPPM = currentPPM = wxGetApp().getPPM(); lastPPM = currentPPM = wxGetApp().getPPM();
#ifdef _WIN32
if (wxGetApp().getAppFrame()->canFocus()) { if (wxGetApp().getAppFrame()->canFocus()) {
this->SetFocus(); this->SetFocus();
} }
#endif
} }
void TuningCanvas::setHelpTip(std::string tip) { void TuningCanvas::setHelpTip(std::string tip) {

View File

@ -852,9 +852,11 @@ void WaterfallCanvas::OnMouseLeftWindow(wxMouseEvent& event) {
void WaterfallCanvas::OnMouseEnterWindow(wxMouseEvent& event) { void WaterfallCanvas::OnMouseEnterWindow(wxMouseEvent& event) {
InteractiveCanvas::OnMouseEnterWindow(event); InteractiveCanvas::OnMouseEnterWindow(event);
SetCursor(wxCURSOR_CROSS); SetCursor(wxCURSOR_CROSS);
#ifdef _WIN32
if (wxGetApp().getAppFrame()->canFocus()) { if (wxGetApp().getAppFrame()->canFocus()) {
this->SetFocus(); this->SetFocus();
} }
#endif
} }
void WaterfallCanvas::OnMouseRightDown(wxMouseEvent& event) { void WaterfallCanvas::OnMouseRightDown(wxMouseEvent& event) {