/****************************************************************************
- * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2016,2018 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include "form.priv.h"
-MODULE_ID("$Id: fld_ftchoice.c,v 1.9 2004/12/11 21:44:57 tom Exp $")
+MODULE_ID("$Id: fld_ftchoice.c,v 1.15 2018/12/16 00:14:26 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnform
bool (*const next_choice) (FIELD *, const void *),
bool (*const prev_choice) (FIELD *, const void *))
{
- T((T_CALLED("set_fieldtype_choice(%p,%p,%p)"), typ, next_choice, prev_choice));
+ TR_FUNC_BFR(2);
+
+ T((T_CALLED("set_fieldtype_choice(%p,%s,%s)"),
+ (void *)typ,
+ TR_FUNC_ARG(0, next_choice),
+ TR_FUNC_ARG(1, prev_choice)));
if (!typ || !next_choice || !prev_choice)
RETURN(E_BAD_ARGUMENT);
- typ->status |= _HAS_CHOICE;
+ SetStatus(typ, _HAS_CHOICE);
+#if NCURSES_INTEROP_FUNCS
+ typ->enum_next.onext = next_choice;
+ typ->enum_prev.oprev = prev_choice;
+#else
typ->next = next_choice;
typ->prev = prev_choice;
+#endif
RETURN(E_OK);
}