This Utility converts from one set of units to another. What makes it unique is that you can define ANY conversion desired, making it the last unit conversion utility you will ever need. Once defined, a conversion can be run in either direction simply by filling in the known field and leaving the other empty - ie, push the convert button and the unknown value will be calculated.
Defining a conversion is as easy as providing 8 values. Each conversion can be placed in a user defined Category, and its sort order for display in this Category can be specified with a DisplayOrder. (To force frequently used conversions to be at the top of the Category list.) If DisplayOrder is not used, or are all the same, conversions are displayed in order of the source and destination field names. Additionally a name for the source and destination fields, an "addbefore" constant, a multiplier, and an "addafter" constant as well as the desired result decimal places are all that are needed. The utility will then calculate the result according to the following formula:
Destination field = (((SourceField)+addbefore constant)*multiplier)+addafterconstant
The conversion can run either way, so if the user enters the destination, the source will be calculated as follows:
Source field = (((DestinationField-addafterconstant)/multiplier)-addbeforeconstant
One screen shot shows the definition of a common Farenheit to Centigrade conversion. A second screen shot shows the definition of a Liters to Ounces conversion. Since both constants and the multiplier are always used in the calculation, the constants should be set to 0 and the multiplier to 1 for any conversion where they are not used.
Upon initial launch, the utility will display an expandable list of the defined conversion Catgories included. Clicking on a Category will expand it and show the defined conversions within that Category. Clicking on a conversion will allow it to be run, edited, or deleted. Menu choices on the run screen can be used to edit or delete the conversion. A menu choice on the initial screen allows new conversions to be defined.
Since the definition of each conversion is under user control, it is important that the integrity of each definition be carefully verified by the user.