DriveLine has a built-in function for drawing simple gauges. An example of it's use is the speedometer on the home screen. (I assume you know that clicking on the Logo area of the home screen shows a speedometer-widget-gauge-thing). Look in file Skin_Frame_Main.xml, there's an object named ImageMainGauge. It has a Paint event that looks like this:
Code:
PaintGauge ImageMainGaugeSpeed 0 140 10 -130 130 %speedexact%
ImageMainGaugeSpeed is the name of the object being drawn on.
0 is the min value
140 is the max value
10 is the increment for the labels on the gauge.
-130 is the starting angle of the gauge.
130 is the ending angle of the gauge.
%speedexact% is the value of the gauge. In this case, you'd want to use %phidget_AnalogInFmt00% or %phidget_AnalogInFmt01%, or whichever corresponds to your sensor.
The colors of the gauge come from the properties of the image object being drawn on.
For a real easy start (if you don't mind temporarily breaking the speedometer), instead of trying to create a new window or frame, just modify the code that's drawing the speedometer. This is a quick and dirty way to see how it works.
Step 1:
In Skin_SkinEvents.XML, under APPEVENT_PHIDGETINPUTCHANGED, add this:
InvalidateObject ImageMainGaugeSpeed
That will tell it that the speedometer object needs to be repainted every time the phidgets change.
Step 2:
In the Skin_Frame_Main.xml file, under the object mentioned earlier, change %speedexact% to the phidget variable you want to monitor, and change the other values accordingly. You probably don't want to mess with the angles at first. Just the min, max, increment, and variable.
When you get that working the way you want it to, then try making a new frame and adding multiple gauges.
Bookmarks