CD_IUP - IUP Driver (cdiup.h)
CD_IUPDBUFFER - IUP driver using double buffer (since 5.8)
CD_IUPDBUFFERRGB - IUP driver using image rgb double buffer (since 5.8)

This driver provides access to an interface element of a IUP canvas. IUP is a portable user-interface library used to create portable user-interface applications. See IUP documentation.


The canvas is created by means of a call to the function cdCreateCanvas(CD_IUP, Data), after which other CD functions can be called as usual. This function creates a CD canvas based on the existing IUP canvas. The parameter Data is a pointer to a handle of the IUP canvas (Ihandle*). For use with CDLUA, a canvas created with IUPLUA must necessarily be passed as parameter.

Any amount of such canvases may exist simultaneously, but they should not use the same IUP canvas. It is important to note that a call to function cdKillCanvas is required to close the file properly.

The CD canvas is automatically stored in the IUP canvas as the "_CD_CANVAS" attribute.

For the double buffer versions two canvas will be created. The returned canvas is the back buffer canvas. This canvas is stored as the "_CD_CANVAS_DBUFFER" attribute and the front buffer canvas will still be stored as the "_CD_CANVAS" attribute.

To use this driver, it must be linked with the "iupcd" library available in the IUP distribution.

In Lua, it is necessary to call function cdluaiup_open() after a call to function cdlua_open(), apart from linking with the "iupluacd" library. This is not necessary if you do require"iupluacd".

Behavior of Functions

This driver depends on the Native Window driver.

When using the double buffer versions see the Double Buffer and Double Buffer using a RGB image drivers documentation.