The QA40xPlot Changelog
--------------------------------------------
This changelog shows the changes made for each version
--------------------------------------------
v 1.2.6 1/24/26
- add a QA40x readme on ports
- read the dc supply voltage, dc current, and temperature on device init
- put them all upper-right updating on each measurement
- have scope use bin-center frequencies
- add ability to edit Gotten plot name
- add a default data folder setting
- finally fix phase upwrapping
- add early group delay display
- try out second Y axis for group delay
- rewrite/repair averaging for Frequency Response tests
- update frequency response messaging
- add Shift-Click to on/off a group of legend labels
v 1.2.5 1/18/2026
- add space to run/start/get... buttons
- update mouse cursor in frequency response test when test runs
- add WhatsNew file to the delivery
- add a Residual display option to the Scope test
- don't allow page switching during a run
- improve scope Fit and PinToRange to support 5 digit (smaller) values
- add options to scope Residual Plot (1.2.5.4)
v 1.2.4 1/13/2026
- fixup selection of Transparent in color picker
- improve gain curve frequency selection
- add F6,F7 accelerators for start/stop
- swap Start to Run for spectrum, imd, and scope tests
- support untethered serializable UOM
- improve generator voltage messaging
- add a continuous run button to the Response/Gain/Crosstalk/Impedance tests
- upgrade esthetics of voltage unit button
- add Whats New file and button
v 1.2.3 1/4/2026
- add dates to changelog v tags
- nearly finish implementing thd vs amplitude update
- replace THD vs Amplitude test with new one with multi-frequency support
- support dual generator even with wave file in scope test
- make the miniplots movable
- use ZIP compression instead of Gzip for saved tests
- after testing with box5 remove the fourth pole from RIAA emphasis/deemphasis
- retain current graph settings when saving tests
- bump amp sweep data version # to 2
- add copy to all tests button to test info dialog
- add wave # to test message display
v 1.2.2 12/28/2025
- add phase axis settings on frequency response test
- add WaveFile generator option to use wav file (spectrum, scope)
- add RIAAChirp generator waveform for riaa preemphasis
- fix All On button to not enable Phase in sweep
- change expander icon for quick page buttons hiding
- simplify tab info dialog to remove unused left/right stuff
- add RIAA frequency deemphasis code
- change 'show miniplots' action to mean hide/show during sweeps
- alter defaults to use auto-attenuation and enable generators
- add riaa compensation files
- add biquad explanation to AudioMath.pdf
- some improvements to the online help
- place attenuation options in all tests
- add add/delete entries buttons to combodrop lists
- rename tab info to test info in each page
- add time delay statistic in oscilloscope test data summary
v 1.2.1 12/18/2025
- add Save Configuration as Default command to menu
- add Settings page accelerator
- fix startup internal harmonic issue
- allow option to refresh noise floor value periodically
- add Dn columns to new THD vs Freq
- remove old THD vs Freq and use new Opamp version
- fix COM exceptions in menu mode
- add Quick Page buttons
- totally change noise detection in THD vs Freq for startup issues
- repair initial value for Input Range to force relay delay
- switch to Menus as default setting
- add checkbox switch to plot legends for line display
- build ComboDrop control for brevity and future
- change gain test initializations and fft size/rate
- repair fittodata off-by-one
v 1.2.00 12/8/2025
- add option to replace the tabbed gui with menus
- improve app esthetics by changing plot boundaries
- retain current page selection in configuration
v 1.1.47 12/6/2025
- change the smoothing algorithm to center it
- add a smoothing option to the frequency response chirp tests
- truncate chirped high frequency noisy part
- add expanders to cursor section
- fix measured impedance phase math
v 1.1.46 12/5/2025
- serious refactor of the graph Y-axis format support
- addition of dBr options to the Y-axis format choices
- remove distortion component from SNR math
- hide response options that aren't relevant to the test type
- improve FitToData in all tests
-   better recognition of plot Yaxis formats
-   don't fit unviewed plot lines in sweeps
-   fully support dBr in most tests
- partial implementation of dBr for discrete sweeps
v 1.1.45 11/20/2025
- support multiple file select for GET operation
- don't invert color when mouseover color boxes
- refactor frequency response tab for code readability
- add smoothing to frequency response and gain chirp results
- improve graph background default colors
- repair averages accelerator
- implement units for frequency response test
v 1.1.44 11/17/2025
- switch from scottplot scatter to signalxy plots for massive graph drawing speedup
- remove graph-limiting from spectrum and imd plots
- early support for offset in frequency response
v 1.1.43 11/15/2025
- improve pixel tracking in the on-screen markers
- make bin-indexing consistent
- add scrollbars to right columns in tabs
v 1.1.42 11/13/2025
- add noise bandwidth setting for thd+n and noise floor measurements
- change default bandwidth to 20KHz for most tests
- do a second gain curve for higher accuracy auto-attenuation in sweeps
- support non-qa430 use of opamp.freq test
- add right channel display to opamp test
v 1.1.41 11/11/2025
- add index display to the Palette display
- show palette indices in the legend tooltips
- make tab headings narrower when using themes
- support |and _ for pos/neg supply delimiters in opamp test
- support multiple voltage opamp sweep
- support generator direction in opamp sweep
v 1.1.40 11/7/2025
- replace the stock legend with a movable cleaner legend
- add a "ShowLegend" option to the tests
- add a Setting to enable the QA430 gui
- begin opamp amplitude sweep
v 1.1.39 11/4/2025
- add Offset options to tab info
- change distortion/noise bandwidth to 1/2 octave
- improve tab info dialog box layout
- fixup palette choices for multitests
v 1.1.38 11/2/2025
- Opamp test
 - get cursor display correct
 - add palette edit button and scrollbar
v 1.1.37 11/1/2025
- updates to Opamp test for better variance selection
- fixup configuration to load Opamp variables
v 1.1.36 10/30/2025
- better reflect the line color to data box for gotten data
- calculate amplitude sweep noise floor using 0 attenuator instead of 6
- early pass implementing opamp sweep tests
- add option to change attenuator safety margin
v 1.1.35 10/27/2025
- fix the fail to load window rect
- add click-to-image for qa430 config
v 1.1.34 10/17/2025
- add the 4 sense outputs to QA430 info
v 1.1.33
- add qa430 visual selector
- add THD+N line to the two sweeps tests
v 1.1.32
- add legend entries for the lines drawn
- support passing a startup cfg file name on command line
- add really early QA430 support
v 1.1.31
- implement external audio support at least for usb devices
- autocheck the left channel on new "Get" file requests
- hide settings that are unused (noise weighting, external audio)
- add documentation for external audio use
v 1.1.30
- check for/save-load maximized window state
- add noise weighting A,C, and Z=none methods
V 1.1.29
- add edit palette buttons to spectrum, IMD, and scope tests
- propagate palette changes on clicks
- add a crosstalk test to the Frequency Response group
  note this is not precise with chirp at low levels of crosstalk
V 1.1.28
- save the fft average when averaging is enabled (spectrum and IMD)
- save series data in base64 rather than ascii for space savings
- minor palette editor improvements
V 1.1.27
- add a plot line editor in Settings
- fixup display of selected color in color picker
V 1.1.26
- add a debugging option to test distortion values (see system settings)
- fix/swap IMD table labels
- allow data summary boxes to be dragged around
- start speed-up of spectrum/imd plotting
- add AudioMath.pdf to explain calculations
v 1.1.25
- use the 3 standard IMD definitions for all IMD tests
  this implements, DIN (modulated high F), CCIF (two nearby fundamentals), and general 2-tone IMD
v 1.1.24
- fix the showpoints not showing in freqresp
- use standard IMD definition for smpte/din and others
v 1.1.23
- improve dark and light dialog renditions on switch
- repair right channel individual harmonics/imds displayed values
- add early sinad math
v 1.1.22
- huge upgrade to the color picker to change dynamically
- seriously improve color selection
- add two configurations (LightView and DarkView) as examples
- add pin graph range option to graph settings
- fix mic compensation low-end bug
v 1.1.21
- add a couple of fields to Settings display
- improve localization of values shown in data summary box and entries
- support flip of percent/v in data summary box also when stopped and in ghosts
- slight change to thd calculation for spectrum
- change intermodulation distortion summary values to the right values
v 1.1.20
- add microphone compensation to response test and settings
	this uses linear frequency interpolation of the loaded compensation file
- add data summary box to the scope test
	very preliminary, but working
- line up gui fields more uniformly
- fix (more) .using amplifier load. for Impedance test
- let user set windowing in frequency response test
- improve .get. display putting name on its own line
- improve accuracy of output gain determination for frequency response test
v 1.1.19
- start using the 4 term version # from the installer
- Repair the constant overlaying for both THDvsAmp and THDvsFreq
- add a bunch of tooltips including to the data summary box
- improve binning of sweep frequencies
v 1.1.18
- fix left/right swap of noise floor
- repair up-down control positioning on-screen
- save current window size and position in configuration
- enhance color picker transparency display
- enhance plot color choices
- add multitone (30 logarithmic spaced sines) waveform 
   warning->much higher total power than a sine wave
- improve auto attenuation math
- fix enbw missing in noise floor and thd+n math
v 1.1.17
- add unit conversion to voltage inputs (not serialized yet)
v 1.1.16
- fix the impedance cursor phase math
- swap to not using deploy suffix but set all git to binary
v 1.1.15
- enable saving loaded tests
- add plot colors to the Get settings
- enable color selection via a color picker dialog
- refactor out otherset class
- add this file (Changelog.txt) to the distribution and link to it
- create a ClickOnce installation and use github.io for it
v 1.1.14
- repair right channel math error
- swap up/down buttons on updown control
- repair Spectrum signal expander binding
v 1.1.13
- add inductor/capacitor cursor for impedance test
- add ability to select a theme
- swapped out updown for a usercontrol
- alphabetize settings
- add expanders to the UI portion of the screen
- move miniplots to a separate window
- swap input channels if QA402
v 1.1.12
- increase max # of averages to 20
- add 88,16K fft sizes
- swap amp load resistance to correct ZReference on impedance test
- do averaging in the frequency domain
- improve translucency in plot lines
- add graph background color selection
v 1.1.11
- fix load of a saved tab half-erasing the get list
- swap to more standard colors for the get list
v 1.1.10
- repair IMD signal to noise math when a frequency is near 20KHz
- repair tab save never highlights in THD vs amp and THD vs frequency
- repair unit name in THD vs amp Y axis
- start capturing on perceived data start rather than immediately
- remove double-scan for gain tests and instead correctly
  allow time for circuit to settle after relays switch
  based on empirical test of relay vs signal
v 1.1.9
- refine the esthetics, like boundary of graph
- support settable background color
- refactor most of the gui xaml by using subcontrols
v 1.1.8
- totally refactor the usb/rest code to use an interface & factory
-- yank out REST use of 'internal' oscillators and queries
- remove redundant color code to slim binding way down
- fix the autorange display to show both values
v 1.1.7
- support multiple 'get' files
-- upgrade all tests to enable multiples
-- allow removing entries
-- display r/l for each entry
-- add a list gui
v 1.1.6
- lots of cleanup to the usb/rest connections to reduce overhead
v 1.1.5
- repair popup windows initial visual state
- swap to manual powerline setting
v 1.1.4
- multiple load/save improvements
-- inclusion in window fit calculation
-- improved color choices/esthetics
-- support for data summaries
v1.1.3
- finish tab load/save implementation as "Other"
- add tab info display to each tab window
- add a REST support layer to allow either interface
v 1.1.1, 1.1.2
- start tab load/save implementation
- improve settling issues when noise measurement
- set the device to Attenuation when a test finishes so the device stays attenuated
- improvements to the thd/snr/noise algorithms
v 1.1.0
- First version with direct to USB support

