VOID_DataValue: Removed Invoke() call from ctor to avoid "object not set" exceptions. Added a toggle to DoGUIHorizontal(ushort) to disable the precision button.
VOID_DataValue: Removed Invoke() call from ctor to avoid "object not set" exceptions. Added a toggle to DoGUIHorizontal(ushort) to disable the precision button.

--- a/VOID_DataValue.cs
+++ b/VOID_DataValue.cs
@@ -69,7 +69,6 @@
 			this.Label = Label;
 			this.Units = Units;
 			this.ValueFunc = ValueFunc;
-			this.cache = this.ValueFunc.Invoke ();
 		}
 
 		public void Refresh()
@@ -132,14 +131,18 @@
 			GUILayout.EndHorizontal ();
 		}
 
-		public virtual ushort DoGUIHorizontal(ushort digits)
+		public virtual ushort DoGUIHorizontal(ushort digits, bool precisionButton = true)
 		{
 			GUILayout.BeginHorizontal(GUILayout.ExpandWidth(true));
 			GUILayout.Label(this.Label + ":", GUILayout.ExpandWidth(true));
 			GUILayout.FlexibleSpace();
 			GUILayout.Label(this.ValueUnitString(digits), GUILayout.ExpandWidth(false));
-			if (GUILayout.Button ("P")) {
-				digits = (ushort)((digits + 3) % 15);
+			if (precisionButton)
+			{
+				if (GUILayout.Button ("P"))
+				{
+					digits = (ushort)((digits + 3) % 15);
+				}
 			}
 			GUILayout.EndHorizontal();