Work in progress.

merge-requests/1/head
Teuniz 2016-01-08 21:36:30 +01:00
rodzic b7ef58289d
commit e03c4f2174
5 zmienionych plików z 189 dodań i 8 usunięć

Wyświetl plik

@ -35,7 +35,7 @@
#define PROGRAM_NAME "DSRemote"
#define PROGRAM_VERSION "0.31_1601071932"
#define PROGRAM_VERSION "0.31_1601082135"
#define MAX_PATHLEN 4096

Wyświetl plik

@ -1834,6 +1834,7 @@ void UI_Mainwindow::helpButtonClicked()
void UI_Mainwindow::show_howto_operate()
{
QMessageBox msgBox;
msgBox.setStandardButtons(QMessageBox::Close);
msgBox.setText(
"Use the mousewheel to change the dials. In order to simulate a push on a dial,"
"click on it with the right mouse button.\n"
@ -3348,7 +3349,7 @@ void UI_Mainwindow::select_fft_hzdiv_20()
devparms.math_fft_hscale = val;
strcpy(str, "FFT: ");
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), val, 2);
@ -3386,7 +3387,7 @@ void UI_Mainwindow::select_fft_hzdiv_40()
devparms.math_fft_hscale = val;
strcpy(str, "FFT: ");
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), val, 2);
@ -3420,7 +3421,7 @@ void UI_Mainwindow::select_fft_hzdiv_80()
devparms.math_fft_hscale = val;
strcpy(str, "FFT: ");
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), val, 2);
@ -3456,7 +3457,7 @@ void UI_Mainwindow::select_fft_hzdiv_100()
devparms.math_fft_hscale = val;
strcpy(str, "FFT: ");
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), val, 2);
@ -3494,7 +3495,7 @@ void UI_Mainwindow::select_fft_hzdiv_200()
devparms.math_fft_hscale = val;
strcpy(str, "FFT: ");
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), val, 2);

Wyświetl plik

@ -2538,6 +2538,34 @@ void UI_Mainwindow::shift_page_left()
if(devparms.math_fft && devparms.math_fft_split)
{
devparms.math_fft_hcenter -= devparms.math_fft_hscale;
if(devparms.math_fft_hcenter <= 0.0)
{
devparms.math_fft_hcenter = 0.0;
}
if(devparms.modelserie == 6)
{
sprintf(str, ":CALC:FFT:HCEN %e", devparms.math_fft_hcenter);
}
else
{
sprintf(str, ":MATH:FFT:HCEN %e", devparms.math_fft_hcenter);
}
set_cue_cmd(str);
strcpy(str, "FFT center: ");
convert_to_metric_suffix(str + strlen(str), devparms.math_fft_hcenter, 0);
strcat(str, "Hz");
statusLabel->setText(str);
waveForm->update();
return;
}
@ -2620,6 +2648,34 @@ void UI_Mainwindow::shift_page_right()
if(devparms.math_fft && devparms.math_fft_split)
{
devparms.math_fft_hcenter += devparms.math_fft_hscale;
if(devparms.math_fft_hcenter >= (devparms.current_screen_sf * 0.4))
{
devparms.math_fft_hcenter = devparms.current_screen_sf * 0.4;
}
if(devparms.modelserie == 6)
{
sprintf(str, ":CALC:FFT:HCEN %e", devparms.math_fft_hcenter);
}
else
{
sprintf(str, ":MATH:FFT:HCEN %e", devparms.math_fft_hcenter);
}
set_cue_cmd(str);
strcpy(str, "FFT center: ");
convert_to_metric_suffix(str + strlen(str), devparms.math_fft_hcenter, 0);
strcat(str, "Hz");
statusLabel->setText(str);
waveForm->update();
return;
}
@ -2690,7 +2746,59 @@ void UI_Mainwindow::zoom_in()
{
char str[256];
if((device == NULL) || (!devparms.connected) || (devparms.activechannel < 0))
if(device == NULL)
{
return;
}
if(!devparms.connected)
{
return;
}
if(devparms.math_fft && devparms.math_fft_split)
{
if(devparms.modelserie == 6)
{
return;
}
if(!dblcmp(devparms.math_fft_hscale, devparms.current_screen_sf / 200.0))
{
return;
}
if(!dblcmp(devparms.math_fft_hscale, devparms.current_screen_sf / 20.0))
{
devparms.math_fft_hscale = devparms.current_screen_sf / 40.0;
}
else if(!dblcmp(devparms.math_fft_hscale, devparms.current_screen_sf / 40.0))
{
devparms.math_fft_hscale = devparms.current_screen_sf / 100.0;
}
else
{
devparms.math_fft_hscale = devparms.current_screen_sf / 200.0;
}
sprintf(str, ":MATH:FFT:HSC %e", devparms.math_fft_hscale);
set_cue_cmd(str);
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), devparms.math_fft_hscale, 0);
strcat(str, "Hz/Div");
statusLabel->setText(str);
waveForm->update();
return;
}
if(devparms.activechannel < 0)
{
return;
}
@ -2802,7 +2910,59 @@ void UI_Mainwindow::zoom_out()
{
char str[256];
if((device == NULL) || (!devparms.connected) || (devparms.activechannel < 0))
if(device == NULL)
{
return;
}
if(!devparms.connected)
{
return;
}
if(devparms.math_fft && devparms.math_fft_split)
{
if(devparms.modelserie == 6)
{
return;
}
if(!dblcmp(devparms.math_fft_hscale, devparms.current_screen_sf / 20.0))
{
return;
}
if(!dblcmp(devparms.math_fft_hscale, devparms.current_screen_sf / 200.0))
{
devparms.math_fft_hscale = devparms.current_screen_sf / 100.0;
}
else if(!dblcmp(devparms.math_fft_hscale, devparms.current_screen_sf / 100.0))
{
devparms.math_fft_hscale = devparms.current_screen_sf / 40.0;
}
else
{
devparms.math_fft_hscale = devparms.current_screen_sf / 20.0;
}
sprintf(str, ":MATH:FFT:HSC %e", devparms.math_fft_hscale);
set_cue_cmd(str);
strcpy(str, "FFT scale: ");
convert_to_metric_suffix(str + strlen(str), devparms.math_fft_hscale, 0);
strcat(str, "Hz/Div");
statusLabel->setText(str);
waveForm->update();
return;
}
if(devparms.activechannel < 0)
{
return;
}

18
utils.c
Wyświetl plik

@ -1904,6 +1904,24 @@ int strtoipaddr(unsigned int *dest, const char *src)
}
int dblcmp(double val1, double val2)
{
double diff = val1 - val2;
if(diff > 1e-9)
{
return 1;
}
else if(-diff > 1e-9)
{
return -1;
}
else
{
return 0;
}
}

Wyświetl plik

@ -95,6 +95,8 @@ double round_down_step125(double, double *); /* Rounds the value down to 1-2-
int strtoipaddr(unsigned int *, const char *); /* convert a string "192.168.1.12" to an integer */
int dblcmp(double, double); /* returns 0 when equal */
#ifdef __cplusplus
} /* extern "C" */
#endif