tuning tweaks, zoomed view following fix

This commit is contained in:
Charles J. Cliffe
2015-03-29 20:24:00 -04:00
parent d95925a3c4
commit efa2cd75c9
5 changed files with 81 additions and 68 deletions
+4
View File
@@ -41,6 +41,10 @@ void InteractiveCanvas::disableView() {
lastBandwidth = 0;
}
bool InteractiveCanvas::getViewState() {
return isView;
}
long long InteractiveCanvas::getFrequencyAt(float x) {
long long iqCenterFreq = getCenterFrequency();
long long iqBandwidth = getBandwidth();
+1
View File
@@ -15,6 +15,7 @@ public:
void setView(long long center_freq_in, int bandwidth_in);
void disableView();
bool getViewState();
void setCenterFrequency(long long center_freq_in);
long long getCenterFrequency();
+31 -14
View File
@@ -223,25 +223,42 @@ void TuningCanvas::OnMouseMoved(wxMouseEvent& event) {
if (index > 0) {
hoverIndex = index;
hoverState = TUNING_HOVER_FREQ;
return;
}
index = glContext->GetTunerDigitIndex(mouseTracker.getMouseX(), 7, bwDP, bwW); // bw
if (index > 0) {
hoverIndex = index;
hoverState = TUNING_HOVER_BW;
return;
if (!index) {
index = glContext->GetTunerDigitIndex(mouseTracker.getMouseX(), 7, bwDP, bwW); // bw
if (index > 0) {
hoverIndex = index;
hoverState = TUNING_HOVER_BW;
}
}
index = glContext->GetTunerDigitIndex(mouseTracker.getMouseX(), 11, centerDP, centerW); // center
if (index > 0) {
hoverIndex = index;
hoverState = TUNING_HOVER_CENTER;
return;
if (!index) {
index = glContext->GetTunerDigitIndex(mouseTracker.getMouseX(), 11, centerDP, centerW); // center
if (index > 0) {
hoverIndex = index;
hoverState = TUNING_HOVER_CENTER;
}
}
hoverIndex = 0;
hoverState = TUNING_HOVER_NONE;
if (!index) {
hoverIndex = 0;
hoverState = TUNING_HOVER_NONE;
} else {
switch (hoverState) {
case TUNING_HOVER_FREQ:
setStatusText("Click or drag a digit to change frequency. Hold shift to disable carry.");
break;
case TUNING_HOVER_BW:
setStatusText("Click or drag a digit to change bandwidth. Hold shift to disable carry.");
break;
case TUNING_HOVER_CENTER:
setStatusText("Click or drag a digit to change center frequency. Hold shift to disable carry.");
break;
}
}
}
void TuningCanvas::OnMouseDown(wxMouseEvent& event) {
@@ -270,7 +287,7 @@ void TuningCanvas::OnMouseReleased(wxMouseEvent& event) {
int hExponent = hoverIndex - 1;
if (hoverState != TUNING_HOVER_NONE && !dragging) {
if (hoverState != TUNING_HOVER_NONE && !dragging && (downState == hoverState) && (downIndex == hoverIndex)) {
StepTuner(hoverState, hExponent, top);
}