Zastone/HPG-68D/ChannelMsg.cs
2024-06-26 00:21:14 +02:00

1382 lines
70 KiB
C#

// Decompiled with JetBrains decompiler
// Type: HPG_68D.ChannelMsg
// Assembly: HPG-68D, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 530C99A8-8EEF-42C8-8A74-66FDE7B322C3
// Assembly location: C:\Program Files (x86)\HONGKAIDE\HPG-68D\HPG-68D.exe
using HPG_68D.My;
using Microsoft.VisualBasic;
using Microsoft.VisualBasic.CompilerServices;
using System;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Runtime.CompilerServices;
using System.Windows.Forms;
namespace HPG_68D
{
[DesignerGenerated]
public class ChannelMsg : Form
{
private static ArrayList __ENCList = new ArrayList();
private IContainer components;
[AccessedThroughProperty("ChannelMsgDataGridView")]
private DataGridView _ChannelMsgDataGridView;
[AccessedThroughProperty("Panel1")]
private Panel _Panel1;
[AccessedThroughProperty("Button3")]
private Button _Button3;
[AccessedThroughProperty("Button2")]
private Button _Button2;
[AccessedThroughProperty("Button1")]
private Button _Button1;
[AccessedThroughProperty("Button信道编辑")]
private Button _Button信道编辑;
[AccessedThroughProperty("ColumnRxFreq")]
private DataGridViewTextBoxColumn _ColumnRxFreq;
[AccessedThroughProperty("Column差频方向")]
private DataGridViewComboBoxColumn _Column差频方向;
[AccessedThroughProperty("ColumnTxFreq")]
private DataGridViewTextBoxColumn _ColumnTxFreq;
[AccessedThroughProperty("Column亚音解码类型")]
private DataGridViewComboBoxColumn _Column亚音解码类型;
[AccessedThroughProperty("Column亚音解码")]
private DataGridViewComboBoxColumn _Column亚音解码;
[AccessedThroughProperty("Column亚音编码类型")]
private DataGridViewComboBoxColumn _Column亚音编码类型;
[AccessedThroughProperty("Column亚音编码")]
private DataGridViewComboBoxColumn _Column亚音编码;
[AccessedThroughProperty("Column发射功率")]
private DataGridViewComboBoxColumn _Column发射功率;
[AccessedThroughProperty("Column扫描添加")]
private DataGridViewComboBoxColumn _Column扫描添加;
[AccessedThroughProperty("Column带宽")]
private DataGridViewComboBoxColumn _Column带宽;
[AccessedThroughProperty("Column可选信令")]
private DataGridViewComboBoxColumn _Column可选信令;
[AccessedThroughProperty("Column更多")]
private DataGridViewButtonColumn _Column更多;
[DebuggerNonUserCode]
static ChannelMsg()
{
}
[DebuggerNonUserCode]
public ChannelMsg()
{
Deactivate += ChannelMsg_Deactivate;
FormClosing += ChannelMsg_FormClosing;
Load += ChannelMsg_Load;
__ENCList.Add(new WeakReference(this));
InitializeComponent();
}
[DebuggerNonUserCode]
protected override void Dispose(bool disposing)
{
if (disposing && components != null)
components.Dispose();
base.Dispose(disposing);
}
[DebuggerStepThrough]
private void InitializeComponent()
{
var gridViewCellStyle1 = new DataGridViewCellStyle();
var gridViewCellStyle2 = new DataGridViewCellStyle();
var componentResourceManager = new ComponentResourceManager(typeof(ChannelMsg));
var gridViewCellStyle3 = new DataGridViewCellStyle();
var gridViewCellStyle4 = new DataGridViewCellStyle();
var gridViewCellStyle5 = new DataGridViewCellStyle();
var gridViewCellStyle6 = new DataGridViewCellStyle();
ChannelMsgDataGridView = new DataGridView();
Panel1 = new Panel();
Button3 = new Button();
Button2 = new Button();
Button1 = new Button();
Button信道编辑 = new Button();
ColumnRxFreq = new DataGridViewTextBoxColumn();
Column差频方向 = new DataGridViewComboBoxColumn();
ColumnTxFreq = new DataGridViewTextBoxColumn();
Column亚音解码类型 = new DataGridViewComboBoxColumn();
Column亚音解码 = new DataGridViewComboBoxColumn();
Column亚音编码类型 = new DataGridViewComboBoxColumn();
Column亚音编码 = new DataGridViewComboBoxColumn();
Column发射功率 = new DataGridViewComboBoxColumn();
Column扫描添加 = new DataGridViewComboBoxColumn();
Column带宽 = new DataGridViewComboBoxColumn();
Column可选信令 = new DataGridViewComboBoxColumn();
Column更多 = new DataGridViewButtonColumn();
((ISupportInitialize) ChannelMsgDataGridView).BeginInit();
Panel1.SuspendLayout();
SuspendLayout();
ChannelMsgDataGridView.AllowUserToAddRows = false;
ChannelMsgDataGridView.AllowUserToDeleteRows = false;
ChannelMsgDataGridView.AllowUserToResizeColumns = false;
ChannelMsgDataGridView.AllowUserToResizeRows = false;
gridViewCellStyle1.Alignment = DataGridViewContentAlignment.MiddleCenter;
ChannelMsgDataGridView.AlternatingRowsDefaultCellStyle = gridViewCellStyle1;
gridViewCellStyle2.Alignment = DataGridViewContentAlignment.MiddleCenter;
gridViewCellStyle2.BackColor = SystemColors.Control;
gridViewCellStyle2.Font = new Font("宋体", 9f, FontStyle.Regular, GraphicsUnit.Point, 134);
gridViewCellStyle2.ForeColor = SystemColors.WindowText;
gridViewCellStyle2.SelectionBackColor = SystemColors.Highlight;
gridViewCellStyle2.SelectionForeColor = SystemColors.HighlightText;
gridViewCellStyle2.WrapMode = DataGridViewTriState.True;
ChannelMsgDataGridView.ColumnHeadersDefaultCellStyle = gridViewCellStyle2;
componentResourceManager.ApplyResources(ChannelMsgDataGridView, "ChannelMsgDataGridView");
ChannelMsgDataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
ChannelMsgDataGridView.Columns.AddRange(ColumnRxFreq, Column差频方向, ColumnTxFreq, Column亚音解码类型, Column亚音解码, Column亚音编码类型, Column亚音编码,
Column发射功率, Column扫描添加, Column带宽, Column可选信令, Column更多);
ChannelMsgDataGridView.Name = "ChannelMsgDataGridView";
gridViewCellStyle3.Alignment = DataGridViewContentAlignment.MiddleCenter;
gridViewCellStyle3.BackColor = SystemColors.Control;
gridViewCellStyle3.Font = new Font("宋体", 9f, FontStyle.Regular, GraphicsUnit.Point, 134);
gridViewCellStyle3.ForeColor = SystemColors.WindowText;
gridViewCellStyle3.SelectionBackColor = SystemColors.Highlight;
gridViewCellStyle3.SelectionForeColor = SystemColors.HighlightText;
gridViewCellStyle3.WrapMode = DataGridViewTriState.True;
ChannelMsgDataGridView.RowHeadersDefaultCellStyle = gridViewCellStyle3;
ChannelMsgDataGridView.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.DisableResizing;
gridViewCellStyle4.Alignment = DataGridViewContentAlignment.MiddleCenter;
ChannelMsgDataGridView.RowsDefaultCellStyle = gridViewCellStyle4;
ChannelMsgDataGridView.RowTemplate.Height = 23;
componentResourceManager.ApplyResources(Panel1, "Panel1");
Panel1.BorderStyle = BorderStyle.Fixed3D;
Panel1.Controls.Add(ChannelMsgDataGridView);
Panel1.Name = "Panel1";
componentResourceManager.ApplyResources(Button3, "Button3");
Button3.Name = "Button3";
Button3.UseVisualStyleBackColor = true;
componentResourceManager.ApplyResources(Button2, "Button2");
Button2.Name = "Button2";
Button2.UseVisualStyleBackColor = true;
componentResourceManager.ApplyResources(Button1, "Button1");
Button1.Name = "Button1";
Button1.UseVisualStyleBackColor = true;
componentResourceManager.ApplyResources(Button信道编辑, "Button信道编辑");
Button信道编辑.Name = "Button信道编辑";
Button信道编辑.UseVisualStyleBackColor = true;
gridViewCellStyle5.Alignment = DataGridViewContentAlignment.MiddleCenter;
ColumnRxFreq.DefaultCellStyle = gridViewCellStyle5;
componentResourceManager.ApplyResources(ColumnRxFreq, "ColumnRxFreq");
ColumnRxFreq.MaxInputLength = 9;
ColumnRxFreq.Name = "ColumnRxFreq";
ColumnRxFreq.Resizable = DataGridViewTriState.False;
ColumnRxFreq.SortMode = DataGridViewColumnSortMode.NotSortable;
Column差频方向.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column差频方向, "Column差频方向");
Column差频方向.Items.AddRange("OFF", "DUP -", "DUP +");
Column差频方向.Name = "Column差频方向";
componentResourceManager.ApplyResources(ColumnTxFreq, "ColumnTxFreq");
ColumnTxFreq.MaxInputLength = 9;
ColumnTxFreq.Name = "ColumnTxFreq";
ColumnTxFreq.SortMode = DataGridViewColumnSortMode.NotSortable;
Column亚音解码类型.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column亚音解码类型, "Column亚音解码类型");
Column亚音解码类型.Items.AddRange("OFF", "TONE", "CTCSS", "DCS");
Column亚音解码类型.Name = "Column亚音解码类型";
Column亚音解码.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column亚音解码, "Column亚音解码");
Column亚音解码.Items.AddRange("OFF", "67.0", "69.3", "71.9", "74.4", "77.0", "79.7", "82.5", "85.4", "88.5", "91.5", "94.8", "97.4", "100.0",
"103.5", "107.2", "110.9", "114.8", "118.8", "123.0", "127.3", "131.8", "136.5", "141.3", "146.2", "151.4", "156.7", "159.8", "162.2",
"165.5", "167.9", "171.3", "173.8", "177.3", "179.9", "183.5", "186.2", "189.9", "192.8", "196.6", "199.5", "203.5", "206.5", "210.7",
"218.1", "225.7", "229.1", "233.6", "241.8", "250.3", "254.1", "D017N", "D023N", "D025N", "D026N", "D031N", "D032N", "D036N", "D043N",
"D047N", "D050N", "D051N", "D053N", "D054N", "D065N", "D071N", "D072N", "D073N", "D074N", "D114N", "D115N", "D116N", "D122N", "D125N",
"D131N", "D132N", "D134N", "D143N", "D145N", "D152N", "D155N", "D156N", "D162N", "D165N", "D172N", "D174N", "D205N", "D212N", "D223N",
"D225N", "D226N", "D243N", "D244N", "D245N", "D246N", "D251N", "D252N", "D255N", "D261N", "D263N", "D265N", "D266N", "D271N", "D274N",
"D306N", "D311N", "D315N", "D325N", "D331N", "D332N", "D343N", "D346N", "D351N", "D356N", "D364N", "D365N", "D371N", "D411N", "D412N",
"D413N", "D423N", "D431N", "D432N", "D445N", "D446N", "D452N", "D454N", "D455N", "D462N", "D464N", "D465N", "D466N", "D503N", "D506N",
"D516N", "D523N", "D526N", "D532N", "D546N", "D565N", "D606N", "D612N", "D624N", "D627N", "D631N", "D632N", "D645N", "D654N", "D662N",
"D664N", "D703N", "D712N", "D723N", "D731N", "D732N", "D734N", "D743N", "D754N", "D017I", "D023I", "D025I", "D026I", "D031I", "D032I",
"D036I", "D043I", "D047I", "D050I", "D051I", "D053I", "D054I", "D065I", "D071I", "D072I", "D073I", "D074I", "D114I", "D115I", "D116I",
"D122I", "D125I", "D131I", "D132I", "D134I", "D143I", "D145I", "D152I", "D155I", "D156I", "D162I", "D165I", "D172I", "D174I", "D205I",
"D212I", "D223I", "D225I", "D226I", "D243I", "D244I", "D245I", "D246I", "D251I", "D252I", "D255I", "D261I", "D263I", "D265I", "D266I",
"D271I", "D274I", "D306I", "D311I", "D315I", "D325I", "D331I", "D332I", "D343I", "D346I", "D351I", "D356I", "D364I", "D365I", "D371I",
"D411I", "D412I", "D413I", "D423I", "D431I", "D432I", "D445I", "D446I", "D452I", "D454I", "D455I", "D462I", "D464I", "D465I", "D466I",
"D503I", "D506I", "D516I", "D523I", "D526I", "D532I", "D546I", "D565I", "D606I", "D612I", "D624I", "D627I", "D631I", "D632I", "D645I",
"D654I", "D662I", "D664I", "D703I", "D712I", "D723I", "D731I", "D732I", "D734I", "D743I", "D754I");
Column亚音解码.Name = "Column亚音解码";
Column亚音编码类型.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column亚音编码类型, "Column亚音编码类型");
Column亚音编码类型.Items.AddRange("OFF", "TONE", "CTCSS", "DCS");
Column亚音编码类型.Name = "Column亚音编码类型";
Column亚音编码.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column亚音编码, "Column亚音编码");
Column亚音编码.Items.AddRange("OFF", "67.0", "69.3", "71.9", "74.4", "77.0", "79.7", "82.5", "85.4", "88.5", "91.5", "94.8", "97.4", "100.0",
"103.5", "107.2", "110.9", "114.8", "118.8", "123.0", "127.3", "131.8", "136.5", "141.3", "146.2", "151.4", "156.7", "159.8", "162.2",
"165.5", "167.9", "171.3", "173.8", "177.3", "179.9", "183.5", "186.2", "189.9", "192.8", "196.6", "199.5", "203.5", "206.5", "210.7",
"218.1", "225.7", "229.1", "233.6", "241.8", "250.3", "254.1", "D017N", "D023N", "D025N", "D026N", "D031N", "D032N", "D036N", "D043N",
"D047N", "D050N", "D051N", "D053N", "D054N", "D065N", "D071N", "D072N", "D073N", "D074N", "D114N", "D115N", "D116N", "D122N", "D125N",
"D131N", "D132N", "D134N", "D143N", "D145N", "D152N", "D155N", "D156N", "D162N", "D165N", "D172N", "D174N", "D205N", "D212N", "D223N",
"D225N", "D226N", "D243N", "D244N", "D245N", "D246N", "D251N", "D252N", "D255N", "D261N", "D263N", "D265N", "D266N", "D271N", "D274N",
"D306N", "D311N", "D315N", "D325N", "D331N", "D332N", "D343N", "D346N", "D351N", "D356N", "D364N", "D365N", "D371N", "D411N", "D412N",
"D413N", "D423N", "D431N", "D432N", "D445N", "D446N", "D452N", "D454N", "D455N", "D462N", "D464N", "D465N", "D466N", "D503N", "D506N",
"D516N", "D523N", "D526N", "D532N", "D546N", "D565N", "D606N", "D612N", "D624N", "D627N", "D631N", "D632N", "D645N", "D654N", "D662N",
"D664N", "D703N", "D712N", "D723N", "D731N", "D732N", "D734N", "D743N", "D754N", "D017I", "D023I", "D025I", "D026I", "D031I", "D032I",
"D036I", "D043I", "D047I", "D050I", "D051I", "D053I", "D054I", "D065I", "D071I", "D072I", "D073I", "D074I", "D114I", "D115I", "D116I",
"D122I", "D125I", "D131I", "D132I", "D134I", "D143I", "D145I", "D152I", "D155I", "D156I", "D162I", "D165I", "D172I", "D174I", "D205I",
"D212I", "D223I", "D225I", "D226I", "D243I", "D244I", "D245I", "D246I", "D251I", "D252I", "D255I", "D261I", "D263I", "D265I", "D266I",
"D271I", "D274I", "D306I", "D311I", "D315I", "D325I", "D331I", "D332I", "D343I", "D346I", "D351I", "D356I", "D364I", "D365I", "D371I",
"D411I", "D412I", "D413I", "D423I", "D431I", "D432I", "D445I", "D446I", "D452I", "D454I", "D455I", "D462I", "D464I", "D465I", "D466I",
"D503I", "D506I", "D516I", "D523I", "D526I", "D532I", "D546I", "D565I", "D606I", "D612I", "D624I", "D627I", "D631I", "D632I", "D645I",
"D654I", "D662I", "D664I", "D703I", "D712I", "D723I", "D731I", "D732I", "D734I", "D743I", "D754I");
Column亚音编码.Name = "Column亚音编码";
Column发射功率.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column发射功率, "Column发射功率");
Column发射功率.Items.AddRange("高", "低", "中");
Column发射功率.Name = "Column发射功率";
Column扫描添加.AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
Column扫描添加.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column扫描添加, "Column扫描添加");
Column扫描添加.Items.AddRange("是", "否");
Column扫描添加.Name = "Column扫描添加";
Column带宽.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column带宽, "Column带宽");
Column带宽.Items.AddRange("宽带(25K)", "宽带(20K)", "窄带(12.5K)");
Column带宽.Name = "Column带宽";
Column可选信令.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
componentResourceManager.ApplyResources(Column可选信令, "Column可选信令");
Column可选信令.Items.AddRange("无", "DTMF", "2-Tone", "5-Tone");
Column可选信令.Name = "Column可选信令";
gridViewCellStyle6.Alignment = DataGridViewContentAlignment.MiddleCenter;
gridViewCellStyle6.BackColor = Color.FromArgb(224, 224, 224);
gridViewCellStyle6.ForeColor = Color.Red;
Column更多.DefaultCellStyle = gridViewCellStyle6;
Column更多.FlatStyle = FlatStyle.Popup;
componentResourceManager.ApplyResources(Column更多, "Column更多");
Column更多.Name = "Column更多";
Column更多.Resizable = DataGridViewTriState.False;
Column更多.Text = ">>";
Column更多.UseColumnTextForButtonValue = true;
componentResourceManager.ApplyResources(this, "$this");
AutoScaleMode = AutoScaleMode.Font;
Controls.Add(Button信道编辑);
Controls.Add(Button3);
Controls.Add(Button2);
Controls.Add(Button1);
Controls.Add(Panel1);
DoubleBuffered = true;
Name = nameof(ChannelMsg);
((ISupportInitialize) ChannelMsgDataGridView).EndInit();
Panel1.ResumeLayout(false);
ResumeLayout(false);
}
internal virtual DataGridView ChannelMsgDataGridView
{
[DebuggerNonUserCode]
get => _ChannelMsgDataGridView;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set
{
if (_ChannelMsgDataGridView != null)
{
_ChannelMsgDataGridView.CellValidating -= ChannelMsgDataGridView_CellValidating;
_ChannelMsgDataGridView.EditingControlShowing -= ChannelMsgDataGridView_EditingControlShowing;
_ChannelMsgDataGridView.CellEndEdit -= ChannelMsgDataGridView_CellEndEdit;
_ChannelMsgDataGridView.CellMouseClick -= ChannelMsgDataGridView_CellMouseClick;
_ChannelMsgDataGridView.RowPostPaint -= ChannelMsgDataGridView_RowPostPaint;
}
_ChannelMsgDataGridView = value;
if (_ChannelMsgDataGridView == null)
return;
_ChannelMsgDataGridView.CellValidating += ChannelMsgDataGridView_CellValidating;
_ChannelMsgDataGridView.EditingControlShowing += ChannelMsgDataGridView_EditingControlShowing;
_ChannelMsgDataGridView.CellEndEdit += ChannelMsgDataGridView_CellEndEdit;
_ChannelMsgDataGridView.CellMouseClick += ChannelMsgDataGridView_CellMouseClick;
_ChannelMsgDataGridView.RowPostPaint += ChannelMsgDataGridView_RowPostPaint;
}
}
internal virtual Panel Panel1
{
[DebuggerNonUserCode]
get => _Panel1;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set => _Panel1 = value;
}
internal virtual Button Button3
{
[DebuggerNonUserCode]
get => _Button3;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Button3 = value; }
}
internal virtual Button Button2
{
[DebuggerNonUserCode]
get => _Button2;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Button2 = value; }
}
internal virtual Button Button1
{
[DebuggerNonUserCode]
get => _Button1;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set
{
if (_Button1 != null)
_Button1.Click -= Button1_Click;
_Button1 = value;
if (_Button1 == null)
return;
_Button1.Click += Button1_Click;
}
}
internal virtual Button Button信道编辑
{
[DebuggerNonUserCode]
get => _Button信道编辑;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set
{
if (_Button信道编辑 != null)
_Button信道编辑.Click -= Button信道编辑_Click;
_Button信道编辑 = value;
if (_Button信道编辑 == null)
return;
_Button信道编辑.Click += Button信道编辑_Click;
}
}
internal virtual DataGridViewTextBoxColumn ColumnRxFreq
{
[DebuggerNonUserCode]
get => _ColumnRxFreq;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _ColumnRxFreq = value; }
}
internal virtual DataGridViewComboBoxColumn Column差频方向
{
[DebuggerNonUserCode]
get => _Column差频方向;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column差频方向 = value; }
}
internal virtual DataGridViewTextBoxColumn ColumnTxFreq
{
[DebuggerNonUserCode]
get => _ColumnTxFreq;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _ColumnTxFreq = value; }
}
internal virtual DataGridViewComboBoxColumn Column亚音解码类型
{
[DebuggerNonUserCode]
get => _Column亚音解码类型;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column亚音解码类型 = value; }
}
internal virtual DataGridViewComboBoxColumn Column亚音解码
{
[DebuggerNonUserCode]
get => _Column亚音解码;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column亚音解码 = value; }
}
internal virtual DataGridViewComboBoxColumn Column亚音编码类型
{
[DebuggerNonUserCode]
get => _Column亚音编码类型;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column亚音编码类型 = value; }
}
internal virtual DataGridViewComboBoxColumn Column亚音编码
{
[DebuggerNonUserCode]
get => _Column亚音编码;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column亚音编码 = value; }
}
internal virtual DataGridViewComboBoxColumn Column发射功率
{
[DebuggerNonUserCode]
get => _Column发射功率;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column发射功率 = value; }
}
internal virtual DataGridViewComboBoxColumn Column扫描添加
{
[DebuggerNonUserCode]
get => _Column扫描添加;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column扫描添加 = value; }
}
internal virtual DataGridViewComboBoxColumn Column带宽
{
[DebuggerNonUserCode]
get => _Column带宽;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column带宽 = value; }
}
internal virtual DataGridViewComboBoxColumn Column可选信令
{
[DebuggerNonUserCode]
get => _Column可选信令;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column可选信令 = value; }
}
internal virtual DataGridViewButtonColumn Column更多
{
[DebuggerNonUserCode]
get => _Column更多;
[DebuggerNonUserCode, MethodImpl(MethodImplOptions.Synchronized)]
set { _Column更多 = value; }
}
public void ChannelMsg_Deactivate(object sender, EventArgs e)
{
ChannelMsgDataGridView.EndEdit();
var num = checked(ChannelMsgDataGridView.RowCount - 1);
var i = 0;
while (i <= num)
{
SetData_CHMsg(i);
checked
{
++i;
}
}
}
private static void ChannelMsg_FormClosing(object sender, FormClosingEventArgs e)
{
MyProject.Forms.MDIParent1.CToolStripMenuItem.Checked = false;
}
public void ChannelMsg_Load(object sender, EventArgs e)
{
MyProject.Forms.MDIParent1.CToolStripMenuItem.Checked = true;
ChannelMsgDataGridView.RowCount = 516;
ChannelMsgDataGridView.TopLeftHeaderCell.Value = "CH";
Column发射功率.Items.Clear();
Column发射功率.Items.AddRange("High", "Low", "Middle");
Column扫描添加.Items.Clear();
Column扫描添加.Items.AddRange("Yes", "No");
Column带宽.Items.Clear();
Column带宽.Items.AddRange("Wide(25K)", "Wide(20K)", "Narrow(12.5K)");
Column可选信令.Items.Clear();
Column可选信令.Items.AddRange("None", "DTMF", "2-Tone", "5-Tone");
var num = checked(ChannelMsgDataGridView.RowCount - 1);
var i = 0;
while (i <= num)
{
GetStr_CHMsg(i);
checked
{
++i;
}
}
}
private void ChannelMsgDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
var rowIndex = ChannelMsgDataGridView.CurrentCell.RowIndex;
var columnIndex = ChannelMsgDataGridView.CurrentCell.ColumnIndex;
var num = columnIndex;
if (num == ChannelMsgDataGridView["ColumnRxFreq", rowIndex].ColumnIndex)
{
if (Operators.ConditionalCompareObjectNotEqual(ChannelMsgDataGridView["ColumnRxFreq", rowIndex].Value, "", false))
{
var str = Conversions.ToString(JudgeInputRxFreq(Conversions.ToString(ChannelMsgDataGridView["ColumnRxFreq", rowIndex].Value),
true));
ChannelMsgDataGridView["ColumnRxFreq", rowIndex].Value = str;
if (Operators.ConditionalCompareObjectEqual(ChannelMsgDataGridView["ColumnTxFreq", rowIndex].Value, "", false))
{
if (Operators.CompareString(str, "", false) == 0)
Clr_Channel(rowIndex);
else
Init_Channel(str, rowIndex);
}
else if (Operators.CompareString(str, "", false) == 0)
Clr_Channel(rowIndex);
}
else
Clr_Channel(rowIndex);
}
else if (num == ChannelMsgDataGridView["ColumnTxFreq", rowIndex].ColumnIndex)
{
var str = Conversions.ToString(JudgeInputTxFreq(Conversions.ToString(ChannelMsgDataGridView["ColumnRxFreq", rowIndex].Value),
Conversions.ToString(ChannelMsgDataGridView["ColumnTxFreq", rowIndex].Value), true));
ChannelMsgDataGridView["ColumnTxFreq", rowIndex].Value = str;
}
else if (num == ChannelMsgDataGridView["Column亚音解码类型", rowIndex].ColumnIndex)
{
switch (Column亚音解码类型.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音解码类型", rowIndex].Value)))
{
case 0:
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音解码.Items[0]);
break;
case 1:
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音解码.Items[9]);
break;
case 2:
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音解码.Items[9]);
break;
case 3:
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音解码.Items[52]);
break;
}
}
else if (num == ChannelMsgDataGridView["Column亚音解码", rowIndex].ColumnIndex)
{
switch (Column亚音解码类型.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音解码类型", rowIndex].Value)))
{
case 0:
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音解码.Items[0]);
break;
case 1:
if (!Versioned.IsNumeric(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音解码", rowIndex].Value)) |
publicva.ToneValueValidatingDIS)
{
publicva.ToneValueValidatingDIS = false;
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value =
RuntimeHelpers.GetObjectValue(
Get_CTC_DCS_Str(Conversions.ToInteger(Operators.AddObject(Get_CHAddress(rowIndex), 7))));
break;
}
break;
case 2:
if (!Versioned.IsNumeric(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音解码", rowIndex].Value)) |
publicva.ToneValueValidatingDIS)
{
publicva.ToneValueValidatingDIS = false;
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value =
RuntimeHelpers.GetObjectValue(
Get_CTC_DCS_Str(Conversions.ToInteger(Operators.AddObject(Get_CHAddress(rowIndex), 7))));
break;
}
break;
case 3:
if (Operators.CompareString("D", ChannelMsgDataGridView["Column亚音解码", rowIndex]
.Value.ToString()
.Substring(0, 1), false) != 0 | publicva.ToneValueValidatingDIS)
{
publicva.ToneValueValidatingDIS = false;
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value =
RuntimeHelpers.GetObjectValue(
Get_CTC_DCS_Str(Conversions.ToInteger(Operators.AddObject(Get_CHAddress(rowIndex), 7))));
}
break;
}
}
else if (num == ChannelMsgDataGridView["Column亚音编码类型", rowIndex].ColumnIndex)
{
switch (Column亚音编码类型.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音编码类型", rowIndex].Value)))
{
case 0:
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音编码.Items[0]);
break;
case 1:
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音编码.Items[9]);
break;
case 2:
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音编码.Items[9]);
break;
case 3:
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音编码.Items[52]);
break;
}
}
else if (num == ChannelMsgDataGridView["Column亚音编码", rowIndex].ColumnIndex)
{
switch (Column亚音编码类型.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音编码类型", rowIndex].Value)))
{
case 0:
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value = RuntimeHelpers.GetObjectValue(Column亚音编码.Items[0]);
break;
case 1:
if (!Versioned.IsNumeric(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音编码", rowIndex].Value)) |
publicva.ToneValueValidatingDIS)
{
publicva.ToneValueValidatingDIS = false;
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value =
RuntimeHelpers.GetObjectValue(
Get_CTC_DCS_Str(Conversions.ToInteger(Operators.AddObject(Get_CHAddress(rowIndex), 9))));
break;
}
break;
case 2:
if (!Versioned.IsNumeric(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音编码", rowIndex].Value)) |
publicva.ToneValueValidatingDIS)
{
publicva.ToneValueValidatingDIS = false;
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value =
RuntimeHelpers.GetObjectValue(
Get_CTC_DCS_Str(Conversions.ToInteger(Operators.AddObject(Get_CHAddress(rowIndex), 9))));
break;
}
break;
case 3:
if (Operators.CompareString("D", ChannelMsgDataGridView["Column亚音编码", rowIndex]
.Value.ToString()
.Substring(0, 1), false) != 0 | publicva.ToneValueValidatingDIS)
{
publicva.ToneValueValidatingDIS = false;
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value =
RuntimeHelpers.GetObjectValue(
Get_CTC_DCS_Str(Conversions.ToInteger(Operators.AddObject(Get_CHAddress(rowIndex), 9))));
}
break;
}
}
if (columnIndex == ChannelMsgDataGridView["Column更多", 0].ColumnIndex)
return;
SetData_CHMsg(rowIndex);
if (MyProject.Forms.MDIParent1.JudgeIsFormLoaded(MyProject.Forms.ChannelEditForm) &&
rowIndex == MyProject.Forms.ChannelEditForm.ComboBox编辑信道号.SelectedIndex)
MyProject.Forms.ChannelEditForm.GetStr_CHMsg(rowIndex);
if (MyProject.Forms.MDIParent1.JudgeIsFormLoaded(MyProject.Forms.ScanFuncMsgForm))
MyProject.Forms.ScanFuncMsgForm.SetControl_PRICHList();
MyProject.Forms.TypeFuncMsgForm.TypeFuncMsgForm_Load(RuntimeHelpers.GetObjectValue(sender), e);
MyProject.Forms.SOSMsgForm.SOSMsgForm_Load(RuntimeHelpers.GetObjectValue(sender), e);
}
private void ChannelMsgDataGridView_EditingControlShowing(
object sender,
DataGridViewEditingControlShowingEventArgs e)
{
if (ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["ColumnRxFreq", 0].ColumnIndex |
ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["ColumnTxFreq", 0].ColumnIndex)
{
var boxEditingControl = new DataGridViewTextBoxEditingControl();
boxEditingControl = (DataGridViewTextBoxEditingControl) e.Control;
e.Control.KeyPress += Cells_KeyPress;
}
else
{
if (!(ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["Column亚音解码", 0].ColumnIndex |
ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["Column亚音编码", 0].ColumnIndex))
return;
var boxEditingControl = new DataGridViewComboBoxEditingControl();
var control = (DataGridViewComboBoxEditingControl) e.Control;
control.DropDownStyle = ComboBoxStyle.DropDown;
control.MaxLength = 5;
e.Control.KeyPress += ComboBoxCells_KeyPress;
}
}
private void Cells_KeyPress(object sender, KeyPressEventArgs e)
{
if (char.IsDigit(e.KeyChar) | e.KeyChar == '\b' | Operators.CompareString(Conversions.ToString(e.KeyChar), ".", false) == 0)
e.Handled = false;
else
e.Handled = true;
}
private void ComboBoxCells_KeyPress(object sender, KeyPressEventArgs e)
{
if (Operators.CompareString(Conversions.ToString(e.KeyChar), "D", false) == 0 | char.IsDigit(e.KeyChar) | e.KeyChar == '\b' |
Operators.CompareString(Conversions.ToString(e.KeyChar), "N", false) == 0 |
Operators.CompareString(Conversions.ToString(e.KeyChar), "I", false) == 0 | e.KeyChar == '.' |
Operators.CompareString(Conversions.ToString(e.KeyChar), "d", false) == 0 |
Operators.CompareString(Conversions.ToString(e.KeyChar), "n", false) == 0 |
Operators.CompareString(Conversions.ToString(e.KeyChar), "i", false) == 0)
{
if (Operators.CompareString(Conversions.ToString(e.KeyChar), "d", false) == 0 |
Operators.CompareString(Conversions.ToString(e.KeyChar), "n", false) == 0 |
Operators.CompareString(Conversions.ToString(e.KeyChar), "i", false) == 0)
e.KeyChar = char.ToUpper(e.KeyChar);
e.Handled = false;
}
else
e.Handled = true;
}
private void ChannelMsgDataGridView_CellValidating(
object sender,
DataGridViewCellValidatingEventArgs e)
{
var rowIndex = ChannelMsgDataGridView.CurrentCell.RowIndex;
if (ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["Column亚音解码", 0].ColumnIndex |
ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["Column亚音编码", 0].ColumnIndex)
{
publicva.ToneValueValidatingDIS = false;
if (Conversions.ToBoolean(Operators.AndObject(Operators.CompareObjectNotEqual(e.FormattedValue, "", false),
Column亚音解码.Items.IndexOf(RuntimeHelpers.GetObjectValue(e.FormattedValue)) != 0)))
{
string str;
if (Operators.CompareString(e.FormattedValue.ToString()
.Substring(0, 1), "D", false) == 0)
{
if (e.FormattedValue.ToString()
.Length != 5)
{
publicva.ToneValueValidatingDIS = true;
return;
}
if (!(Operators.CompareString(e.FormattedValue.ToString()
.Substring(4, 1), "N", false) == 0 | Operators.CompareString(e.FormattedValue.ToString()
.Substring(4, 1), "I", false) == 0))
{
publicva.ToneValueValidatingDIS = true;
return;
}
str = Conversions.ToString(e.FormattedValue);
}
else
{
double num;
try
{
num = Conversions.ToDouble(e.FormattedValue);
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
publicva.ToneValueValidatingDIS = true;
ProjectData.ClearProjectError();
return;
}
if (num > 254.1 | num < 63.0)
{
publicva.ToneValueValidatingDIS = true;
return;
}
str = $"{num:###.0}";
}
if (!Column亚音编码.Items.Contains(str))
{
Column亚音编码.Items.Add(str);
if (!Column亚音解码.Items.Contains(str))
Column亚音解码.Items.Add(str);
}
if (ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["Column亚音解码", 0].ColumnIndex)
ChannelMsgDataGridView["Column亚音解码", rowIndex].Value = str;
if (ChannelMsgDataGridView.CurrentCell.ColumnIndex == ChannelMsgDataGridView["Column亚音编码", 0].ColumnIndex)
ChannelMsgDataGridView["Column亚音编码", rowIndex].Value = str;
}
}
}
private void ChannelMsgDataGridView_RowPostPaint(
object sender,
DataGridViewRowPostPaintEventArgs e)
{
var strArray = new string[4]
{
"A CALL",
"B CALL",
"A VFO",
"B VFO"
};
var brush = (Brush) new SolidBrush(ChannelMsgDataGridView.RowHeadersDefaultCellStyle.ForeColor);
var font = new Font("Arial", 9f, FontStyle.Bold);
if (e.RowIndex > 511)
{
switch (e.RowIndex)
{
case 512:
brush = Brushes.Red;
break;
case 513:
brush = Brushes.Orange;
break;
case 514:
brush = Brushes.Blue;
break;
case 515:
brush = Brushes.Green;
break;
}
e.Graphics.DrawString(strArray[checked(e.RowIndex - 512)], font, brush, checked(e.RowBounds.Location.X + 2),
checked(e.RowBounds.Location.Y + 5));
}
else
e.Graphics.DrawString(checked(e.RowIndex + 0).ToString(), ChannelMsgDataGridView.DefaultCellStyle.Font, brush,
e.RowBounds.Location.X + checked(ChannelMsgDataGridView.RowHeadersWidth - (e.RowIndex + 0).ToString()
.Length * 8) / 2f, checked(e.RowBounds.Location.Y + 5));
}
private void ChannelMsgDataGridView_CellMouseClick(
object sender,
DataGridViewCellMouseEventArgs e)
{
var columnIndex = ChannelMsgDataGridView["Column更多", 0].ColumnIndex;
var rowIndex = ChannelMsgDataGridView.CurrentCell.RowIndex;
if (columnIndex == ChannelMsgDataGridView.CurrentCell.ColumnIndex)
{
MyProject.Forms.ChannelEditForm.ChannelEditForm_Load(RuntimeHelpers.GetObjectValue(sender), e);
MyProject.Forms.MDIParent1.SafeLoadWindowByName(MyProject.Forms.ChannelEditForm);
}
else
{
if (!Operators.ConditionalCompareObjectEqual("", ChannelMsgDataGridView["ColumnRxFreq", rowIndex].Value, false))
return;
ChannelMsgDataGridView.CurrentCell = ChannelMsgDataGridView.Rows[rowIndex]
.Cells[0];
ChannelMsgDataGridView.BeginEdit(true);
}
}
private void Button信道编辑_Click(object sender, EventArgs e)
{
MyProject.Forms.ChannelEditForm.ChannelEditForm_Load(RuntimeHelpers.GetObjectValue(sender), e);
MyProject.Forms.MDIParent1.SafeLoadWindowByName(MyProject.Forms.ChannelEditForm);
}
public void GetStr_CHMsg(int i)
{
var flag = false;
var integer = Conversions.ToInteger(Get_CHAddress(i));
if (i > 511)
{
if (Operators.ConditionalCompareObjectNotEqual("",
Get_RxFreqStr(integer, publicva.EEPROM_Byte[checked(integer + 15)] & 15,
publicva.EEPROM_Byte[checked(integer + 11)] & (publicva.Bit0 | publicva.Bit1)), false))
flag = true;
}
else if (CHStatus_Read(i, 8064) && Operators.ConditionalCompareObjectNotEqual("",
Get_RxFreqStr(integer, publicva.EEPROM_Byte[checked(integer + 15)] & 15,
publicva.EEPROM_Byte[checked(integer + 11)] & (publicva.Bit0 | publicva.Bit1)), false))
flag = true;
if (flag)
{
ChannelMsgDataGridView["ColumnRxFreq", i].Value = RuntimeHelpers.GetObjectValue(Get_RxFreqStr(checked(integer + 0),
publicva.EEPROM_Byte[checked(integer + 15)] & 15, publicva.EEPROM_Byte[checked(integer + 11)] & (publicva.Bit0 | publicva.Bit1)));
ChannelMsgDataGridView["Column差频方向", i].Value = RuntimeHelpers.GetObjectValue(
Column差频方向.Items[(byte) ((publicva.EEPROM_Byte[checked(integer + 14)] & (publicva.Bit2 | (uint) publicva.Bit3)) >> 2)]);
ChannelMsgDataGridView["ColumnTxFreq", i].Value = RuntimeHelpers.GetObjectValue(Get_TxFreqStr(checked(integer + 3),
publicva.EEPROM_Byte[checked(integer + 15)] & 15, publicva.EEPROM_Byte[checked(integer + 12)] & (publicva.Bit0 | publicva.Bit1)));
ChannelMsgDataGridView["Column亚音解码类型", i].Value = RuntimeHelpers.GetObjectValue(
Column亚音解码类型.Items[(byte) ((publicva.EEPROM_Byte[checked(integer + 7)] & (publicva.Bit4 | (uint) publicva.Bit5)) >> 4)]);
ChannelMsgDataGridView["Column亚音解码", i].Value = RuntimeHelpers.GetObjectValue(Get_CTC_DCS_Str(checked(integer + 7)));
ChannelMsgDataGridView["Column亚音编码类型", i].Value = RuntimeHelpers.GetObjectValue(
Column亚音编码类型.Items[(byte) ((publicva.EEPROM_Byte[checked(integer + 9)] & (publicva.Bit4 | (uint) publicva.Bit5)) >> 4)]);
ChannelMsgDataGridView["Column亚音编码", i].Value = RuntimeHelpers.GetObjectValue(Get_CTC_DCS_Str(checked(integer + 9)));
ChannelMsgDataGridView["Column发射功率", i].Value = RuntimeHelpers.GetObjectValue(
Column发射功率.Items[(byte) ((publicva.EEPROM_Byte[checked(integer + 13)] & (publicva.Bit4 | (uint) publicva.Bit5)) >> 4)]);
ChannelMsgDataGridView["Column扫描添加", i].Value = i <= 511
? (!CHStatus_Read(i, 8128)
? RuntimeHelpers.GetObjectValue(Column扫描添加.Items[1])
: RuntimeHelpers.GetObjectValue(Column扫描添加.Items[0]))
: RuntimeHelpers.GetObjectValue(Column扫描添加.Items[1]);
ChannelMsgDataGridView["Column带宽", i].Value = RuntimeHelpers.GetObjectValue(
Column带宽.Items[(byte) ((publicva.EEPROM_Byte[checked(integer + 14)] & (publicva.Bit4 | (uint) publicva.Bit5)) >> 4)]);
ChannelMsgDataGridView["Column可选信令", i].Value = RuntimeHelpers.GetObjectValue(Column可选信令.Items[
(byte) ((publicva.EEPROM_Byte[checked(integer + 12)] & (publicva.Bit4 | (uint) publicva.Bit5 | publicva.Bit6)) >> 4)]);
}
else
Clr_Channel(i);
}
public void SetData_CHMsg(int i)
{
var flag = false;
var integer = Conversions.ToInteger(Get_CHAddress(i));
if (Operators.ConditionalCompareObjectNotEqual(ChannelMsgDataGridView["ColumnRxFreq", i].Value, "", false)
&& Operators.ConditionalCompareObjectNotEqual("", ChannelMsgDataGridView["ColumnTxFreq", i].Value, false))
flag = true;
if (flag)
{
publicva.EEPROM_Byte[checked(integer + 15)] = Conversions.ToByte(Get_FreqRangID(Conversions.ToDouble(ChannelMsgDataGridView["ColumnRxFreq", i].Value)));
publicva.EEPROM_Byte[checked(integer + 11)] = Conversions.ToByte(Operators.OrObject((byte) (publicva.EEPROM_Byte[checked(integer + 11)] & (byte) ~(publicva.Bit0 | publicva.Bit1)),
Get_FreqStepFlag(Conversions.ToDouble(ChannelMsgDataGridView["ColumnRxFreq", i].Value))));
Set_FreqData(checked(integer + 0), Conversions.ToString(ChannelMsgDataGridView["ColumnRxFreq", i].Value));
publicva.EEPROM_Byte[checked(integer + 14)] =
checked((byte) (publicva.EEPROM_Byte[integer + 14] & unchecked((byte) ~(publicva.Bit2 | publicva.Bit3)) |
Column差频方向.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column差频方向", i].Value)) << 2));
publicva.EEPROM_Byte[checked(integer + 12)] = Conversions.ToByte(Operators.OrObject(
(byte) (publicva.EEPROM_Byte[checked(integer + 12)] & (byte) ~(publicva.Bit0 | publicva.Bit1)),
Get_FreqStepFlag(Conversions.ToDouble(ChannelMsgDataGridView["ColumnTxFreq", i].Value))));
Set_FreqData(checked(integer + 3), Conversions.ToString(ChannelMsgDataGridView["ColumnTxFreq", i].Value));
Set_CTC_DCS_Data(checked(integer + 7), Conversions.ToString(ChannelMsgDataGridView["Column亚音解码", i].Value),
Column亚音解码类型.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音解码类型", i].Value)));
Set_CTC_DCS_Data(checked(integer + 9), Conversions.ToString(ChannelMsgDataGridView["Column亚音编码", i].Value),
Column亚音编码类型.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column亚音编码类型", i].Value)));
publicva.EEPROM_Byte[checked(integer + 13)] =
checked((byte) (publicva.EEPROM_Byte[integer + 13] & unchecked((byte) ~(publicva.Bit4 | publicva.Bit5)) |
Column发射功率.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column发射功率", i].Value)) << 4));
if (Column扫描添加.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column扫描添加", i].Value)) != 0)
{
if (i <= 511)
CHStatusList_Write(i, "删除", 8128);
}
else if (i <= 511)
CHStatusList_Write(i, "添加", 8128);
publicva.EEPROM_Byte[checked(integer + 14)] =
checked((byte) (publicva.EEPROM_Byte[integer + 14] & unchecked((byte) ~(publicva.Bit4 | publicva.Bit5)) |
Column带宽.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column带宽", i].Value)) << 4));
publicva.EEPROM_Byte[checked(integer + 12)] =
checked((byte) (publicva.EEPROM_Byte[integer + 12] & unchecked((byte) ~(publicva.Bit4 | publicva.Bit5 | publicva.Bit6)) |
Column可选信令.Items.IndexOf(RuntimeHelpers.GetObjectValue(ChannelMsgDataGridView["Column可选信令", i].Value)) << 4));
if (i > 511)
return;
CHStatusList_Write(i, "添加", 8064);
}
else
{
var num = 0;
do
{
publicva.EEPROM_Byte[checked(integer + num)] = 0;
checked
{
++num;
}
}
while (num <= 31);
if (i <= 511)
{
CHStatusList_Write(i, "删除", 8064);
CHStatusList_Write(i, "删除", 8128);
}
}
}
public object Get_CTC_DCS_Str(int Address)
{
var num = (int) (byte) ((publicva.EEPROM_Byte[checked(Address + 0)] & (publicva.Bit4 | (uint) publicva.Bit5)) >> 4);
string ctcDcsStr;
if (num == 0)
{
ctcDcsStr = Conversions.ToString(Column亚音编码.Items[0]);
}
else
{
var a = (double) checked((publicva.EEPROM_Byte[Address + 0] & 15) * 256 + publicva.EEPROM_Byte[Address + 1]);
if (num == 3)
{
var integer = Conversions.ToInteger(Conversion.Oct(checked((long) Math.Round(a)) & 511L));
ctcDcsStr = (publicva.EEPROM_Byte[checked(Address + 0)] & (uint) publicva.Bit7) <= 0U
? "D" + $"{integer:D3}" + "N"
: "D" + $"{integer:D3}" + "I";
}
else
ctcDcsStr = $"{a / 10.0:###.0}";
}
if (!Column亚音编码.Items.Contains(ctcDcsStr))
{
Column亚音编码.Items.Add(ctcDcsStr);
if (!Column亚音解码.Items.Contains(ctcDcsStr))
Column亚音解码.Items.Add(ctcDcsStr);
}
return ctcDcsStr;
}
public void Set_CTC_DCS_Data(int Address, string ToneStr, int ToneMode)
{
if (!Column亚音编码.Items.Contains(ToneStr))
{
Column亚音编码.Items.Add(ToneStr);
if (!Column亚音解码.Items.Contains(ToneStr))
Column亚音解码.Items.Add(ToneStr);
}
publicva.EEPROM_Byte[checked(Address + 0)] =
checked((byte) (publicva.EEPROM_Byte[Address + 0] & unchecked((byte) ~(publicva.Bit4 | publicva.Bit5)) | ToneMode << 4));
switch (ToneMode)
{
case 0:
publicva.EEPROM_Byte[checked(Address + 0)] = checked((byte) (publicva.EEPROM_Byte[Address + 0] & 240));
publicva.EEPROM_Byte[checked(Address + 1)] = checked((byte) (publicva.EEPROM_Byte[Address + 1] & 0));
break;
case 3:
var a1 = Conversions.ToDouble("&H" + Conversion.Hex("&O" + Conversions.ToString(Conversions.ToDouble(ToneStr.Substring(1, 3)))));
publicva.EEPROM_Byte[checked(Address + 0)] =
checked((byte) (publicva.EEPROM_Byte[Address + 0] & 240 | ((long) Math.Round(a1) & 3840L) >> 8));
publicva.EEPROM_Byte[checked(Address + 1)] = checked((byte) ((long) Math.Round(a1) & byte.MaxValue));
publicva.EEPROM_Byte[checked(Address + 0)] = Operators.CompareString("I", ToneStr.Substring(4, 1), false) != 0
? (byte) (publicva.EEPROM_Byte[checked(Address + 0)] & ~publicva.Bit7)
: (byte) (publicva.EEPROM_Byte[checked(Address + 0)] | publicva.Bit7);
break;
default:
double num;
try
{
num = Conversions.ToDouble(ToneStr);
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
num = 67.0;
ProjectData.ClearProjectError();
}
var a2 = num * 10.0;
publicva.EEPROM_Byte[checked(Address + 0)] =
checked((byte) (publicva.EEPROM_Byte[Address + 0] & 240 | ((long) Math.Round(a2) & 3840L) >> 8));
publicva.EEPROM_Byte[checked(Address + 1)] = checked((byte) ((long) Math.Round(a2) & byte.MaxValue));
break;
}
}
public object Get_RxFreqStr(int Address, int FreqRangID, int CHStepIndex)
{
var numArray = new double[3]
{
5000.0,
6250.0,
2500.0
};
var num1 = checked(publicva.EEPROM_Byte[Address + 0] * 65536) + (double) checked(publicva.EEPROM_Byte[Address + 1] * 256) +
checked(publicva.EEPROM_Byte[Address + 2] * 1);
if (CHStepIndex > 2)
CHStepIndex = 0;
var num2 = (double) (checked((long) Math.Round(unchecked(num1 * numArray[CHStepIndex]))) / 10L);
return !(publicva.RxFreqRang[FreqRangID, 1] >= num2 & num2 >= publicva.RxFreqRang[FreqRangID, 0])
? ""
: (object) $"{num2 / 100000.0:#00.00000}";
}
public object Get_TxFreqStr(int Address, int FreqRangID, int CHStepIndex)
{
var numArray = new double[3]
{
5000.0,
6250.0,
2500.0
};
var num = (double) (checked((long) Math.Round(unchecked(checked(publicva.EEPROM_Byte[Address + 0] * 65536) +
(double) checked(publicva.EEPROM_Byte[Address + 1] * 256) +
checked(publicva.EEPROM_Byte[Address + 2] * 1) * numArray[CHStepIndex]))) / 10L);
return !(checked(publicva.RxFreqRang[FreqRangID, 1] - publicva.RxFreqRang[FreqRangID, 0]) >= num & num >= 0.0)
? ""
: (object) $"{num / 100000.0:##0.00000}";
}
public void Set_FreqData(int Address, string FreqStr)
{
var numArray = new double[3]
{
5000.0,
6250.0,
2500.0
};
double Freq;
try
{
Freq = Conversions.ToDouble(FreqStr);
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
Freq = 0.0;
ProjectData.ClearProjectError();
}
var integer = Conversions.ToInteger(Get_FreqStepFlag(Freq));
var a = (double) (checked((long) Math.Round(unchecked(Freq * 1000000.0))) / checked((long) Math.Round(numArray[integer])));
publicva.EEPROM_Byte[checked(Address + 0)] = checked((byte) (((long) Math.Round(a) & 16711680L) >> 16));
publicva.EEPROM_Byte[checked(Address + 1)] = checked((byte) (((long) Math.Round(a) & 65280L) >> 8));
publicva.EEPROM_Byte[checked(Address + 2)] = checked((byte) (((long) Math.Round(a) & byte.MaxValue) >> 0));
}
public object Get_FreqStepFlag(double Freq)
{
var num = checked((uint) Math.Round(unchecked(Freq * 1000000.0)));
if (num % 5000L == 0L)
return 0;
if (num % 6250L == 0L)
return 1;
return num % 2500L == 0L ? 2 : (object) 0;
}
public object Get_FreqRangID(double freq)
{
var numArray = new byte[7]
{
publicva.Bit0,
publicva.Bit1,
publicva.Bit2,
publicva.Bit3,
publicva.Bit4,
publicva.Bit5,
publicva.Bit6
};
var num = checked((uint) Math.Round(unchecked(freq * 100000.0)));
uint freqRangId = 0;
while (!(publicva.RxFreqRang[checked((int) freqRangId), 1] >= num & num >= publicva.RxFreqRang[checked((int) freqRangId), 0]) ||
(publicva.EEPROM_Byte[12] & (uint) numArray[checked((int) freqRangId)]) > 0U)
{
checked
{
++freqRangId;
}
if (freqRangId > 6U)
return -1;
}
return freqRangId;
}
public object JudgeInputRxFreq(string strFreq, bool msg)
{
string str;
try
{
var Freq = Conversions.ToDouble(strFreq);
if (Conversions.ToInteger(Get_FreqRangID(Freq)) != -1)
{
var num1 = checked((uint) Math.Round(unchecked(Freq * 1000000.0)));
if (num1 % 6250L != 0L && num1 % 5000L != 0L && num1 % 2500L != 0L)
{
var num2 = checked((int) unchecked(num1 / 5000L));
if (num1 % 5000L > 10000L)
checked
{
++num2;
}
num1 = checked((uint) (num2 * 5000));
}
str = $"{num1 / 1000000.0:#00.00000}";
}
else
{
if (msg)
Msgbox_Msg("Frequency out of range");
str = "";
}
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
if (msg)
Msgbox_Msg("Frequency out of range");
str = "";
ProjectData.ClearProjectError();
}
return str;
}
public object JudgeInputTxFreq(string RxFreq, string StrFreq, bool msg)
{
string str;
try
{
var Freq = Conversions.ToDouble(RxFreq);
var num1 = Conversions.ToDouble(StrFreq);
var integer = Conversions.ToInteger(Get_FreqRangID(Freq));
if (integer != -1)
{
var num2 = checked(publicva.RxFreqRang[integer, 1] - publicva.RxFreqRang[integer, 0]);
uint num3 = 0;
var num4 = checked((uint) Math.Round(unchecked(num1 * 100000.0)));
if (num2 >= num4 & num4 >= num3)
{
if (num4 % 625L != 0L && num4 % 500L != 0L && num4 % 250L != 0L)
{
var num5 = checked((int) unchecked(num4 / 500L));
if (num4 % 500L > 1000L)
checked
{
++num5;
}
num4 = checked((uint) (num5 * 500));
}
str = $"{num4 / 100000.0:##0.00000}";
}
else
{
if (msg)
Msgbox_Msg("Frequency out of range");
str = "0.00000";
}
}
else
{
if (msg)
Msgbox_Msg("Frequency out of range");
str = "";
}
}
catch (Exception ex)
{
ProjectData.SetProjectError(ex);
if (msg)
Msgbox_Msg("Frequency out of range");
str = "0.00000";
ProjectData.ClearProjectError();
}
return str;
}
public void Msgbox_Msg(string En_Msg)
{
var num2 = (int) Interaction.MsgBox(En_Msg, MsgBoxStyle.Exclamation, publicva.TypeName);
}
public void CHStatusList_Write(int CHNo, string COM, int Address)
{
var numArray = new byte[8]
{
1,
2,
4,
8,
16,
32,
64,
128
};
checked
{
Address += CHNo >> 3;
}
if (Operators.CompareString(COM, "添加", false) == 0)
{
publicva.EEPROM_Byte[Address] = (byte) (publicva.EEPROM_Byte[Address] & ~numArray[CHNo & 7]);
}
else
{
if (Operators.CompareString(COM, "删除", false) != 0)
return;
publicva.EEPROM_Byte[Address] = (byte) (publicva.EEPROM_Byte[Address] | numArray[CHNo & 7]);
}
}
public bool CHStatus_Read(int CHNo, int Address)
{
var numArray = new byte[8]
{
1,
2,
4,
8,
16,
32,
64,
128
};
checked
{
Address += CHNo >> 3;
}
return (publicva.EEPROM_Byte[Address] & (uint) numArray[CHNo & 7]) <= 0U;
}
public object Get_CHAddress(int i)
{
return i <= 511 ? checked(i * 32 + 8192) : checked((i - 512) * 32 + 7936);
}
public void Clr_Channel(int i)
{
if (i > 511)
{
switch (i)
{
case 512:
Init_Channel("146.00000", i);
break;
case 513:
Init_Channel("440.00000", i);
break;
case 514:
Init_Channel("146.00000", i);
break;
case 515:
Init_Channel("440.00000", i);
break;
}
}
else
{
ChannelMsgDataGridView["ColumnRxFreq", i].Value = "";
ChannelMsgDataGridView["Column差频方向", i].Value = "";
ChannelMsgDataGridView["ColumnTxFreq", i].Value = "";
ChannelMsgDataGridView["Column亚音解码类型", i].Value = "";
ChannelMsgDataGridView["Column亚音解码", i].Value = "";
ChannelMsgDataGridView["Column亚音编码类型", i].Value = "";
ChannelMsgDataGridView["Column亚音编码", i].Value = "";
ChannelMsgDataGridView["Column发射功率", i].Value = "";
ChannelMsgDataGridView["Column扫描添加", i].Value = "";
ChannelMsgDataGridView["Column带宽", i].Value = "";
ChannelMsgDataGridView["Column可选信令", i].Value = "";
}
}
public void Init_Channel(string Freq, int i)
{
ChannelMsgDataGridView["ColumnRxFreq", i].Value = Freq;
ChannelMsgDataGridView["Column差频方向", i].Value = RuntimeHelpers.GetObjectValue(Column差频方向.Items[0]);
ChannelMsgDataGridView["ColumnTxFreq", i].Value = Conversions.ToDouble(Freq) <= 300.0 ? "0.60000" : (object) "5.00000";
ChannelMsgDataGridView["Column亚音解码类型", i].Value = RuntimeHelpers.GetObjectValue(Column亚音解码类型.Items[0]);
ChannelMsgDataGridView["Column亚音解码", i].Value = RuntimeHelpers.GetObjectValue(Column亚音解码.Items[0]);
ChannelMsgDataGridView["Column亚音编码类型", i].Value = RuntimeHelpers.GetObjectValue(Column亚音编码类型.Items[0]);
ChannelMsgDataGridView["Column亚音编码", i].Value = RuntimeHelpers.GetObjectValue(Column亚音编码.Items[0]);
ChannelMsgDataGridView["Column发射功率", i].Value = RuntimeHelpers.GetObjectValue(Column发射功率.Items[0]);
ChannelMsgDataGridView["Column扫描添加", i].Value = RuntimeHelpers.GetObjectValue(Column扫描添加.Items[0]);
ChannelMsgDataGridView["Column带宽", i].Value = RuntimeHelpers.GetObjectValue(Column带宽.Items[0]);
ChannelMsgDataGridView["Column可选信令", i].Value = RuntimeHelpers.GetObjectValue(Column可选信令.Items[0]);
var integer = Conversions.ToInteger(Get_CHAddress(i));
publicva.EEPROM_Byte[checked(integer + 6)] = 6;
publicva.EEPROM_Byte[checked(integer + 9)] = (byte) (publicva.EEPROM_Byte[checked(integer + 9)] | publicva.Bit6);
publicva.EEPROM_Byte[checked(integer + 11)] = 0;
publicva.EEPROM_Byte[checked(integer + 12)] = 0;
publicva.EEPROM_Byte[checked(integer + 13)] = 0;
publicva.EEPROM_Byte[checked(integer + 14)] = 0;
publicva.EEPROM_Byte[checked(integer + 15)] = 0;
publicva.EEPROM_Byte[checked(integer + 16)] = 1;
publicva.EEPROM_Byte[checked(integer + 17)] = 0;
publicva.EEPROM_Byte[checked(integer + 18)] = 0;
publicva.EEPROM_Byte[checked(integer + 19)] = 0;
publicva.EEPROM_Byte[checked(integer + 20)] = 0;
publicva.EEPROM_Byte[checked(integer + 21)] = 0;
publicva.EEPROM_Byte[checked(integer + 22)] = 0;
publicva.EEPROM_Byte[checked(integer + 23)] = 0;
publicva.EEPROM_Byte[checked(integer + 24)] = 0;
publicva.EEPROM_Byte[checked(integer + 25)] = 0;
publicva.EEPROM_Byte[checked(integer + 26)] = 45;
publicva.EEPROM_Byte[checked(integer + 27)] = 45;
publicva.EEPROM_Byte[checked(integer + 28)] = 45;
publicva.EEPROM_Byte[checked(integer + 29)] = 45;
publicva.EEPROM_Byte[checked(integer + 30)] = 45;
publicva.EEPROM_Byte[checked(integer + 31)] = 45;
}
private void Button1_Click(object sender, EventArgs e) => Close();
}
}