www.pudn.com > lphant-v1.00-src.zip > FormSearch.cs
#region Copyright (c)2003 Juanjo < http://lphant.sourceforge.net >
/*
* This file is part of eLePhant
* Copyright (C)2003 Juanjo < j_u_a_n_j_o@users.sourceforge.net / http://lphant.sourceforge.net >
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#endregion
using System;
using System.Drawing;
using System.Collections;
using System.Diagnostics;
using System.ComponentModel;
using System.Windows.Forms;
using System.Threading;
using eLePhant.eDonkey;
namespace eLePhant.Client
{
///
/// Summary description for FormSearch.
///
public class FormSearch : System.Windows.Forms.Form
{
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.CheckBox checkBoxSearchAny;
private System.Windows.Forms.TextBox textBoxAvaibility;
private System.Windows.Forms.ComboBox comboBoxSearchType;
private System.Windows.Forms.TextBox textBoxMinSize;
private System.Windows.Forms.TextBox textBoxMaxSize;
private System.Windows.Forms.Button buttonExtend;
private System.Windows.Forms.Button buttonSearch;
private System.Windows.Forms.TextBox textBoxSearch;
private CkernelGateway krnGateway;
private Crownwood.Magic.Controls.TabControl tabSearchs;
private Hashtable SearchesList;
private int m_SearchCount;
private string m_NewTabName;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Label labelSizeUpper;
private System.Windows.Forms.Label labelSizeLower;
private System.Windows.Forms.Label labelAvailability;
private System.Windows.Forms.ProgressBar progressBarSearch;
private Hashtable TotalResult = new Hashtable();
private Hashtable TabTitle = new Hashtable();
private System.Windows.Forms.Label labelExclude;
private System.Windows.Forms.TextBox textBoxExclude;
///
/// Required designer variable.
///
private System.ComponentModel.Container components = null;
public FormSearch()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
SearchesList=new Hashtable();
tabSearchs.Appearance = Crownwood.Magic.Controls.TabControl.VisualAppearance.MultiBox;
tabSearchs.PositionTop = true;
this.tabSearchs.PositionTop = true;
this.tabSearchs.ShowArrows = true;
this.tabSearchs.ShowClose = true;
this.tabSearchs.ShrinkPagesToFit = false;
tabSearchs.ClosePressed += new EventHandler(OnClosePressed);
m_SearchCount=0;
m_Globalize();
}
public void Connect(CkernelGateway in_krnGateway)
{
krnGateway=in_krnGateway;
krnGateway.OnNewSearched+=new SearchEvent(m_InvokeOnNewSearched);
krnGateway.OnModifiedSearched+=new SearchEvent(m_InvokeOnModifiedSearched);
krnGateway.OnEndSearch+=new EndSearchEvent(m_InvokeOnEndSearch);
krnGateway.OnNewSearchTab+=new SearchTabEvent(m_OnNewSearchTab);
krnGateway.OnSearchProgress+=new SearchProgressEvent(m_InvokeOnSearchProgress);
}
///
/// Clean up any resources being used.
///
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
///
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
///
private void InitializeComponent()
{
this.panel1 = new System.Windows.Forms.Panel();
this.textBoxExclude = new System.Windows.Forms.TextBox();
this.labelExclude = new System.Windows.Forms.Label();
this.progressBarSearch = new System.Windows.Forms.ProgressBar();
this.checkBoxSearchAny = new System.Windows.Forms.CheckBox();
this.textBoxAvaibility = new System.Windows.Forms.TextBox();
this.labelAvailability = new System.Windows.Forms.Label();
this.comboBoxSearchType = new System.Windows.Forms.ComboBox();
this.textBoxMinSize = new System.Windows.Forms.TextBox();
this.labelSizeUpper = new System.Windows.Forms.Label();
this.textBoxMaxSize = new System.Windows.Forms.TextBox();
this.labelSizeLower = new System.Windows.Forms.Label();
this.buttonExtend = new System.Windows.Forms.Button();
this.buttonSearch = new System.Windows.Forms.Button();
this.textBoxSearch = new System.Windows.Forms.TextBox();
this.tabSearchs = new Crownwood.Magic.Controls.TabControl();
this.panel2 = new System.Windows.Forms.Panel();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
this.SuspendLayout();
//
// panel1
//
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.panel1.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(235)), ((System.Byte)(241)), ((System.Byte)(250)));
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel1.Controls.Add(this.textBoxExclude);
this.panel1.Controls.Add(this.labelExclude);
this.panel1.Controls.Add(this.progressBarSearch);
this.panel1.Controls.Add(this.checkBoxSearchAny);
this.panel1.Controls.Add(this.textBoxAvaibility);
this.panel1.Controls.Add(this.labelAvailability);
this.panel1.Controls.Add(this.comboBoxSearchType);
this.panel1.Controls.Add(this.textBoxMinSize);
this.panel1.Controls.Add(this.labelSizeUpper);
this.panel1.Controls.Add(this.textBoxMaxSize);
this.panel1.Controls.Add(this.labelSizeLower);
this.panel1.Controls.Add(this.buttonExtend);
this.panel1.Controls.Add(this.buttonSearch);
this.panel1.Controls.Add(this.textBoxSearch);
this.panel1.Location = new System.Drawing.Point(6, 9);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(158, 355);
this.panel1.TabIndex = 0;
//
// textBoxExclude
//
this.textBoxExclude.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.textBoxExclude.Location = new System.Drawing.Point(7, 202);
this.textBoxExclude.Name = "textBoxExclude";
this.textBoxExclude.Size = new System.Drawing.Size(143, 20);
this.textBoxExclude.TabIndex = 24;
this.textBoxExclude.Text = "";
this.textBoxExclude.KeyUp += new System.Windows.Forms.KeyEventHandler(this.textBoxSearch_KeyUp);
//
// labelExclude
//
this.labelExclude.Location = new System.Drawing.Point(4, 169);
this.labelExclude.Name = "labelExclude";
this.labelExclude.Size = new System.Drawing.Size(147, 28);
this.labelExclude.TabIndex = 23;
this.labelExclude.Text = "Exclude results containing:";
this.labelExclude.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// progressBarSearch
//
this.progressBarSearch.Location = new System.Drawing.Point(7, 300);
this.progressBarSearch.Name = "progressBarSearch";
this.progressBarSearch.Size = new System.Drawing.Size(147, 24);
this.progressBarSearch.TabIndex = 22;
this.progressBarSearch.Visible = false;
//
// checkBoxSearchAny
//
this.checkBoxSearchAny.Location = new System.Drawing.Point(8, 35);
this.checkBoxSearchAny.Name = "checkBoxSearchAny";
this.checkBoxSearchAny.Size = new System.Drawing.Size(145, 16);
this.checkBoxSearchAny.TabIndex = 21;
this.checkBoxSearchAny.Text = "Match any words";
//
// textBoxAvaibility
//
this.textBoxAvaibility.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.textBoxAvaibility.Location = new System.Drawing.Point(98, 140);
this.textBoxAvaibility.Name = "textBoxAvaibility";
this.textBoxAvaibility.Size = new System.Drawing.Size(40, 20);
this.textBoxAvaibility.TabIndex = 20;
this.textBoxAvaibility.Text = "";
this.textBoxAvaibility.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBoxMaxSize_KeyPress);
this.textBoxAvaibility.KeyUp += new System.Windows.Forms.KeyEventHandler(this.textBoxSearch_KeyUp);
//
// labelAvailability
//
this.labelAvailability.Location = new System.Drawing.Point(8, 142);
this.labelAvailability.Name = "labelAvailability";
this.labelAvailability.Size = new System.Drawing.Size(89, 16);
this.labelAvailability.TabIndex = 19;
this.labelAvailability.Text = "Availability >";
this.labelAvailability.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// comboBoxSearchType
//
this.comboBoxSearchType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxSearchType.Location = new System.Drawing.Point(8, 59);
this.comboBoxSearchType.Name = "comboBoxSearchType";
this.comboBoxSearchType.Size = new System.Drawing.Size(143, 21);
this.comboBoxSearchType.TabIndex = 18;
//
// textBoxMinSize
//
this.textBoxMinSize.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.textBoxMinSize.Location = new System.Drawing.Point(98, 114);
this.textBoxMinSize.Name = "textBoxMinSize";
this.textBoxMinSize.Size = new System.Drawing.Size(40, 20);
this.textBoxMinSize.TabIndex = 17;
this.textBoxMinSize.Text = "";
this.textBoxMinSize.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBoxMaxSize_KeyPress);
this.textBoxMinSize.KeyUp += new System.Windows.Forms.KeyEventHandler(this.textBoxSearch_KeyUp);
//
// labelSizeUpper
//
this.labelSizeUpper.Location = new System.Drawing.Point(8, 115);
this.labelSizeUpper.Name = "labelSizeUpper";
this.labelSizeUpper.Size = new System.Drawing.Size(93, 16);
this.labelSizeUpper.TabIndex = 16;
this.labelSizeUpper.Text = "Size (MB) >";
this.labelSizeUpper.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// textBoxMaxSize
//
this.textBoxMaxSize.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.textBoxMaxSize.Location = new System.Drawing.Point(98, 91);
this.textBoxMaxSize.Name = "textBoxMaxSize";
this.textBoxMaxSize.Size = new System.Drawing.Size(40, 20);
this.textBoxMaxSize.TabIndex = 15;
this.textBoxMaxSize.Text = "";
this.textBoxMaxSize.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBoxMaxSize_KeyPress);
this.textBoxMaxSize.KeyUp += new System.Windows.Forms.KeyEventHandler(this.textBoxSearch_KeyUp);
//
// labelSizeLower
//
this.labelSizeLower.Location = new System.Drawing.Point(8, 91);
this.labelSizeLower.Name = "labelSizeLower";
this.labelSizeLower.Size = new System.Drawing.Size(92, 16);
this.labelSizeLower.TabIndex = 14;
this.labelSizeLower.Text = "Size (MB) <";
this.labelSizeLower.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// buttonExtend
//
this.buttonExtend.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.buttonExtend.Location = new System.Drawing.Point(5, 263);
this.buttonExtend.Name = "buttonExtend";
this.buttonExtend.Size = new System.Drawing.Size(147, 24);
this.buttonExtend.TabIndex = 13;
this.buttonExtend.Text = "Search more";
this.buttonExtend.Click += new System.EventHandler(this.buttonExtend_Click);
//
// buttonSearch
//
this.buttonSearch.BackColor = System.Drawing.SystemColors.Control;
this.buttonSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.buttonSearch.Location = new System.Drawing.Point(6, 231);
this.buttonSearch.Name = "buttonSearch";
this.buttonSearch.Size = new System.Drawing.Size(146, 24);
this.buttonSearch.TabIndex = 12;
this.buttonSearch.Text = "Search";
this.buttonSearch.Click += new System.EventHandler(this.buttonSearch_Click);
//
// textBoxSearch
//
this.textBoxSearch.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.textBoxSearch.Location = new System.Drawing.Point(8, 11);
this.textBoxSearch.Name = "textBoxSearch";
this.textBoxSearch.Size = new System.Drawing.Size(142, 20);
this.textBoxSearch.TabIndex = 11;
this.textBoxSearch.Text = "";
this.textBoxSearch.KeyUp += new System.Windows.Forms.KeyEventHandler(this.textBoxSearch_KeyUp);
//
// tabSearchs
//
this.tabSearchs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tabSearchs.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(235)), ((System.Byte)(241)), ((System.Byte)(250)));
this.tabSearchs.HideTabsMode = Crownwood.Magic.Controls.TabControl.HideTabsModes.ShowAlways;
this.tabSearchs.Location = new System.Drawing.Point(7, 7);
this.tabSearchs.Name = "tabSearchs";
this.tabSearchs.PositionTop = true;
this.tabSearchs.ShowArrows = true;
this.tabSearchs.ShowClose = true;
this.tabSearchs.ShrinkPagesToFit = false;
this.tabSearchs.Size = new System.Drawing.Size(498, 340);
this.tabSearchs.TabIndex = 1;
//
// panel2
//
this.panel2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panel2.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(235)), ((System.Byte)(241)), ((System.Byte)(250)));
this.panel2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel2.Controls.Add(this.tabSearchs);
this.panel2.Location = new System.Drawing.Point(171, 9);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(515, 356);
this.panel2.TabIndex = 2;
//
// FormSearch
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(222)), ((System.Byte)(231)), ((System.Byte)(247)));
this.ClientSize = new System.Drawing.Size(693, 372);
this.Controls.Add(this.panel1);
this.Controls.Add(this.panel2);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Name = "FormSearch";
this.Text = "FormSearch";
this.panel1.ResumeLayout(false);
this.panel2.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private void buttonSearch_Click(object sender, System.EventArgs e)
{
buttonSearch.Enabled=false;
buttonExtend.Text=eLePhantForm.Globalization["LBL_CANCEL"];
Crownwood.Magic.Controls.TabPage searchPage;
searchListView searchList=new searchListView();
searchList.AllowColumnReorder = true;
searchList.Dock=DockStyle.Fill;
searchList.AutoArrange = false;
searchList.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
searchList.DefaultCustomDraw = true;
searchList.FullRowSelect = true;
searchList.FullyCustomHeader = false;
searchList.HideSelection = false;
searchList.IncreaseHeaderHeight = 0;
searchList.View = System.Windows.Forms.View.Details;
searchList.Initilize(krnGateway);
searchList.ForeColor=eLePhantForm.Skin.GetColor("listsForeColor");
searchList.BackColor=eLePhantForm.Skin.GetColor("listsBackColor");
searchList.headerBackColor=eLePhantForm.Skin.GetColor("listsHeaderBackColor");
searchList.ScrollBarBKColor=eLePhantForm.Skin.GetColor("listsScrollBarBackColor").ToArgb();
searchPage = new Crownwood.Magic.Controls.TabPage(textBoxSearch.Text, searchList, null);
searchPage.Tag=m_SearchCount;
searchList.Tag=m_SearchCount;
SearchesList.Add(m_SearchCount,searchList);
tabSearchs.TabPages.Add(searchPage);
tabSearchs.SelectedIndex=tabSearchs.TabPages.Count-1;
uint MinSize;
try{MinSize=Convert.ToUInt32(textBoxMinSize.Text)*1048576;} catch{MinSize=0;}
uint MaxSize;
try{MaxSize=Convert.ToUInt32(textBoxMaxSize.Text)*1048576;} catch{MaxSize=0;}
uint Avaibility;
try{Avaibility=Convert.ToUInt32(textBoxAvaibility.Text);} catch{Avaibility=0;}
string searchType="";
switch (comboBoxSearchType.SelectedIndex)
{
case 0: searchType="";
break;
case 1: searchType="Video";
break;
case 2: searchType="Pro";
break;
case 3: searchType="Audio";
break;
case 4: searchType="Image";
break;
}
TotalResult.Add(m_SearchCount,(uint)0);
TabTitle.Add(m_SearchCount,textBoxSearch.Text);
krnGateway.Search(m_SearchCount, textBoxSearch.Text,checkBoxSearchAny.Checked,searchType,MaxSize,MinSize,Avaibility, textBoxExclude.Text);
m_SearchCount++;
}
private void m_InvokeOnNewSearched(InterfaceSearchedFile file, int searchID)
{
this.BeginInvoke(new SearchEvent(m_OnNewSearched),new object[] {file,searchID});
}
private void m_OnNewSearched(InterfaceSearchedFile file, int searchID)
{
foreach (searchListView searchList in SearchesList.Values)
{
if ((int)searchList.Tag==searchID)
{
m_AddTotalResultsToTabPage(file,searchID,false,0);
searchList.OnNewFile(file);
break;
}
}
}
private void m_AddTotalResultsToTabPage(InterfaceSearchedFile file, int searchID,bool ondiff, uint diff)
{
try
{
if(!TotalResult.ContainsKey(searchID)) return;
uint Total;
foreach (Crownwood.Magic.Controls.TabPage TabPage in tabSearchs.TabPages)
{
if ((int)TabPage.Tag==searchID)
{
if(ondiff)
Total = (uint)TotalResult[searchID]+diff;
else
Total = (uint)TotalResult[searchID]+file.Avaibility;
TotalResult[searchID] = Total;
TabPage.Title = TabTitle[searchID] + " (" +Total+")";
}
}
}
catch(Exception Ex)
{
Debug.WriteLine(Ex.ToString());
}
}
private void m_InvokeOnModifiedSearched(InterfaceSearchedFile file, int searchID)
{
this.BeginInvoke(new SearchEvent(m_OnModifiedSearched),new object[] {file,searchID});
}
private void m_OnModifiedSearched(InterfaceSearchedFile file, int searchID)
{
uint diff;
foreach (searchListView searchList in SearchesList.Values)
{
if ((int)searchList.Tag==searchID)
{
diff=searchList.OnUpdateFile(file);
m_AddTotalResultsToTabPage(file,searchID,true,diff);
}
}
}
private void m_InvokeOnEndSearch(int searchID)
{
this.BeginInvoke(new EndSearchEvent(m_OnEndSearch),new object[] {searchID});
}
public void m_OnEndSearch(int searchID)
{
buttonSearch.Enabled=true;
progressBarSearch.Value=0;
progressBarSearch.Visible=false;
buttonExtend.Text=eLePhantForm.Globalization["LBL_SEARCHEXTEND"];
}
private void m_OnNewSearchTab(int searchID, string tabName)
{
MethodInvoker mi = new MethodInvoker(this.m_CreateTab);
m_SearchCount=searchID;
m_NewTabName=tabName;
this.BeginInvoke(mi);
Thread.Sleep(300) ;
}
private void m_CreateTab()
{
Crownwood.Magic.Controls.TabPage searchPage;
searchListView searchList=new searchListView();
searchList.AllowColumnReorder = true;
searchList.Dock=DockStyle.Fill;
searchList.AutoArrange = false;
searchList.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
searchList.DefaultCustomDraw = true;
searchList.FullRowSelect = true;
searchList.FullyCustomHeader = false;
searchList.HideSelection = false;
searchList.IncreaseHeaderHeight = 0;
searchList.View = System.Windows.Forms.View.Details;
searchList.Initilize(krnGateway);
searchList.ForeColor=eLePhantForm.Skin.GetColor("listsForeColor");
searchList.BackColor=eLePhantForm.Skin.GetColor("listsBackColor");
searchList.headerBackColor=eLePhantForm.Skin.GetColor("listsHeaderBackColor");
searchList.ScrollBarBKColor=eLePhantForm.Skin.GetColor("listsScrollBarBackColor").ToArgb();
searchList.AlreadyDownloadingItemColor=eLePhantForm.Skin.GetColor("SearchAlreadyDownloadingItemColor");
searchList.AlreadyDownloadedItemColor=eLePhantForm.Skin.GetColor("SearchAlreadyDownloadedItemColor");
searchPage = new Crownwood.Magic.Controls.TabPage(m_NewTabName, searchList, null);
if (SearchesList.ContainsKey(m_SearchCount)) m_SearchCount++; //TODO review this !
searchPage.Tag=m_SearchCount;
searchList.Tag=m_SearchCount;
SearchesList.Add(m_SearchCount,searchList);
tabSearchs.TabPages.Add(searchPage);
tabSearchs.SelectedIndex=tabSearchs.TabPages.Count-1;
m_SearchCount++;
}
private void buttonExtend_Click(object sender, System.EventArgs e)
{
if (buttonExtend.Text==eLePhantForm.Globalization["LBL_CANCEL"])
{
if (tabSearchs.SelectedIndex>=0) m_OnEndSearch((int)tabSearchs.TabPages[tabSearchs.SelectedIndex].Tag);
if (tabSearchs.SelectedIndex>=0) krnGateway.CancelSearch((int)tabSearchs.TabPages[tabSearchs.SelectedIndex].Tag);
}
else
{
if (tabSearchs.SelectedIndex>=0) krnGateway.ExtendSearch((int)tabSearchs.TabPages[tabSearchs.SelectedIndex].Tag);
}
}
protected void OnClosePressed(object sender,EventArgs e)
{
if (tabSearchs.SelectedIndex<0) return;
if (tabSearchs.SelectedIndex==tabSearchs.TabPages.Count-1)
m_OnEndSearch((int)tabSearchs.TabPages[tabSearchs.SelectedIndex].Tag);
int tabIndexToRemove=(int)tabSearchs.TabPages[tabSearchs.SelectedIndex].Tag;
krnGateway.DeleteSearch((int)tabSearchs.TabPages[tabSearchs.SelectedIndex].Tag);
tabSearchs.TabPages.RemoveAt(tabSearchs.SelectedIndex);
TotalResult.Remove(tabIndexToRemove);
TabTitle.Remove(tabIndexToRemove);
//SearchesList.Remove(tabIndexToRemove);
}
private void textBoxSearch_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
if ((e.KeyData==Keys.Enter)&&(buttonSearch.Enabled)) buttonSearch_Click(this,null);
}
private void m_Globalize()
{
checkBoxSearchAny.Text = eLePhantForm.Globalization["LBL_SEARCHANY"];
buttonExtend.Text = eLePhantForm.Globalization["LBL_SEARCHEXTEND"];
buttonSearch.Text = eLePhantForm.Globalization["LBL_SEARCHFILE"];
labelAvailability.Text = eLePhantForm.Globalization["LBL_AVAILABILITY"] + " > ";
labelSizeLower.Text = eLePhantForm.Globalization["LBL_SIZELOWER"] + " < ";
labelSizeUpper.Text = eLePhantForm.Globalization["LBL_SIZEUPPER"] + " > ";
labelExclude.Text=eLePhantForm.Globalization["LBL_EXCLUDE"]+":";
comboBoxSearchType.Items.Clear();
comboBoxSearchType.Items.AddRange(new object[] { eLePhantForm.Globalization["LBL_ANY"],
eLePhantForm.Globalization["LBL_VIDEO"],
eLePhantForm.Globalization["LBL_PROGRAM"],
eLePhantForm.Globalization["LBL_AUDIO"],
eLePhantForm.Globalization["LBL_IMAGE"]});
if (comboBoxSearchType.SelectedIndex==-1) comboBoxSearchType.SelectedIndex=0;
}
public void Globalize()
{
m_Globalize();
}
public void SaveListsSettings()
{
if (tabSearchs.TabPages.Count>0)
{
searchListView searchList;
searchList=(searchListView)SearchesList[tabSearchs.TabPages[tabSearchs.TabPages.Count-1].Tag];
searchList.SavePreferences();
}
}
private void m_InvokeOnSearchProgress(int progress, int searchID)
{
this.Invoke(new SearchProgressEvent(m_OnSearchProgress),new object[] {progress,searchID});
}
private void m_OnSearchProgress(int progress, int searchID)
{
progressBarSearch.Visible=true;
progressBarSearch.Value=progress;
}
public void ApplySkin()
{
BackColor=eLePhantForm.Skin.GetColor("defaultBackColor");
panel1.BackColor=eLePhantForm.Skin.GetColor("panelsBackColor");
panel2.BackColor=eLePhantForm.Skin.GetColor("panelsBackColor");
tabSearchs.BackColor=eLePhantForm.Skin.GetColor("panelsBackColor");
tabSearchs.ForeColor=eLePhantForm.Skin.GetColor("labelsForeColor");
labelAvailability.ForeColor=eLePhantForm.Skin.GetColor("labelsForeColor");
labelAvailability.BackColor=eLePhantForm.Skin.GetColor("labelsBackColor");
labelSizeLower.ForeColor=eLePhantForm.Skin.GetColor("labelsForeColor");
labelSizeLower.BackColor=eLePhantForm.Skin.GetColor("labelsBackColor");
labelSizeUpper.ForeColor=eLePhantForm.Skin.GetColor("labelsForeColor");
labelSizeUpper.BackColor=eLePhantForm.Skin.GetColor("labelsBackColor");
labelExclude.ForeColor=eLePhantForm.Skin.GetColor("labelsForeColor");
labelExclude.BackColor=eLePhantForm.Skin.GetColor("labelsBackColor");
checkBoxSearchAny.ForeColor=eLePhantForm.Skin.GetColor("labelsForeColor");
checkBoxSearchAny.BackColor=eLePhantForm.Skin.GetColor("labelsBackColor");
textBoxAvaibility.ForeColor=eLePhantForm.Skin.GetColor("TextBoxForeColor");
textBoxAvaibility.BackColor=eLePhantForm.Skin.GetColor("TextBoxBackColor");
textBoxSearch.ForeColor=eLePhantForm.Skin.GetColor("TextBoxForeColor");
textBoxSearch.BackColor=eLePhantForm.Skin.GetColor("TextBoxBackColor");
textBoxMaxSize.ForeColor=eLePhantForm.Skin.GetColor("TextBoxForeColor");
textBoxMaxSize.BackColor=eLePhantForm.Skin.GetColor("TextBoxBackColor");
textBoxMinSize.ForeColor=eLePhantForm.Skin.GetColor("TextBoxForeColor");
textBoxMinSize.BackColor=eLePhantForm.Skin.GetColor("TextBoxBackColor");
textBoxExclude.ForeColor=eLePhantForm.Skin.GetColor("TextBoxForeColor");
textBoxExclude.BackColor=eLePhantForm.Skin.GetColor("TextBoxBackColor");
comboBoxSearchType.ForeColor=eLePhantForm.Skin.GetColor("TextBoxForeColor");
comboBoxSearchType.BackColor=eLePhantForm.Skin.GetColor("TextBoxBackColor");
buttonSearch.BackColor=eLePhantForm.Skin.GetColor("ButtonBackColor");
buttonSearch.ForeColor=eLePhantForm.Skin.GetColor("ButtonForeColor");
buttonExtend.BackColor=eLePhantForm.Skin.GetColor("ButtonBackColor");
buttonExtend.ForeColor=eLePhantForm.Skin.GetColor("ButtonForeColor");
if ((SearchesList!=null)&&(SearchesList.Count>0))
{
foreach (searchListView searchList in SearchesList.Values)
{
searchList.ForeColor=eLePhantForm.Skin.GetColor("listsForeColor");
searchList.BackColor=eLePhantForm.Skin.GetColor("listsBackColor");
searchList.headerBackColor=eLePhantForm.Skin.GetColor("listsHeaderBackColor");
searchList.ScrollBarBKColor=eLePhantForm.Skin.GetColor("listsScrollBarBackColor").ToArgb();
searchList.AlreadyDownloadingItemColor=eLePhantForm.Skin.GetColor("SearchAlreadyDownloadingItemColor");
searchList.AlreadyDownloadedItemColor=eLePhantForm.Skin.GetColor("SearchAlreadyDownloadedItemColor");
}
}
this.Refresh();
}
private void textBoxMaxSize_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if ((((byte)e.KeyChar<48)||((byte)e.KeyChar>57))&&
((byte)e.KeyChar!=8))
e.Handled=true;
}
}
}