unit uDdeClientItem;

interface

uses
{$IFDEF VCL}
  ComCtrls,
{$ELSE}
  QComCtrls,
{$ENDIF}
  DdeMan,
  Rubies;

var
  cDdeClientItem: Tvalue;

function ap_cDdeClientItem: Tvalue;
function ap_iDdeClientItem(real: TDdeClientItem; owner: Tvalue): Tvalue;
procedure Init_DdeClientItem;

implementation

uses
  SysUtils, Classes,
  uDefUtils, uIntern, uHandle, uAlloc, uProp, uPhi,
  uSizeConstraints,
  uConv,
  uIndexer,
  Graphics,
  uPersistent, uComponent, uControl;

function ap_cDdeClientItem: Tvalue;
begin
  result := cDdeClientItem;
end;

procedure DdeClientItem_setup(obj: Tvalue; real: TDdeClientItem);
begin
//    AssignPropMethod(real, [Handle]);
end;

function DdeClientItem_event_handle(This, name: Tvalue): Tvalue; cdecl;
begin
  EventHandle(This, name, [Handle]);
  result := Qnil;
end;

function DdeClientItem_alloc(This: Tvalue; real: TDdeClientItem): Tvalue;
begin
  result := ChildAlloc(This, real);
  DdeClientItem_setup(result, real);
end;

function ap_iDdeClientItem(real: TDdeClientItem; owner: Tvalue): Tvalue;
begin
  result := DdeClientItem_alloc(cDdeClientItem, real);
  ap_owner(result, owner);
end;

function ap_iDdeClientItem_v(var AControl; owner: Tvalue): Tvalue;
begin
  result := ap_iDdeClientItem(TDdeClientItem(AControl), owner);
end;

function DdeClientItem_allocate(This: Tvalue): Tvalue; cdecl;
var
  real: TDdeClientItem;
begin
  real := TDdeClientItem.Create(nil);
  result := CompoAlloc(This, real);
  DdeClientItem_setup(result, real);
end;

(**** str_my_class made by ap_src_maker ****)
(**** made by ap_src_maker ****)

procedure Init_DdeClientItem;
begin
  cDdeClientItem := OutputPersistentClass(mPhi, TDdeClientItem, cComponent, ap_iDdeClientItem_v);
  rb_define_method(cDdeClientItem, 'event_handle', @DdeClientItem_event_handle, 1);
  rb_define_alloc_func(cDdeClientItem, @DdeClientItem_allocate);

(**** str_init made by ap_src_maker ****)
(**** made by ap_src_maker ****)

end;

end.
