protected void CreateSearchParameterList(string newSearch, int searchMode)
{
char[] separator = new char[] { ' ' };
string[] strArray = newSearch.ToLower().Split(separator);
List<Element> collection = new List<Element>();
List<Element> list2 = new List<Element>();
foreach (Element element in this.m_Tree)
{
if (searchMode != 0)
{
string str = element.m_Parameter.type.ToString();
SearchMode mode = (SearchMode) searchMode;
if (str != mode.ToString())
{
continue;
}
}
string str2 = element.name.ToLower().Replace(" ", "");
bool flag = true;
bool flag2 = false;
for (int i = 0; i < strArray.Length; i++)
{
string str3 = strArray[i];
if (str2.Contains(str3))
{
if ((i == 0) && str2.StartsWith(str3))
{
flag2 = true;
}
}
else
{
flag = false;
break;
}
}
if (flag)
{
if (flag2)
{
collection.Add(element);
}
else
{
list2.Add(element);
}
}
}
collection.Sort();
list2.Sort();
List<Element> list3 = new List<Element>();
list3.AddRange(collection);
list3.AddRange(list2);
this.m_SearchTree = list3.ToArray();
}