xresource.pp 6.7 KB

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