OnKeyPress GraphWPF.pas
This commit is contained in:
parent
ac0396d5c8
commit
cdec5cb7fb
|
|
@ -769,6 +769,11 @@ namespace PascalABCCompiler.SyntaxTree
|
|||
sb.Append(" " + pa.ToString() + " ");
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
bool is_extension()
|
||||
{
|
||||
return proc_attributes.proc_attributes.FindIndex(attr => attr.attribute_type == proc_attribute.attr_extension) >=0;
|
||||
}
|
||||
}
|
||||
|
||||
public partial class function_header
|
||||
|
|
|
|||
14
TestSuite/ExtPropAssignTuple.pas
Normal file
14
TestSuite/ExtPropAssignTuple.pas
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
type
|
||||
TClass = class
|
||||
private
|
||||
fX, fY: integer;
|
||||
|
||||
public
|
||||
property X: integer write (fX, fY) := (3, 4);
|
||||
end;
|
||||
|
||||
begin
|
||||
var d := TClass.Create;
|
||||
d.X := 55;
|
||||
Assert(d.fX=3);
|
||||
end.
|
||||
8
TestSuite/foreach_arr_seq.pas
Normal file
8
TestSuite/foreach_arr_seq.pas
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
begin
|
||||
var a: array of sequence of byte;
|
||||
SetLength(a,1);
|
||||
a[0] := Seq(byte(1),byte(2));
|
||||
|
||||
foreach var b in a do
|
||||
Assert(b.GetType.Name='Byte[]');
|
||||
end.
|
||||
|
|
@ -459,6 +459,8 @@ var
|
|||
OnKeyDown: procedure(k: Key);
|
||||
/// Событие отжатия клавиши
|
||||
OnKeyUp: procedure(k: Key);
|
||||
/// Событие нажатия символьной клавиши
|
||||
OnKeyPress: procedure(ch: char);
|
||||
/// Событие изменения размера графического окна
|
||||
OnResize: procedure;
|
||||
|
||||
|
|
@ -1391,16 +1393,20 @@ begin
|
|||
end;
|
||||
|
||||
/// --- SystemKeyEvents
|
||||
procedure SystemOnKeyDown(sender: Object; e: KeyEventArgs);
|
||||
begin
|
||||
procedure SystemOnKeyDown(sender: Object; e: KeyEventArgs) :=
|
||||
if OnKeyDown<>nil then
|
||||
OnKeyDown(e.Key);
|
||||
end;
|
||||
|
||||
procedure SystemOnKeyUp(sender: Object; e: KeyEventArgs) :=
|
||||
if OnKeyUp<>nil then
|
||||
OnKeyUp(e.Key);
|
||||
|
||||
procedure SystemOnKeyPress(sender: Object; e: TextCompositionEventArgs) :=
|
||||
begin
|
||||
if (OnKeyPress<>nil) and (e.Text<>nil) and (e.Text.Length>0) then
|
||||
OnKeyPress(e.Text[1]);
|
||||
end;
|
||||
|
||||
procedure SystemOnResize(sender: Object; e: SizeChangedEventArgs) :=
|
||||
if OnResize<>nil then
|
||||
OnResize();
|
||||
|
|
@ -1521,6 +1527,7 @@ public
|
|||
MouseMove += SystemOnMouseMove;
|
||||
KeyDown += SystemOnKeyDown;
|
||||
KeyUp += SystemOnKeyUp;
|
||||
Self.TextInput += SystemOnKeyPress;
|
||||
SizeChanged += SystemOnResize;
|
||||
|
||||
CompositionTarget.Rendering += RenderFrame;
|
||||
|
|
|
|||
Loading…
Reference in a new issue