Files
@ 65c134a3d619
Branch filter:
Location: seniordesign-ui/Demo.WindowsMobile/Forms/GPS.cs - annotation
65c134a3d619
2.2 KiB
text/x-csharp
Initial import of mapping source (huge commit)
65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 | using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
namespace Demo.WindowsMobile
{
public partial class GPS : UserControl
{
MainForm Main;
Pen penForSat = new Pen(Color.White, 3.0f);
Brush brushForSatOk = new SolidBrush(Color.LimeGreen);
Brush brushForSatNo = new SolidBrush(Color.Red);
Font fSignal = new Font(FontFamily.GenericSansSerif, 6, FontStyle.Regular);
Brush bSignal = new SolidBrush(Color.Blue);
StringFormat sformat = new StringFormat();
public GPS(MainForm main)
{
InitializeComponent();
Main = main;
sformat.LineAlignment = StringAlignment.Far;
sformat.Alignment = StringAlignment.Center;
}
private void panelSignals_Paint(object sender, PaintEventArgs e)
{
lock(Main.Satellites)
{
if(Main.Satellites.Count > 0)
{
int cc = Width / Main.Satellites.Count;
for(int i = 0; i < Main.Satellites.Count; i++)
{
int str = (int) (2.0 * (panelSignals.Height * Main.Satellites[i].SignalStrength)/100.0);
if(Main.Satellites[i].InSolution)
{
e.Graphics.FillRectangle(brushForSatOk, new Rectangle(i*cc, panelSignals.Height - str, cc, str));
}
else
{
e.Graphics.FillRectangle(brushForSatNo, new Rectangle(i*cc, panelSignals.Height - str, cc, str));
}
e.Graphics.DrawRectangle(penForSat, new Rectangle(i*cc + (int) penForSat.Width/2, 0, cc - (int) penForSat.Width/2, panelSignals.Height));
e.Graphics.DrawString(Main.Satellites[i].SignalStrength + "dB", fSignal, bSignal, new Rectangle(i*cc, 0, cc, (int)(panelSignals.Height-fSignal.Size/2)), sformat);
}
}
}
}
private void GPS_Resize(object sender, EventArgs e)
{
if(Parent != null)
{
status.Height = Parent.Height - 44*5;
}
}
}
}
|