forked from lmbelo/python4delphi
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUnit1.pas
More file actions
103 lines (91 loc) · 2.53 KB
/
Unit1.pas
File metadata and controls
103 lines (91 loc) · 2.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
unit Unit1;
{$I Definition.Inc}
interface
uses
Classes, SysUtils,
Windows, Messages, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls, ExtCtrls,
PythonEngine, PythonGUIInputOutput;
type
TForm1 = class(TForm)
PythonEngine1: TPythonEngine;
Memo1: TMemo;
Panel1: TPanel;
Button1: TButton;
Splitter1: TSplitter;
Button2: TButton;
Button3: TButton;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
PythonGUIInputOutput1: TPythonGUIInputOutput;
Memo2: TMemo;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
uses
VarPyth;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
P : Variant;
begin
PythonEngine1.ExecStrings( Memo1.Lines );
P := MainModule.Person('John', 'Doe');
Assert(P.first_name = 'John');
Assert(P.last_name = 'Doe');
Assert(VarIsNone(P.weight));
Assert(VarIsNone(P.height));
Assert(VarIsNone(P.age));
P := MainModule.Person('John', 'Doe', weight := 70);
Assert(P.first_name = 'John');
Assert(P.last_name = 'Doe');
Assert(P.weight = 70);
Assert(VarIsNone(P.height));
Assert(VarIsNone(P.age));
P := MainModule.Person('John', 'Doe', weight := 70, height := 172);
Assert(P.first_name = 'John');
Assert(P.last_name = 'Doe');
Assert(P.weight = 70);
Assert(P.height = 172);
Assert(VarIsNone(P.age));
P := MainModule.Person('John', 'Doe', weight := 70, height := 172, age := 35);
Assert(P.first_name = 'John');
Assert(P.last_name = 'Doe');
Assert(P.weight = 70);
Assert(P.height = 172);
Assert(P.age = 35);
P := MainModule.Person(last_name := 'Doe', first_name := 'John', weight := 70, height := 172, age := 35);
Assert(P.first_name = 'John');
Assert(P.last_name = 'Doe');
Assert(P.weight = 70);
Assert(P.height = 172);
Assert(P.age = 35);
P := MainModule.Person('John', 'Doe', 35, 172, 70);
Assert(P.first_name = 'John');
Assert(P.last_name = 'Doe');
Assert(P.weight = 70);
Assert(P.height = 172);
Assert(P.age = 35);
Memo2.Lines.Add('Success')
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
with OpenDialog1 do
begin
if Execute then
Memo1.Lines.LoadFromFile( FileName );
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
with SaveDialog1 do
begin
if Execute then
Memo1.Lines.SaveToFile( FileName );
end;
end;
end.