The Track Details pane as currently implemented only supports TrackFile types and their data. This limits users' ability to see details for non-TrackFile objects, so should be refactored!
One idea: ItemDetails class and IHasDetails interface
IHasDetails has a "GetDetails()" method that returns an ItemDetails object
ItemDetails class has some hardcoded fields that need to be filled, like Position, Altitude, object type (e.g. TrackFile or TacticalElement), source, Name, etc. Pretty much all the big common details
ItemDetails should also have a list or dictionary of values that get filled into the Details pane
the Details Pane should automatically conceal unavailable values and reveal available ones
Alternate idea: just create a new pane for TacticalElements and show whichever one is applicable
Will require some refactoring of the ProgramData events, maybe into an EventSystem independent of ProgramData
The Track Details pane as currently implemented only supports TrackFile types and their data. This limits users' ability to see details for non-TrackFile objects, so should be refactored!
One idea: ItemDetails class and IHasDetails interface
Alternate idea: just create a new pane for TacticalElements and show whichever one is applicable