111 lines
2.7 KiB
ObjectPascal
111 lines
2.7 KiB
ObjectPascal
unit cde_MainForm;
|
|
{$mode delphi}
|
|
{$codepage UTF8}
|
|
interface
|
|
uses Classes, SysUtils, FileUtil, Forms, Controls, Dialogs, Buttons, ExtCtrls, ComCtrls, Menus, kernel, cde_dir,
|
|
SimplyJSON, LazUTF8Classes, ShellApi, cde_lang, cde_types;
|
|
type
|
|
{ Tcde_Main }
|
|
Tcde_Main = class(TForm)
|
|
DiscPages: TPageControl;
|
|
Images: TImageList;
|
|
MainMenu: TMainMenu;
|
|
DiscM: TMenuItem;
|
|
ActionsM: TMenuItem;
|
|
HelpM: TMenuItem;
|
|
BrowseM: TMenuItem;
|
|
CreateLinkM: TMenuItem;
|
|
EjectM: TMenuItem;
|
|
AboutM: TMenuItem;
|
|
DCloseM: TMenuItem;
|
|
ProgramWebM: TMenuItem;
|
|
Sep3: TMenuItem;
|
|
Sep2: TMenuItem;
|
|
Sep1: TMenuItem;
|
|
RefrashM: TMenuItem;
|
|
SettingsM: TMenuItem;
|
|
NoDiscFound: TPanel;
|
|
procedure AboutMClick(Sender: TObject);
|
|
procedure BrowseMClick(Sender: TObject);
|
|
procedure CreateLinkMClick(Sender: TObject);
|
|
procedure DCloseMClick (Sender: TObject );
|
|
procedure EjectMClick(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure FormDestroy(Sender: TObject);
|
|
procedure DiscsMenuClick(Sender: TObject);
|
|
procedure ProgramWebMClick(Sender: TObject);
|
|
procedure RefrashMClick(Sender: TObject);
|
|
procedure SettingsMClick(Sender: TObject);
|
|
private
|
|
public
|
|
DiscList: TStringListUTF8;
|
|
end;
|
|
var
|
|
cde_Main: Tcde_Main;
|
|
implementation
|
|
uses cde_disc_frame;
|
|
{$R *.lfm}
|
|
procedure Tcde_Main.FormCreate(Sender: TObject);
|
|
var Ind: Byte;
|
|
begin
|
|
UpdateLanguage;
|
|
DiscList:= TStringListUTF8.Create;
|
|
UpdateDL(DiscList);
|
|
if DiscList.Count > 0 then
|
|
begin
|
|
NoDiscFound.Hide;
|
|
DiscPages.Show;
|
|
for Ind:= 0 to DiscList.Count - 1 do
|
|
CreateDriveRec(Ind);
|
|
end
|
|
else
|
|
begin
|
|
DiscPages.Hide;
|
|
NoDiscFound.Show;
|
|
end;
|
|
DiscM.Visible:= JSReadBoolean('/interface/discmshow', True, GetCDEPath + 'configs\configs.json');
|
|
end;
|
|
procedure Tcde_Main.EjectMClick(Sender: TObject);
|
|
begin
|
|
GetFrame.do_EjectDisc;
|
|
end;
|
|
procedure Tcde_Main.CreateLinkMClick(Sender: TObject);
|
|
begin
|
|
GetFrame.do_CreateLink;
|
|
end;
|
|
procedure Tcde_Main.DCloseMClick (Sender: TObject );
|
|
begin
|
|
GetFrame.do_CloseDisc;
|
|
end;
|
|
procedure Tcde_Main.BrowseMClick(Sender: TObject);
|
|
begin
|
|
GetFrame.do_BrowseDisc;
|
|
end;
|
|
procedure Tcde_Main.AboutMClick(Sender: TObject);
|
|
begin
|
|
ShowAboutInfo;
|
|
end;
|
|
procedure Tcde_Main.FormDestroy(Sender: TObject);
|
|
begin
|
|
FreeAndNil(DiscList);
|
|
end;
|
|
procedure Tcde_Main.DiscsMenuClick(Sender: TObject);
|
|
var Indx: Integer;
|
|
begin
|
|
Indx:= (Sender as TMenuItem).Tag;
|
|
DiscPages.ActivePageIndex:= Indx;
|
|
end;
|
|
procedure Tcde_Main.ProgramWebMClick(Sender: TObject);
|
|
begin
|
|
ShellExecute(Self.Handle, 'open', PChar(WebHomePage), Nil, PChar(GetCDEPath + 'help\'), 1);
|
|
end;
|
|
procedure Tcde_Main.RefrashMClick(Sender: TObject);
|
|
begin
|
|
GetFrame.do_Refrash;
|
|
end;
|
|
procedure Tcde_Main.SettingsMClick(Sender: TObject);
|
|
begin
|
|
ShowSettings();
|
|
end;
|
|
end.
|