mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-19 00:09:26 +02:00
* new X11 conversion from 4.0.x headers
This commit is contained in:
parent
679b2ec5e4
commit
e8dd512f65
@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Makefile generated by fpcmake v1.00 [2000/12/19]
|
# Makefile generated by fpcmake v1.00 [2000/12/22]
|
||||||
#
|
#
|
||||||
|
|
||||||
defaultrule: all
|
defaultrule: all
|
||||||
@ -50,6 +50,25 @@ else
|
|||||||
SRCEXEEXT=.exe
|
SRCEXEEXT=.exe
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# The extension of batch files / scripts
|
||||||
|
ifdef inUnix
|
||||||
|
BATCHEXT=.sh
|
||||||
|
else
|
||||||
|
ifdef inOS2
|
||||||
|
BATCHEXT=.cmd
|
||||||
|
else
|
||||||
|
BATCHEXT=.bat
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Path Separator, the subst trick is necessary for the \ that can't exists
|
||||||
|
# at the end of a line
|
||||||
|
ifdef inUnix
|
||||||
|
PATHSEP=/
|
||||||
|
else
|
||||||
|
PATHSEP=$(subst /,\,/)
|
||||||
|
endif
|
||||||
|
|
||||||
# The path which is searched separated by spaces
|
# The path which is searched separated by spaces
|
||||||
ifdef inUnix
|
ifdef inUnix
|
||||||
SEARCHPATH=$(subst :, ,$(PATH))
|
SEARCHPATH=$(subst :, ,$(PATH))
|
||||||
@ -178,7 +197,7 @@ endif
|
|||||||
|
|
||||||
# Targets
|
# Targets
|
||||||
|
|
||||||
override UNITOBJECTS+=x xlib xutil xresource
|
override UNITOBJECTS+=x xlib xutil xresource xcms
|
||||||
|
|
||||||
# Clean
|
# Clean
|
||||||
|
|
||||||
@ -295,15 +314,7 @@ LD=ld
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# ppas.bat / ppas.sh
|
# ppas.bat / ppas.sh
|
||||||
ifdef inUnix
|
PPAS=ppas$(BATCHEXT)
|
||||||
PPAS=ppas.sh
|
|
||||||
else
|
|
||||||
ifdef inOS2
|
|
||||||
PPAS=ppas.cmd
|
|
||||||
else
|
|
||||||
PPAS=ppas.bat
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# ldconfig to rebuild .so cache
|
# ldconfig to rebuild .so cache
|
||||||
ifdef inUnix
|
ifdef inUnix
|
||||||
@ -1076,18 +1087,48 @@ USETAR=1
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Use a wrapper script by default for OS/2
|
||||||
|
ifdef inOS2
|
||||||
|
USEZIPWRAPPER=1
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Create commands to create the zip/tar file
|
||||||
|
ZIPWRAPPER=$(DESTZIPDIR)/fpczip$(BATCHEXT)
|
||||||
|
ZIPCMD_CDPACK:=cd $(subst /,$(PATHSEP),$(PACKDIR))
|
||||||
|
ZIPCMD_CDBASE:=cd $(subst /,$(PATHSEP),$(BASEDIR))
|
||||||
|
ifdef USETAR
|
||||||
|
ZIPDESTFILE:=$(DESTZIPDIR)/$(ZIPNAME)$(TAREXT)
|
||||||
|
ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
|
||||||
|
else
|
||||||
|
ZIPDESTFILE:=$(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT)
|
||||||
|
ZIPCMD_ZIP:=$(subst /,$(PATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
|
||||||
|
endif
|
||||||
|
|
||||||
fpc_zipinstall:
|
fpc_zipinstall:
|
||||||
ifndef ZIPNAME
|
ifndef ZIPNAME
|
||||||
@$(ECHO) "Please specify ZIPNAME!"
|
@$(ECHO) "Please specify ZIPNAME!"
|
||||||
@exit 1
|
@exit 1
|
||||||
else
|
else
|
||||||
$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
|
$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
|
||||||
ifdef USETAR
|
$(DEL) $(ZIPDESTFILE)
|
||||||
$(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT)
|
ifdef USEZIPWRAPPER
|
||||||
cd $(PACKDIR) ; $(TARPROG) cf$(TAROPT) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT) * ; cd $(BASEDIR)
|
ifneq ($(ECHO),echo)
|
||||||
|
$(ECHO) "$(ZIPCMD_CDPACK)" > $(ZIPWRAPPER)
|
||||||
|
$(ECHO) "$(ZIPCMD_ZIP)" >> $(ZIPWRAPPER)
|
||||||
|
$(ECHO) "$(ZIPCMD_CDBASE)" >> $(ZIPWRAPPER)
|
||||||
else
|
else
|
||||||
$(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT)
|
$(ECHO) $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
|
||||||
cd $(PACKDIR) ; $(ZIPPROG) -Dr $(ZIPOPT) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT) * ; cd $(BASEDIR)
|
$(ECHO) $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
|
||||||
|
$(ECHO) $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
|
||||||
|
endif
|
||||||
|
ifdef inUnix
|
||||||
|
/bin/sh $(ZIPWRAPPER)
|
||||||
|
else
|
||||||
|
$(ZIPWRAPPER)
|
||||||
|
endif
|
||||||
|
$(DEL) $(ZIPWRAPPER)
|
||||||
|
else
|
||||||
|
$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
|
||||||
endif
|
endif
|
||||||
$(DELTREE) $(PACKDIR)
|
$(DELTREE) $(PACKDIR)
|
||||||
endif
|
endif
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
[targets]
|
[targets]
|
||||||
units=x xlib xutil xresource
|
units=x xlib xutil xresource xcms
|
||||||
|
|
||||||
[dirs]
|
[dirs]
|
||||||
fpcdir=../..
|
fpcdir=../..
|
||||||
|
File diff suppressed because it is too large
Load Diff
371
packages/x11/xcms.pp
Normal file
371
packages/x11/xcms.pp
Normal file
@ -0,0 +1,371 @@
|
|||||||
|
unit xcms;
|
||||||
|
interface
|
||||||
|
uses
|
||||||
|
x,xlib;
|
||||||
|
|
||||||
|
{$LinkLib c}
|
||||||
|
{$LinkLib X11}
|
||||||
|
|
||||||
|
{
|
||||||
|
Automatically converted by H2Pas 0.99.15 from xcms.h
|
||||||
|
The following command line parameters were used:
|
||||||
|
-p
|
||||||
|
-T
|
||||||
|
-S
|
||||||
|
-d
|
||||||
|
-c
|
||||||
|
xcms.h
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
{$PACKRECORDS C}
|
||||||
|
|
||||||
|
|
||||||
|
const
|
||||||
|
XcmsFailure = 0;
|
||||||
|
XcmsSuccess = 1;
|
||||||
|
XcmsSuccessWithCompression = 2;
|
||||||
|
type
|
||||||
|
PXcmsColorFormat = ^TXcmsColorFormat;
|
||||||
|
TXcmsColorFormat = dword;
|
||||||
|
function XcmsUndefinedFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsCIEXYZFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsCIEuvYFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsCIExyYFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsCIELabFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsCIELuvFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsTekHVCFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsRGBFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
function XcmsRGBiFormat : TXcmsColorFormat;
|
||||||
|
|
||||||
|
|
||||||
|
const
|
||||||
|
XcmsInitNone = $00;
|
||||||
|
XcmsInitSuccess = $01;
|
||||||
|
XcmsInitFailure = $ff;
|
||||||
|
{$ifdef MACROS}
|
||||||
|
function DisplayOfCCC(ccc : longint) : longint;
|
||||||
|
|
||||||
|
function ScreenNumberOfCCC(ccc : longint) : longint;
|
||||||
|
|
||||||
|
function VisualOfCCC(ccc : longint) : longint;
|
||||||
|
|
||||||
|
function ClientWhitePointOfCCC(ccc : longint) : longint;
|
||||||
|
|
||||||
|
function ScreenWhitePointOfCCC(ccc : longint) : longint;
|
||||||
|
|
||||||
|
function FunctionSetOfCCC(ccc : longint) : longint;
|
||||||
|
{$endif MACROS}
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
PXcmsFloat = ^TXcmsFloat;
|
||||||
|
TXcmsFloat = double;
|
||||||
|
|
||||||
|
PXcmsRGB = ^TXcmsRGB;
|
||||||
|
TXcmsRGB = record
|
||||||
|
red : word;
|
||||||
|
green : word;
|
||||||
|
blue : word;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsRGBi = ^TXcmsRGBi;
|
||||||
|
TXcmsRGBi = record
|
||||||
|
red : TXcmsFloat;
|
||||||
|
green : TXcmsFloat;
|
||||||
|
blue : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsCIEXYZ = ^TXcmsCIEXYZ;
|
||||||
|
TXcmsCIEXYZ = record
|
||||||
|
X : TXcmsFloat;
|
||||||
|
Y : TXcmsFloat;
|
||||||
|
Z : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsCIEuvY = ^TXcmsCIEuvY;
|
||||||
|
TXcmsCIEuvY = record
|
||||||
|
u_prime : TXcmsFloat;
|
||||||
|
v_prime : TXcmsFloat;
|
||||||
|
Y : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsCIExyY = ^TXcmsCIExyY;
|
||||||
|
TXcmsCIExyY = record
|
||||||
|
x : TXcmsFloat;
|
||||||
|
y : TXcmsFloat;
|
||||||
|
_Y : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsCIELab = ^TXcmsCIELab;
|
||||||
|
TXcmsCIELab = record
|
||||||
|
L_star : TXcmsFloat;
|
||||||
|
a_star : TXcmsFloat;
|
||||||
|
b_star : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsCIELuv = ^TXcmsCIELuv;
|
||||||
|
TXcmsCIELuv = record
|
||||||
|
L_star : TXcmsFloat;
|
||||||
|
u_star : TXcmsFloat;
|
||||||
|
v_star : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsTekHVC = ^TXcmsTekHVC;
|
||||||
|
TXcmsTekHVC = record
|
||||||
|
H : TXcmsFloat;
|
||||||
|
V : TXcmsFloat;
|
||||||
|
C : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsPad = ^TXcmsPad;
|
||||||
|
TXcmsPad = record
|
||||||
|
pad0 : TXcmsFloat;
|
||||||
|
pad1 : TXcmsFloat;
|
||||||
|
pad2 : TXcmsFloat;
|
||||||
|
pad3 : TXcmsFloat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsColor = ^TXcmsColor;
|
||||||
|
TXcmsColor = record
|
||||||
|
spec : record
|
||||||
|
case longint of
|
||||||
|
0 : ( RGB : TXcmsRGB );
|
||||||
|
1 : ( RGBi : TXcmsRGBi );
|
||||||
|
2 : ( CIEXYZ : TXcmsCIEXYZ );
|
||||||
|
3 : ( CIEuvY : TXcmsCIEuvY );
|
||||||
|
4 : ( CIExyY : TXcmsCIExyY );
|
||||||
|
5 : ( CIELab : TXcmsCIELab );
|
||||||
|
6 : ( CIELuv : TXcmsCIELuv );
|
||||||
|
7 : ( TekHVC : TXcmsTekHVC );
|
||||||
|
8 : ( Pad : TXcmsPad );
|
||||||
|
end;
|
||||||
|
pixel : dword;
|
||||||
|
format : TXcmsColorFormat;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsPerScrnInfo = ^TXcmsPerScrnInfo;
|
||||||
|
TXcmsPerScrnInfo = record
|
||||||
|
screenWhitePt : TXcmsColor;
|
||||||
|
functionSet : TXPointer;
|
||||||
|
screenData : TXPointer;
|
||||||
|
state : byte;
|
||||||
|
pad : array[0..2] of char;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsCCC = ^TXcmsCCC;
|
||||||
|
|
||||||
|
TXcmsCompressionProc = function (para1:PXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;
|
||||||
|
|
||||||
|
TXcmsWhiteAdjustProc = function (para1:PXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:TXcmsColorFormat; para5:PXcmsColor;
|
||||||
|
para6:dword; para7:PBool):TStatus;cdecl;
|
||||||
|
|
||||||
|
TXcmsCCC = record
|
||||||
|
dpy : PDisplay;
|
||||||
|
screenNumber : longint;
|
||||||
|
visual : PVisual;
|
||||||
|
clientWhitePt : TXcmsColor;
|
||||||
|
gamutCompProc : TXcmsCompressionProc;
|
||||||
|
gamutCompClientData : TXPointer;
|
||||||
|
whitePtAdjProc : TXcmsWhiteAdjustProc;
|
||||||
|
whitePtAdjClientData : TXPointer;
|
||||||
|
pPerScrnInfo : PXcmsPerScrnInfo;
|
||||||
|
end;
|
||||||
|
TXcmsCCCRec = TXcmsCCC;
|
||||||
|
PXcmsCCCRec = ^TXcmsCCCRec;
|
||||||
|
|
||||||
|
TXcmsScreenInitProc = function (para1:PDisplay; para2:longint; para3:PXcmsPerScrnInfo):TStatus;cdecl;
|
||||||
|
|
||||||
|
TXcmsScreenFreeProc = procedure (para1:TXPointer);cdecl;
|
||||||
|
|
||||||
|
TXcmsConversionProc = procedure;cdecl;
|
||||||
|
|
||||||
|
PXcmsFuncListPtr = ^TXcmsFuncListPtr;
|
||||||
|
TXcmsFuncListPtr = TXcmsConversionProc;
|
||||||
|
|
||||||
|
TXcmsParseStringProc = function (para1:Pchar; para2:PXcmsColor):longint;cdecl;
|
||||||
|
|
||||||
|
PXcmsColorSpace = ^TXcmsColorSpace;
|
||||||
|
TXcmsColorSpace = record
|
||||||
|
prefix : Pchar;
|
||||||
|
id : TXcmsColorFormat;
|
||||||
|
parseString : TXcmsParseStringProc;
|
||||||
|
to_CIEXYZ : TXcmsFuncListPtr;
|
||||||
|
from_CIEXYZ : TXcmsFuncListPtr;
|
||||||
|
inverse_flag : longint;
|
||||||
|
end;
|
||||||
|
|
||||||
|
PXcmsFunctionSet = ^TXcmsFunctionSet;
|
||||||
|
TXcmsFunctionSet = record
|
||||||
|
DDColorSpaces : ^PXcmsColorSpace;
|
||||||
|
screenInitProc : TXcmsScreenInitProc;
|
||||||
|
screenFreeProc : TXcmsScreenFreeProc;
|
||||||
|
end;
|
||||||
|
(* error
|
||||||
|
extern Status XcmsAddColorSpace (
|
||||||
|
in declaration at line 323 *)
|
||||||
|
|
||||||
|
function XcmsAddFunctionSet(para1:PXcmsFunctionSet):TStatus;cdecl;external;
|
||||||
|
function XcmsAllocColor(para1:PDisplay; para2:TColormap; para3:PXcmsColor; para4:TXcmsColorFormat):TStatus;cdecl;external;
|
||||||
|
function XcmsAllocNamedColor(para1:PDisplay; para2:TColormap; para3:Pchar; para4:PXcmsColor; para5:PXcmsColor;
|
||||||
|
para6:TXcmsColorFormat):TStatus;cdecl;external;
|
||||||
|
function XcmsCCCOfColormap(para1:PDisplay; para2:TColormap):TXcmsCCC;cdecl;external;
|
||||||
|
function XcmsCIELabClipab(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabClipL(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabClipLab(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabQueryMaxC(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabQueryMaxL(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabQueryMaxLC(para1:TXcmsCCC; para2:TXcmsFloat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabQueryMinL(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabToCIEXYZ(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELabWhiteShiftColors(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:TXcmsColorFormat; para5:PXcmsColor;
|
||||||
|
para6:dword; para7:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvClipL(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvClipLuv(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvClipuv(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvQueryMaxC(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvQueryMaxL(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvQueryMaxLC(para1:TXcmsCCC; para2:TXcmsFloat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvQueryMinL(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvToCIEuvY(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIELuvWhiteShiftColors(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:TXcmsColorFormat; para5:PXcmsColor;
|
||||||
|
para6:dword; para7:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEXYZToCIELab(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEXYZToCIEuvY(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEXYZToCIExyY(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEXYZToRGBi(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEuvYToCIELuv(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEuvYToCIEXYZ(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIEuvYToTekHVC(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsCIExyYToCIEXYZ(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsClientWhitePointOfCCC(para1:TXcmsCCC):PXcmsColor;cdecl;external;
|
||||||
|
function XcmsConvertColors(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:TXcmsColorFormat; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsCreateCCC(para1:PDisplay; para2:longint; para3:PVisual; para4:PXcmsColor; para5:TXcmsCompressionProc;
|
||||||
|
para6:TXPointer; para7:TXcmsWhiteAdjustProc; para8:TXPointer):TXcmsCCC;cdecl;external;
|
||||||
|
function XcmsDefaultCCC(para1:PDisplay; para2:longint):TXcmsCCC;cdecl;external;
|
||||||
|
function XcmsDisplayOfCCC(para1:TXcmsCCC):PDisplay;cdecl;external;
|
||||||
|
function XcmsFormatOfPrefix(para1:Pchar):TXcmsColorFormat;cdecl;external;
|
||||||
|
procedure XcmsFreeCCC(para1:TXcmsCCC);cdecl;external;
|
||||||
|
function XcmsLookupColor(para1:PDisplay; para2:TColormap; para3:Pchar; para4:PXcmsColor; para5:PXcmsColor;
|
||||||
|
para6:TXcmsColorFormat):TStatus;cdecl;external;
|
||||||
|
function XcmsPrefixOfFormat(para1:TXcmsColorFormat):Pchar;cdecl;external;
|
||||||
|
function XcmsQueryBlack(para1:TXcmsCCC; para2:TXcmsColorFormat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsQueryBlue(para1:TXcmsCCC; para2:TXcmsColorFormat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsQueryColor(para1:PDisplay; para2:TColormap; para3:PXcmsColor; para4:TXcmsColorFormat):TStatus;cdecl;external;
|
||||||
|
function XcmsQueryColors(para1:PDisplay; para2:TColormap; para3:PXcmsColor; para4:dword; para5:TXcmsColorFormat):TStatus;cdecl;external;
|
||||||
|
function XcmsQueryGreen(para1:TXcmsCCC; para2:TXcmsColorFormat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsQueryRed(para1:TXcmsCCC; para2:TXcmsColorFormat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsQueryWhite(para1:TXcmsCCC; para2:TXcmsColorFormat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsRGBiToCIEXYZ(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsRGBiToRGB(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsRGBToRGBi(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsScreenNumberOfCCC(para1:TXcmsCCC):longint;cdecl;external;
|
||||||
|
function XcmsScreenWhitePointOfCCC(para1:TXcmsCCC):PXcmsColor;cdecl;external;
|
||||||
|
function XcmsSetCCCOfColormap(para1:PDisplay; para2:TColormap; para3:TXcmsCCC):TXcmsCCC;cdecl;external;
|
||||||
|
function XcmsSetCompressionProc(para1:TXcmsCCC; para2:TXcmsCompressionProc; para3:TXPointer):TXcmsCompressionProc;cdecl;external;
|
||||||
|
function XcmsSetWhiteAdjustProc(para1:TXcmsCCC; para2:TXcmsWhiteAdjustProc; para3:TXPointer):TXcmsWhiteAdjustProc;cdecl;external;
|
||||||
|
function XcmsSetWhitePoint(para1:TXcmsCCC; para2:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsStoreColor(para1:PDisplay; para2:TColormap; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsStoreColors(para1:PDisplay; para2:TColormap; para3:PXcmsColor; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCClipC(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCClipV(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCClipVC(para1:TXcmsCCC; para2:PXcmsColor; para3:dword; para4:dword; para5:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCQueryMaxC(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCQueryMaxV(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCQueryMaxVC(para1:TXcmsCCC; para2:TXcmsFloat; para3:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCQueryMaxVSamples(para1:TXcmsCCC; para2:TXcmsFloat; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCQueryMinV(para1:TXcmsCCC; para2:TXcmsFloat; para3:TXcmsFloat; para4:PXcmsColor):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCToCIEuvY(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:dword):TStatus;cdecl;external;
|
||||||
|
function XcmsTekHVCWhiteShiftColors(para1:TXcmsCCC; para2:PXcmsColor; para3:PXcmsColor; para4:TXcmsColorFormat; para5:PXcmsColor;
|
||||||
|
para6:dword; para7:PBool):TStatus;cdecl;external;
|
||||||
|
function XcmsVisualOfCCC(para1:TXcmsCCC):PVisual;cdecl;external;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
function XcmsUndefinedFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsUndefinedFormat:=TXcmsColorFormat($00000000);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsCIEXYZFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsCIEXYZFormat:=TXcmsColorFormat($00000001);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsCIEuvYFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsCIEuvYFormat:=TXcmsColorFormat($00000002);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsCIExyYFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsCIExyYFormat:=TXcmsColorFormat($00000003);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsCIELabFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsCIELabFormat:=TXcmsColorFormat($00000004);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsCIELuvFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsCIELuvFormat:=TXcmsColorFormat($00000005);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsTekHVCFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsTekHVCFormat:=TXcmsColorFormat($00000006);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsRGBFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsRGBFormat:=TXcmsColorFormat($80000000);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XcmsRGBiFormat : TXcmsColorFormat;
|
||||||
|
begin
|
||||||
|
XcmsRGBiFormat:=TXcmsColorFormat($80000001);
|
||||||
|
end;
|
||||||
|
|
||||||
|
{$ifdef MACROS}
|
||||||
|
function DisplayOfCCC(ccc : longint) : longint;
|
||||||
|
begin
|
||||||
|
DisplayOfCCC:=ccc^.dpy;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function ScreenNumberOfCCC(ccc : longint) : longint;
|
||||||
|
begin
|
||||||
|
ScreenNumberOfCCC:=ccc^.screenNumber;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function VisualOfCCC(ccc : longint) : longint;
|
||||||
|
begin
|
||||||
|
VisualOfCCC:=ccc^.visual;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function ClientWhitePointOfCCC(ccc : longint) : longint;
|
||||||
|
begin
|
||||||
|
ClientWhitePointOfCCC:=@(ccc^.clientWhitePt);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function ScreenWhitePointOfCCC(ccc : longint) : longint;
|
||||||
|
begin
|
||||||
|
ScreenWhitePointOfCCC:=@(ccc^.(pPerScrnInfo^.screenWhitePt));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function FunctionSetOfCCC(ccc : longint) : longint;
|
||||||
|
begin
|
||||||
|
FunctionSetOfCCC:=ccc^.(pPerScrnInfo^.functionSet);
|
||||||
|
end;
|
||||||
|
{$endif MACROS}
|
||||||
|
|
||||||
|
end.
|
3799
packages/x11/xlib.pp
3799
packages/x11/xlib.pp
File diff suppressed because it is too large
Load Diff
@ -1,305 +1,223 @@
|
|||||||
{
|
|
||||||
$Id$
|
|
||||||
}
|
|
||||||
unit xresource;
|
unit xresource;
|
||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
xlib;
|
x,xlib;
|
||||||
|
|
||||||
{$LinkLib c}
|
{$LinkLib c}
|
||||||
{$LinkLib X11}
|
{$LinkLib X11}
|
||||||
|
|
||||||
{***************************************************************
|
|
||||||
* Quark Management
|
|
||||||
***************************************************************}
|
|
||||||
|
|
||||||
type
|
|
||||||
TXrmQuark = Longint;
|
|
||||||
PXrmQuark = ^TXrmQuark;
|
|
||||||
TXrmQuarkList = PXrmQuark;
|
|
||||||
TXrmString = Pchar;
|
|
||||||
|
|
||||||
Const
|
|
||||||
NULLQUARK = 0 ;
|
|
||||||
NULLSTRING = 0;
|
|
||||||
|
|
||||||
{ find quark for string, create new quark if none already exists }
|
|
||||||
Function XrmStringToQuark( p1 : pchar ) : TXrmQuark;cdecl;external;
|
|
||||||
Function XrmPermStringToQuark( p1 : pchar ) : TXrmQuark;cdecl;external;
|
|
||||||
{ find string for quark }
|
|
||||||
Function XrmQuarkToString( p1 : TXrmQuark) : TXrmString;cdecl;external;
|
|
||||||
Function XrmUniqueQuark : TXrmQuark;cdecl;external;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
#define XrmStringsEqual(a1, a2) (strcmp(a1, a2) == 0)
|
Automatically converted by H2Pas 0.99.15 from xresource.h
|
||||||
|
The following command line parameters were used:
|
||||||
|
-p
|
||||||
|
-T
|
||||||
|
-S
|
||||||
|
-d
|
||||||
|
-c
|
||||||
|
xresource.h
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{$PACKRECORDS C}
|
||||||
|
|
||||||
{***************************************************************
|
|
||||||
* Conversion of Strings to Lists
|
function Xpermalloc(para1:dword):Pchar;cdecl;external;
|
||||||
***************************************************************}
|
type
|
||||||
|
|
||||||
|
PXrmQuark = ^TXrmQuark;
|
||||||
|
TXrmQuark = longint;
|
||||||
|
TXrmQuarkList = PXrmQuark;
|
||||||
|
PXrmQuarkList = ^TXrmQuarkList;
|
||||||
|
function NULLQUARK : TXrmQuark;
|
||||||
|
|
||||||
type
|
type
|
||||||
TXrmBinding = longint;
|
|
||||||
TXrmBindingList = ^longint;
|
|
||||||
Const
|
|
||||||
XrmBindTightly = 0;
|
|
||||||
XrmBindLoosely = 1;
|
|
||||||
|
|
||||||
procedure XrmStringToQuarkList(
|
PXrmString = ^TXrmString;
|
||||||
p1 : pchar { string };
|
TXrmString = char;
|
||||||
p2 : TXrmQuarkList { quarks_return }
|
function NULLSTRING : TXrmString;
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
procedure XrmStringToBindingQuarkList(
|
function XrmStringToQuark(para1:Pchar):TXrmQuark;cdecl;external;
|
||||||
p1 : pchar { string };
|
function XrmPermStringToQuark(para1:Pchar):TXrmQuark;cdecl;external;
|
||||||
p2 : TXrmBindingList { bindings_return };
|
function XrmQuarkToString(para1:TXrmQuark):TXrmString;cdecl;external;
|
||||||
p3 : TXrmQuarkList { quarks_return }
|
function XrmUniqueQuark:TXrmQuark;cdecl;external;
|
||||||
);cdecl;external;
|
{$ifdef MACROS}
|
||||||
|
function XrmStringsEqual(a1,a2 : longint) : longint;
|
||||||
|
{$endif MACROS}
|
||||||
{***************************************************************
|
|
||||||
* Name and Class lists.
|
|
||||||
***************************************************************}
|
|
||||||
|
|
||||||
type
|
type
|
||||||
TXrmName = TXrmQuark;
|
|
||||||
TXrmNameList = TXrmQuarkList ;
|
|
||||||
{
|
|
||||||
#define XrmNameToString(name) XrmQuarkToString(name)
|
|
||||||
#define XrmStringToName(string) XrmStringToQuark(string)
|
|
||||||
#define XrmStringToNameList(str, name) XrmStringToQuarkList(str, name)
|
|
||||||
}
|
|
||||||
TXrmClass = TXrmQuark;
|
|
||||||
TXrmClassList = TXrmQuarkList;
|
|
||||||
{
|
|
||||||
#define XrmClassToString(c_class) XrmQuarkToString(c_class)
|
|
||||||
#define XrmStringToClass(c_class) XrmStringToQuark(c_class)
|
|
||||||
#define XrmStringToClassList(str,c_class) XrmStringToQuarkList(str, c_class)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
PXrmBinding = ^TXrmBinding;
|
||||||
|
TXrmBinding = (XrmBindTightly,XrmBindLoosely);
|
||||||
|
TXrmBindingList = PXrmBinding;
|
||||||
|
PXrmBindingList = ^TXrmBindingList;
|
||||||
|
|
||||||
{***************************************************************
|
procedure XrmStringToQuarkList(para1:Pchar; para2:TXrmQuarkList);cdecl;external;
|
||||||
* Resource Representation Types and Values
|
procedure XrmStringToBindingQuarkList(para1:Pchar; para2:TXrmBindingList; para3:TXrmQuarkList);cdecl;external;
|
||||||
***************************************************************}
|
type
|
||||||
|
|
||||||
|
PXrmName = ^TXrmName;
|
||||||
|
TXrmName = TXrmQuark;
|
||||||
|
|
||||||
|
PXrmNameList = ^TXrmNameList;
|
||||||
|
TXrmNameList = TXrmQuarkList;
|
||||||
|
{$ifdef MACROS}
|
||||||
|
function XrmNameToString(name : longint) : longint;
|
||||||
|
|
||||||
|
function XrmStringToName(_string : longint) : longint;
|
||||||
|
|
||||||
|
function XrmStringToNameList(str,name : longint) : longint;
|
||||||
|
{$endif MACROS}
|
||||||
|
|
||||||
type
|
type
|
||||||
TXrmRepresentation = TXrmQuark ;
|
|
||||||
PXrmRepresentation = ^TXrmRepresentation;
|
PXrmClass = ^TXrmClass;
|
||||||
{
|
TXrmClass = TXrmQuark;
|
||||||
#define XrmStringToRepresentation(string) XrmStringToQuark(string)
|
|
||||||
#define XrmRepresentationToString(type) XrmQuarkToString(type)
|
PXrmClassList = ^TXrmClassList;
|
||||||
}
|
TXrmClassList = TXrmQuarkList;
|
||||||
|
{$ifdef MACROS}
|
||||||
|
function XrmClassToString(c_class : longint) : longint;
|
||||||
|
|
||||||
|
function XrmStringToClass(c_class : longint) : longint;
|
||||||
|
|
||||||
|
function XrmStringToClassList(str,c_class : longint) : longint;
|
||||||
|
{$endif MACROS}
|
||||||
|
type
|
||||||
|
|
||||||
|
PXrmRepresentation = ^TXrmRepresentation;
|
||||||
|
TXrmRepresentation = TXrmQuark;
|
||||||
|
{$ifdef MACROS}
|
||||||
|
function XrmStringToRepresentation(_string : longint) : longint;
|
||||||
|
|
||||||
|
function XrmRepresentationToString(_type : longint) : longint;
|
||||||
|
{$endif MACROS}
|
||||||
|
|
||||||
type
|
type
|
||||||
TXrmValue = record
|
|
||||||
size : word;
|
|
||||||
theaddr : TXPointer;
|
|
||||||
end;
|
|
||||||
PXrmValue = ^TXrmValue;
|
|
||||||
TXrmValuePtr = PXrmValue;
|
|
||||||
|
|
||||||
|
PXrmValue = ^TXrmValue;
|
||||||
|
TXrmValue = record
|
||||||
|
size : dword;
|
||||||
|
addr : TXPointer;
|
||||||
|
end;
|
||||||
|
TXrmValuePtr = PXrmValue;
|
||||||
|
PXrmValuePtr = ^TXrmValuePtr;
|
||||||
|
|
||||||
{***************************************************************
|
PXrmHashBucketRec = ^TXrmHashBucketRec;
|
||||||
* Resource Manager Functions
|
TXrmHashBucketRec = record
|
||||||
***************************************************************}
|
end;
|
||||||
{
|
TXrmHashBucket = PXrmHashBucketRec;
|
||||||
typedef struct _XrmHashBucketRec *XrmHashBucket;
|
PXrmHashBucket = ^TXrmHashBucket;
|
||||||
typedef XrmHashBucket *XrmHashTable;
|
|
||||||
typedef XrmHashTable XrmSearchList[];
|
|
||||||
typedef struct _XrmHashBucketRec *XrmDatabase;
|
|
||||||
}
|
|
||||||
Type
|
|
||||||
TXrmHashBucket = pointer;
|
|
||||||
TXrmHashTable = ^TXrmHashBucket;
|
|
||||||
TXrmSearchList = ^TXrmHashTable;
|
|
||||||
TXrmDatabase = pointer;
|
|
||||||
PXrmDatabase = ^TXrmDatabase;
|
|
||||||
|
|
||||||
procedure XrmDestroyDatabase(
|
PXrmHashTable = ^TXrmHashTable;
|
||||||
p1 : TXrmDatabase { database }
|
TXrmHashTable = TXrmHashBucket;
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
Procedure XrmQPutResource(
|
TXrmDatabase = PXrmHashBucketRec;
|
||||||
p1 : PXrmDatabase { database };
|
PXrmDatabase = ^TXrmDatabase;
|
||||||
p2 : TXrmBindingList { bindings };
|
|
||||||
p3 : TXrmQuarkList { quarks };
|
|
||||||
p4 : TXrmRepresentation { type };
|
|
||||||
p5 : PXrmValue { value }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
Procedure XrmPutResource(
|
procedure XrmDestroyDatabase(para1:TXrmDatabase);cdecl;external;
|
||||||
p1 : PXrmDatabase { database };
|
procedure XrmQPutResource(para1:PXrmDatabase; para2:TXrmBindingList; para3:TXrmQuarkList; para4:TXrmRepresentation; para5:PXrmValue);cdecl;external;
|
||||||
p2 : pchar { specifier };
|
procedure XrmPutResource(para1:PXrmDatabase; para2:Pchar; para3:Pchar; para4:PXrmValue);cdecl;external;
|
||||||
p3 : pchar { type };
|
procedure XrmQPutStringResource(para1:PXrmDatabase; para2:TXrmBindingList; para3:TXrmQuarkList; para4:Pchar);cdecl;external;
|
||||||
p4 : PXrmValue { value }
|
procedure XrmPutStringResource(para1:PXrmDatabase; para2:Pchar; para3:Pchar);cdecl;external;
|
||||||
);cdecl;external;
|
procedure XrmPutLineResource(para1:PXrmDatabase; para2:Pchar);cdecl;external;
|
||||||
|
function XrmQGetResource(para1:TXrmDatabase; para2:TXrmNameList; para3:TXrmClassList; para4:PXrmRepresentation; para5:PXrmValue):TBool;cdecl;external;
|
||||||
Procedure XrmQPutStringResource(
|
function XrmGetResource(para1:TXrmDatabase; para2:Pchar; para3:Pchar; para4:PPchar; para5:PXrmValue):TBool;cdecl;external;
|
||||||
p1 : PXrmDatabase { database };
|
{ There is no definition of TXrmSearchList }
|
||||||
p2 : TXrmBindingList { bindings };
|
{function XrmQGetSearchList(para1:TXrmDatabase; para2:TXrmNameList; para3:TXrmClassList; para4:TXrmSearchList; para5:longint):TBool;cdecl;external;
|
||||||
p3 : TXrmQuarkList { quarks };
|
function XrmQGetSearchResource(para1:TXrmSearchList; para2:TXrmName; para3:TXrmClass; para4:PXrmRepresentation; para5:PXrmValue):TBool;cdecl;external;}
|
||||||
p4 : Pchar { value }
|
procedure XrmSetDatabase(para1:PDisplay; para2:TXrmDatabase);cdecl;external;
|
||||||
);cdecl;external;
|
function XrmGetDatabase(para1:PDisplay):TXrmDatabase;cdecl;external;
|
||||||
|
function XrmGetFileDatabase(para1:Pchar):TXrmDatabase;cdecl;external;
|
||||||
Procedure XrmPutStringResource(
|
function XrmCombineFileDatabase(para1:Pchar; para2:PXrmDatabase; para3:TBool):TStatus;cdecl;external;
|
||||||
P1 : PXrmDatabase { database };
|
function XrmGetStringDatabase(para1:Pchar):TXrmDatabase;cdecl;external;
|
||||||
p2,p3 : pchar
|
procedure XrmPutFileDatabase(para1:TXrmDatabase; para2:Pchar);cdecl;external;
|
||||||
);cdecl;external;
|
procedure XrmMergeDatabases(para1:TXrmDatabase; para2:PXrmDatabase);cdecl;external;
|
||||||
|
procedure XrmCombineDatabase(para1:TXrmDatabase; para2:PXrmDatabase; para3:TBool);cdecl;external;
|
||||||
Procedure XrmPutLineResource(
|
|
||||||
p1 : PXrmDatabase { database };
|
|
||||||
p2 : pchar { line }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
Function XrmQGetResource(
|
|
||||||
p1 : PXrmDatabase { database };
|
|
||||||
p2 : TXrmNameList { quark_name };
|
|
||||||
p3 : TXrmClassList { quark_class };
|
|
||||||
p4 : PXrmRepresentation { quark_type_return };
|
|
||||||
p5 : PXrmValue { value_return }
|
|
||||||
) : Integer;cdecl;external;
|
|
||||||
|
|
||||||
Function XrmGetResource(
|
|
||||||
p1 : TXrmDatabase { database };
|
|
||||||
p2 : pchar { str_name };
|
|
||||||
p3 : pchar { str_class };
|
|
||||||
p4 : ppchar { str_type_return };
|
|
||||||
p5 : PXrmValue { value_return }
|
|
||||||
) : Tbool;cdecl;external;
|
|
||||||
|
|
||||||
Function XrmQGetSearchList(
|
|
||||||
p1 : TXrmDatabase { database };
|
|
||||||
p2 : TXrmNameList { names };
|
|
||||||
p3 : TXrmClassList { classes };
|
|
||||||
p4 : TXrmSearchList { list_return };
|
|
||||||
p5 : integer { list_length }
|
|
||||||
) : Tbool;cdecl;external;
|
|
||||||
|
|
||||||
Function XrmQGetSearchResource(
|
|
||||||
P1 : TXrmSearchList { list };
|
|
||||||
p2 : TXrmName { name };
|
|
||||||
p3 : TXrmClass { class };
|
|
||||||
p4 : PXrmRepresentation { type_return };
|
|
||||||
p5 : PXrmValue { value_return }
|
|
||||||
) : TBool;cdecl;external;
|
|
||||||
|
|
||||||
{***************************************************************
|
|
||||||
*
|
|
||||||
* Resource Database Management
|
|
||||||
*
|
|
||||||
***************************************************************}
|
|
||||||
|
|
||||||
procedure XrmSetDatabase(
|
|
||||||
p1 : PDisplay { display };
|
|
||||||
p2 : TXrmDatabase { database }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
Function XrmGetDatabase(
|
|
||||||
p1 : PDisplay { display }
|
|
||||||
) : TXrmDatabase;cdecl;external;
|
|
||||||
|
|
||||||
Function XrmGetFileDatabase(
|
|
||||||
p1 : pchar { filename }
|
|
||||||
) : TXrmDatabase ;cdecl;external;
|
|
||||||
|
|
||||||
Function XrmCombineFileDatabase(
|
|
||||||
p1 : pchar { filename };
|
|
||||||
p2 : PXrmDatabase { target };
|
|
||||||
p3 : TBool { override }
|
|
||||||
) : TStatus ;cdecl;external;
|
|
||||||
|
|
||||||
function XrmGetStringDatabase(
|
|
||||||
p1 : pchar { data } { null terminated string }
|
|
||||||
) : TXrmDatabase ;cdecl;external;
|
|
||||||
|
|
||||||
Procedure XrmPutFileDatabase(
|
|
||||||
p1 : TXrmDatabase { database };
|
|
||||||
p2: pchar { filename }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
Procedure XrmMergeDatabases(
|
|
||||||
p1 : TXrmDatabase { source_db };
|
|
||||||
p2 : PXrmDatabase { target_db }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
procedure XrmCombineDatabase(
|
|
||||||
p1 : TXrmDatabase { source_db };
|
|
||||||
p2 : PXrmDatabase { target_db };
|
|
||||||
p3 : TBool { override }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
const
|
const
|
||||||
XrmEnumAllLevels = 0;
|
XrmEnumAllLevels = 0;
|
||||||
XrmEnumOneLevel = 1;
|
XrmEnumOneLevel = 1;
|
||||||
(*
|
type
|
||||||
Function XrmEnumerateDatabase(
|
funcbool=function :TBool;
|
||||||
XrmDatabase { db };
|
function XrmEnumerateDatabase(para1:TXrmDatabase; para2:TXrmNameList; para3:TXrmClassList; para4:longint; para5:funcbool;
|
||||||
XrmNameList { name_prefix };
|
para6:TXPointer):TBool;cdecl;external;
|
||||||
XrmClassList { class_prefix };
|
function XrmLocaleOfDatabase(para1:TXrmDatabase):Pchar;cdecl;external;
|
||||||
int { mode };
|
type
|
||||||
Bool *(#if NeedNestedPrototypes
|
|
||||||
XrmDatabase* { db };
|
|
||||||
XrmBindingList { bindings };
|
|
||||||
XrmQuarkList { quarks };
|
|
||||||
XrmRepresentation* { type };
|
|
||||||
XrmValue* { value };
|
|
||||||
XPointer { closure }
|
|
||||||
|
|
||||||
) { proc };
|
PXrmOptionKind = ^TXrmOptionKind;
|
||||||
XPointer { closure }
|
TXrmOptionKind = (XrmoptionNoArg,XrmoptionIsArg,XrmoptionStickyArg,
|
||||||
) : TBool;
|
XrmoptionSepArg,XrmoptionResArg,XrmoptionSkipArg,
|
||||||
*)
|
XrmoptionSkipLine,XrmoptionSkipNArgs);
|
||||||
|
|
||||||
Function XrmLocaleOfDatabase(
|
PXrmOptionDescRec = ^TXrmOptionDescRec;
|
||||||
P1 : TXrmDatabase { database }
|
TXrmOptionDescRec = record
|
||||||
) : Pchar;cdecl;external;
|
option : Pchar;
|
||||||
|
specifier : Pchar;
|
||||||
|
argKind : TXrmOptionKind;
|
||||||
|
value : TXPointer;
|
||||||
|
end;
|
||||||
|
TXrmOptionDescList = PXrmOptionDescRec;
|
||||||
|
PXrmOptionDescList = ^TXrmOptionDescList;
|
||||||
|
|
||||||
|
procedure XrmParseCommand(para1:PXrmDatabase; para2:TXrmOptionDescList; para3:longint; para4:Pchar; para5:Plongint;
|
||||||
|
para6:PPchar);cdecl;external;
|
||||||
|
|
||||||
{***************************************************************
|
implementation
|
||||||
*
|
|
||||||
* Command line option mapping to resource entries
|
|
||||||
*
|
|
||||||
***************************************************************}
|
|
||||||
|
|
||||||
Const
|
function NULLQUARK : TXrmQuark;
|
||||||
XrmoptionNoArg = 0; { Value is specified in OptionDescRec.value }
|
begin
|
||||||
XrmoptionIsArg = 1; { Value is the option string itself }
|
NULLQUARK:=TXrmQuark(0);
|
||||||
XrmoptionStickyArg = 2; { Value is characters immediately following option }
|
end;
|
||||||
XrmoptionSepArg = 3; { Value is next argument in argv }
|
|
||||||
XrmoptionResArg = 4; { Resource and value in next argument in argv }
|
|
||||||
XrmoptionSkipArg = 5; { Ignore this option and the next argument in argv }
|
|
||||||
XrmoptionSkipLine = 6; { Ignore this option and the rest of argv }
|
|
||||||
XrmoptionSkipNArgs = 7; { Ignore this option and the next
|
|
||||||
OptionDescRes.value arguments in argv }
|
|
||||||
Type TXrmOptionKind = Integer;
|
|
||||||
|
|
||||||
TXrmOptionDescRec = record
|
function NULLSTRING : TXrmString;
|
||||||
option : pchar; { Option abbreviation in argv }
|
begin
|
||||||
specifier : pchar; { Resource specifier }
|
NULLSTRING:=TXrmString(0);
|
||||||
argKind : TXrmOptionKind; { Which style of option it is }
|
end;
|
||||||
value : TXpointer; { Value to provide if XrmoptionNoArg }
|
|
||||||
|
{$ifdef MACROS}
|
||||||
|
function XrmStringsEqual(a1,a2 : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmStringsEqual:=(strcmp(a1,a2)) = 0;
|
||||||
end;
|
end;
|
||||||
PXrmOptionDescRec= ^TXrmOptionDescRec;
|
|
||||||
TXrmOptionDescList = PXrmOptionDescRec;
|
|
||||||
|
|
||||||
|
function XrmNameToString(name : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmNameToString:=XrmQuarkToString(name);
|
||||||
|
end;
|
||||||
|
|
||||||
Procedure XrmParseCommand(
|
function XrmStringToName(string : longint) : longint;
|
||||||
p1 : TXrmDatabase { database };
|
begin
|
||||||
p2 : TXrmOptionDescList { table };
|
XrmStringToName:=XrmStringToQuark(_string);
|
||||||
p3 : integer { table_count };
|
end;
|
||||||
p4 : pchar { name };
|
|
||||||
p5 : Pointer { argc_in_out };
|
|
||||||
p6 : ppchar { argv_in_out }
|
|
||||||
);cdecl;external;
|
|
||||||
|
|
||||||
Implementation
|
function XrmStringToNameList(str,name : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmStringToNameList:=XrmStringToQuarkList(str,name);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XrmClassToString(c_class : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmClassToString:=XrmQuarkToString(c_class);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XrmStringToClass(c_class : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmStringToClass:=XrmStringToQuark(c_class);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XrmStringToClassList(str,c_class : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmStringToClassList:=XrmStringToQuarkList(str,c_class);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XrmStringToRepresentation(_string : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmStringToRepresentation:=XrmStringToQuark(_string);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function XrmRepresentationToString(_type : longint) : longint;
|
||||||
|
begin
|
||||||
|
XrmRepresentationToString:=XrmQuarkToString(_type);
|
||||||
|
end;
|
||||||
|
{$endif MACROS}
|
||||||
|
|
||||||
end.
|
end.
|
||||||
{
|
|
||||||
$Log$
|
|
||||||
Revision 1.2 2000-07-13 11:33:34 michael
|
|
||||||
+ removed logs
|
|
||||||
|
|
||||||
}
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user