[fpc-devel] Chosing a graphical interface for specific proposals
Sven Barth
pascaldragon at googlemail.com
Tue Oct 26 16:27:57 CEST 2010
Am 26.10.2010 16:18, schrieb luciano de souza:
> IUP 2.x are not compatible with screen readers. The reason is the
> excessive usage of Canvas Draw. I did a large number of tests with IUP
> and Lua and I can assure IUP 3.1 and 3.2, the last version, are very
> good so in Linux as in Windows. For this reason, I would like to
> translate IUP 3.2.
>
Ok, then I'll concentrate on IUP 3.
> Yes, we can find lots of "define", but I find a problem seeming to be
> more complicated.
>
> See this declaration in C:
>
> ihandle* IupVbox(ihandle *child, ...)
>
> IupVbox is a vertical container wich can encompass several objects, so
> it's not possible to know how many arguments it will contain.
Ok... you can translate this with FreePascal, but you must do it by hand
(so you need to comment (//...) the functions in the C header).
Here's the translation (I herby assume that a type "Pihandle = ^ihandle"
and a constant "libiup='libiup.so'" are defined):
Variant a:
Declaration:
function IupVbox(child: Pihandle; args: array of const): Pihandle;
cdecl; external libiup;
Calling:
IupVbox(Iuplabel("Label 1"), [hbox1, Nil]);
Variant b:
Declaration:
function IupVbox(child: Pihandle): Pihandle; cdecl; varargs; external
libiup;
Calling:
IupVbox(Iuplabel("Label 1"), hbox1, Nil);
The compiler won't do any checks on the arguments.
See also:
http://www.freepascal.org/docs-html/ref/refsu74.html#x159-16600011.9.16
Regards,
Sven
More information about the fpc-devel
mailing list