Added override fields to database
Added pwm override wifi command tag
Added in default value 255 to new pwm override columns
Added in override id's for the channels
Added more static override defines
Added skeleton function for processing pwm overrides
Added ShortWithLabelOverride class
Added ShortWithLabelOverride variables to controller class

Added function calls to set the override values for the pwm ports
Process override response from controller

added in capability to send override command in host class
added in MessageCommands for override command sending
Store override values in database

Added in function to get override values from the controller
Added ability to store override values parsed from xml
Updated database version to enable new fields

Builds prior to this and after storing the override data will fail due to missing database fields.
Updated revision comment in file
cleaned up override code

moved check to see if pwm port is overriden to a static function inside the controller class. the code was saving the override value as the actual value and then saving the override value in the database. changed the code around to be storing the actual value and the override value in their respective columns (like they should be). then when we display the values, have the new static functions determine what value to be displayed and indicate if the channel is overridden.

currently, only the ap and dp values work like this. the other pwm values will only display their original values.
Added in PWM Expansion override displaying
Added in Radion Override displaying
Added in AI override displaying
Fixed incorrect return of pwm value

The logic for using the override and actual value was flipped.
Added in displaying pwm override popup

Displays popup that shows the current value. It allows you to change the value with a slider and it updates the percentage in the window. You can then either Set the new value, Clear the Override or cancel the dialog. The dialog itself does not indicate if the override is currently set, you must look at the main window to see if it is set.
Only DP and AP handle this request
Handle override response from the controller

Response comes back like the memory commands. It responds <P#>MSG</P#>
Where # is the channel that was altered
and MSG is the response either OK or ERR

When the response is received, the app says to refresh the screen to update.
Consider automatically refreshing the screen for the user.