cheat-engine/StructuresAddElementfrm.pas
cheatengine@gmail.com 4d297adfd2
2011-07-04 19:52:19 +00:00

68 lines
1.6 KiB
ObjectPascal

unit StructuresAddElementfrm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TfrmStructuresAddElement = class(TForm)
cbType: TComboBox;
cbPointerto: TCheckBox;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
edtDescription: TEdit;
edtByteSize: TEdit;
Label2: TLabel;
edtOffset: TEdit;
Label3: TLabel;
procedure cbTypeChange(Sender: TObject);
procedure edtByteSizeChange(Sender: TObject);
procedure edtOffsetChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
bytesize: integer;
end;
var
frmStructuresAddElement: TfrmStructuresAddElement;
implementation
{$R *.dfm}
procedure TfrmStructuresAddElement.cbTypeChange(Sender: TObject);
var s: string;
begin
if visible then
begin
s:=edtDescription.Text;
if s='Dword' then s:='4 Bytes';
if s='Word' then s:='2 Bytes';
if cbType.Items.IndexOf(s)<>-1 then
edtDescription.Text:=cbType.Items[cbType.itemindex];
bytesize:=integer(cbtype.Items.Objects[cbtype.itemindex]);
edtbytesize.Text:=inttostr(bytesize);
edtByteSize.enabled:=(cbtype.ItemIndex=13) or (cbtype.itemindex=14);
end;
end;
procedure TfrmStructuresAddElement.edtByteSizeChange(Sender: TObject);
begin
bytesize:=strtoint(edtbytesize.text);
cbtype.Items.Objects[cbtype.itemindex]:=pointer(bytesize);
end;
procedure TfrmStructuresAddElement.edtOffsetChange(Sender: TObject);
var x: integer;
begin
button1.Enabled:=TryStrToInt('$'+edtOffset.Text,x);
end;
end.