Hi @ all
ich übersetzt gerad die Trillian
API in Delphi...
kann mir evtl mal gerade jemand bei diesen beiden Sachen helfen?
Code:
#define trillianInitialize(structure) do { memset(&structure,0,sizeof(structure)); structure.struct_size = sizeof(structure); } while (0);
#define trillianListInitialize(structure) \
do {\
memset(&structure,0,sizeof(structure)); structure.struct_size = sizeof(structure); \
structure.section_id = structure.parent_id = structure.previous_id = structure.unique_id = -1;\
structure.selectable = 1;\
trillianInitialize(structure.font); \
structure.font.flags = 1; \
structure.font.hover_background = structure.font.hover_foreground = structure.font.select_background = structure.font.select_foreground = structure.font.background = structure.font.foreground = -1; \
} while (0);
Das Problem is das es viele Verschiedene Structures (Records) geben kann die man an diese Funktionen übergeben kann und ich vorher nicht weiß welche es werden...
Also entweder ich steh gerad aufem Schlauch oder ich hab keine Ahnung
Die erste hab ich so versucht zu lösen:
Delphi-Quellcode:
procedure TrillianInitialize(aRecord:Pointer; aSize:Cardinal);
type PCardinal = ^Cardinal;
begin
FillChar(aRecord^,aSize,#0);
PCardinal(aRecord)^ := aSize;
end;
Bitte keine großen Anmerkungen dazu is nur fix hin geklatscht und wenns nich halb 12 wäre würd ich auch noch mal über ne Verbesserung nachdenken.
Aber zurück zum Thema: wie kann ich das 1:1 Umsetzten was oben steht?
Danke schon mal!
Greetz
Boombuler