/*		 
			SCOL PLUGIN TEMPLATE . 1999 . by Sylvain HUET

*/

#include <stdio.h>
#include <string.h>

#include "x/Version.h"
#include "x/scolplugin.h"
#include "Lib2dSrc/Macro.h"
#include "Lib2dSrc/container.h"
#include "Lib2dSrc/CObjectBitmap.h"
#include "Lib2dSrc/CObjectRollOver.h"
#include "Lib2dSrc/CObjectCheck.h"
#include "Lib2dSrc/CObjectText.h"
#include "Lib2dSrc/CObjectSlideBar.h"
#include "Lib2dSrc/CObjectSizeBar.h"
#include "Lib2dSrc/CObjectList.h"
#include "Lib2dSrc/CObjectCombo.h"
#include "Lib2dSrc/CObjectTree.h"
#include "Lib2dSrc/CObjLink.h"
#include "Lib2dSrc/container_trans.h"

#ifdef HTML_INCLUDE

#include "LibHtmlSrc/htmlfunctions.h"

extern int OBJTYPHTML;
extern char* mHTMLname[];
extern int (*mHTMLfun[])(mmachine m);
extern int mHTMLnarg[];
extern char* mHTMLtype[];

#endif

cbmachine ww;
mmachine  mm;

int (*mt_start)(int per,int param,int (*fun)(int i,int param));
int (*mt_del)(int i);


//$LB (11/11/2003) : add _SETcontainerCursor
//$LB (16/12/2003) : add _SETcontainerTransparency and _SIMULATEcontainerTransparency 
#define NLIB2DPKG 323

int		OBJCONTAINER;
int		OBJNODE;
HINSTANCE hinst;
char* mLIB2Dname[NLIB2DPKG]=
{	
	
	/********************************************************************************/
	/*                            Le container                                      */
	/********************************************************************************/
	"ObjContainer",				//33
	"_CRcontainerFromObjCont",
	"_CRcontainerFromObjWin",
	"_CRcontainer",
	"_GETcontainerMap",
	"_DScontainer",
	"_SHOWcontainer",
	"_MOVEcontainer",
	"_SETcontainerName",
	"_SIZEcontainer",
	"_SIZEEXcontainer",
	"_TOPcontainer",
	"_ENcontainer",
	"_GETcontainerPositionSize",
	"_GETcontainerExPositionSize",
	"_SETfocusContainer",
	"_PAINTcontainer",
	"_PAINTcontainerArea",
	//$LB (11/11/2003)
	"_SETcontainerCursor",
	//$LB (16/12/2003)
	"_SETcontainerTransparency",
	"_SIMULATEcontainerTransparency",
	
	"_METHODcontainerPreDestroy", //16
	"_METHODcontainerDestroy",
	"_METHODcontainerPaint",
	"_METHODcontainerSize",
	"_METHODcontainerMove",
	"_METHODcontainerFocus",
	"_METHODcontainerKillFocus",
	"_METHODcontainerKeyDown",
	"_METHODcontainerKeyUp",
	"_METHODcontainerClick",
	"_METHODcontainerUnClick",
	"_METHODcontainerDblClick",
	"_METHODcontainerMouseHover",
	"_METHODcontainerMouseLeave",
	"_METHODcontainerMouseWheel",
	"_METHODcontainerMouseMove",

	"_CBcontainerPreDestroy",
	"_CBcontainerDestroy",
	"_CBcontainerMove",
	"_CBcontainerSize",
	"_CBcontainerFocus",
	"_CBcontainerKillFocus",
	"_CBcontainerPaint",
	"_CBcontainerKeyUp",
	"_CBcontainerKeyDown",
	"_CBcontainerClick",
	"_CBcontainerUnClick",
	"_CBcontainerDblClick",
	"_CBcontainerMouseWheel",
	"_CBcontainerCursorMove",
	"_CBcontainerCursorHover",
	"_CBcontainerCursorLeave",
	"_CBcontainerPreRender",
	"_CBcontainerPostRender",

	"RFL wincontainer Click",	//les callbacks de la fenetre pour pouvair etre positionnées à la
	"RFL wincontainer UnClick",	//creation du container	14
	"RFL wincontainer DblClick",
	"RFL wincontainer KeyDown",
	"RFL wincontainer KeyUp",
	"RFL wincontainer Focus",
	"RFL wincontainer KillFocus",
	"RFL wincontainer Move",
	"RFL wincontainer Size",
	"RFL wincontainer Close",
	"RFL wincontainer Destroy",
	"RFL wincontainer CursorMove",
	"RFL wincontainer MouseWheel",
	"RFL wincontainer Paint",

	/* constantes du container */
	"CO_MENU",					//26
	"CO_NOBORDER",
	"CO_NOCAPTION",
	"CO_NOCLIPCHILDREN",
	"CO_CHILDINSIDE",
	"CO_MINBOX",
	"CO_MAXBOX",
	"CO_SIZEBOX",
	"CO_HIDE",
	"CO_MINIMIZE",
	"CO_MAXIMIZE",
	"CO_DISABLE",
	"CO_3DBORDER",

	"CONTAINER_MINIMIZED",		
	"CONTAINER_MAXIMIZED",
	"CONTAINER_RESTORED",
	"CONTAINER_HIDDEN",
	"CONTAINER_UNHIDDEN",

	"LBUTTON",
	"RBUTTON",
	"MBUTTON",
	
	"MK_LBUTTON",
	"MK_RBUTTON",
	"MK_SHIFT",
	"MK_CONTROL",
	"MK_MBUTTON",


	/********************************************************************************/
	/*                                    Node                                      */
	/********************************************************************************/
	"ObjNode",					
	"_CHANGEobjNodeFlags",
	"_GETobjNodeFlags",
	"_CHANGEobjNodeCoordinates",
	"_GETobjNodePositionSizeInFatherRef",
	"_GETobjNodePositionSizeInContainerRef",
	"_PAINTobjNode",
	"_TOPobjNode",
	"_SIZEobjNode",
	"_SETobjNodeFocus",
	"_SETobjNodeTabStopOrder",

	"_CRtoolTip",				//3
	"_CRtoolTipDefault",
	"_DStoolTip",

	"OBJ_ENABLE",
	"OBJ_DISABLE",
	"OBJ_VISIBLE",
	"OBJ_HIDE",
	"OBJ_CBNOPAINT",
	"OBJ_TABSTOP",
	
	"OBJ_LH_FLEX",
	"OBJ_MH_FLEX",
	"OBJ_RH_FLEX",
	"OBJ_LW_FLEX",
	"OBJ_MW_FLEX",
	"OBJ_RW_FLEX",

	"OBJ_CONTAINER_MOVE",
	"OBJ_CONTAINER_CLICK",
	"OBJ_CONTAINER_UNCLICK",
	"OBJ_CONTAINER_DBLCLICK",
	"OBJ_CONTAINER_KEYUP",
	"OBJ_CONTAINER_KEYDOWN",
	"OBJ_CONTAINER_MOUSEWHEEL",

	/********************************************************************************/
	/*                                    Bitmap	                                */
	/********************************************************************************/
	"CompBitmap",				//10
	"_CRcompBitmap",
	"_DScompBitmap",
	"_CONVERTcompBitmapToObjNode",
	"_CBcompBitmapCursorMove",
	"_CBcompBitmapClick",
	"_CBcompBitmapUnClick",
	"_CBcompBitmapDblClick",
	"_CBcompBitmapResizeResource",
	"_CBcompBitmapResize",

	/********************************************************************************/
	/*                                    RollOver                                  */
	/********************************************************************************/
	"CompRollOver",				//9
	"_CRcompRollOver",
	"_DScompRollOver",
	"_CONVERTcompRollOverToObjNode",
	"_CBcompRollOverCursorMoveIn",
	"_CBcompRollOverCursorMoveOut",
	"_CBcompRollOverClick",
	"_CBcompRollOverResizeResource",
	"_CBcompRollOverResize",

	
	"ROL_MASK",					//3
	"ROL_DISABLE",
	"ROL_CLICK",

	/********************************************************************************/
	/*                                    Check                                     */
	/********************************************************************************/
	"CompCheck",				//12
	"_CRcompCheck",
	"_DScompCheck",
	"_CONVERTcompCheckToObjNode",
	"_GETcompCheckState",
	"_SETcompCheckState",
	"_CBcompCheckCursorMoveIn",
	"_CBcompCheckCursorMoveOut",
	"_CBcompCheckClick",
	"_CBcompCheckStateChanged",
	"_CBcompCheckResizeResource",
	"_CBcompCheckResize",

	"CHK_CHECKED",				//2
	"CHK_UNCHECKED",

	/********************************************************************************/
	/*                                   Text                                       */
	/********************************************************************************/
	"CompText",					//14
	"_CRcompText",
	"_DScompText",
	"_CONVERTcompTextToObjNode",
	"_SETcompText",
	"_ADDcompText",
	"_GETcompText",
	"_GETcompTextLine",
	"_GETcompTextLineCount",
	"_GETcompTextFirstLine",
	"_DELcompTextLine",
	"_SETcompTextForbiddenChar",
	"_SETcompTextAuthorizedChar",
	"_SETcompTextFirstLine",

	"_CBcompTextChange",		//4
	"_CBcompTextValidation",
	"_CBcompTextResizeResource",
	"_CBcompTextResize",


	"CT_LEFT",					//12
	"CT_RIGHT",
	"CT_BOTTOM",
	"CT_TOP",
	"CT_CENTER",
	"CT_LABEL",
	"CT_EDITLINE",
	"CT_MULTIEDITLINE",
	"CT_WORDWRAP",
	"CT_MULTIFONT",
	"CT_SELECT",
	"CT_PASSWORD",

	"CT_NOCHANGE",				//3
	"CT_BEGIN",
	"CT_END",

	"CT_VALIDENTER",			//2
	"CT_VALIDCLICK",


	/********************************************************************************/
	/*                                    SlideBar                                  */
	/********************************************************************************/
	"CompSlideBar",             // 12
	"_CRcompSlideBar",
	"_DScompSlideBar",
	"_CONVERTcompSlideBarToObjNode",
	"_SETcompSlideBarValue",
	"_SETcompSlideBarMax",
	"_SETcompSlideBarMin",
	"_SETcompSlideBarStep",
	"_CBcompSlideBarValue",
	"_SETcompSlideBarRange",
	"_CBcompSlideBarResizeResource",
	"_CBcompSlideBarResize",

	"SLB_MASK",                 // 6
	"SLB_DISABLE",
	"SLB_GAUGE",
	"SLB_ROLLOVER",
	"SLB_HORIZONTAL",
	"SLB_VERTICAL",

	/********************************************************************************/
	/*                                      List                                    */
	/********************************************************************************/
	"CompList",       // 24
	"_CRcompList",
	"_DScompList",
	"_CONVERTcompListToObjNode",
	"_CBcompListClick",
    "_CBcompListSClick",
	"_CBcompListDblClick",
    "_CBcompListChange",
	"_CBcompListResizeResource",
	"_CBcompListResize",
	"_SETcompListFirst",
	"_SSETcompListFirst",
	"_ADDcompList",
	"_DELcompList",
	"_SETcompListValue",
	"_SDELcompList",
	"_SSETcompListValue",
	"_POScompList",
	"_GETcompListCount",
	"_RSTcompList",
	"_GETcompListValue",
	"_GETcompListClicked",
	"_SETcompListClicked",
	"_SSETcompListClicked",

	"LST_VERTICAL",   // 11
	"LST_HORIZONTAL",
	"LST_LEFT",
	"LST_RIGHT",
	"LST_TOP",
	"LST_BOTTOM",
	"LST_IMG_RIGHT",
	"LST_IMG_TOP",
	"LST_IMG_BOTTOM",
	"LST_HIGHLIGHT_SELECTED",
	"LST_HIGHLIGHT_CLICKED",

	/********************************************************************************/
	/*                                     Combo                                    */
	/********************************************************************************/
	"CompCombo", // 20
	"_CRcompCombo",
	"_DScompCombo",
	"_CONVERTcompComboToObjNode",
	"_ADDcompCombo",
	"_DELcompCombo",
	"_SDELcompCombo",
	"_RSTcompCombo",
	"_GETcompComboCount",
	"_GETcompComboValue",
	"_SETcompComboValue",
	"_SSETcompComboValue",
	"_POScompCombo",
	"_GETcompComboClicked",
	"_SETcompComboClicked",
	"_SSETcompComboClicked",
	"_SETcompComboState",
	"_CBcompComboClick",
	"_CBcompComboResizeResource",
	"_CBcompComboResize",

	"CBO_OPENED", // 2
	"CBO_CLOSED",

	/********************************************************************************/
	/*                                     Tree                                     */
	/********************************************************************************/
	"CompTree", // 24
	"_CRcompTree",
	"_DScompTree",
	"_CONVERTcompTreeToObjNode",
	"_ADDcompTree",
	"_DELcompTree",
	"_SDELcompTree",
	"_RSTcompTree",
	"_GETcompTreeCount",
	"_GETcompTreeValue",
	"_SETcompTreeValue",
	"_SSETcompTreeValue",
	"_SETcompTreeFirst",
	"_SSETcompTreeFirst",
	"_GETcompTreeState",
	"_SETcompTreeState",
	"_GETcompTreeClicked",
	"_SETcompTreeClicked",
	"_SSETcompTreeClicked",
	"_POScompTree",
	"_CBcompTreeClick",
	"_CBcompTreeDblClick",
	"_CBcompTreeStateChanged",
	"_CBcompTreeResizeResource",
	"_CBcompTreeResize",

	"TRE_HIGHLIGHT_SELECTED", // 8
	"TRE_HIGHLIGHT_CLICKED",
	"TRE_SHRINK",
	"TRE_EXPAND",
	"TRE_PRE_ORDER",
	"TRE_LEVEL_ORDER",
	"TRE_FIXED_ROOT",
	"TRE_HIDDEN_ROOT",
	
	/********************************************************************************/
	/*                                  SizeBar                                     */
	/********************************************************************************/
	"CompSizeBar",		//8
	"_CRcompSizeBar",
	"_DScompSizeBar",
	"_SETcompSizeBarMinMax",
	"_CONVERTcompSizeBarToObjNode",
	"_CBcompSizeBarEndResize",
	"_CBcompSizeBarResizeResource",
	"_CBcompSizeBarResize",

	"SB_HORIZONTAL",	//3
	"SB_VERTICAL",
	"SB_SHADOW",

	/********************************************************************************/
	/*                                      Link                                    */
	/********************************************************************************/

	"_CRnodeLink",       // 2
	"_DSnodeLink",

	"LINK_MOVE",         // 3
	"LINK_RESIZE",
	"LINK_SELECT"
};

int (*mLIB2Dfun[NLIB2DPKG])(mmachine m)=
{	
	
	/********************************************************************************/
	/*                            Le container                                      */
	/********************************************************************************/
	NULL,
	_CRcontainerFromObjCont,
	_CRcontainerFromObjWin,
	_CRcontainer,
	_GETcontainerMap,
	_DScontainer,
	_SHOWcontainer,
	_MOVEcontainer,
	_SETcontainerName,
	_SIZEcontainer,
	_SIZEEXcontainer,
	_TOPcontainer,
	_ENcontainer,
	_GETcontainerPositionSize,
	_GETcontainerExPositionSize,
	_SETfocusContainer,
	_PAINTcontainer,
	_PAINTcontainerArea,

	//$LB (11/11/2003)
	_SETcontainerCursor,
	//$LB (16/12/2003)
	_SETcontainerTransparency,
	_SIMULATEcontainerTransparency,

	_METHODcontainerPreDestroy, //16
	_METHODcontainerDestroy,
	_METHODcontainerPaint,
	_METHODcontainerSize,
	_METHODcontainerMove,
	_METHODcontainerFocus,
	_METHODcontainerKillFocus,
	_METHODcontainerKeyDown,
	_METHODcontainerKeyUp,
	_METHODcontainerClick,
	_METHODcontainerUnClick,
	_METHODcontainerDblClick,
	_METHODcontainerMouseHover,
	_METHODcontainerMouseLeave,
	_METHODcontainerMouseWheel,
	_METHODcontainerMouseMove,

	rflPreDestroyContainer,
	rflDestroyContainer,
	rflMoveContainer,
	rflSizeContainer,
	rflSetFocusContainer,
	rflKillFocusContainer,
	rflPaintContainer,
	rflKeyUpContainer,
	rflKeyDownContainer,
	rflClickContainer,
	rflUnClickContainer,
	rflDblClickContainer,
	rflMouseWheelContainer,
	rflCursorMoveContainer,
	rflMouseHoverContainer,
	rflMouseLeaveContainer,
	rflPreRenderContainer,
	rflPostRenderContainer,

	RFLwincontainerClick,		//les callbacks de la fenetre pour pouvair etre positionnées à la
	RFLwincontainerUnClick,		//creation du container	14
	RFLwincontainerDblClick,
	RFLwincontainerKeyDown,
	RFLwincontainerKeyUp,
	RFLwincontainerFocus,
	RFLwincontainerKillFocus,
	RFLwincontainerMove,
	RFLwincontainerSize,
	RFLwincontainerClose,
	RFLwincontainerDestroy,
	RFLwincontainerCursorMove,
	RFLwincontainerMouseWheel,
	RFLwincontainerPaint,
	
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_MENU),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_NOBORDER),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_NOCAPTION),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_NOCLIPCHILDREN),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_CHILDINSIDE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_MINBOX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_MAXBOX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_SIZEBOX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_HIDE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_MINIMIZE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_MAXIMIZE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_DISABLE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CO_3DBORDER),

	(int (__cdecl *)(struct Mmachine *)) ITOM(CONTAINER_MINIMIZED),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CONTAINER_MAXIMIZED),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CONTAINER_RESTORED),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CONTAINER_HIDDEN),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CONTAINER_UNHIDDEN),

	(int (__cdecl *)(struct Mmachine *)) ITOM(LBUTTON),
	(int (__cdecl *)(struct Mmachine *)) ITOM(RBUTTON),
	(int (__cdecl *)(struct Mmachine *)) ITOM(MBUTTON),


	(int (__cdecl *)(struct Mmachine *)) ITOM(MK_LBUTTON),
	(int (__cdecl *)(struct Mmachine *)) ITOM(MK_RBUTTON),
	(int (__cdecl *)(struct Mmachine *)) ITOM(MK_SHIFT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(MK_CONTROL),
	(int (__cdecl *)(struct Mmachine *)) ITOM(MK_MBUTTON),

	/********************************************************************************/
	/*                                    Node                                      */
	/********************************************************************************/
	NULL,				//21
	_CHANGEobjNodeFlags,
	_GETobjNodeFlags,
	_CHANGEobjNodeCoordinates,
	_GETobjNodePositionSizeInFatherRef,
	_GETobjNodePositionSizeInContainerRef,
	_PAINTobjNode,
	_TOPobjNode,
	_SIZEobjNode,
	_SETobjNodeFocus,
	_SETobjNodeTabStopOrder,

	_CRtoolTip,			//3
	_CRtoolTipDefault,
	_DStoolTip,

	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_ENABLE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_DISABLE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_VISIBLE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_HIDE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CBNOPAINT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_TABSTOP),
	
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_LH_FLEX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_MH_FLEX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_RH_FLEX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_LW_FLEX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_MW_FLEX),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_RW_FLEX),


	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_MOVE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_CLICK),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_UNCLICK),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_DBLCLICK),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_KEYUP),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_KEYDOWN),
	(int (__cdecl *)(struct Mmachine *)) ITOM(OBJ_CONTAINER_MOUSEWHEEL),
	
	
	/********************************************************************************/
	/*                                    Bitmap	                                */
	/********************************************************************************/
	NULL,				//10
	_CRcompBitmap,
	_DScompBitmap,
	_CONVERTcompBitmapToObjNode,
	_CBcompBitmapCursorMove,
	_CBcompBitmapClick,
	_CBcompBitmapUnClick,
	_CBcompBitmapDblClick,
	_CBcompBitmapResizeResource,
	_CBcompBitmapResize,

	
	
	/********************************************************************************/
	/*                                    RollOver                                  */
	/********************************************************************************/
	NULL,				//9
	_CRcompRollOver,
	_DScompRollOver,
	_CONVERTcompRollOverToObjNode,
	_CBcompRollOverCursorMoveIn,
	_CBcompRollOverCursorMoveOut,
	_CBcompRollOverClick,
	_CBcompRollOverResizeResource,
	_CBcompRollOverResize,

	(int (__cdecl *)(struct Mmachine *)) ITOM(ROL_MASK),		//3
	(int (__cdecl *)(struct Mmachine *)) ITOM(ROL_DISABLE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(ROL_CLICK),


	/********************************************************************************/
	/*                                    Check                                     */
	/********************************************************************************/
	NULL,				//12
	_CRcompCheck,
	_DScompCheck,
	_CONVERTcompCheckToObjNode,
	_GETcompCheckState,
	_SETcompCheckState,
	_CBcompCheckCursorMoveIn,
	_CBcompCheckCursorMoveOut,
	_CBcompCheckClick,
	_CBcompCheckStateChanged,
	_CBcompCheckResizeResource,
	_CBcompCheckResize,

	(int (__cdecl *)(struct Mmachine *)) ITOM(STATE_CHECKED),		//2
	(int (__cdecl *)(struct Mmachine *)) ITOM(STATE_UNCHECKED),

	/********************************************************************************/
	/*                                   Text                                       */
	/********************************************************************************/
	NULL,						//14
	_CRcompText,
	_DScompText,
	_CONVERTcompTextToObjNode,
	_SETcompText,
	_ADDcompText,
	_GETcompText,
	_GETcompTextLine,
	_GETcompTextLineCount,
	_GETcompTextFirstLine,
	_DELcompTextLine,
	_SETcompTextForbiddenChar,
	_SETcompTextAuthorizedChar,
	_SETcompTextFirstLine,

	rflcompTextChange,			//4
	rflcompTextValidation,
	_CBcompTextResizeResource,
	_CBcompTextResize,

	
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_LEFT),					//12
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_RIGHT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_BOTTOM),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_TOP),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_CENTER),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_LABEL),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_EDITLINE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_MULTIEDITLINE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_WORDWRAP),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_MULTIFONT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_SELECT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_PASSWORD),

	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_NOCHANGE),				//3
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_BEGIN),
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_END),

	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_VALIDENTER),			//2
	(int (__cdecl *)(struct Mmachine *)) ITOM(CT_VALIDCLICK),


	/********************************************************************************/
	/*                                    SlideBar                                  */
	/********************************************************************************/
	NULL,                        // 12
	_CRcompSlideBar,
	_DScompSlideBar,
	_CONVERTcompSlideBarToObjNode,
	_SETcompSlideBarValue,
	_SETcompSlideBarMax,
	_SETcompSlideBarMin,
	_SETcompSlideBarStep,
	_CBcompSlideBarValue,
	_SETcompSlideBarRange,
	_CBcompSlideBarResizeResource,
	_CBcompSlideBarResize,

	(int (__cdecl *)(struct Mmachine *)) ITOM(SLB_MASK),                 // 6
	(int (__cdecl *)(struct Mmachine *)) ITOM(SLB_DISABLE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(SLB_GAUGE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(SLB_ROLLOVER),
	(int (__cdecl *)(struct Mmachine *)) ITOM(SLB_HORIZONTAL),
	(int (__cdecl *)(struct Mmachine *)) ITOM(SLB_VERTICAL),

	/********************************************************************************/
	/*                                      List                                    */
	/********************************************************************************/
	NULL,				// 23
	_CRcompList,
	_DScompList,
	_CONVERTcompListToObjNode,
	_CBcompListClick,
	_CBcompListSClick,
    _CBcompListDblClick,
    _CBcompListChange,
	_CBcompListResizeResource,
	_CBcompListResize,
	_SETcompListFirst,
	_SSETcompListFirst,
	_ADDcompList,
	_DELcompList,
	_SETcompListValue,
	_SDELcompList,
	_SSETcompListValue,
	_POScompList,
	_GETcompListCount,
	_RSTcompList,
	_GETcompListValue,
	_GETcompListClicked,
	_SETcompListClicked,
	_SSETcompListClicked,

	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_VERTICAL),   // 11
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_HORIZONTAL),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_LEFT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_RIGHT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_TOP),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_BOTTOM),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_IMG_RIGHT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_IMG_TOP),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_IMG_BOTTOM),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_HIGHLIGHT_SELECTED),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LST_HIGHLIGHT_CLICKED),


	/********************************************************************************/
	/*                                     Combo                                    */
	/********************************************************************************/
	NULL,				 // 20
	_CRcompCombo,
	_DScompCombo,
	_CONVERTcompComboToObjNode,
	_ADDcompCombo,
	_DELcompCombo,
	_SDELcompCombo,
	_RSTcompCombo,
	_GETcompComboCount,
	_GETcompComboValue,
	_SETcompComboValue,
	_SSETcompComboValue,
	_POScompCombo,
	_GETcompComboClicked,
	_SETcompComboClicked,
	_SSETcompComboClicked,
	_SETcompComboState,
	_CBcompComboClick,
	_CBcompComboResizeResource,
	_CBcompComboResize,

	(int (__cdecl *)(struct Mmachine *)) ITOM(STATE_CHECKED), // 2
	(int (__cdecl *)(struct Mmachine *)) ITOM(STATE_UNCHECKED),

	/********************************************************************************/
	/*                                     Tree                                     */
	/********************************************************************************/
	NULL,				 // 24
	_CRcompTree,
	_DScompTree,
	_CONVERTcompTreeToObjNode,
	_ADDcompTree,
	_DELcompTree,
	_SDELcompTree,
	_RSTcompTree,
	_GETcompTreeCount,
	_GETcompTreeValue,
	_SETcompTreeValue,
	_SSETcompTreeValue,
	_SETcompTreeFirst,
	_SSETcompTreeFirst,
	_GETcompTreeState,
	_SETcompTreeState,
	_GETcompTreeClicked,
	_SETcompTreeClicked,
	_SSETcompTreeClicked,
	_POScompTree,
	_CBcompTreeClick,
	_CBcompTreeDblClick,
	_CBcompTreeStateChanged,
	_CBcompTreeResizeResource,
	_CBcompTreeResize,

	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_HIGHLIGHT_SELECTED), // 8
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_HIGHLIGHT_CLICKED),
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_SHRINK),
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_EXPAND),
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_PRE_ORDER),
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_LEVEL_ORDER),
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_FIXED_ROOT),
	(int (__cdecl *)(struct Mmachine *)) ITOM(TRE_HIDDEN_ROOT),

	/********************************************************************************/
	/*                                  SizeBar                                     */
	/********************************************************************************/
	NULL,				//8
	_CRcompSizeBar,
	_DScompSizeBar,
	_SETcompSizeBarMinMax,
	_CONVERTcompSizeBarToObjNode,
	_CBcompSizeBarEndResize,
	_CBcompSizeBarResizeResource,
	_CBcompSizeBarResize,


	(int (__cdecl *)(struct Mmachine *)) ITOM(SB_HORIZONTAL),	//3
	(int (__cdecl *)(struct Mmachine *)) ITOM(SB_VERTICAL),
	(int (__cdecl *)(struct Mmachine *)) ITOM(SB_SHADOW),


	/********************************************************************************/
	/*                                      Link                                    */
	/********************************************************************************/

	_CRnodeLink,      // 2
	_DSnodeLink,

	(int (__cdecl *)(struct Mmachine *)) ITOM(LINK_MOVE),         // 3
	(int (__cdecl *)(struct Mmachine *)) ITOM(LINK_RESIZE),
	(int (__cdecl *)(struct Mmachine *)) ITOM(LINK_SELECT)
};

int mLIB2Dnarg[NLIB2DPKG]=
{
	/********************************************************************************/
	/*                            Le container                                      */
	/********************************************************************************/
	TYPTYPE,
	9,
	9,
	4,
	1,
	1,
	2,
	3,
	2,
	5,
	5,
	1,
	2,
	1,
	1,
	1,
	1,
	5,

	//$LB (11/11/2003)
	2,
	//$LB (16/12/2003)
	4, 2,
	
	1, //16
	1,
	1,
	3,
	3,
	1,
	1,
	3,
	2,
	4,
	4,
	4,
	1,
	1,
	5,
	4,


	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,
	3,

	5,		//14
	5,
	5,
	4,
	3,
	2,
	2,
	4,
	4,
	2,
	2,
	5,
	6,
	2,

	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,

	TYPVAR,
	TYPVAR,
	TYPVAR,

	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,

	/********************************************************************************/
	/*                                    Node                                      */
	/********************************************************************************/
	TYPTYPE,				//21
	3,
	1,
	3,
	1,
	1,
	1,
	1,
	4,
	1,
	2,
	
	7,						//3
	6,
	1,

	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,

	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,


	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,

	/********************************************************************************/
	/*                                    Bitmap	                                */
	/********************************************************************************/
	TYPTYPE,				//10
	11,
	1,
	1,
	3,
	3,
	3,
	3,
	3,
	3,

	/********************************************************************************/
	/*                                    RollOver                                  */
	/********************************************************************************/
	TYPTYPE,				//9
	7,
	1,
	1,
	3,
	3,
	3,
	3,
	3,

	TYPVAR,					//3
	TYPVAR,
	TYPVAR,

	/********************************************************************************/
	/*                                    Check	                                    */
	/********************************************************************************/
	TYPTYPE,				//12
	7,
	1,
	1,
	1,
	2,
	3,
	3,
	3,
	3,
	3,
	3,

	TYPVAR,					//2
	TYPVAR,

	/********************************************************************************/
	/*                                   Text                                       */
	/********************************************************************************/
	TYPTYPE,						//14
	14,
	1,
	1,
	5,
	5,
	1,
	2,
	1,
	1,
	3,
	2,
	2,
	2,

	3,								//4
	4,
	5,
	7,


	TYPVAR,							//12
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,

	TYPVAR,							//3
	TYPVAR,
	TYPVAR,

	TYPVAR,							//2
	TYPVAR,

	/********************************************************************************/
	/*                                    SlideBar                                  */
	/********************************************************************************/
	TYPTYPE,                        // 12
	12,
	1,
	1,
	2,
	2,
	2,
	2,
	3,
	2,
	3,
	3,

	TYPVAR,                 // 6
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	
	/********************************************************************************/
	/*                                      List                                    */
	/********************************************************************************/
	TYPTYPE,
	15,    // 23
	1,
	1,
	3,
    3,
	3,
    3,
	3,
	5,
	2,
	2,
	3,
	2,
	3,
	2,
	3,
	2,
	1,
	1,
	2,
	1,
	2,
	2,

	TYPVAR,   // 11
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,


	/********************************************************************************/
	/*                                     Combo                                    */
	/********************************************************************************/
	TYPTYPE, // 19
	14,
	1,
	1,
	3,
	2,
	2,
	1,
	1,
	2,
	3,
	3,
	2,
	1,
	2,
	2,
	2,
	3,
	7,
	11,

	TYPVAR,   // 2
	TYPVAR,

	/********************************************************************************/
	/*                                     Tree                                     */
	/********************************************************************************/
	TYPTYPE, // 24
	18,
	1,
	1,
	3,
	2,
	3,
	1,
	2,
	2,
	3,
	4,
	2,
	3,
	2,
	3,
	1,
	2,
	3,
	4,
	3,
	3,
	3,
	5,
	7,

	TYPVAR,  // 8
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	TYPVAR,
	
	/********************************************************************************/
	/*                                  SizeBar                                     */
	/********************************************************************************/
	TYPTYPE,				//8
	8,
	1,
	3,
	1,
	3,
	3,
	3,

	TYPVAR,					//3
	TYPVAR,
	TYPVAR,

	/********************************************************************************/
	/*                                      Link                                    */
	/********************************************************************************/

	3,      // 2
	3,

	TYPVAR,         // 3
	TYPVAR,
	TYPVAR
};

char* mLIB2Dtype[NLIB2DPKG]=
{
	/********************************************************************************/
	/*                            Le container                                      */
	/********************************************************************************/
	NULL,
	"fun [Chn ObjContainer I I I I I I S] ObjContainer",
	"fun [Chn ObjWin I I I I I I S] ObjContainer",
	"fun [Chn I I I] ObjContainer",
	"fun [ObjContainer] ObjBitmap",
	"fun [ObjContainer] I",
	"fun [ObjContainer I] ObjContainer",
	"fun [ObjContainer I I] ObjContainer",
	"fun [ObjContainer S] ObjContainer",
	"fun [ObjContainer I I I I] ObjContainer",
	"fun [ObjContainer I I I I] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer I] ObjContainer",
	"fun [ObjContainer] [I I I I]",
	"fun [ObjContainer] [I I I I]",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer I I I I] ObjContainer",

	//$LB (11/11/2003)
	"fun [ObjContainer ObjCursor] ObjContainer",
	//$LB (16/12/2003)
	"fun [ObjContainer I I I] ObjContainer",
	"fun [ObjContainer I] ObjContainer",

	"fun [ObjContainer] ObjContainer", //16
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer I I] ObjContainer",
	"fun [ObjContainer I I] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer I I] ObjContainer",
	"fun [ObjContainer I] ObjContainer",
	"fun [ObjContainer I I I] ObjContainer",
	"fun [ObjContainer I I I] ObjContainer",
	"fun [ObjContainer I I I] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer] ObjContainer",
	"fun [ObjContainer I I I I] ObjContainer",
	"fun [ObjContainer I I I] ObjContainer",


	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 I I I] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 [I I I I]] u1 u0] ObjContainer",
	"fun [ObjContainer fun [ObjContainer u0 [I I I I]] u1 u0] ObjContainer",

	"fun [ObjWin ObjContainer I I I] ObjWin", //14
	"fun [ObjWin ObjContainer I I I] ObjWin",
	"fun [ObjWin ObjContainer I I I] ObjWin",
	"fun [ObjWin ObjContainer I I] ObjWin",
	"fun [ObjWin ObjContainer I] ObjWin",
	"fun [ObjWin ObjContainer] ObjWin",
	"fun [ObjWin ObjContainer] ObjWin",
	"fun [ObjWin ObjContainer I I] ObjWin",
	"fun [ObjWin ObjContainer I I] ObjWin",
	"fun [ObjWin ObjContainer] ObjWin",
	"fun [ObjWin ObjContainer] ObjWin",
	"fun [ObjWin ObjContainer I I I] ObjWin",
	"fun [ObjWin ObjContainer I I I I] ObjWin",
	"fun [ObjWin ObjContainer] ObjWin",

	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	
	"I",
	"I",
	"I",

	"I",
	"I",
	"I",
	"I",
	"I",

	/********************************************************************************/
	/*                                    Node                                      */
	/********************************************************************************/
	NULL,						//21
	"fun [ObjNode I I] ObjNode",
	"fun [ObjNode] I",
	"fun [ObjNode [I I] I] ObjNode",
	"fun [ObjNode] [I I I I]",
	"fun [ObjNode] [I I I I]",
	"fun [ObjNode] ObjNode]",
	"fun [ObjNode] ObjNode",
	"fun [ObjNode I I I] ObjNode",
	"fun [ObjNode] ObjNode",
	"fun [ObjContainer [ObjNode r1]] I",

	"fun [ObjNode I S fun [ObjNode u0 S I I] u1 u0 fun [ObjNode u2 S] u3 u2] ObjNode",//3
	"fun [ObjNode I S I ObjFont I] ObjNode",
	"fun [ObjNode] ObjNode",

	"I",
	"I",
	"I",
	"I",
	"I",

	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",

	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	
	/********************************************************************************/
	/*                                    Bitmap	                                */
	/********************************************************************************/
	NULL,				//10
	"fun [Chn ObjContainer ObjNode [I I] I I AlphaBitmap I I I I] CompBitmap",
	"fun [CompBitmap] I",
	"fun [CompBitmap] ObjNode",
	"fun [CompBitmap fun [CompBitmap u0 I I I] u1 u0] CompBitmap",
	"fun [CompBitmap fun [CompBitmap u0 I I I I] u1 u0] CompBitmap",
	"fun [CompBitmap fun [CompBitmap u0 I I I I] u1 u0] CompBitmap",
	"fun [CompBitmap fun [CompBitmap u0 I I I I] u1 u0] CompBitmap",
	"fun [CompBitmap fun [CompBitmap u0 I I [I I I I]] [AlphaBitmap [I I I I]] u0] CompBitmap",
	"fun [CompBitmap fun [CompBitmap u0 I I] u1 u0] CompBitmap",
	
	/********************************************************************************/
	/*                                    RollOver                                  */
	/********************************************************************************/
	NULL,                       //9
	"fun [Chn ObjContainer ObjNode [I I] I I AlphaBitmap] CompRollOver",
	"fun [CompRollOver] I",
	"fun [CompRollOver] ObjNode",
	"fun [CompRollOver fun [CompRollOver u0 I I I] u1 u0] CompRollOver",
	"fun [CompRollOver fun [CompRollOver u0 I I I] u1 u0] CompRollOver",
	"fun [CompRollOver fun [CompRollOver u0 I I I I] u1 u0] CompRollOver",
	"fun [CompRollOver fun [CompRollOver u0 I I] AlphaBitmap u0] CompRollOver",
	"fun [CompRollOver fun [CompRollOver u0 I I] u1 u0] CompRollOver",

	"I",                        //3
	"I",
	"I",

	/********************************************************************************/
	/*                                    Check                                     */
	/********************************************************************************/
	NULL,                       //12
	"fun [Chn ObjContainer ObjNode [I I] I I AlphaBitmap] CompCheck",
	"fun [CompCheck] I",
	"fun [CompCheck] ObjNode",
	"fun [CompCheck] I",
	"fun [CompCheck I] I",
	"fun [CompCheck fun [CompCheck u0 I I I] u1 u0] CompCheck",
	"fun [CompCheck fun [CompCheck u0 I I I] u1 u0] CompCheck",
	"fun [CompCheck fun [CompCheck u0 I I I I] u1 u0] CompCheck",
	"fun [CompCheck fun [CompCheck u0 I] u1 u0] CompCheck",
	"fun [CompCheck fun [CompCheck u0 I I] AlphaBitmap u0] CompCheck",
	"fun [CompCheck fun [CompCheck u0 I I] u1 u0] CompCheck",

	"I",                        //2
	"I",

	/********************************************************************************/
	/*                                   Text                                       */
	/********************************************************************************/
	NULL,						//13
	"fun [Chn ObjContainer ObjNode [I I] I I I I S ObjFont [I I I I] [I I] [ [I I] I AlphaBitmap [I I I] ] [ [I I] I AlphaBitmap [I I I] ] ] CompText",
	"fun [CompText] I",
	"fun [CompText] ObjNode",
	"fun [CompText S ObjFont [I I I I] I] CompText",
	"fun [CompText S ObjFont [I I I I] I] CompText",
	"fun [CompText] S",
	"fun [CompText I] S",
	"fun [CompText] I",
	"fun [CompText] I",
	"fun [CompText I I] CompText",
	"fun [CompText S] CompText",
	"fun [CompText S] CompText",
	"fun [CompText I] CompText",

	"fun [CompText fun [CompText u0 ] u1 u0] CompText", //4
	"fun [CompText fun [CompText u0 I S] u1 u0 I] CompText",
	"fun [CompText fun [CompSlideBar u0 I I [I I I]] [AlphaBitmap [I I I]] u0 fun [CompSlideBar u1 I I [I I I]] [AlphaBitmap [I I I]] u1] CompText",
	"fun [CompText fun [CompText u0 I I] u1 u0 fun [CompSlideBar u2 I I] u3 u2 fun [CompSlideBar u4 I I] u5 u4] CompText",

	"I",						//12
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	
	"I",						//3
	"I",
	"I",
	
	"I",						//2
	"I",
	
	/********************************************************************************/
	/*                                    SlideBar                                  */
	/********************************************************************************/
	NULL,                        // 12
	"fun [Chn ObjContainer ObjNode [I I] I I AlphaBitmap [I I I] I I I I] CompSlideBar",
	"fun [CompSlideBar] I",
	"fun [CompSlideBar] ObjNode",
	"fun [CompSlideBar I] CompSlideBar",
	"fun [CompSlideBar I] CompSlideBar",
	"fun [CompSlideBar I] CompSlideBar",
	"fun [CompSlideBar I] CompSlideBar",
	"fun [CompSlideBar fun [CompSlideBar u0 I] u1 u0] CompSlideBar",
	"fun [CompSlideBar [I I]] CompSlideBar",
	"fun [CompSlideBar fun [CompSlideBar u0 I I [I I I]] [AlphaBitmap [I I I]] u0] CompSlideBar",
	"fun [CompSlideBar fun [CompSlideBar u0 I I] u1 u0] CompSlideBar",

	"I",                 // 6
	"I",
	"I",
	"I",
	"I",
	"I",
	
	/********************************************************************************/
	/*                                      List                                    */
	/********************************************************************************/
	NULL,        // 23
	"fun [Chn ObjContainer ObjNode [I I] I I I I I I ObjFont I [I I I I] [I I] [[I I] I AlphaBitmap [I I I]]] CompList",
	"fun [CompList] I",
	"fun [CompList] ObjNode",
	"fun [CompList fun [CompList u0 I] u1 u0] CompList",
    "fun [CompList fun [CompList u0 I I I] u1 u0] CompList",
	"fun [CompList fun [CompList u0 I] u1 u0] CompList",
    "fun [CompList fun [CompList u0 I] u1 u0] CompList",
	"fun [CompList fun [CompSlideBar u0 I I [I I I]] [AlphaBitmap [I I I]] u0] CompList",
	"fun [CompList fun [CompList u0 I I] u1 u0 fun [CompSlideBar u2 I I] u3 u2] CompList",

	"fun [CompList I] CompList",
	"fun [CompList S] CompList",
	"fun [CompList I [S AlphaBitmap]] CompList",
	"fun [CompList I] CompList",
	"fun [CompList I [S AlphaBitmap]] CompList",
	"fun [CompList S] CompList",
	"fun [CompList S [S AlphaBitmap]] CompList",
	"fun [CompList S] I",
	"fun [CompList] I",
	"fun [CompList] CompList",
	"fun [CompList I] [S AlphaBitmap]",
	"fun [CompList] [I [S AlphaBitmap]]",
	"fun [CompList I] CompList",
	"fun [CompList S] CompList",

	"I",   // 11
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",


	/********************************************************************************/
	/*                                     Combo                                    */
	/********************************************************************************/
	NULL, // 19
	"fun [Chn ObjContainer ObjNode [I I] I I I I ObjFont [I I I I] [I I] [I AlphaBitmap] [I I I AlphaBitmap] [I AlphaBitmap [I I I]]] CompCombo",
	"fun [CompCombo] I",
	"fun [CompCombo] ObjNode",
	"fun [CompCombo I [S AlphaBitmap]] CompCombo",
	"fun [CompCombo I] CompCombo",
	"fun [CompCombo S] CompCombo",
	"fun [CompCombo] CompCombo",
	"fun [CompCombo] I",
	"fun [CompCombo I] [S AlphaBitmap]",
	"fun [CompCombo I [S AlphaBitmap]] CompCombo",
	"fun [CompCombo S [S AlphaBitmap]] CompCombo",
	"fun [CompCombo S] I",
	"fun [CompCombo] [I [S AlphaBitmap]]",
	"fun [CompCombo I] CompCombo",
	"fun [CompCombo S] CompCombo",
	"fun [CompCombo I] CompCombo",
	"fun [CompCombo fun [CompCombo u0 I] u1 u0] CompCombo",
	"fun [CompCombo fun [CompCheck u0 I I] AlphaBitmap u0 fun [CompBitmap u1 I I [I I I I]] [AlphaBitmap [I I I I]] u1 fun [CompSlideBar u2 I I [I I I]] [AlphaBitmap [I I I]] u2 ] CompCombo",
	"fun [CompCombo fun [CompText u0 I I] u1 u0 fun [CompCheck u2 I I] u3 u2 fun [CompBitmap u4 I I] u5 u4 fun [CompList u6 I I] u7 u6 fun [CompSlideBar u8 I I] u9 u8] CompCombo",

	"I",   // 2
	"I",

	/********************************************************************************/
	/*                                     Tree                                     */
	/********************************************************************************/
	NULL, // 24
	"fun [Chn ObjContainer ObjNode [I I] I I I I I I ObjFont I I [I I I I] [I I] [[I I] I AlphaBitmap [I I I]] [[I I] I AlphaBitmap [I I I]] AlphaBitmap] CompTree",
	"fun [CompTree] I",
	"fun [CompTree] ObjNode",
	"fun [CompTree [I r1] [S AlphaBitmap]] CompTree",
	"fun [CompTree [I r1]] CompTree",
	"fun [CompTree S I] CompTree",
	"fun [CompTree] CompTree",
	"fun [CompTree [I r1]] I",
	"fun [CompTree [I r1]] [S AlphaBitmap]",
	"fun [CompTree [I r1] [S AlphaBitmap]] CompTree",
	"fun [CompTree S I [S AlphaBitmap]] CompTree",
	"fun [CompTree [I r1]] CompTree",
	"fun [CompTree S I] CompTree",
	"fun [CompTree [I r1]] I",
	"fun [CompTree [I r1] I] CompTree",
	"fun [CompTree] [[I r1] [S AlphaBitmap]]",
	"fun [CompTree [I r1]] CompTree",
	"fun [CompTree S I] CompTree",
	"fun [CompTree [I r1] S I] [I r1]",
	"fun [CompTree fun [CompTree u0 [I r1] I I] u1 u0] CompTree",
	"fun [CompTree fun [CompTree u0 [I r1] I I] u1 u0] CompTree",
	"fun [CompTree fun [CompTree u0 [I r1] I] u1 u0] CompTree",
	"fun [CompTree fun [CompSlideBar u0 I I [I I I]] [AlphaBitmap [I I I]] u0 fun [CompSlideBar u1 I I [I I I]] [AlphaBitmap [I I I]] u1] CompTree",
	"fun [CompTree fun [CompTree u0 I I] u1 u0 fun [CompSlideBar u2 I I] u3 u2 fun [CompSlideBar u4 I I] u5 u4] CompTree",

	"I",   // 8
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",
	"I",

	/********************************************************************************/
	/*                                  SizeBar                                     */
	/********************************************************************************/
	NULL,				//8
	"fun [Chn ObjContainer ObjNode [I I] I I I AlphaBitmap] CompSizeBar",
	"fun [CompSizeBar] I",
	"fun [CompSizeBar I I] CompSizeBar",
	"fun [CompSizeBar] ObjNode",
	"fun [CompSizeBar fun [CompSizeBar u0 I I] u1 u0] CompSizeBar",
	"fun [CompSizeBar fun [CompSizeBar u0 I I] AlphaBitmap u0] CompSizeBar",
	"fun [CompSizeBar fun [CompSizeBar u0 I I] u1 u0] CompSizeBar",

	"I",				//3
	"I",
	"I",
	
	/********************************************************************************/
	/*                                      Link                                    */
	/********************************************************************************/

	"fun [ObjNode ObjNode I] I",      // 2
	"fun [ObjNode ObjNode I] I",

	"I",         // 3
	"I",
	"I"
};




/***********************************************************************************/
/*              FONCTION DE CHARGEMENT ET DECHARGEMENT DE LA LIBRAIRIE             */
/***********************************************************************************/
extern "C" __declspec (dllexport) int SCOLloadLIB2D(mmachine m,cbmachine w)
{
    int k;
	ww=w;
	mm=m;

	InitContainer(hinst=(HINSTANCE)SCgetExtra("this_inst"));

	mt_start=(int (__cdecl *)(int,int,int (__cdecl *)(int,int)))SCgetExtra("mt_start");
	mt_del=(int (__cdecl *)(int))SCgetExtra("mt_del");

	OBJCONTAINER=OBJregister(NB_RFLCONTAINER,0,DsContainer2,"OBJCONTAINER");
	OBJNODE     =OBJregister(NB_RFLOBJNODE,1,DsNode2,"OBJNODE");
#ifdef _DEBUG

	k=PKhardpak(m,"lib2d.pkg-1.7.1-debug",NLIB2DPKG,mLIB2Dname,mLIB2Dfun,mLIB2Dnarg,mLIB2Dtype);
#else

	k=PKhardpak(m,"lib2d.pkg-1.7.1",NLIB2DPKG,mLIB2Dname,mLIB2Dfun,mLIB2Dnarg,mLIB2Dtype);

#endif

#ifdef HTML_INCLUDE

	OBJTYPHTML=OBJregister(RFLHTML_NB,0,DestroyHtmlH,"OBJTYPHTML");
	k=PKhardpak(m,"libHTML.pkg 1.0a2release",NHTMLPKG,mHTMLname,mHTMLfun,mHTMLnarg,mHTMLtype);	

#endif
	return k;
}

extern "C" __declspec (dllexport) int SCOLfreeLIB2D()
{
	UnLoadContainer();
	return 0;
}


