home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Freelog 11
/
Freelog011.iso
/
BestOf
/
PhoenixMail
/
Source
/
phoenix
/
FMEnviro.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1998-12-04
|
21KB
|
663 lines
{*****************************************************************************
*
* FMEnviro.pas - Environment Options Form (16-August-1998)
*
* Copyright (c) 1998-99 Michael Haller
*
* Author: Michael Haller
* E-mail: michael@discountdrive.com
* Homepage: http://www.discountdrive.com/sunrise
*
* 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;
*
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
*----------------------------------------------------------------------------
*
* Revision history:
*
* DATE REV DESCRIPTION
* ----------- --- ----------------------------------------------------------
*
*****************************************************************************}
unit FMEnviro;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, PXStuff, ExtCtrls, ComCtrls, Buttons, LangSup, NumEdit, FMDirectory,
FileCtrl, ComboBoxEx, Mask, ParserSup, StatusBarEx;
type
TEnviroForm = class(TForm)
Panel1: TPanel;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Bevel5: TBevel;
Label16: TLabel;
Panel2: TPanel;
Image1: TImage;
Image2: TImage;
Label24: TLabel;
Button3: TButton;
Button4: TButton;
Button5: TButton;
CheckBox1: TCheckBox;
OpenDialog1: TOpenDialog;
CheckBox6: TCheckBox;
TabSheet3: TTabSheet;
FontDialog1: TFontDialog;
Label8: TLabel;
Bevel4: TBevel;
CheckBox5: TCheckBox;
CheckBox7: TCheckBox;
TabSheet4: TTabSheet;
Label9: TLabel;
Bevel6: TBevel;
CheckBox8: TCheckBox;
Label10: TLabel;
Bevel7: TBevel;
CheckBox9: TCheckBox;
Label2: TLabel;
Bevel1: TBevel;
Label7: TLabel;
SpeedButton1: TSpeedButton;
Panel3: TPanel;
Label11: TLabel;
Label12: TLabel;
CheckBox10: TCheckBox;
CheckBox11: TCheckBox;
CheckBox12: TCheckBox;
CheckBox13: TCheckBox;
CheckBox14: TCheckBox;
UpDown1: TUpDown;
CheckBox15: TCheckBox;
Edit3: TNumEdit;
TabSheet5: TTabSheet;
Label14: TLabel;
Bevel8: TBevel;
Label1: TLabel;
Bevel2: TBevel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label4: TLabel;
CheckBox3: TCheckBox;
SpeedButton5: TSpeedButton;
Label15: TLabel;
Edit4: TEdit;
SpeedButton2: TSpeedButton;
Label17: TLabel;
Label18: TLabel;
Bevel9: TBevel;
Label19: TLabel;
NumEdit1: TNumEdit;
UpDown2: TUpDown;
Label20: TLabel;
CheckBox16: TCheckBox;
TabSheet2: TTabSheet;
Label5: TLabel;
Bevel3: TBevel;
Label21: TLabel;
Edit5: TEdit;
Label6: TLabel;
Edit6: TEdit;
Label22: TLabel;
CheckBox17: TCheckBox;
ComboBoxEx1: TComboBoxEx;
MaskEdit1: TMaskEdit;
MaskEdit2: TMaskEdit;
NumEdit2: TNumEdit;
UpDown3: TUpDown;
Label26: TLabel;
CheckBox2: TCheckBox;
CheckBox4: TCheckBox;
CheckBox18: TCheckBox;
TabSheet6: TTabSheet;
Label23: TLabel;
Bevel10: TBevel;
Label25: TLabel;
Edit7: TEdit;
SpeedButton3: TSpeedButton;
Label27: TLabel;
Edit8: TEdit;
SpeedButton4: TSpeedButton;
OpenDialog2: TOpenDialog;
Label28: TLabel;
Label29: TLabel;
CheckBox19: TCheckBox;
Bevel12: TBevel;
Label30: TLabel;
Bevel13: TBevel;
Label31: TLabel;
Edit9: TEdit;
Label32: TLabel;
Edit10: TEdit;
Label33: TLabel;
Edit11: TEdit;
Label34: TLabel;
Edit12: TEdit;
SpeedButton6: TSpeedButton;
TabSheet7: TTabSheet;
Label13: TLabel;
Label35: TLabel;
Label36: TLabel;
ListView1: TListView;
ListView2: TListView;
ImageList1: TImageList;
Label37: TLabel;
Bevel11: TBevel;
TabSheet8: TTabSheet;
Label38: TLabel;
Bevel14: TBevel;
CheckBox20: TCheckBox;
CheckBox21: TCheckBox;
Label39: TLabel;
Edit13: TEdit;
SpeedButton7: TSpeedButton;
OpenDialog3: TOpenDialog;
CheckBox22: TCheckBox;
CheckBox23: TCheckBox;
CheckBox24: TCheckBox;
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure CheckBox11Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure CheckBox17Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure ListView1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure ListView2DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure ListView1DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure ListView2DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure ListView2Compare(Sender: TObject; Item1, Item2: TListItem;
Data: Integer; var Compare: Integer);
procedure SpeedButton7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure GetOptions;
procedure SetOptions;
end;
var
EnviroForm: TEnviroForm;
implementation
{$R *.DFM}
uses
Main, FMAddress, FMMailOptions;
procedure TEnviroForm.GetOptions;
var
I, E, ImageIndex: Integer;
B: TSpeedButtonEx;
Item: TListItem;
SL: TStringList;
begin
CheckBox1.Checked := bMakeProtocol;
CheckBox3.Checked := bVirusMin;
CheckBox8.Checked := bFriendlyPrinter;
CheckBox9.Checked := bAskForLanguage;
Edit1.Text := sVirusProg;
Edit2.Text := sVirusParams;
CheckBox4.Checked := bAskToGoOffline;
CheckBox6.Checked := bAskForDelFromServer;
Panel3.Caption := ' '+sMessageFont+' '+IntToStr(iFontSize);
FontDialog1.Font.Name := sMessageFont;
FontDialog1.Font.Size := iFontSize;
FontDialog1.Font.Color := iFontColor;
FontDialog1.Font.CharSet := iFontCharSet;
CheckBox7.Checked := bGoOnlineAtStart;
CheckBox5.Checked := bStartAtWindowsStart;
CheckBox11.Checked := bScheduleC1;
CheckBox12.Checked := bScheduleC2;
CheckBox13.Checked := bScheduleC3;
CheckBox14.Checked := bScheduleC4;
CheckBox10.Checked := bScheduleC5;
MaskEdit1.Text := sScheduleS2;
MaskEdit2.Text := sScheduleS3;
CheckBox15.Checked := bCheckForStdEMail;
CheckBox11Click(Self);
Edit4.Text := sCustAddressBook;
CheckBox16.Checked := bListMailsAtDownload;
ComboBoxEx1.ItemIndex := ComboBoxEx1.Values.IndexOf(sDUNConnection);
Edit5.Text := sDUNUsername;
Edit6.Text := sDUNPassword;
Checkbox17.Checked := bDUNAskForPassword;
UpDown1.Position := sScheduleS1;
UpDown2.Position := iMarkAsReadSec;
UpDown3.Position := iDUNAutoQuitTime;
CheckBox2.Checked := bDUNAutoQuit;
CheckBox18.Checked := bViewStatusAtEnd;
Edit7.Text := sSoundFile1;
Edit8.Text := sSoundFile2;
Edit12.Text := sSoundFile3;
CheckBox19.Checked := bDUNNormalQuit;
Edit9.Text := sAccountsCaption;
Edit10.Text := sTrashBagCaption;
Edit11.Text := sRepositoryCaption;
CheckBox20.Checked := bOfficeFonts;
CheckBox21.Checked := bFlatButtons;
Edit13.Text := sToolbarBKBitmap;
CheckBox22.Checked := bSmallToolbarButtons;
CheckBox23.Checked := bShowCntInBrackets;
CheckBox24.Checked := bHideAnimations;
TabSheet2.TabVisible := MainForm.DialUp1.RasInstalled;
if not MainForm.DialUp1.RasInstalled then begin
CheckBox19.Checked := False;
CheckBox2.Checked := False;
CheckBox10.Checked := False;
CheckBox4.Checked := False;
CheckBox19.Visible := False;
CheckBox2.Visible := False;
CheckBox10.Visible := False;
CheckBox4.Visible := False;
Label29.Visible := False;
Label26.Visible := False;
NumEdit2.Visible := False;
UpDown3.Visible := False;
end;
CheckBox17Click(Self);
ListView1.Items.Clear;
ListView2.Items.Clear;
Item := ListView2.Items.Add;
Item.Caption := MainForm.ListBox1.Items[91];
MainForm.GetToolbarButttonByIndex(0, I);
Item.ImageIndex := I;
Item.StateIndex := 0;
SL := TStringList.Create;
CommataStringToStringList(sToolbarButtons, SL);
for I := 0 to SL.Count-1 do begin
E := StrToInt(SL.Strings[I]);
B := MainForm.GetToolbarButttonByIndex(E, ImageIndex);
Item := ListView1.Items.Add;
Item.ImageIndex := ImageIndex;
Item.StateIndex := E;
if B = nil then Item.Caption := MainForm.ListBox1.Items[91] else Item.Caption := B.Comment;
end;
for I := 1 to iToolbarButtonCount do begin
if SL.IndexOf(IntToStr(I)) = -1 then begin
B := MainForm.GetToolbarButttonByIndex(I, ImageIndex);
Item := ListView2.Items.Add;
Item.Caption := B.Comment;
Item.ImageIndex := ImageIndex;
Item.StateIndex := I;
end;
end;
ListView2.SortType := stText;
ListView2.AlphaSort;
SL.Free;
end;
procedure TEnviroForm.SetOptions;
var
I, E: Integer;
P: TPoint;
SL1, SL2: TStringList;
B: Boolean;
begin
bMakeProtocol := CheckBox1.Checked;
bVirusMin := CheckBox3.Checked;
bFriendlyPrinter := CheckBox8.Checked;
bAskForLanguage := CheckBox9.Checked;
sVirusProg := Edit1.Text;
sVirusParams := Edit2.Text;
bAskToGoOffline := CheckBox4.Checked;
bAskForDelFromServer := CheckBox6.Checked;
sMessageFont := FontDialog1.Font.Name;
iFontSize := FontDialog1.Font.Size;
iFontColor := FontDialog1.Font.Color;
iFontCharSet := FontDialog1.Font.CharSet;
bGoOnlineAtStart := CheckBox7.Checked;
bStartAtWindowsStart := CheckBox5.Checked;
bScheduleC1 := CheckBox11.Checked;
bScheduleC2 := CheckBox12.Checked;
bScheduleC3 := CheckBox13.Checked;
bScheduleC4 := CheckBox14.Checked;
bScheduleC5 := CheckBox10.Checked;
sScheduleS2 := MaskEdit1.Text;
sScheduleS3 := MaskEdit2.Text;
bCheckForStdEMail := CheckBox15.Checked;
sCustAddressBook := Edit4.Text;
bListMailsAtDownload := CheckBox16.Checked;
sDUNConnection := ComboBoxEx1.Values[ComboBoxEx1.ItemIndex];
sDUNUsername := Edit5.Text;
sDUNPassword := Edit6.Text;
bDUNAskForPassword := Checkbox17.Checked;
bDUNAutoQuit := CheckBox2.Checked;
bViewStatusAtEnd := CheckBox18.Checked;
sScheduleS1 := UpDown1.Position;
iMarkAsReadSec := UpDown2.Position;
iDUNAutoQuitTime := UpDown3.Position;
sSoundFile1 := Edit7.Text;
sSoundFile2 := Edit8.Text;
sSoundFile3 := Edit12.Text;
bDUNNormalQuit := Checkbox19.Checked;
sAccountsCaption := Edit9.Text;
sTrashBagCaption := Edit10.Text;
sRepositoryCaption := Edit11.Text;
bOfficeFonts := CheckBox20.Checked;
bFlatButtons := CheckBox21.Checked;
sToolbarBKBitmap := Edit13.Text;
bSmallToolbarButtons := CheckBox22.Checked;
bHideAnimations := CheckBox24.Checked;
if bShowCntInBrackets <> CheckBox23.Checked then begin
bShowCntInBrackets := CheckBox23.Checked;
for I := 0 to MainForm.TreeView1.Items.Count-1 do SetPXTreeNodeName(MainForm.TreeView1.Items[I]);
end;
if bOfficeFonts then begin
MainForm.Font.Name := sOfficeFontName;
AddressForm.Font.Name := sOfficeFontName;
MailOptionsForm.Font.Name := sOfficeFontName;
end else begin
MainForm.Font.Name := 'MS Sans Serif';
AddressForm.Font.Name := 'MS Sans Serif';
MailOptionsForm.Font.Name := 'MS Sans Serif';
end;
MainForm.RepositoryNode.Text := sRepositoryCaption;
MainForm.TrashNode.Text := sTrashBagCaption;
MainForm.AccountsNode.Text := sAccountsCaption;
SL1 := TStringList.Create;
SL2 := TStringList.Create;
for I := 0 to ListView1.Items.Count-1 do begin
P := ListView1.Items[I].GetPosition;
B := True;
for E := 0 to SL1.Count-1 do
if P.X < StrToInt(SL1.Strings[E]) then begin
SL1.Insert(E, IntToStr(P.X));
SL2.Insert(E, IntToStr(ListView1.Items[I].StateIndex));
B := False; Break;
end;
if B then begin
SL1.Add(IntToStr(P.X));
SL2.Add(IntToStr(ListView1.Items[I].StateIndex));
end;
end;
sToolbarButtons := StringListToCommataString(SL2, False);
SL1.Free; SL2.Free;
MainForm.SetToolbarButtonOrder;
MainForm.DefaultFont.Name := sMessageFont;
MainForm.DefaultFont.Size := iFontSize;
MainForm.DefaultFont.Color := iFontColor;
MainForm.RichEdit1.DefAttributes.Assign(MainForm.DefaultFont);
MainForm.RichEdit1.SelAttributes.Assign(MainForm.DefaultFont);
end;
procedure TEnviroForm.FormShow(Sender: TObject);
begin
GetOptions;
end;
procedure TEnviroForm.Button1Click(Sender: TObject);
begin
SetOptions;
end;
procedure TEnviroForm.SpeedButton5Click(Sender: TObject);
begin
OpenDialog1.FileName := Edit1.Text;
if OpenDialog1.Execute then Edit1.Text := OpenDialog1.Filename;
end;
function EnumFontsProc(var LogFont: TLogFont; var TextMetric: TTextMetric; FontType: Integer; Data: Pointer): Integer; stdcall;
begin
TStrings(Data).Add(LogFont.lfFaceName);
Result := 1;
end;
procedure TEnviroForm.FormCreate(Sender: TObject);
var
I: Integer;
begin
AttachLanguageToForm(Self);
if bOfficeFonts then Font.Name := sOfficeFontName;
if bFlatButtons = False then Set3DButtons(False, Self);
ImageList1.ResourceLoad(rtBitmap, 'PX505', clFuchsia);
Image1.Picture.Bitmap := MainForm.Image5.Picture.Bitmap;
Label8.Caption := Label8.Caption+' ';
Label16.Caption := Label16.Caption+' ';
Label1.Caption := Label1.Caption+' ';
Label10.Caption := Label10.Caption+' ';
Label18.Caption := Label18.Caption+' ';
Label9.Caption := Label9.Caption+' ';
Label2.Caption := Label2.Caption+' ';
Label14.Caption := Label14.Caption+' ';
Label5.Caption := Label5.Caption+' ';
Label23.Caption := Label23.Caption+' ';
Label30.Caption := Label30.Caption+' ';
Label37.Caption := Label37.Caption+' ';
Label38.Caption := Label38.Caption+' ';
UpDown1.Min := Edit3.Min;
UpDown1.Max := Edit3.Max;
UpDown2.Min := NumEdit1.Min;
UpDown2.Max := NumEdit1.Max;
UpDown3.Min := NumEdit2.Min;
UpDown3.Max := NumEdit2.Max;
NumEdit1.Left := Label19.Left+Label19.Width+4;
UpDown2.Left := NumEdit1.Left+NumEdit1.Width;
Label20.Left := UpDown2.Left+UpDown2.Width+4;
Edit3.Left := Label11.Left+Label11.Width+4;
UpDown1.Left := Edit3.Left+Edit3.Width;
Label12.Left := UpDown1.Left+UpDown1.Width+4;
NumEdit2.Left := Label29.Left+Label29.Width+4;
UpDown3.Left := NumEdit2.Left+NumEdit2.Width;
Label26.Left := UpDown3.Left+UpDown3.Width+4;
if MainForm.DialUp1.RasInstalled then begin
ComboBoxEx1.Items.Assign(MainForm.DialUp1.PossibleConnections);
ComboBoxEx1.Values.Assign(MainForm.DialUp1.PossibleConnections);
end;
ComboBoxEx1.Items.Insert(0, MainForm.ListBox1.Items[79]);
ComboBoxEx1.Values.Insert(0, '');
ComboBoxEx1.ItemIndex := 0;
ComboBoxEx1.ImgIndexes.Add('13');
for I := 0 to ComboBoxEx1.Items.Count-1 do ComboBoxEx1.ImgIndexes.Add('12');
if iColorDepth <= 8 then begin
Label39.Enabled := False;
Edit3.Enabled := False;
SpeedButton7.Enabled := False;
end;
Edit6.PasswordChar := '*';
ListView1.Width := Label35.Width;
ListView1.Height := Label36.Top-Label35.Top-Label35.Height-6;
ListView2.Width := ListView1.Width;
ListView2.Height := ListView1.Height;
end;
procedure TEnviroForm.SpeedButton1Click(Sender: TObject);
begin
FontDialog1.Font.Style := [];
if FontDialog1.Execute then begin
Panel3.Caption := ' '+FontDialog1.Font.Name+' '+IntToStr(FontDialog1.Font.Size);
end;
end;
procedure TEnviroForm.CheckBox11Click(Sender: TObject);
begin
Label11.Enabled := CheckBox11.Checked;
Label12.Enabled := CheckBox11.Checked;
Edit3.Enabled := CheckBox11.Checked;
UpDown1.Enabled := CheckBox11.Checked;
CheckBox13.Enabled := CheckBox12.Checked;
CheckBox14.Enabled := CheckBox12.Checked;
if not CheckBox13.Enabled then CheckBox13.Checked := False;
if not CheckBox14.Enabled then CheckBox14.Checked := False;
MaskEdit1.Enabled := CheckBox13.Checked;
MaskEdit2.Enabled := CheckBox14.Checked;
Label29.Enabled := CheckBox2.Checked;
Label26.Enabled := CheckBox2.Checked;
NumEdit2.Enabled := CheckBox2.Checked;
UpDown3.Enabled := CheckBox2.Checked;
end;
procedure TEnviroForm.SpeedButton2Click(Sender: TObject);
begin
DirectoryForm := TDirectoryForm.Create(Self);
if DirectoryExists(Edit4.Text) then
DirectoryForm.RzDirectoryListBox1.Directory := sLastAttSaveDir
else
DirectoryForm.RzDirectoryListBox1.Directory := sAddressBookFolder;
if DirectoryForm.ShowModal = mrOK then
Edit4.Text := MakeValidDirname(DirectoryForm.RzDirectoryListBox1.Directory);
end;
procedure TEnviroForm.Button5Click(Sender: TObject);
begin
Application.HelpContext(4);
end;
procedure TEnviroForm.CheckBox17Click(Sender: TObject);
var
B: Boolean;
begin
B := (ComboBoxEx1.Values[ComboBoxEx1.ItemIndex] <> '');
Label6.Enabled := B;
Label22.Enabled := B;
Edit5.Enabled := B;
Edit6.Enabled := B;
Checkbox17.Enabled := B;
if B then Edit6.Enabled := not CheckBox17.Checked;
end;
procedure TEnviroForm.SpeedButton3Click(Sender: TObject);
begin
OpenDialog2.FileName := Edit7.Text;
if OpenDialog2.Execute then Edit7.Text := OpenDialog2.Filename;
end;
procedure TEnviroForm.SpeedButton4Click(Sender: TObject);
begin
OpenDialog2.FileName := Edit8.Text;
if OpenDialog2.Execute then Edit8.Text := OpenDialog2.Filename;
end;
procedure TEnviroForm.SpeedButton6Click(Sender: TObject);
begin
OpenDialog2.FileName := Edit12.Text;
if OpenDialog2.Execute then Edit12.Text := OpenDialog2.Filename;
end;
procedure TEnviroForm.ListView1DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
begin
Accept := (Source = ListView1) or (Source = ListView2);
end;
procedure TEnviroForm.ListView2DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
begin
Accept := (Source = ListView1);
end;
procedure TEnviroForm.ListView1DragDrop(Sender, Source: TObject; X, Y: Integer);
var
Item, AItem: TListItem;
P: TPoint;
begin
//Showmessage('<<< P.X: '+inttostr(p.x)+' X:'+inttostr(X)+' '+ListView1.Selected.Caption);
if Source = ListView2 then begin
AItem := ListView1.GetNearestItem(Point(X, 10), sdAll);
Item := ListView1.Items.Add;
Item.Caption := ListView2.Selected.Caption;
Item.ImageIndex := ListView2.Selected.ImageIndex;
Item.StateIndex := ListView2.Selected.StateIndex;
if not Assigned(AItem) then P.X := 0 else P := AItem.GetPosition;
Item.SetPosition(Point(P.X, 10));
if ListView2.Selected.StateIndex <> 0 then ListView2.Selected.Delete;
Item.MakeVisible(False);
end;
if Source = ListView1 then begin
Item := ListView1.GetNearestItem(Point(X, 10), sdAll);
if not Assigned(Item) then Exit;
if Item = ListView1.Selected then Exit;
P := Item.GetPosition;
X := P.X;
P := ListView1.Selected.GetPosition;
if X < P.X then begin
ListView1.Selected.SetPosition(Point(X, 10));
P := Item.GetPosition;
Item.SetPosition(Point(P.X+ImageList1.Width*2, 10));
end else begin
ListView1.Selected.SetPosition(Point(X, 10));
end;
end;
ListView1.Invalidate;
ListView2.Invalidate;
Label36.Invalidate;
TabSheet7.Invalidate;
end;
procedure TEnviroForm.ListView2DragDrop(Sender, Source: TObject; X, Y: Integer);
var
Item: TListItem;
begin
if Source = ListView1 then begin
if ListView1.Selected.StateIndex <> 0 then begin
Item := ListView2.Items.Add;
Item.Caption := ListView1.Selected.Caption;
Item.ImageIndex := ListView1.Selected.ImageIndex;
Item.StateIndex := ListView1.Selected.StateIndex;
end;
ListView1.Selected.Delete;
end;
ListView2.AlphaSort;
ListView1.Invalidate;
ListView2.Invalidate;
Label36.Invalidate;
TabSheet7.Invalidate;
end;
procedure TEnviroForm.ListView2Compare(Sender: TObject; Item1, Item2: TListItem; Data: Integer; var Compare: Integer);
begin
Compare := AnsiStrIComp(PChar(Item1.Caption), PChar(Item2.Caption));
if Item1.StateIndex = 0 then Compare := 0;
end;
procedure TEnviroForm.SpeedButton7Click(Sender: TObject);
begin
OpenDialog3.FileName := Edit13.Text;
if OpenDialog3.Execute then Edit13.Text := OpenDialog3.Filename;
end;
end.