xresource.pp 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. unit xresource;
  2. interface
  3. uses
  4. x,xlib;
  5. {$ifndef os2}
  6. {$LinkLib c}
  7. {$LinkLib X11}
  8. const
  9. libX11='X11';
  10. {$else}
  11. const
  12. libX11='X11';
  13. {$endif}
  14. {
  15. Automatically converted by H2Pas 0.99.15 from xresource.h
  16. The following command line parameters were used:
  17. -p
  18. -T
  19. -S
  20. -d
  21. -c
  22. xresource.h
  23. }
  24. {$PACKRECORDS C}
  25. function Xpermalloc(para1:dword):Pchar;cdecl;external libX11;
  26. type
  27. PXrmQuark = ^TXrmQuark;
  28. TXrmQuark = longint;
  29. TXrmQuarkList = PXrmQuark;
  30. PXrmQuarkList = ^TXrmQuarkList;
  31. function NULLQUARK : TXrmQuark;
  32. type
  33. PXrmString = ^TXrmString;
  34. TXrmString = char;
  35. function NULLSTRING : TXrmString;
  36. function XrmStringToQuark(para1:Pchar):TXrmQuark;cdecl;external libX11;
  37. function XrmPermStringToQuark(para1:Pchar):TXrmQuark;cdecl;external libX11;
  38. function XrmQuarkToString(para1:TXrmQuark):TXrmString;cdecl;external libX11;
  39. function XrmUniqueQuark:TXrmQuark;cdecl;external libX11;
  40. {$ifdef MACROS}
  41. function XrmStringsEqual(a1,a2 : longint) : longint;
  42. {$endif MACROS}
  43. type
  44. PXrmBinding = ^TXrmBinding;
  45. TXrmBinding = (XrmBindTightly,XrmBindLoosely);
  46. TXrmBindingList = PXrmBinding;
  47. PXrmBindingList = ^TXrmBindingList;
  48. procedure XrmStringToQuarkList(para1:Pchar; para2:TXrmQuarkList);cdecl;external libX11;
  49. procedure XrmStringToBindingQuarkList(para1:Pchar; para2:TXrmBindingList; para3:TXrmQuarkList);cdecl;external libX11;
  50. type
  51. PXrmName = ^TXrmName;
  52. TXrmName = TXrmQuark;
  53. PXrmNameList = ^TXrmNameList;
  54. TXrmNameList = TXrmQuarkList;
  55. {$ifdef MACROS}
  56. function XrmNameToString(name : longint) : longint;
  57. function XrmStringToName(_string : longint) : longint;
  58. function XrmStringToNameList(str,name : longint) : longint;
  59. {$endif MACROS}
  60. type
  61. PXrmClass = ^TXrmClass;
  62. TXrmClass = TXrmQuark;
  63. PXrmClassList = ^TXrmClassList;
  64. TXrmClassList = TXrmQuarkList;
  65. {$ifdef MACROS}
  66. function XrmClassToString(c_class : longint) : longint;
  67. function XrmStringToClass(c_class : longint) : longint;
  68. function XrmStringToClassList(str,c_class : longint) : longint;
  69. {$endif MACROS}
  70. type
  71. PXrmRepresentation = ^TXrmRepresentation;
  72. TXrmRepresentation = TXrmQuark;
  73. {$ifdef MACROS}
  74. function XrmStringToRepresentation(_string : longint) : longint;
  75. function XrmRepresentationToString(_type : longint) : longint;
  76. {$endif MACROS}
  77. type
  78. PXrmValue = ^TXrmValue;
  79. TXrmValue = record
  80. size : dword;
  81. addr : TXPointer;
  82. end;
  83. TXrmValuePtr = PXrmValue;
  84. PXrmValuePtr = ^TXrmValuePtr;
  85. PXrmHashBucketRec = ^TXrmHashBucketRec;
  86. TXrmHashBucketRec = record
  87. end;
  88. TXrmHashBucket = PXrmHashBucketRec;
  89. PXrmHashBucket = ^TXrmHashBucket;
  90. PXrmHashTable = ^TXrmHashTable;
  91. TXrmHashTable = TXrmHashBucket;
  92. TXrmDatabase = PXrmHashBucketRec;
  93. PXrmDatabase = ^TXrmDatabase;
  94. procedure XrmDestroyDatabase(para1:TXrmDatabase);cdecl;external libX11;
  95. procedure XrmQPutResource(para1:PXrmDatabase; para2:TXrmBindingList; para3:TXrmQuarkList; para4:TXrmRepresentation; para5:PXrmValue);cdecl;external libX11;
  96. procedure XrmPutResource(para1:PXrmDatabase; para2:Pchar; para3:Pchar; para4:PXrmValue);cdecl;external libX11;
  97. procedure XrmQPutStringResource(para1:PXrmDatabase; para2:TXrmBindingList; para3:TXrmQuarkList; para4:Pchar);cdecl;external libX11;
  98. procedure XrmPutStringResource(para1:PXrmDatabase; para2:Pchar; para3:Pchar);cdecl;external libX11;
  99. procedure XrmPutLineResource(para1:PXrmDatabase; para2:Pchar);cdecl;external libX11;
  100. function XrmQGetResource(para1:TXrmDatabase; para2:TXrmNameList; para3:TXrmClassList; para4:PXrmRepresentation; para5:PXrmValue):TBool;cdecl;external libX11;
  101. function XrmGetResource(para1:TXrmDatabase; para2:Pchar; para3:Pchar; para4:PPchar; para5:PXrmValue):TBool;cdecl;external libX11;
  102. { There is no definition of TXrmSearchList }
  103. {function XrmQGetSearchList(para1:TXrmDatabase; para2:TXrmNameList; para3:TXrmClassList; para4:TXrmSearchList; para5:longint):TBool;cdecl;external libX11;
  104. function XrmQGetSearchResource(para1:TXrmSearchList; para2:TXrmName; para3:TXrmClass; para4:PXrmRepresentation; para5:PXrmValue):TBool;cdecl;external libX11;}
  105. procedure XrmSetDatabase(para1:PDisplay; para2:TXrmDatabase);cdecl;external libX11;
  106. function XrmGetDatabase(para1:PDisplay):TXrmDatabase;cdecl;external libX11;
  107. function XrmGetFileDatabase(para1:Pchar):TXrmDatabase;cdecl;external libX11;
  108. function XrmCombineFileDatabase(para1:Pchar; para2:PXrmDatabase; para3:TBool):TStatus;cdecl;external libX11;
  109. function XrmGetStringDatabase(para1:Pchar):TXrmDatabase;cdecl;external libX11;
  110. procedure XrmPutFileDatabase(para1:TXrmDatabase; para2:Pchar);cdecl;external libX11;
  111. procedure XrmMergeDatabases(para1:TXrmDatabase; para2:PXrmDatabase);cdecl;external libX11;
  112. procedure XrmCombineDatabase(para1:TXrmDatabase; para2:PXrmDatabase; para3:TBool);cdecl;external libX11;
  113. const
  114. XrmEnumAllLevels = 0;
  115. XrmEnumOneLevel = 1;
  116. type
  117. funcbool=function :TBool;
  118. function XrmEnumerateDatabase(para1:TXrmDatabase; para2:TXrmNameList; para3:TXrmClassList; para4:longint; para5:funcbool;
  119. para6:TXPointer):TBool;cdecl;external libX11;
  120. function XrmLocaleOfDatabase(para1:TXrmDatabase):Pchar;cdecl;external libX11;
  121. type
  122. PXrmOptionKind = ^TXrmOptionKind;
  123. TXrmOptionKind = (XrmoptionNoArg,XrmoptionIsArg,XrmoptionStickyArg,
  124. XrmoptionSepArg,XrmoptionResArg,XrmoptionSkipArg,
  125. XrmoptionSkipLine,XrmoptionSkipNArgs);
  126. PXrmOptionDescRec = ^TXrmOptionDescRec;
  127. TXrmOptionDescRec = record
  128. option : Pchar;
  129. specifier : Pchar;
  130. argKind : TXrmOptionKind;
  131. value : TXPointer;
  132. end;
  133. TXrmOptionDescList = PXrmOptionDescRec;
  134. PXrmOptionDescList = ^TXrmOptionDescList;
  135. procedure XrmParseCommand(para1:PXrmDatabase; para2:TXrmOptionDescList; para3:longint; para4:Pchar; para5:Plongint;
  136. para6:PPchar);cdecl;external libX11;
  137. implementation
  138. function NULLQUARK : TXrmQuark;
  139. begin
  140. NULLQUARK:=TXrmQuark(0);
  141. end;
  142. function NULLSTRING : TXrmString;
  143. begin
  144. NULLSTRING:=TXrmString(0);
  145. end;
  146. {$ifdef MACROS}
  147. function XrmStringsEqual(a1,a2 : longint) : longint;
  148. begin
  149. XrmStringsEqual:=(strcmp(a1,a2)) = 0;
  150. end;
  151. function XrmNameToString(name : longint) : longint;
  152. begin
  153. XrmNameToString:=XrmQuarkToString(name);
  154. end;
  155. function XrmStringToName(string : longint) : longint;
  156. begin
  157. XrmStringToName:=XrmStringToQuark(_string);
  158. end;
  159. function XrmStringToNameList(str,name : longint) : longint;
  160. begin
  161. XrmStringToNameList:=XrmStringToQuarkList(str,name);
  162. end;
  163. function XrmClassToString(c_class : longint) : longint;
  164. begin
  165. XrmClassToString:=XrmQuarkToString(c_class);
  166. end;
  167. function XrmStringToClass(c_class : longint) : longint;
  168. begin
  169. XrmStringToClass:=XrmStringToQuark(c_class);
  170. end;
  171. function XrmStringToClassList(str,c_class : longint) : longint;
  172. begin
  173. XrmStringToClassList:=XrmStringToQuarkList(str,c_class);
  174. end;
  175. function XrmStringToRepresentation(_string : longint) : longint;
  176. begin
  177. XrmStringToRepresentation:=XrmStringToQuark(_string);
  178. end;
  179. function XrmRepresentationToString(_type : longint) : longint;
  180. begin
  181. XrmRepresentationToString:=XrmQuarkToString(_type);
  182. end;
  183. {$endif MACROS}
  184. end.