
================================================================================
ToDo
================================================================================
AUDIO GAIN
 Maybe I can be wrong in some strange situation
 but I think that AudioGain < 1 is not useful and also dangerous
 The user is pushed to increases the PMT voltage to calibrate  
 and the signal saturates because there is a wardware voltage limit
 (in hardware some Volts and in software +/- 32768)

MAX VALUE 
 Max is difficult to trim when values are about 1000 (and maybe also with other values) 
 Max value not corresponding to cps scale
 ------------------------------------------------------------------------
 How to improve TextBox trimmings
 Changing the properties list to "groups" at the botton of the list
 you will find all the TextBox properties relative to mouse wheel changes
 and arrows and mouse and MinMax values and increment steps.
 It is also possible to change those props at runtime, for example when
 clicking the CPS button... 
 ------------------------------------------------------------------------ 

CONTROLS TEXT
 The checkbox in the "Autosave settings form" near the "OK" has a strange text

CONTROLS POSITIONS
 - Button IIR Filter sizeX is 1 pixel less than the other burrons
 - If closing from the bottom Window bar then reopening the main window
    goes out of screen to the upper-left

CPS VALUE
It would be better to limit the precision of the status bar Cps value 
to one or max two decimals (more stable and so more easy to read)





================================================================================
ToDo (ideas)
================================================================================
Start with Xlog pressed ?

Why not restore Messages "Limited By AudioGain" and "Limited By Bins" ?

Reduce Linearization range ? 
Reduce Linearization range at high energies ?

Calculate the integral and show the net counts in a peak, 
i.e. counts that are above the natural background curve.

Send to ThereminoGeiger the counts of the selected area (isotope selective alarms)

Tool: Attenuations (energy/material/thickness attenuation calculator) 

Peak fitting

Test if a "Recursive Deconvolution" can do a better "Resolution Compensation" 
(but not if it is too slow)

Retry Graphing 3D (but using colors from green to red)



================================================================================
ToDo (old - not important - difficult or strange)
================================================================================
Test if it is possible to increase the CSspline creation speed 
 removing support points and interpolations

Test CustomControls delays (try to eliminate dispose)

Reduce Form_Tomy dimensions to 400 x 320 for better SNAP

Correct Combo "text align center" and save as image

Correct "Pulses per sec" with the "Integration time" (AudioIn totalpulses)

Access to system mixer and audio props

Tool Strip
 - Record audio file ( get audio name / start record )
 - Stop record
Menu file
 - Load audio file   ( uncheck RUN / do max speed load with actual parameters )


================================================================================
ToDo (eliminated)
================================================================================
 MAIN FORM MIN SIZE
 - Increase the min size to 800 (width)
   so the increased width allows to increase the width of some button like:
    - AutoSave
    - Browse Spectrum
    - BKG

 - Translate S%, N1% and N2% ---> 20 pixel in the right direction


================================================================================
DONE
================================================================================
ERRORS if moving mouse in the left part of the graph (with left mouse pressed) 
 Class Spectrometer 
    Function EnergyToBin
      changed: If e = 0 Then Return 0
         with: If e <= 0 Then Return 0

SLIDERS and numerical TextBoxes  (more aligned and easiest to understand)
 txt_EqMaster txt_LinMaster and txt_Zoom RectangleColor = Transparent
 txt_EqMaster txt_LinMaster and txt_Zoom Xsize = 32
 txt_EqMaster and tk_EqMaster min value = -999
 tk_EqMaster location = 575; 21
 txt_EqMaster location = 575; 127
 tk_LinMaster location = 575; 357
 txt_LinMaster location = 575; 463
 tk_Zoom location = 462; 484
 txt_Zoom location = 567; 500

ISOTOPE LIST SELECTION  (using the Left Button on the graph)
 Form_Main.MyListView1.HideSelection = False
 Modifyed functions: PBox_Spectrum_MouseDown and PBox_Spectrum_MouseMove
 Added new function: SelectIsotopeLine




FOLDERS
 - The app saves and reads the INI file not from the extra folder but from
    the executable folder - maybe this has generated the "espanol not found" 
 - I do not know when this is happened but I have found a Log.txt generated
    from ThereminoMCA in the folder User / Livio / Documents
    >>> People do not loves software writing outside its folder <<<

ISOTOPE IDENTIFIER BUTTON
 - When closing the form Isotope Identifier it will be better to uncheck the button
   or in the next run the form will reopen also if it was closed
 - It is better to use same beahviour for this button and for 
   the equalizer an pulse buttons so do not use a check box 
   (or use a check box for all the buttons)

STARTUP DEFAULT PROPS ( also when starting without INI file )
 - Equalizer and linearizer cursors are orange (change 1 to 0)
 - Zoom to see from 0 to 1600 KeV (not 3000 or 4000...)
 - Pulse Shape Base = 10 (not 1)
 - Bins = x1
 - Start with window not maximized and with Width 800 and Height 640
 - Equalizer pulse visualizer docked to the right
 - Include all the most common isotopes in the isotope list (but check only 4 of them)
 (to avoid to change starting properties normally I update the zip file
   with the new files only leaving unmodfyed INI and other "service" files)

DOWNLOADS with "some items not found.." 
 - The first run this function has triggered without missing files
 - When changing to franch language the downloaded file was empty
 - After some runs OK now I got a message "Language_ESP.txt not found" EVERY run
  
  The download progress bar is very nice and also "professional" but our
  attempt is to be better than "professional" applications so I think
  that it is better (and for many axpects more reliable) do not use downloads
  
  If some file is missed then there is a great problem and it is better 
  to download a completelely new zip file
 
  >>> People do not loves software attempts to access internet <<<
  >>> There is also the danger that this will be interpreted 
           as an attempt to tie users to a producer or a brand <<<
  >>> Open source software should be monolithic, all files should 
       be included with the source files <<<

LANGUAGE Italian (maybe not important if button sizes are increased)
 "Tempo integ. (sec)" ---> "Tempo int. (sec)"
 "Salva fondo" ---> "Fondo" 

INVISIBLE IMAGES
  Save as image with invisible AutoSave, Browse Spectrum and Max values
  >>> I will try to correct this but it is difficult <<<

ISOTOPE STRINGS WITH "." or ","
When reading the isotopes energy strings coming from the isotope list
there are problems in countries using "." or "," as decimal separator.
To avoid problems all the conversion from user strings to Single must be done as follows.
ValueSingle = CSng(Val(ValueString.Replace(",", ".").Trim))

ABOUT FORM
 Remove engineering@theremino.com or (if you prefer) add also your and Tomy mails


Label "Max noise" 1 pixel disaligned to the right

The folder structures for sources and no-sources are perfect! 

Max slope button and IIR filter button text are aligned

The About Form names are OK

Reopening the application the form position and size are restored OK 
and also the position and visibility of the equalizer and pulse visualizer 
are restored OK

In the folder Docs of the version "With Sources" the following files are missed:
SignalConditioning_JAP.pdf
StartingGuide_JAP.pdf
TestAudioSignal_JAP.pdf

CustomControlsLib.dll and other files locations are OK

 - Button IIR Filter is 1 or 2 pixel disaligned to right 

