Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 2361 → Rev 2362

/MKLiveView/v1.0/Source/MainWindow.xaml.cs
2217,14 → 2217,20
}
void _sendWPList()
{
_sendWPList(0);
}
void _sendWPList(int iStart)
{
int iTimeout = 0;
if (serialPortCtrl.Port.IsOpen)
{
if (_clearCopterWPList())
{
for (int i = 0; i < dtWaypoints.Rows.Count; i++)
int k = 1;
for (int i = iStart; i < dtWaypoints.Rows.Count; i++)
{
_sendWayPoint(dtWaypoints.Rows[i],-1,'w');
k = iStart > 0 ? k : -1;
_sendWayPoint(dtWaypoints.Rows[i], k, 'w');
 
_iWPCount = -1;
iTimeout = 0;
2239,6 → 2245,7
break;
}
Dispatcher.Invoke(() => lblWPCount.Content = _iWPCount.ToString());
k++;
}
}
}
2246,6 → 2253,7
Log(LogMsgType.Error, "NOT CONNECTED!");
 
}
 
bool _sendWayPoint(DataRow dr, int index, char command)
{
 
2307,7 → 2315,8
//CamAngle
bData[23] = (byte)Convert.ToInt16(dr[12]);
//Name
byte[] name = ASCIIEncoding.ASCII.GetBytes((string)dr[2]);
string s = index > 0 ? ((string)dr[2]).Substring(0, 1) + index.ToString() : (string)dr[2];
byte[] name = ASCIIEncoding.ASCII.GetBytes(s);
bData[24] = name.Length > 0 ? name[0] : (byte)0;
bData[25] = name.Length > 1 ? name[1] : (byte)0;
bData[26] = name.Length > 2 ? name[2] : (byte)0;
2440,6 → 2449,7
}
}
 
#region ui
/// <summary>
/// Switch between fullscreen and normal window mode
/// save & restore scaling settings
2553,6 → 2563,7
scaleNormalHorizon = UIScaleHorizonSlider.Value;
}
}
#endregion ui
 
/// <summary>
/// read settings from ini-file
3529,10 → 3540,13
{
if (dgvWP.SelectedIndex > -1 && dgvWP.SelectedIndex < dtWaypoints.Rows.Count)
{
if (_wpCount > 0)
_sendWayPoint(dtWaypoints.Rows[dgvWP.SelectedIndex], -1,'s');
else
_sendWayPoint(dtWaypoints.Rows[dgvWP.SelectedIndex], 1,'s');
//if (_wpCount > 0)
// _sendWayPoint(dtWaypoints.Rows[dgvWP.SelectedIndex], -1,'s');
//else
// _sendWayPoint(dtWaypoints.Rows[dgvWP.SelectedIndex], 1,'s');
int index = dgvWP.SelectedIndex;
Thread t = new Thread(() => _sendWPList(index));
t.Start();
 
Dispatcher.Invoke(() => {
DataGridRow row;
3552,33 → 3566,6
});
}
}
private void btnSendActiveWP2_Click(object sender, RoutedEventArgs e)
{
if (dgvWP.SelectedIndex > -1 && dgvWP.SelectedIndex < dtWaypoints.Rows.Count)
{
if (_wpCount > 0)
_sendWayPoint(dtWaypoints.Rows[dgvWP.SelectedIndex], _wpCount,'s');
else
_sendWayPoint(dtWaypoints.Rows[dgvWP.SelectedIndex], 1,'s');
 
Dispatcher.Invoke(() => {
DataGridRow row;
if (_wpIndex > -1 && _wpIndex < dgvWP.ItemContainerGenerator.Items.Count)
{
row = (DataGridRow)dgvWP.ItemContainerGenerator.ContainerFromIndex(_wpIndex);
row.Background = new SolidColorBrush(Colors.Transparent);
row.BorderBrush = new SolidColorBrush(Colors.Transparent);
row.BorderThickness = new Thickness(0);
}
_wpIndex = dgvWP.SelectedIndex;
row = (DataGridRow)dgvWP.ItemContainerGenerator.ContainerFromIndex(_wpIndex);
row.Background = new SolidColorBrush(Color.FromArgb(80, 0, 100, 255));
row.BorderBrush = new SolidColorBrush(Colors.Aqua);
row.BorderThickness = new Thickness(2);
dgvWP.UpdateLayout();
});
}
}
private void dgvWP_MouseUp(object sender, MouseButtonEventArgs e)
{
_dgvWPselectEditRow();