#include <stdio.h>
#include <X11/StringDefs.h>
#include <X11/Intrinsic.h>
#include <Xm/Xm.h>
#include "xdsObject.h"


Boolean
xdsCvtSetListError( n)
	int n;
{
	static bool_f call = (bool_f)0;

	if (!call) {
		call = (bool_f) xdsGetAnyFunction(XDSNsetListErrorFunction);
		if (call == (bool_f)0)
			return False;
	}
	return (*call) ( n);
}

int
xdsCvtListFailure()
{
	static int_f call = (int_f)0;

	if (!call) {
		call = (int_f) xdsGetAnyFunction(XDSNlistFailureFunction);
		if (call == (int_f)0)
			return 0;
	}
	return (*call) ();
}


Boolean
xdsCvtGetXmListEntries( widget, listp, countp)
	Widget widget;
	XmString ** listp;
	int       * countp;
{
	static bool_f call = (bool_f)0;

	if (!call) {
		call = (bool_f) xdsGetAnyFunction(XDSNgetXmListEntriesFunction);
		if (call == (bool_f)0)
			return False;
	}
	return (*call) ( widget, listp, countp);
}

int
xdsCvtSetListItem( widget, pos)
	Widget widget;
	int pos;
{
	static int_f call = (int_f)0;

	if (!call) {
		call = (int_f) xdsGetAnyFunction(XDSNsetListItemFunction);
		if (call == (int_f)0)
			return 0;
	}
	return (*call) ( widget, pos);
}

int
xdsCvtIsInList( widget, name)
	Widget widget;
	char * name;
{
	static int_f call = (int_f)0;

	if (!call) {
		call = (int_f) xdsGetAnyFunction(XDSNisInListFunction);
		if (call == (int_f)0)
			return 0;
	}
	return (*call) ( widget, name);
}

char *
xdsCvtXmStringToString( xmstring)
	XmString xmstring;
{
	static str_f call = (str_f)0;

	if (!call) {
		call = (str_f) xdsGetAnyFunction(XDSNxmStringToStringFunction);
		if (call == (str_f)0)
			return 0;
	}
	return (*call) ( xmstring);
}
