using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;
using CvBase;
namespace CvPro.ImageOptsToolForm
{
public partial class Form_ProcessTools : WeifenLuo.WinFormsUI.Docking.DockContent
{
private int processNum = 0;
private TreeView[] treeViews = null;
private int[] tagNum = null;
//private string[] processNames = null;
private TabPage[] tabPages = null;
//private Dictionary<string, List<string>> processImageOptName = null;
private TreeView targetTreeView = null;
private TreeNode targetTreeNode = null;
public Form_ProcessTools()
{
InitializeComponent();
tabControl1.TabPages.Clear();
processNum = AppSetting.Instance.ProcessNumber;
tabPages = new TabPage[processNum];
treeViews = new TreeView[processNum];
tagNum = new int[processNum];
////ImageOptName.processAlgorithmNameArrayOrDic.processNames = new string[processNum];
//processNames = new string[processNum];
ImageOptName.ReadProcessToolAlgorithmName();
#region 流程栏算法自定义名称与算法名称字典初始化
if (ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic == null)
{
ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic = new Dictionary<string, string>[processNum];
for (int i = 0; i < ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic.Length; i++)
ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic[i] = new Dictionary<string, string>();
}
else if (ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic.Length < processNum)
{
Dictionary<string, string>[] processToolAlgorithmNames = new Dictionary<string, string>[processNum];
for (int i = 0; i < processNum; i++)
{
if (i < ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic.Length)
processToolAlgorithmNames[i] = ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic[i];
else
processToolAlgorithmNames[i] = new Dictionary<string, string>();
}
ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic = processToolAlgorithmNames;
}
else if (ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic.Length > processNum)
{
Dictionary<string, string>[] processToolAlgorithmNames = new Dictionary<string, string>[processNum];
for (int i = 0; i < processNum; i++)
if (i < ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic.Length)
processToolAlgorithmNames[i] = ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic[i];
ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmNamesDic = processToolAlgorithmNames;
}
#endregion
#region 流程栏算法自定义名称数组初始化
if (ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmSelfNamesArray == null)
{
ImageOptName.processAlgorithmNameArrayOrDic.processToolAlgorithmSelfNamesArray = new List<string>[processNum];
for (int i = 0; i < processNum; i++)
&n