Files
cdesktop/cde/programs/dtappbuilder/src/libABil/bil.c
Pascal Stumpf 1177e21080 WIP to make dtbuilder work on 64bit.
Fixes many, though not all 64bit-warnings.  In lots of places, pointers are
cast to ints to be then used as array subscripts.  The only way to deal with
this is to change them to long.  Additionally, use calloc() to allocate the
int_array in istr.c and drop the (wrong) macro patch to istr.h.  Should make
dtbuilder work on 32bit again.
2012-08-13 19:42:44 -06:00

2621 lines
75 KiB
C

/*
* CDE - Common Desktop Environment
*
* Copyright (c) 1993-2012, The Open Group. All rights reserved.
*
* These libraries and programs are free software; you can
* redistribute them and/or modify them under the terms of the GNU
* Lesser General Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at your option)
* any later version.
*
* These libraries and programs are distributed in the hope that
* they will be useful, but WITHOUT ANY WARRANTY; without even the
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with these librararies and programs; if not, write
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
* Floor, Boston, MA 02110-1301 USA
*/
/*
* $XConsortium: bil.c /main/3 1995/11/06 18:22:40 rswiston $
*
* @(#)bil.c 1.87 22 May 1995
*
* RESTRICTED CONFIDENTIAL INFORMATION:
*
* The information in this document is subject to special restrictions in a
* confidential disclosure agreement between HP, IBM, Sun, USL, SCO and
* Univel. Do not distribute this document outside HP, IBM, Sun, USL, SCO,
* or Univel without Sun's specific written approval. This document and all
* copies and derivative works thereof must be returned or destroyed at Sun's
* request.
*
* Copyright 1993 Sun Microsystems, Inc. All rights reserved.
*
*/
/************************************************************
* *
* bil.c - BIL conversion routines *
* *
************************************************************/
#include <string.h>
/*
* #include "loadP.h"
*/
#include <ab_private/istr.h>
#include "bilP.h"
/*************************************************************************
**
**
** Function Definitions
**
**
**
**************************************************************************/
/*
BIL_TOKEN
bilP_menu_type_to_token(AB_MENU_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_MENU_PULLDOWN: token = AB_BIL_PULLDOWN;
break;
case AB_MENU_POPUP: token = AB_BIL_POPUP;
break;
case AB_MENU_OPTION: token = AB_BIL_OPTION;
break;
}
return (token);
}
AB_MENU_TYPE
bilP_token_to_menu_type(int token)
{
AB_MENU_TYPE obj_type = AB_MENU_UNDEF;
switch (token)
{
case AB_BIL_PULLDOWN: obj_type = AB_MENU_PULLDOWN;
break;
case AB_BIL_POPUP: obj_type = AB_MENU_POPUP;
break;
case AB_BIL_OPTION: obj_type = AB_MENU_OPTION;
break;
}
return (obj_type);
}
*/
BIL_TOKEN
bilP_packing_to_token(AB_PACKING type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_PACK_NONE: token = AB_BIL_NONE;
break;
case AB_PACK_TIGHT: token = AB_BIL_TIGHT;
break;
case AB_PACK_EQUAL: token = AB_BIL_EQUAL;
break;
}
return (token);
}
AB_PACKING
bilP_token_to_packing(int type)
{
AB_PACKING obj_type = AB_PACK_UNDEF;
switch (type)
{
case AB_BIL_NONE: obj_type = AB_PACK_NONE;
break;
case AB_BIL_TIGHT: obj_type = AB_PACK_TIGHT;
break;
case AB_BIL_EQUAL: obj_type = AB_PACK_EQUAL;
break;
}
return (obj_type);
}
BIL_TOKEN
bilP_container_type_to_token(AB_CONTAINER_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_CONT_BUTTON_PANEL: token = AB_BIL_BUTTON_PANEL;
break;
case AB_CONT_ABSOLUTE: token = AB_BIL_ABSOLUTE;
break;
case AB_CONT_FOOTER: token = AB_BIL_FOOTER;
break;
case AB_CONT_GROUP: token = AB_BIL_GROUP;
break;
case AB_CONT_MAIN_WINDOW: token = AB_BIL_MAIN_WINDOW;
break;
case AB_CONT_MENU_BAR: token = AB_BIL_MENU_BAR;
break;
case AB_CONT_PANED: token = AB_BIL_PANED;
break;
case AB_CONT_RELATIVE: token = AB_BIL_RELATIVE;
break;
case AB_CONT_SCROLLED_WINDOW: token = AB_BIL_SCROLLED_WINDOW;
break;
case AB_CONT_ROW_COLUMN: token = AB_BIL_ROW_COLUMN;
break;
case AB_CONT_TOOL_BAR: token = AB_BIL_TOOL_BAR;
default:
break;
}
return (token);
}
AB_CONTAINER_TYPE
bilP_token_to_container_type(int type)
{
AB_CONTAINER_TYPE obj_type = AB_CONT_UNDEF;
switch (type)
{
case AB_BIL_BUTTON_PANEL:
case AB_BIL_ACTIVATED: obj_type = AB_CONT_BUTTON_PANEL;
break;
case AB_BIL_ABSOLUTE: obj_type = AB_CONT_ABSOLUTE;
break;
case AB_BIL_FOOTER: obj_type = AB_CONT_FOOTER;
break;
case AB_BIL_GROUP: obj_type = AB_CONT_GROUP;
break;
case AB_BIL_MAIN_WINDOW: obj_type = AB_CONT_MAIN_WINDOW;
break;
case AB_BIL_MENU_BAR: obj_type = AB_CONT_MENU_BAR;
break;
case AB_BIL_PANED: obj_type = AB_CONT_PANED;
break;
case AB_BIL_RELATIVE: obj_type = AB_CONT_RELATIVE;
break;
case AB_BIL_SCROLLED_WINDOW: obj_type = AB_CONT_SCROLLED_WINDOW;
break;
case AB_BIL_ROW_COLUMN: obj_type = AB_CONT_ROW_COLUMN;
break;
case AB_BIL_TOOL_BAR: obj_type = AB_CONT_TOOL_BAR;
break;
}
return (obj_type);
}
BIL_TOKEN
bilP_item_type_to_token(AB_ITEM_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_ITEM_FOR_CHOICE: token = AB_BIL_ITEM_FOR_CHOICE;
break;
case AB_ITEM_FOR_COMBO_BOX: token = AB_BIL_ITEM_FOR_COMBO_BOX;
break;
case AB_ITEM_FOR_LIST: token = AB_BIL_ITEM_FOR_LIST;
break;
case AB_ITEM_FOR_MENU: token = AB_BIL_ITEM_FOR_MENU;
break;
case AB_ITEM_FOR_MENUBAR: token = AB_BIL_ITEM_FOR_MENUBAR;
break;
case AB_ITEM_FOR_SPIN_BOX: token = AB_BIL_ITEM_FOR_SPIN_BOX;
break;
}
return (token);
}
AB_ITEM_TYPE
bilP_token_to_item_type(int type)
{
AB_ITEM_TYPE obj_type = AB_ITEM_FOR_UNDEF;
switch (type)
{
case AB_BIL_ITEM_FOR_CHOICE: obj_type = AB_ITEM_FOR_CHOICE;
break;
case AB_BIL_ITEM_FOR_COMBO_BOX: obj_type = AB_ITEM_FOR_COMBO_BOX;
break;
case AB_BIL_ITEM_FOR_LIST: obj_type = AB_ITEM_FOR_LIST;
break;
case AB_BIL_ITEM_FOR_MENU: obj_type = AB_ITEM_FOR_MENU;
break;
case AB_BIL_ITEM_FOR_MENUBAR: obj_type = AB_ITEM_FOR_MENUBAR;
break;
case AB_BIL_ITEM_FOR_SPIN_BOX: obj_type = AB_ITEM_FOR_SPIN_BOX;
break;
}
return (obj_type);
}
BIL_TOKEN
bilP_label_style_to_token(AB_LABEL_STYLE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_STYLE_NORMAL: token = AB_BIL_STYLE_NORMAL;
break;
case AB_STYLE_BOLD: token = AB_BIL_STYLE_BOLD;
break;
case AB_STYLE_3D: token = AB_BIL_STYLE_3D;
break;
default:
break;
}
return (token);
}
AB_LABEL_STYLE
bilP_token_to_label_style(int type)
{
AB_LABEL_STYLE obj_type;
switch (type)
{
case AB_BIL_STYLE_NORMAL: obj_type = AB_STYLE_NORMAL;
break;
case AB_BIL_STYLE_BOLD: obj_type = AB_STYLE_BOLD;
break;
case AB_BIL_STYLE_3D: obj_type = AB_STYLE_3D;
break;
}
return (obj_type);
}
BIL_TOKEN
bilP_attachment_to_token(AB_ATTACH_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_ATTACH_POINT: token = AB_BIL_ATTACH_POINT;
break;
case AB_ATTACH_OBJ: token = AB_BIL_ATTACH_OBJ;
break;
case AB_ATTACH_ALIGN_OBJ_EDGE: token = AB_BIL_ATTACH_ALIGN_OBJ_EDGE;
break;
case AB_ATTACH_GRIDLINE: token = AB_BIL_ATTACH_GRIDLINE;
break;
case AB_ATTACH_CENTER_GRIDLINE: token = AB_BIL_ATTACH_CENTER_GRIDLINE;
break;
case AB_ATTACH_NONE: token = AB_BIL_NONE;
break;
}
return (token);
}
AB_ATTACH_TYPE
bilP_token_to_attachment(int type)
{
AB_ATTACH_TYPE obj_type = AB_ATTACH_UNDEF;
switch (type)
{
case AB_BIL_ATTACH_POINT: obj_type = AB_ATTACH_POINT;
break;
case AB_BIL_ATTACH_OBJ: obj_type = AB_ATTACH_OBJ;
break;
case AB_BIL_ATTACH_ALIGN_OBJ_EDGE:
obj_type = AB_ATTACH_ALIGN_OBJ_EDGE;
break;
case AB_BIL_ATTACH_GRIDLINE: obj_type = AB_ATTACH_GRIDLINE;
break;
case AB_BIL_ATTACH_CENTER_GRIDLINE: obj_type = AB_ATTACH_CENTER_GRIDLINE;
break;
case AB_BIL_NONE: obj_type = AB_ATTACH_NONE;
break;
}
return (obj_type);
}
BIL_TOKEN
bilP_direction_to_token(AB_DIRECTION dir)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (dir)
{
case AB_DIR_LEFT_TO_RIGHT: token = AB_BIL_LEFT_TO_RIGHT;
break;
case AB_DIR_RIGHT_TO_LEFT: token = AB_BIL_RIGHT_TO_LEFT;
break;
case AB_DIR_TOP_TO_BOTTOM: token = AB_BIL_TOP_TO_BOTTOM;
break;
case AB_DIR_BOTTOM_TO_TOP: token = AB_BIL_BOTTOM_TO_TOP;
break;
}
return (token);
}
AB_DIRECTION
bilP_token_to_direction(int type)
{
AB_DIRECTION dir = AB_DIR_UNDEF;
switch (type)
{
case AB_BIL_LEFT_TO_RIGHT: dir = AB_DIR_LEFT_TO_RIGHT;
break;
case AB_BIL_RIGHT_TO_LEFT: dir = AB_DIR_RIGHT_TO_LEFT;
break;
case AB_BIL_TOP_TO_BOTTOM: dir = AB_DIR_TOP_TO_BOTTOM;
break;
case AB_BIL_BOTTOM_TO_TOP: dir = AB_DIR_BOTTOM_TO_TOP;
break;
}
return (dir);
}
AB_FUNC_TYPE
bilP_token_to_func_type(int type)
{
AB_FUNC_TYPE obj_type = AB_FUNC_UNDEF;
switch (type)
{
case AB_BIL_BUILTIN: obj_type = AB_FUNC_BUILTIN;
break;
case AB_BIL_CALL_FUNCTION: obj_type = AB_FUNC_USER_DEF;
break;
case AB_BIL_EXECUTE_CODE: obj_type = AB_FUNC_CODE_FRAG;
break;
case AB_BIL_ACCESS_HELP_VOLUME: obj_type = AB_FUNC_HELP_VOLUME;
break;
case AB_BIL_ON_ITEM_HELP: obj_type = AB_FUNC_ON_ITEM_HELP;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_func_type_to_token(AB_FUNC_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_FUNC_BUILTIN: token = AB_BIL_BUILTIN;
break;
case AB_FUNC_USER_DEF: token = AB_BIL_CALL_FUNCTION;
break;
case AB_FUNC_CODE_FRAG: token = AB_BIL_EXECUTE_CODE;
break;
case AB_FUNC_ON_ITEM_HELP: token = AB_BIL_ON_ITEM_HELP;
break;
case AB_FUNC_HELP_VOLUME: token = AB_BIL_ACCESS_HELP_VOLUME;
break;
}
return token;
}
BOOL
bilP_token_to_bool(BIL_TOKEN token)
{
BOOL boolVal = FALSE;
switch (token)
{
case AB_BIL_FALSE: boolVal = FALSE;
break;
case AB_BIL_TRUE: boolVal = TRUE;
break;
}
return boolVal;
}
BIL_TOKEN
bilP_bool_to_token(BOOL boolVal)
{
return (boolVal ? AB_BIL_TRUE : AB_BIL_FALSE);
}
AB_BUILTIN_ACTION
bilP_token_to_builtin_action(int type)
{ /* REMIND: will need to add more */
AB_BUILTIN_ACTION obj_type = AB_STDACT_UNDEF;
switch (type)
{
case AB_BIL_DISABLE: obj_type = AB_STDACT_DISABLE;
break;
case AB_BIL_ENABLE: obj_type = AB_STDACT_ENABLE;
break;
case AB_BIL_HIDE: obj_type = AB_STDACT_HIDE;
break;
case AB_BIL_SET_LABEL: obj_type = AB_STDACT_SET_LABEL;
break;
case AB_BIL_SET_TEXT: obj_type = AB_STDACT_SET_TEXT;
break;
case AB_BIL_SET_VALUE: obj_type = AB_STDACT_SET_VALUE;
break;
case AB_BIL_SHOW: obj_type = AB_STDACT_SHOW;
break;
case AB_BIL_UNDEF:
case AB_BIL_UNDEF_KEYWORD:
obj_type = AB_STDACT_UNDEF;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_builtin_action_to_token(AB_BUILTIN_ACTION action)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (action)
{
case AB_STDACT_DISABLE: token = AB_BIL_DISABLE;
break;
case AB_STDACT_ENABLE: token = AB_BIL_ENABLE;
break;
case AB_STDACT_HIDE: token = AB_BIL_HIDE;
break;
case AB_STDACT_SET_LABEL: token = AB_BIL_SET_LABEL;
break;
case AB_STDACT_SET_TEXT: token = AB_BIL_SET_TEXT;
break;
case AB_STDACT_SET_VALUE: token = AB_BIL_SET_VALUE;
break;
case AB_STDACT_SHOW: token = AB_BIL_SHOW;
break;
case AB_STDACT_UNDEF: token = AB_BIL_UNDEF_KEYWORD;
}
return token;
}
AB_COMPASS_POINT
bilP_token_to_compass_point(int type)
{
AB_COMPASS_POINT obj_type = AB_CP_UNDEF;
switch (type)
{
case AB_BIL_UNDEF:
case AB_BIL_UNDEF_KEYWORD: obj_type = AB_CP_UNDEF;
break;
case AB_BIL_NORTH: obj_type = AB_CP_NORTH;
break;
case AB_BIL_NORTHEAST: obj_type = AB_CP_NORTHEAST;
break;
case AB_BIL_EAST: obj_type = AB_CP_EAST;
break;
case AB_BIL_SOUTHEAST: obj_type = AB_CP_SOUTHEAST;
break;
case AB_BIL_SOUTH: obj_type = AB_CP_SOUTH;
break;
case AB_BIL_SOUTHWEST: obj_type = AB_CP_SOUTHWEST;
break;
case AB_BIL_WEST: obj_type = AB_CP_WEST;
break;
case AB_BIL_NORTHWEST: obj_type = AB_CP_NORTHWEST;
break;
case AB_BIL_CENTER: obj_type = AB_CP_CENTER;
break;
default:
break;
}
return obj_type;
}
BIL_TOKEN
bilP_compass_point_to_token(AB_COMPASS_POINT cp)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (cp)
{
case AB_CP_UNDEF: token = AB_BIL_UNDEF_KEYWORD;
break;
case AB_CP_NORTH: token = AB_BIL_NORTH;
break;
case AB_CP_NORTHEAST: token = AB_BIL_NORTHEAST;
break;
case AB_CP_EAST: token = AB_BIL_EAST;
break;
case AB_CP_SOUTHEAST: token = AB_BIL_SOUTHEAST;
break;
case AB_CP_SOUTH: token = AB_BIL_SOUTH;
break;
case AB_CP_SOUTHWEST: token = AB_BIL_SOUTHWEST;
break;
case AB_CP_WEST: token = AB_BIL_WEST;
break;
case AB_CP_NORTHWEST: token = AB_BIL_NORTHWEST;
break;
case AB_CP_CENTER: token = AB_BIL_CENTER;
break;
default:
break;
}
return token;
}
ABDndOpFlags
bilP_token_to_dnd_op_flag(BIL_TOKEN token)
{
ABDndOpFlags flag = 0;
switch (token)
{
case AB_BIL_COPY: flag = ABDndOpCopy; break;
case AB_BIL_MOVE: flag = ABDndOpMove; break;
case AB_BIL_LINK: flag = ABDndOpLink; break;
}
return flag;
}
BIL_TOKEN
bilP_dnd_op_flag_to_token(BYTE opFlag)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (opFlag)
{
case ABDndOpCopy: token = AB_BIL_COPY; break;
case ABDndOpLink: token = AB_BIL_LINK; break;
case ABDndOpMove: token = AB_BIL_MOVE; break;
}
return token;
}
ABDndTypeFlags
bilP_token_to_dnd_type_flag(BIL_TOKEN token)
{
ABDndTypeFlags typeFlag = 0;
switch (token)
{
case AB_BIL_ANY: typeFlag = ABDndTypeAny; break;
case AB_BIL_FILENAME: typeFlag = ABDndTypeFilename; break;
case AB_BIL_TEXT: typeFlag = ABDndTypeText; break;
case AB_BIL_USER_DEF: typeFlag = ABDndTypeUserDef; break;
}
return typeFlag;
}
BIL_TOKEN
bilP_dnd_type_flag_to_token(BYTE typeFlag)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (typeFlag)
{
case ABDndTypeAny: token = AB_BIL_ANY; break;
case ABDndTypeFilename: token = AB_BIL_FILENAME; break;
case ABDndTypeText: token = AB_BIL_TEXT; break;
case ABDndTypeUserDef: token = AB_BIL_USER_DEF; break;
}
return token;
}
AB_CHOICE_TYPE
bilP_token_to_choice_type(int type)
{
AB_CHOICE_TYPE obj_type = AB_CHOICE_UNDEF;
switch (type)
{
case AB_BIL_EXCLUSIVE: obj_type = AB_CHOICE_EXCLUSIVE;
break;
case AB_BIL_NONEXCLUSIVE: obj_type = AB_CHOICE_NONEXCLUSIVE;
break;
case AB_BIL_OPTION_MENU: obj_type = AB_CHOICE_OPTION_MENU;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_choice_type_to_token(AB_CHOICE_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_CHOICE_EXCLUSIVE: token = AB_BIL_EXCLUSIVE;
break;
case AB_CHOICE_NONEXCLUSIVE: token = AB_BIL_NONEXCLUSIVE;
break;
case AB_CHOICE_OPTION_MENU: token = AB_BIL_OPTION_MENU;
break;
}
return token;
}
AB_ORIENTATION
bilP_token_to_orientation(int type)
{
AB_ORIENTATION obj_type = AB_ORIENT_UNDEF;
switch (type)
{
case AB_BIL_HORIZONTAL: obj_type = AB_ORIENT_HORIZONTAL;
break;
case AB_BIL_VERTICAL: obj_type = AB_ORIENT_VERTICAL;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_orientation_to_token(AB_ORIENTATION orientation)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (orientation)
{
case AB_ORIENT_UNDEF: token = AB_BIL_UNDEF_KEYWORD;
break;
case AB_ORIENT_HORIZONTAL: token = AB_BIL_HORIZONTAL;
break;
case AB_ORIENT_VERTICAL: token = AB_BIL_VERTICAL;
break;
}
return token;
}
AB_ARG_CLASS
bilP_token_to_arg_class(int token)
{
AB_ARG_CLASS argClass = AB_ARG_CLASS_UNDEF;
switch (token)
{
case AB_BIL_COLOR: argClass = AB_ARG_CLASS_COLOR;
break;
case AB_BIL_GEOMETRY: argClass = AB_ARG_CLASS_GEOMETRY;
break;
case AB_BIL_GLYPH: argClass = AB_ARG_CLASS_GLYPH;
break;
case AB_BIL_LABEL_STRING: argClass = AB_ARG_CLASS_NON_GLYPH_LABEL;
break;
case AB_BIL_OTHER: argClass = AB_ARG_CLASS_OTHER;
break;
case AB_BIL_OTHER_STRING: argClass = AB_ARG_CLASS_OTHER_STRING;
break;
case AB_BIL_VALUE: argClass = AB_ARG_CLASS_VALUE;
break;
}
return argClass;
}
BIL_TOKEN
bilP_arg_class_to_token(AB_ARG_CLASS argClass)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (argClass)
{
case AB_ARG_CLASS_COLOR: token = AB_BIL_COLOR;
break;
case AB_ARG_CLASS_GEOMETRY: token = AB_BIL_GEOMETRY;
break;
case AB_ARG_CLASS_GLYPH: token = AB_BIL_GLYPH;
break;
case AB_ARG_CLASS_NON_GLYPH_LABEL: token = AB_BIL_LABEL_STRING;
break;
case AB_ARG_CLASS_OTHER: token = AB_BIL_OTHER;
break;
case AB_ARG_CLASS_OTHER_STRING: token = AB_BIL_OTHER_STRING;
break;
case AB_ARG_CLASS_VALUE: token = AB_BIL_VALUE;
break;
}
return token;
}
AB_ARG_TYPE
bilP_token_to_arg_type(int type)
{
AB_ARG_TYPE obj_type = AB_ARG_UNDEF;
switch (type)
{
case AB_BIL_INT: obj_type = AB_ARG_INT;
break;
case AB_BIL_FLOAT: obj_type = AB_ARG_FLOAT;
break;
case AB_BIL_STRING: obj_type = AB_ARG_STRING;
break;
case AB_BIL_VOID: obj_type = AB_ARG_VOID_PTR;
break;
case AB_BIL_BOOLEAN: obj_type = AB_ARG_BOOLEAN;
break;
case AB_BIL_CALLBACK: obj_type = AB_ARG_CALLBACK;
break;
case AB_BIL_LITERAL: obj_type = AB_ARG_LITERAL;
break;
case AB_BIL_XMSTRING: obj_type = AB_ARG_XMSTRING;
break;
case AB_BIL_XMSTRING_TBL: obj_type = AB_ARG_XMSTRING_TBL;
break;
case AB_BIL_PIXEL: obj_type = AB_ARG_PIXEL;
break;
case AB_BIL_PIXMAP: obj_type = AB_ARG_PIXMAP;
break;
case AB_BIL_FONT: obj_type = AB_ARG_FONT;
break;
case AB_BIL_WIDGET: obj_type = AB_ARG_WIDGET;
break;
case AB_BIL_UNDEF_KEYWORD: case AB_BIL_UNDEF: obj_type = AB_ARG_UNDEF;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_arg_type_to_token(AB_ARG_TYPE arg_type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (arg_type)
{
case AB_ARG_BOOLEAN: token = AB_BIL_BOOLEAN;
break;
case AB_ARG_CALLBACK: token = AB_BIL_CALLBACK;
break;
case AB_ARG_FLOAT: token = AB_BIL_FLOAT;
break;
case AB_ARG_INT: token = AB_BIL_INT;
break;
case AB_ARG_LITERAL: token = AB_BIL_LITERAL;
break;
case AB_ARG_STRING: token = AB_BIL_STRING;
break;
case AB_ARG_XMSTRING: token = AB_BIL_XMSTRING;
break;
case AB_ARG_XMSTRING_TBL: token = AB_BIL_XMSTRING_TBL;
break;
case AB_ARG_PIXEL: token = AB_BIL_PIXEL;
break;
case AB_ARG_PIXMAP: token = AB_BIL_PIXMAP;
break;
case AB_ARG_FONT: token = AB_BIL_FONT;
break;
case AB_ARG_WIDGET: token = AB_BIL_WIDGET;
break;
case AB_ARG_VOID_PTR: token = AB_BIL_VOID;
break;
case AB_ARG_UNDEF: token = AB_BIL_UNDEF_KEYWORD;
break;
}
return token;
}
AB_TEXT_TYPE
bilP_token_to_text_type(int type)
{
AB_TEXT_TYPE obj_type = AB_TEXT_UNDEF;
switch (type)
{
case AB_BIL_ALPHANUMERIC: obj_type = AB_TEXT_ALPHANUMERIC;
break;
case AB_BIL_NUMERIC: obj_type = AB_TEXT_NUMERIC;
break;
case AB_BIL_DEFINED_STRING: obj_type = AB_TEXT_DEFINED_STRING;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_text_type_to_token(AB_TEXT_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_TEXT_ALPHANUMERIC: token = AB_BIL_ALPHANUMERIC;
break;
case AB_TEXT_NUMERIC: token = AB_BIL_NUMERIC;
break;
case AB_TEXT_DEFINED_STRING: token = AB_BIL_DEFINED_STRING;
break;
}
return token;
}
AB_BUTTON_TYPE
bilP_token_to_button_type(int type)
{
AB_BUTTON_TYPE obj_type = AB_BUT_UNDEF;
switch (type)
{
case AB_BIL_PUSH_BUTTON: obj_type = AB_BUT_PUSH;
break;
case AB_BIL_DRAWN_BUTTON: obj_type = AB_BUT_DRAWN;
break;
case AB_BIL_MENU_BUTTON: obj_type = AB_BUT_MENU;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_button_type_to_token(AB_BUTTON_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_BUT_PUSH: token = AB_BIL_PUSH_BUTTON;
break;
case AB_BUT_DRAWN: token = AB_BIL_DRAWN_BUTTON;
break;
case AB_BUT_MENU: token = AB_BIL_MENU_BUTTON;
break;
}
return token;
}
AB_LABEL_TYPE
bilP_token_to_label_type(int type)
{
AB_LABEL_TYPE obj_type = AB_LABEL_UNDEF;
switch (type)
{
case AB_BIL_ARROW_DOWN: obj_type = AB_LABEL_ARROW_DOWN;
break;
case AB_BIL_ARROW_LEFT: obj_type = AB_LABEL_ARROW_LEFT;
break;
case AB_BIL_ARROW_RIGHT: obj_type = AB_LABEL_ARROW_RIGHT;
break;
case AB_BIL_ARROW_UP: obj_type = AB_LABEL_ARROW_UP;
break;
case AB_BIL_STRING: obj_type = AB_LABEL_STRING;
break;
case AB_BIL_GRAPHIC:
case AB_BIL_ICON: obj_type = AB_LABEL_GLYPH;
break;
case AB_BIL_SEPARATOR: obj_type = AB_LABEL_SEPARATOR;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_label_type_to_token(AB_LABEL_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_LABEL_ARROW_DOWN: token = AB_BIL_ARROW_DOWN;
break;
case AB_LABEL_ARROW_LEFT: token = AB_BIL_ARROW_LEFT;
break;
case AB_LABEL_ARROW_RIGHT: token = AB_BIL_ARROW_RIGHT;
break;
case AB_LABEL_ARROW_UP: token = AB_BIL_ARROW_UP;
break;
case AB_LABEL_STRING: token = AB_BIL_STRING;
break;
case AB_LABEL_GLYPH: token = AB_BIL_GRAPHIC;
break;
case AB_LABEL_SEPARATOR: token = AB_BIL_SEPARATOR;
break;
}
return token;
}
AB_GROUP_TYPE
bilP_token_to_group_type(int type)
{
AB_GROUP_TYPE obj_type = AB_GROUP_UNDEF;
switch (type)
{
case AB_BIL_ROW: obj_type = AB_GROUP_ROWS;
break;
case AB_BIL_COLUMN: obj_type = AB_GROUP_COLUMNS;
break;
case AB_BIL_IGNORE: obj_type = AB_GROUP_IGNORE;
break;
case AB_BIL_ROWSCOLUMNS: obj_type = AB_GROUP_ROWSCOLUMNS;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_group_type_to_token(AB_GROUP_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_GROUP_ROWS:
token = AB_BIL_ROW;
break;
case AB_GROUP_COLUMNS: token = AB_BIL_COLUMN;
break;
case AB_GROUP_IGNORE: token = AB_BIL_IGNORE;
break;
case AB_GROUP_ROWSCOLUMNS: token = AB_BIL_ROWSCOLUMNS;
break;
}
return token;
}
AB_ALIGNMENT
bilP_token_to_alignment(int type)
{
AB_ALIGNMENT obj_type = AB_ALIGN_UNDEF;
switch (type)
{
case AB_BIL_TOP: obj_type = AB_ALIGN_TOP;
break;
case AB_BIL_RIGHT: obj_type = AB_ALIGN_RIGHT;
break;
case AB_BIL_BOTTOM: obj_type = AB_ALIGN_BOTTOM;
break;
case AB_BIL_LEFT: obj_type = AB_ALIGN_LEFT;
break;
case AB_BIL_CENTER: obj_type = AB_ALIGN_CENTER;
break;
case AB_BIL_VCENTER: obj_type = AB_ALIGN_VCENTER;
break;
case AB_BIL_HCENTER: obj_type = AB_ALIGN_HCENTER;
break;
case AB_BIL_LABELS: obj_type = AB_ALIGN_LABELS;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_alignment_to_token(AB_ALIGNMENT align)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (align)
{
case AB_ALIGN_TOP: token = AB_BIL_TOP;
break;
case AB_ALIGN_RIGHT: token = AB_BIL_RIGHT;
break;
case AB_ALIGN_BOTTOM: token = AB_BIL_BOTTOM;
break;
case AB_ALIGN_LEFT: token = AB_BIL_LEFT;
break;
case AB_ALIGN_CENTER: token = AB_BIL_CENTER;
break;
case AB_ALIGN_HCENTER: token = AB_BIL_HCENTER;
break;
case AB_ALIGN_VCENTER: token = AB_BIL_VCENTER;
break;
case AB_ALIGN_LABELS: token = AB_BIL_LABELS;
break;
default:
break;
}
return token;
}
AB_OBJECT_TYPE
bilP_token_to_object_type(int type)
{
AB_OBJECT_TYPE obj_type = AB_TYPE_UNKNOWN;
switch (type)
{
case AB_BIL_ACTION: obj_type = AB_TYPE_ACTION;
break;
case AB_BIL_BASE_WINDOW: obj_type = AB_TYPE_BASE_WINDOW;
break;
case AB_BIL_BUTTON: obj_type = AB_TYPE_BUTTON;
break;
case AB_BIL_CHOICE: obj_type = AB_TYPE_CHOICE;
break;
case AB_BIL_COMBO_BOX: obj_type = AB_TYPE_COMBO_BOX;
break;
case AB_BIL_FILE_CHOOSER: obj_type = AB_TYPE_FILE_CHOOSER;
break;
case AB_BIL_MESSAGE: obj_type = AB_TYPE_MESSAGE;
break;
case AB_BIL_CONTAINER: obj_type = AB_TYPE_CONTAINER;
break;
case AB_BIL_DIALOG: obj_type = AB_TYPE_DIALOG;
break;
case AB_BIL_DRAWING_AREA: obj_type = AB_TYPE_DRAWING_AREA;
break;
case AB_BIL_ITEM: obj_type = AB_TYPE_ITEM;
break;
case AB_BIL_LABEL: obj_type = AB_TYPE_LABEL;
break;
case AB_BIL_LAYERS: obj_type = AB_TYPE_LAYERS;
break;
case AB_BIL_LIST: obj_type = AB_TYPE_LIST;
break;
case AB_BIL_MENU: obj_type = AB_TYPE_MENU;
break;
case AB_BIL_MODULE: obj_type = AB_TYPE_MODULE;
break;
case AB_BIL_PROJECT: obj_type = AB_TYPE_PROJECT;
break;
case AB_BIL_SEPARATOR: obj_type = AB_TYPE_SEPARATOR;
break;
case AB_BIL_SCALE: obj_type = AB_TYPE_SCALE;
break;
case AB_BIL_SPIN_BOX: obj_type = AB_TYPE_SPIN_BOX;
break;
case AB_BIL_TERM_PANE: obj_type = AB_TYPE_TERM_PANE;
break;
case AB_BIL_TEXT_FIELD: obj_type = AB_TYPE_TEXT_FIELD;
break;
case AB_BIL_TEXT_PANE: obj_type = AB_TYPE_TEXT_PANE;
break;
}
return obj_type;
}
BIL_TOKEN
bilP_object_type_to_token(AB_OBJECT_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_TYPE_ACTION: token = AB_BIL_ACTION;
break;
case AB_TYPE_BASE_WINDOW: token = AB_BIL_BASE_WINDOW;
break;
case AB_TYPE_BUTTON: token = AB_BIL_BUTTON;
break;
case AB_TYPE_CHOICE: token = AB_BIL_CHOICE;
break;
case AB_TYPE_COMBO_BOX: token = AB_BIL_COMBO_BOX;
break;
case AB_TYPE_FILE_CHOOSER: token = AB_BIL_FILE_CHOOSER;
break;
case AB_TYPE_MESSAGE: token = AB_BIL_MESSAGE;
break;
case AB_TYPE_CONTAINER: token = AB_BIL_CONTAINER;
break;
case AB_TYPE_DIALOG: token = AB_BIL_DIALOG;
break;
case AB_TYPE_DRAWING_AREA: token = AB_BIL_DRAWING_AREA;
break;
case AB_TYPE_ITEM: token = AB_BIL_ITEM;
break;
case AB_TYPE_LABEL: token = AB_BIL_LABEL;
break;
case AB_TYPE_LAYERS: token = AB_BIL_LAYERS;
break;
case AB_TYPE_LIST: token = AB_BIL_LIST;
break;
case AB_TYPE_MENU: token = AB_BIL_MENU;
break;
case AB_TYPE_MODULE: token = AB_BIL_MODULE;
break;
case AB_TYPE_PROJECT: token = AB_BIL_PROJECT;
break;
case AB_TYPE_SEPARATOR: token = AB_BIL_SEPARATOR;
break;
case AB_TYPE_SCALE: token = AB_BIL_SCALE;
break;
case AB_TYPE_SPIN_BOX: token = AB_BIL_SPIN_BOX;
break;
case AB_TYPE_TERM_PANE: token = AB_BIL_TERM_PANE;
break;
case AB_TYPE_TEXT_FIELD: token = AB_BIL_TEXT_FIELD;
break;
case AB_TYPE_TEXT_PANE: token = AB_BIL_TEXT_PANE;
break;
}
return token;
}
AB_WHEN
bilP_token_to_when(int type)
{
AB_WHEN when = AB_WHEN_UNDEF;
switch (type)
{
case AB_BIL_ACTION1: when = AB_WHEN_ACTION1;
break;
case AB_BIL_ACTION2: when = AB_WHEN_ACTION2;
break;
case AB_BIL_ACTION3: when = AB_WHEN_ACTION3;
break;
case AB_BIL_ACTIVATED: when = AB_WHEN_ACTIVATED;
break;
case AB_BIL_AFTER_CREATED: when = AB_WHEN_AFTER_CREATED;
break;
case AB_BIL_BEFORE_POST_MENU: when = AB_WHEN_BEFORE_POST_MENU;
break;
case AB_BIL_BEFORE_TEXT_CHANGED: when = AB_WHEN_BEFORE_TEXT_CHANGED;
break;
case AB_BIL_CANCEL: when = AB_WHEN_CANCEL;
break;
case AB_BIL_DESTROYED: when = AB_WHEN_DESTROYED;
break;
case AB_BIL_DOUBLE_CLICKED_ON: when = AB_WHEN_DOUBLE_CLICKED_ON;
break;
case AB_BIL_DRAGGED: when = AB_WHEN_DRAGGED;
break;
case AB_BIL_DRAGGED_FROM: when = AB_WHEN_DRAGGED_FROM;
break;
case AB_BIL_DROPPED_ON: when = AB_WHEN_DROPPED_ON;
break;
case AB_BIL_HIDE: when = AB_WHEN_HIDDEN;
break;
case AB_BIL_ITEM_SELECTED: when = AB_WHEN_ITEM_SELECTED;
break;
case AB_BIL_OK: when = AB_WHEN_OK;
break;
case AB_BIL_POPPED_DOWN: when = AB_WHEN_POPPED_DOWN;
break;
case AB_BIL_POPPED_UP: when = AB_WHEN_POPPED_UP;
break;
case AB_BIL_REPAINT_NEEDED: when = AB_WHEN_REPAINT_NEEDED;
break;
case AB_BIL_RESIZED: when = AB_WHEN_AFTER_RESIZED;
break;
case AB_BIL_SESSION_RESTORE: when = AB_WHEN_SESSION_RESTORE;
break;
case AB_BIL_SESSION_SAVE: when = AB_WHEN_SESSION_SAVE;
break;
case AB_BIL_SHOW: when = AB_WHEN_SHOWN;
break;
case AB_BIL_TEXT_CHANGED: when = AB_WHEN_TEXT_CHANGED;
break;
case AB_BIL_TOGGLED: when = AB_WHEN_TOGGLED;
break;
case AB_BIL_TOOLTALK_DO_COMMAND: when = AB_WHEN_TOOLTALK_DO_COMMAND;
break;
case AB_BIL_TOOLTALK_GET_STATUS: when = AB_WHEN_TOOLTALK_GET_STATUS;
break;
case AB_BIL_TOOLTALK_PAUSE_RESUME: when = AB_WHEN_TOOLTALK_PAUSE_RESUME;
break;
case AB_BIL_TOOLTALK_QUIT: when = AB_WHEN_TOOLTALK_QUIT;
break;
case AB_BIL_VALUE_CHANGED: when = AB_WHEN_VALUE_CHANGED;
break;
}
return when;
}
BIL_TOKEN
bilP_when_to_token(AB_WHEN ab_when)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (ab_when)
{
case AB_WHEN_UNDEF: token = AB_BIL_UNDEF_KEYWORD;
break;
case AB_WHEN_ACTION1: token = AB_BIL_ACTION1;
break;
case AB_WHEN_ACTION2: token = AB_BIL_ACTION2;
break;
case AB_WHEN_ACTION3: token = AB_BIL_ACTION3;
break;
case AB_WHEN_ACTIVATED: token = AB_BIL_ACTIVATED;
break;
case AB_WHEN_AFTER_CREATED: token = AB_BIL_AFTER_CREATED;
break;
case AB_WHEN_AFTER_RESIZED: token = AB_BIL_RESIZED;
break;
case AB_WHEN_BEFORE_POST_MENU: token = AB_BIL_BEFORE_POST_MENU;
break;
case AB_WHEN_BEFORE_TEXT_CHANGED: token = AB_BIL_BEFORE_TEXT_CHANGED;
break;
case AB_WHEN_CANCEL: token = AB_BIL_CANCEL;
break;
case AB_WHEN_DESTROYED: token = AB_BIL_DESTROYED;
break;
case AB_WHEN_DOUBLE_CLICKED_ON: token = AB_BIL_DOUBLE_CLICKED_ON;
break;
case AB_WHEN_DRAGGED: token = AB_BIL_DRAGGED;
break;
case AB_WHEN_DRAGGED_FROM: token = AB_BIL_DRAGGED_FROM;
break;
case AB_WHEN_DROPPED_ON: token = AB_BIL_DROPPED_ON;
break;
case AB_WHEN_HIDDEN: token = AB_BIL_HIDE;
break;
case AB_WHEN_ITEM_SELECTED: token = AB_BIL_ITEM_SELECTED;
break;
case AB_WHEN_OK: token = AB_BIL_OK;
break;
case AB_WHEN_POPPED_DOWN: token = AB_BIL_POPPED_DOWN;
break;
case AB_WHEN_POPPED_UP: token = AB_BIL_POPPED_UP;
break;
case AB_WHEN_REPAINT_NEEDED: token = AB_BIL_REPAINT_NEEDED;
break;
case AB_WHEN_SESSION_RESTORE: token = AB_BIL_SESSION_RESTORE;
break;
case AB_WHEN_SESSION_SAVE: token = AB_BIL_SESSION_SAVE;
break;
case AB_WHEN_SHOWN: token = AB_BIL_SHOW;
break;
case AB_WHEN_TEXT_CHANGED: token = AB_BIL_TEXT_CHANGED;
break;
case AB_WHEN_TOGGLED: token = AB_BIL_TOGGLED;
break;
case AB_WHEN_TOOLTALK_DO_COMMAND: token = AB_BIL_TOOLTALK_DO_COMMAND;
break;
case AB_WHEN_TOOLTALK_GET_STATUS: token = AB_BIL_TOOLTALK_GET_STATUS;
break;
case AB_WHEN_TOOLTALK_PAUSE_RESUME: token = AB_BIL_TOOLTALK_PAUSE_RESUME;
break;
case AB_WHEN_TOOLTALK_QUIT: token = AB_BIL_TOOLTALK_QUIT;
break;
case AB_WHEN_VALUE_CHANGED: token = AB_BIL_VALUE_CHANGED;
break;
}
return token;
}
typedef struct
{
BIL_TOKEN token;
ISTRING string;
} BilTokenIndexEntryRec, *BilTokenIndexEntry;
static ISTRING bil_token_table[BIL_TOKEN_NUM_VALUES];
static BilTokenIndexEntryRec bil_token_table_index[BIL_TOKEN_NUM_VALUES];
static BOOL bil_token_table_inited = FALSE;
#define bil_token_table_check_init() \
(bil_token_table_inited? 0:bil_token_table_init())
/*
* Compares to entries (for qsort)
*/
static long
bil_token_entry_compare(const void *leftEntry, const void *rightEntry)
{
return ((long)(((BilTokenIndexEntry)leftEntry)->string))
- ((long)(((BilTokenIndexEntry)rightEntry)->string));
}
/*
* Compares a key to an entry (for bsearch)
*/
static long
bil_token_key_compare(const void *voidIstr, const void *voidEntry)
{
return ((long)((ISTRING)(voidIstr)))
- ((long)(((BilTokenIndexEntry)voidEntry)->string));
}
static int
bil_token_table_init()
{
#define btt bil_token_table
#define off ((int)BIL_TOKEN_MIN_VALUE) /* offset to 1st token */
int i;
int rc = 0; /* return code */
BIL_TOKEN curToken = AB_BIL_UNDEF;
bil_token_table_inited = TRUE;
for (i = 0; i < BIL_TOKEN_NUM_VALUES; ++i)
{
bil_token_table[i] = NULL;
}
/* AB_BIL_UNDEF should not be here (returns NULL) */
btt[AB_BIL_UNDEF_KEYWORD - off] = istr_const(":undef");
btt[AB_BIL_ABSOLUTE - off] = istr_const(":absolute");
btt[AB_BIL_ACCELERATOR - off] = istr_const(":accelerator");
btt[AB_BIL_ACCESS_HELP_VOLUME - off] = istr_const(":access-help-volume");
btt[AB_BIL_ACTION - off] = istr_const(":action");
btt[AB_BIL_ACTION1 - off] = istr_const(":action1");
btt[AB_BIL_ACTION2 - off] = istr_const(":action2");
btt[AB_BIL_ACTION3 - off] = istr_const(":action3");
btt[AB_BIL_ACTION1_BUTTON - off] = istr_const(":action1-button");
btt[AB_BIL_ACTION2_BUTTON - off] = istr_const(":action2-button");
btt[AB_BIL_ACTION3_BUTTON - off] = istr_const(":action3-button");
btt[AB_BIL_ACTION1_LABEL - off] = istr_const(":action1-label");
btt[AB_BIL_ACTION2_LABEL - off] = istr_const(":action2-label");
btt[AB_BIL_ACTION3_LABEL - off] = istr_const(":action3-label");
btt[AB_BIL_ACTION_TYPE - off] = istr_const(":action-type");
btt[AB_BIL_ACTIVATED - off] = istr_const(":activate");
btt[AB_BIL_ACTIVE - off] = istr_const(":active");
btt[AB_BIL_ADVANCED - off] = istr_const(":advanced");
btt[AB_BIL_AFTER_CREATED - off] = istr_const(":after-create");
btt[AB_BIL_ALPHANUMERIC - off] = istr_const(":alphanumeric");
btt[AB_BIL_ALWAYS - off] = istr_const(":always");
btt[AB_BIL_ANY - off] = istr_const(":any");
btt[AB_BIL_APPLICATION- off] = istr_const(":application");
btt[AB_BIL_ARG_TYPE - off] = istr_const(":arg-type");
btt[AB_BIL_ARG_VALUE - off] = istr_const(":arg");
btt[AB_BIL_ARROW_DOWN - off] = istr_const(":arrow-down");
btt[AB_BIL_ARROW_LEFT - off] = istr_const(":arrow-left");
btt[AB_BIL_ARROW_RIGHT - off] = istr_const(":arrow-right");
btt[AB_BIL_ARROW_UP - off] = istr_const(":arrow-up");
btt[AB_BIL_ARROW_STYLE - off] = istr_const(":arrow-style");
btt[AB_BIL_ARROW_FLAT_BEGIN - off] = istr_const(":arrow-flat-begin");
btt[AB_BIL_ARROW_FLAT_END - off] = istr_const(":arrow-flat-end");
btt[AB_BIL_ARROW_BEGIN - off] = istr_const(":arrow-begin");
btt[AB_BIL_ARROW_END - off] = istr_const(":arrow-end");
btt[AB_BIL_ARROW_SPLIT - off] = istr_const(":arrow-split");
btt[AB_BIL_ATTACH_ALIGN_OBJ_EDGE - off] = istr_const(":obj-edge");
btt[AB_BIL_ATTACH_GRIDLINE - off] = istr_const(":grid-line");
btt[AB_BIL_ATTACH_CENTER_GRIDLINE - off] = istr_const(":center-grid-line");
btt[AB_BIL_ATTACH_OBJ - off] = istr_const(":obj");
btt[AB_BIL_ATTACH_POINT - off] = istr_const(":point");
btt[AB_BIL_AUTO_DISMISS - off] = istr_const(":auto-dismiss");
btt[AB_BIL_BASE_WINDOW - off] = istr_const(":base-window");
btt[AB_BIL_BASIC - off] = istr_const(":basic");
btt[AB_BIL_BEFORE_POST_MENU - off] =
istr_const(":before-post-menu");
btt[AB_BIL_BEFORE_TEXT_CHANGED - off] =
istr_const(":before-text-changed");
btt[AB_BIL_BG_COLOR - off] = istr_const(":bg-color");
btt[AB_BIL_BOLD - off] = istr_const(":bold");
btt[AB_BIL_BOOLEAN - off] = istr_const(":boolean");
btt[AB_BIL_BORDER_FRAME - off] = istr_const(":border-frame");
btt[AB_BIL_BOTTOM - off] = istr_const(":bottom");
btt[AB_BIL_BOTTOM_TO_TOP - off] = istr_const(":bottom-to-top");
btt[AB_BIL_BROWSE - off] = istr_const(":browse");
btt[AB_BIL_BROWSE_MULTIPLE - off] = istr_const(":browse-multiple");
btt[AB_BIL_BUILTIN - off] = istr_const(":builtin");
btt[AB_BIL_BUTTON - off] = istr_const(":button");
btt[AB_BIL_BUTTON_PANEL - off] = istr_const(":button-panel");
btt[AB_BIL_BUTTON_TYPE - off] = istr_const(":button-type");
btt[AB_BIL_CALLBACK - off] = istr_const(":callback");
btt[AB_BIL_CALL_FUNCTION - off] = istr_const(":call-function");
btt[AB_BIL_CANCEL - off] = istr_const(":cancel");
btt[AB_BIL_CANCEL_BUTTON - off] = istr_const(":cancel-button");
btt[AB_BIL_CENTER - off] = istr_const(":center");
btt[AB_BIL_CENTERS - off] = istr_const(":centers");
btt[AB_BIL_CHILDREN - off] = istr_const(":children");
btt[AB_BIL_CHOICE - off] = istr_const(":choice");
btt[AB_BIL_CHOICE_TYPE - off] = istr_const(":choice-type");
btt[AB_BIL_COLOR - off] = istr_const(":color");
btt[AB_BIL_COLUMN - off] = istr_const(":column");
btt[AB_BIL_COLUMN_ALIGNMENT - off] = istr_const(":column-alignment");
btt[AB_BIL_CLASS_NAME - off] = istr_const(":class-name");
btt[AB_BIL_COMPOSITE - off] = istr_const(":composite");
btt[AB_BIL_COLOR_CHOOSER - off] = istr_const(":color-chooser");
btt[AB_BIL_COMBO_BOX - off] = istr_const(":combobox");
btt[AB_BIL_COMBO_BOX_EDITABLE - off] = istr_const(":editable");
btt[AB_BIL_COMBO_BOX_STATIC - off] = istr_const(":static");
btt[AB_BIL_COMBO_BOX_STYLE - off] = istr_const(":combobox-style");
btt[AB_BIL_CONNECTION - off] = istr_const(":connection");
btt[AB_BIL_CONNECTION_LIST - off] = istr_const(":connection-list");
btt[AB_BIL_CONTAINER - off] = istr_const(":container");
btt[AB_BIL_CONTAINER_TYPE - off] = istr_const(":container-type");
btt[AB_BIL_COPY - off] = istr_const(":copy");
btt[AB_BIL_DATA_END - off] = istr_const(":bil-data-end");
btt[AB_BIL_DECIMAL_POINTS - off] = istr_const(":decimal-points");
btt[AB_BIL_DEFAULT - off] = istr_const(":default");
btt[AB_BIL_DEFAULT_BUTTON - off] = istr_const(":default-button");
btt[AB_BIL_DEFINED_STRING - off] = istr_const(":defined-string");
btt[AB_BIL_DESTROYED - off] = istr_const(":destroy");
btt[AB_BIL_DIALOG - off] = istr_const(":dialog");
btt[AB_BIL_DIRECTORY - off] = istr_const(":directory");
btt[AB_BIL_DIRECTION - off] = istr_const(":direction");
btt[AB_BIL_DISABLE - off] = istr_const(":disable");
btt[AB_BIL_DOUBLE_CLICKED_ON - off] = istr_const(":double-click");
btt[AB_BIL_DOUBLE_LINE - off] = istr_const(":double-line");
btt[AB_BIL_DOUBLE_DASHED_LINE - off] = istr_const(":double-dashed-line");
btt[AB_BIL_DRAG_CURSOR - off] = istr_const(":drag-cursor");
btt[AB_BIL_DRAG_CURSOR_MASK - off] = istr_const(":drag-cursor-mask");
btt[AB_BIL_DRAG_ENABLED - off] = istr_const(":drag-enabled");
btt[AB_BIL_DRAG_OPS - off] = istr_const(":drag-ops");
btt[AB_BIL_DRAG_TO_ROOT_ALLOWED - off] = istr_const(":drag-to-root-allowed");
btt[AB_BIL_DRAG_TYPES - off] = istr_const(":drag-types");
btt[AB_BIL_DRAGGED - off] = istr_const(":dragged");
btt[AB_BIL_DRAGGED_FROM - off] = istr_const(":dragged-from");
btt[AB_BIL_DRAWAREA_WIDTH - off] = istr_const(":drawarea-width");
btt[AB_BIL_DRAWAREA_HEIGHT - off] = istr_const(":drawarea-height");
btt[AB_BIL_DRAWING_AREA - off] = istr_const(":drawing-area");
btt[AB_BIL_DRAWN_BUTTON - off] = istr_const(":drawn-button");
btt[AB_BIL_DROP_ENABLED - off] = istr_const(":drop-enabled");
btt[AB_BIL_DROP_SITE_CHILD_ALLOWED - off] =
istr_const(":drop-site-child-allowed");
btt[AB_BIL_DROP_OPS - off] = istr_const(":drop-ops");
btt[AB_BIL_DROP_TYPES - off] = istr_const(":drop-types");
btt[AB_BIL_DROPPED_ON - off] = istr_const(":dropped-on");
btt[AB_BIL_EAST - off] = istr_const(":east");
btt[AB_BIL_EAST_ATTACHMENT - off] = istr_const(":east-attachment");
btt[AB_BIL_ELEMENT - off] = istr_const(":element");
btt[AB_BIL_ENABLE - off] = istr_const(":enable");
btt[AB_BIL_EQUAL - off] = istr_const(":equal");
btt[AB_BIL_ERROR - off] = istr_const(":error");
btt[AB_BIL_ETCHED_IN - off] = istr_const(":etched-in");
btt[AB_BIL_ETCHED_IN_DASH - off] = istr_const(":etched-in-dash");
btt[AB_BIL_ETCHED_OUT - off] = istr_const(":etched-out");
btt[AB_BIL_ETCHED_OUT_DASH - off] = istr_const(":etched-out-dash");
btt[AB_BIL_EXCLUSIVE - off] = istr_const(":exclusive");
btt[AB_BIL_EXECUTE_CODE - off] = istr_const(":execute-code");
btt[AB_BIL_FALSE - off] = istr_const(":false");
btt[AB_BIL_FG_COLOR - off] = istr_const(":fg-color");
btt[AB_BIL_FILE_CHOOSER - off] = istr_const(":file-chooser");
btt[AB_BIL_FILE_TYPE_MASK - off] = istr_const(":file-type-mask");
btt[AB_BIL_FILENAME - off] = istr_const(":filename");
btt[AB_BIL_FILES - off] = istr_const(":files");
btt[AB_BIL_FILTER_PATTERN - off] = istr_const(":filter-pattern");
btt[AB_BIL_FLOAT - off] = istr_const(":float");
btt[AB_BIL_FONT - off] = istr_const(":font");
btt[AB_BIL_FONT_CHOOSER - off] = istr_const(":font-chooser");
btt[AB_BIL_FOOTER - off] = istr_const(":footer");
btt[AB_BIL_FROM - off] = istr_const(":from");
btt[AB_BIL_GAUGE - off] = istr_const(":gauge");
btt[AB_BIL_GEOMETRY - off] = istr_const(":geometry");
btt[AB_BIL_GLYPH - off] = istr_const(":glyph");
btt[AB_BIL_GLYPH_FILE - off] = istr_const(":glyph-file");
btt[AB_BIL_GRAPHIC - off] = istr_const(":graphic");
btt[AB_BIL_GROUP - off] = istr_const(":group");
btt[AB_BIL_GROUP_TYPE - off] = istr_const(":group-type");
btt[AB_BIL_HATTACH_TYPE - off] = istr_const(":hattach_type");
btt[AB_BIL_HAS_FOOTER - off] = istr_const(":has-footer");
btt[AB_BIL_HCENTER - off] = istr_const(":hcenter");
btt[AB_BIL_HELP_BUTTON - off] = istr_const(":help-button");
btt[AB_BIL_HELP_LOCATION - off] = istr_const(":help-location");
btt[AB_BIL_HELP_TEXT - off] = istr_const(":help-text");
btt[AB_BIL_HELP_VOLUME - off] = istr_const(":help-volume");
btt[AB_BIL_HEIGHT - off] = istr_const(":height");
btt[AB_BIL_HEIGHT_MAX - off] = istr_const(":height-max");
btt[AB_BIL_HEIGHT_RESIZABLE - off] = istr_const(":height-resizable");
btt[AB_BIL_HIDE - off] = istr_const(":hide");
btt[AB_BIL_HSCROLL - off] = istr_const(":hscroll");
btt[AB_BIL_HSCROLLBAR - off] = istr_const(":hscrollbar");
btt[AB_BIL_HSPACING - off] = istr_const(":hspacing");
btt[AB_BIL_HOFFSET - off] = istr_const(":hoffset");
btt[AB_BIL_HORIZONTAL - off] = istr_const(":horizontal");
btt[AB_BIL_I18N - off] = istr_const(":internationalization");
btt[AB_BIL_I18N_ENABLED - off] = istr_const(":enabled");
btt[AB_BIL_ICON - off] = istr_const(":icon");
btt[AB_BIL_ICONIC - off] = istr_const(":iconic");
btt[AB_BIL_ICON_FILE - off] = istr_const(":icon-file");
btt[AB_BIL_ICON_LABEL - off] = istr_const(":icon-label");
btt[AB_BIL_ICON_MASK_FILE - off] = istr_const(":icon-mask-file");
btt[AB_BIL_IGNORE - off] = istr_const(":ignore");
btt[AB_BIL_INACTIVE - off] = istr_const(":inactive");
btt[AB_BIL_INCREMENT - off] = istr_const(":increment");
btt[AB_BIL_INFO - off] = istr_const(":info");
btt[AB_BIL_INITIAL_STATE - off] = istr_const(":initial-state");
btt[AB_BIL_INVISIBLE - off] = istr_const(":invisible");
btt[AB_BIL_INT - off] = istr_const(":int");
btt[AB_BIL_IS_HELP_ITEM - off] = istr_const(":is-help-item");
btt[AB_BIL_ITEM - off] = istr_const(":item");
btt[AB_BIL_ITEM_FOR_CHOICE - off] = istr_const(":item-for-choice");
btt[AB_BIL_ITEM_FOR_COMBO_BOX - off] = istr_const(":item-for-combobox");
btt[AB_BIL_ITEM_FOR_LIST - off] = istr_const(":item-for-list");
btt[AB_BIL_ITEM_FOR_MENU - off] = istr_const(":item-for-menu");
btt[AB_BIL_ITEM_FOR_MENUBAR - off] = istr_const(":item-for-menubar");
btt[AB_BIL_ITEM_FOR_SPIN_BOX - off] = istr_const(":item-for-spinbox");
btt[AB_BIL_ITEM_SELECTED - off] = istr_const(":item-selected");
btt[AB_BIL_ITEM_TYPE - off] = istr_const(":item-type");
btt[AB_BIL_LABEL - off] = istr_const(":label");
btt[AB_BIL_LABEL_ALIGNMENT - off] = istr_const(":label-alignment");
btt[AB_BIL_LABEL_POSITION - off] = istr_const(":label-position");
btt[AB_BIL_LABELS - off] = istr_const(":labels");
btt[AB_BIL_LABEL_STRING - off] = istr_const(":label-string");
btt[AB_BIL_LABEL_STYLE - off] = istr_const(":label-style");
btt[AB_BIL_LABEL_TYPE - off] = istr_const(":label-type");
btt[AB_BIL_LAYERS - off] = istr_const(":layers");
btt[AB_BIL_LEFT - off] = istr_const(":left");
btt[AB_BIL_LEFT_TO_RIGHT - off] = istr_const(":left-to-right");
btt[AB_BIL_LINE_STYLE - off] = istr_const(":line-style");
btt[AB_BIL_LINK - off] = istr_const(":link");
btt[AB_BIL_LIST - off] = istr_const(":list");
btt[AB_BIL_LITERAL - off] = istr_const(":literal");
btt[AB_BIL_LOAD - off] = istr_const(":load");
btt[AB_BIL_MAIN_WINDOW - off] = istr_const(":main-window");
btt[AB_BIL_MAX_LABEL - off] = istr_const(":max-label");
btt[AB_BIL_MAX_VALUE - off] = istr_const(":max-value");
btt[AB_BIL_MENU - off] = istr_const(":menu");
btt[AB_BIL_MENU_BAR - off] = istr_const(":menu-bar");
btt[AB_BIL_MENU_BUTTON - off] = istr_const(":menu-button");
btt[AB_BIL_MENU_TITLE - off] = istr_const(":menu-title");
btt[AB_BIL_MENU_TYPE - off] = istr_const(":menu-type");
btt[AB_BIL_MESSAGE - off] = istr_const(":message");
btt[AB_BIL_MESSAGE_TYPE - off] = istr_const(":message-type");
btt[AB_BIL_MIN_LABEL - off] = istr_const(":min-label");
btt[AB_BIL_MIN_VALUE - off] = istr_const(":min-value");
btt[AB_BIL_MNEMONIC - off] = istr_const(":mnemonic");
btt[AB_BIL_MODULE - off] = istr_const(":module");
btt[AB_BIL_MOVE - off] = istr_const(":move");
btt[AB_BIL_MULTIPLE - off] = istr_const(":multiple");
btt[AB_BIL_MULTIPLE_SELECTIONS - off] = istr_const(":multiple-selections");
btt[AB_BIL_NAME - off] = istr_const(":name");
btt[AB_BIL_NEVER - off] = istr_const(":never");
btt[AB_BIL_NIL - off] = istr_const(":nil");
btt[AB_BIL_NONE - off] = istr_const(":none");
btt[AB_BIL_NONEXCLUSIVE - off] = istr_const(":nonexclusive");
btt[AB_BIL_NORTH - off] = istr_const(":north");
btt[AB_BIL_NORTHEAST - off] = istr_const(":northeast");
btt[AB_BIL_NORTHWEST - off] = istr_const(":northwest");
btt[AB_BIL_NORTH_ATTACHMENT - off] = istr_const(":north-attachment");
btt[AB_BIL_NOTSELECTED - off] = istr_const(":not-selected");
btt[AB_BIL_NUM_COLUMNS - off] = istr_const(":num-columns");
btt[AB_BIL_NUM_ROWS - off] = istr_const(":num-rows");
btt[AB_BIL_NUMERIC - off] = istr_const(":numeric");
btt[AB_BIL_OK - off] = istr_const(":ok");
btt[AB_BIL_OK_BUTTON - off] = istr_const(":ok-button");
btt[AB_BIL_OK_LABEL - off] = istr_const(":ok-label");
btt[AB_BIL_ON_ITEM_HELP - off] = istr_const(":on-item-help");
btt[AB_BIL_OPEN - off] = istr_const(":open");
btt[AB_BIL_OPTION - off] = istr_const(":option");
btt[AB_BIL_OPTION_MENU - off] = istr_const(":option-menu");
btt[AB_BIL_ORIENTATION - off] = istr_const(":orientation");
btt[AB_BIL_OTHER - off] = istr_const(":other");
btt[AB_BIL_OTHER_STRING - off] = istr_const(":other-string");
btt[AB_BIL_PACKING - off] = istr_const(":packing");
btt[AB_BIL_PANED - off] = istr_const(":panedwindow");
btt[AB_BIL_PANE_MAX_HEIGHT - off] = istr_const(":pane-max-height");
btt[AB_BIL_PANE_MIN_HEIGHT - off] = istr_const(":pane-min-height");
btt[AB_BIL_PARAMETER_TYPE - off] = istr_const(":parameter-type");
btt[AB_BIL_PIXEL - off] = istr_const(":pixel");
btt[AB_BIL_PIXMAP - off] = istr_const(":pixmap");
btt[AB_BIL_POPPED_DOWN - off] = istr_const(":popdown");
btt[AB_BIL_POPPED_UP - off] = istr_const(":popup");
btt[AB_BIL_PROCESS_STRING - off] = istr_const(":process-string");
btt[AB_BIL_PROJECT - off] = istr_const(":project");
btt[AB_BIL_PULLDOWN - off] = istr_const(":pulldown");
btt[AB_BIL_PUSH_BUTTON - off] = istr_const(":push-button");
btt[AB_BIL_QUESTION - off] = istr_const(":question");
btt[AB_BIL_READ_ONLY - off] = istr_const(":read-only");
btt[AB_BIL_REFERENCE_POINT - off] = istr_const(":reference-point");
btt[AB_BIL_REGULAR - off] = istr_const(":regular");
btt[AB_BIL_RELATIVE - off] = istr_const(":relative");
btt[AB_BIL_REPAINT_NEEDED - off] = istr_const(":repaint-needed");
btt[AB_BIL_RES_FILE_TYPES - off] = istr_const(":res-file-types");
btt[AB_BIL_RESIZABLE - off] = istr_const(":resizable");
btt[AB_BIL_RESIZED - off] = istr_const(":resize");
btt[AB_BIL_RESOURCE - off] = istr_const(":resource");
btt[AB_BIL_RETURN_TYPE - off] = istr_const(":return-type");
btt[AB_BIL_RIGHT - off] = istr_const(":right");
btt[AB_BIL_RIGHT_TO_LEFT - off] = istr_const(":right-to-left");
btt[AB_BIL_ROOT_WINDOW - off] = istr_const(":root-window");
btt[AB_BIL_ROW - off] = istr_const(":row");
btt[AB_BIL_ROWSCOLUMNS - off] = istr_const(":rowscolumns");
btt[AB_BIL_ROW_ALIGNMENT - off] = istr_const(":row-alignment");
btt[AB_BIL_ROW_COLUMN - off] = istr_const(":row-column");
btt[AB_BIL_SAVE - off] = istr_const(":save");
btt[AB_BIL_SAVE_AS - off] = istr_const(":save-as");
btt[AB_BIL_SB_ALWAYS_VISIBLE - off] = istr_const(":sb-always-visible");
btt[AB_BIL_SCALE - off] = istr_const(":scale");
btt[AB_BIL_SCROLLED_WINDOW - off] = istr_const(":scrolled-window");
btt[AB_BIL_SELECT - off] = istr_const(":select");
btt[AB_BIL_MULTIPLE - off] = istr_const(":multiple");
btt[AB_BIL_SELECTED - off] = istr_const(":selected");
btt[AB_BIL_SELECTION_BOX - off] = istr_const(":selection-box");
btt[AB_BIL_SELECTION_MODE - off] = istr_const(":selection-mode");
btt[AB_BIL_SELECTION_REQUIRED - off] = istr_const(":selection-required");
btt[AB_BIL_SEPARATOR - off] = istr_const(":separator");
btt[AB_BIL_SESSION_MGMT - off] = istr_const(":session-management");
btt[AB_BIL_SESSION_RESTORE - off] = istr_const(":session-restore");
btt[AB_BIL_SESSION_SAVE - off] = istr_const(":session-save");
btt[AB_BIL_SESSIONING_METHOD - off] = istr_const(":sessioning-method");
btt[AB_BIL_SESSIONING_CMDLINE - off] = istr_const(":cmdline");
btt[AB_BIL_SESSIONING_CMDLINE_AND_FILE - off] = istr_const(":cmdline-file");
btt[AB_BIL_SESSIONING_FILE - off] = istr_const(":file");
btt[AB_BIL_SET_LABEL - off] = istr_const(":set-label");
btt[AB_BIL_SET_TEXT - off] = istr_const(":set-text");
btt[AB_BIL_SET_VALUE - off] = istr_const(":set-value");
btt[AB_BIL_SHADOW_IN - off] = istr_const(":shadow-in");
btt[AB_BIL_SHADOW_OUT - off] = istr_const(":shadow-out");
btt[AB_BIL_SHOW - off] = istr_const(":show");
btt[AB_BIL_SHOW_VALUE - off] = istr_const(":show-value");
btt[AB_BIL_SINGLE - off] = istr_const(":single");
btt[AB_BIL_SINGLE_LINE - off] = istr_const(":single-line");
btt[AB_BIL_SINGLE_DASHED_LINE - off] = istr_const(":single-dashed-line");
btt[AB_BIL_SLIDER - off] = istr_const(":slider");
btt[AB_BIL_SLIDER_TYPE - off] = istr_const(":slider-type");
btt[AB_BIL_SOUTHEAST - off] = istr_const(":southeast");
btt[AB_BIL_SOUTH - off] = istr_const(":south");
btt[AB_BIL_SOUTHWEST - off] = istr_const(":southwest");
btt[AB_BIL_SOUTH_ATTACHMENT - off] = istr_const(":south-attachment");
btt[AB_BIL_SPIN_BOX - off] = istr_const(":spinbox");
btt[AB_BIL_STANDARD - off] = istr_const(":standard");
btt[AB_BIL_STRING - off] = istr_const(":string");
btt[AB_BIL_MAX_LENGTH - off] = istr_const(":max-length");
btt[AB_BIL_STYLE_BOLD - off] = istr_const(":bold");
btt[AB_BIL_STYLE_NORMAL - off] = istr_const(":normal");
btt[AB_BIL_STYLE_3D - off] = istr_const(":3D");
btt[AB_BIL_TEAR_OFF - off] = istr_const(":tear-off");
btt[AB_BIL_TERM_PANE - off] = istr_const(":term-pane");
btt[AB_BIL_TEXT - off] = istr_const(":text");
btt[AB_BIL_TEXT_CHANGED - off] = istr_const(":text-changed");
btt[AB_BIL_TEXT_FIELD - off] = istr_const(":text-field");
btt[AB_BIL_TEXT_PANE - off] = istr_const(":text-pane");
btt[AB_BIL_TEXT_TYPE - off] = istr_const(":text-type");
btt[AB_BIL_TIGHT - off] = istr_const(":tight");
btt[AB_BIL_TITLE - off] = istr_const(":title");
btt[AB_BIL_TITLE_TYPE - off] = istr_const(":title-type");
btt[AB_BIL_TO - off] = istr_const(":to");
btt[AB_BIL_TOGGLED - off] = istr_const(":toggle");
btt[AB_BIL_TOOL_BAR - off] = istr_const(":tool-bar");
btt[AB_BIL_TOOLTALK - off] = istr_const(":tooltalk");
btt[AB_BIL_TOOLTALK_DESKTOP_LEVEL - off] = istr_const(":desktop-level");
btt[AB_BIL_TOOLTALK_DO_COMMAND - off] = istr_const(":tooltalk-do-command");
btt[AB_BIL_TOOLTALK_GET_STATUS - off] = istr_const(":tooltalk-get-status");
btt[AB_BIL_TOOLTALK_PAUSE_RESUME - off] = istr_const(":tooltalk-pause-resume");
btt[AB_BIL_TOOLTALK_QUIT - off] = istr_const(":tooltalk-quit");
btt[AB_BIL_TOP - off] = istr_const(":top");
btt[AB_BIL_TOP_TO_BOTTOM - off] = istr_const(":top-to-bottom");
btt[AB_BIL_TRUE - off] = istr_const(":true");
btt[AB_BIL_TYPE - off] = istr_const(":type");
btt[AB_BIL_USER_DATA - off] = istr_const(":user-data");
btt[AB_BIL_USER_DEF - off] = istr_const(":user-def");
btt[AB_BIL_INITIAL_VALUE - off] = istr_const(":initial-value");
btt[AB_BIL_VALUE - off] = istr_const(":value");
btt[AB_BIL_VALUE_CHANGED - off] = istr_const(":value-changed");
btt[AB_BIL_VALUE_FLOAT - off] = istr_const(":value-float");
btt[AB_BIL_VALUE_IDENT - off] = istr_const(":value-ident");
btt[AB_BIL_VALUE_INT - off] = istr_const(":value-int");
btt[AB_BIL_VALUE_STRING - off] = istr_const(":value-string");
btt[AB_BIL_VATTACH_TYPE - off] = istr_const(":vattach_type");
btt[AB_BIL_VCENTER - off] = istr_const(":vcenter");
btt[AB_BIL_VENDOR - off] = istr_const(":vendor");
btt[AB_BIL_VERSION - off] = istr_const(":version");
btt[AB_BIL_VERTICAL - off] = istr_const(":vertical");
btt[AB_BIL_VISIBLE - off] = istr_const(":visible");
btt[AB_BIL_VOFFSET - off] = istr_const(":voffset");
btt[AB_BIL_VOID - off] = istr_const(":void");
btt[AB_BIL_VSCROLL - off] = istr_const(":vscroll");
btt[AB_BIL_VSCROLLBAR - off] = istr_const(":vscrollbar");
btt[AB_BIL_VSPACING - off] = istr_const(":vspacing");
btt[AB_BIL_WARNING - off] = istr_const(":warning");
btt[AB_BIL_WEST - off] = istr_const(":west");
btt[AB_BIL_WEST_ATTACHMENT - off] = istr_const(":west-attachment");
btt[AB_BIL_WHEN - off] = istr_const(":when");
btt[AB_BIL_WHEN_NEEDED - off] = istr_const(":when-needed");
btt[AB_BIL_WIDGET - off] = istr_const(":widget");
btt[AB_BIL_WIDTH - off] = istr_const(":width");
btt[AB_BIL_WIDTH_MAX - off] = istr_const(":width-max");
btt[AB_BIL_WIDTH_RESIZABLE - off] = istr_const(":width-resizable");
btt[AB_BIL_WIN_CHILDREN - off] = istr_const(":win-children");
btt[AB_BIL_WIN_PARENT - off] = istr_const(":win-parent");
btt[AB_BIL_WORD_WRAP - off] = istr_const(":word-wrap");
btt[AB_BIL_WORKING - off] = istr_const(":working");
btt[AB_BIL_X - off] = istr_const(":x");
btt[AB_BIL_XMSTRING - off] = istr_const(":xmstring");
btt[AB_BIL_XMSTRING_TBL - off] = istr_const(":xmstring-table");
btt[AB_BIL_Y - off] = istr_const(":y");
/*
* Build b-searchable index from ISTRING back to enum
*/
memset(bil_token_table_index, 0, sizeof(bil_token_table_index));
for (i = 0; i < BIL_TOKEN_NUM_VALUES; ++i)
{
bil_token_table_index[i].string = btt[i];
bil_token_table_index[i].token = (BIL_TOKEN)(i + off);
}
qsort(bil_token_table_index,
BIL_TOKEN_NUM_VALUES,
sizeof(bil_token_table_index[0]),
bil_token_entry_compare);
return 0;
#undef off
#undef btt
}
STRING
bilP_token_to_string(BIL_TOKEN token)
{
bil_token_table_check_init();
if ((token < BIL_TOKEN_MIN_VALUE) || (token > BIL_TOKEN_MAX_VALUE))
{
return NULL;
}
return istr_string(bil_token_table[((int) token) - BIL_TOKEN_MIN_VALUE]);
}
BIL_TOKEN
bilP_string_to_token(STRING strToken)
{
ISTRING istrToken = istr_create(strToken);
register long midDiff;
register long midIndex;
long minIndex, maxIndex;
bil_token_table_check_init();
/*
* Perform binary search for ISTRING value
*/
minIndex = 0;
maxIndex = BIL_TOKEN_NUM_VALUES-1;
while (minIndex < maxIndex)
{
midIndex = ((minIndex + maxIndex)>>1);
midDiff = (((long)bil_token_table_index[midIndex].string)
- ((long)istrToken));
if (midDiff < 0)
{
/* mid is too small - take upper half */
minIndex = midIndex + 1;
}
else if (midDiff > 0)
{
/* mid is too large - take bottom half */
maxIndex = midIndex - 1;
}
else
{
return bil_token_table_index[midIndex].token;
}
}
/* After exiting loop, min=max */
return (istr_equal(istrToken, bil_token_table_index[minIndex].string)?
bil_token_table_index[minIndex].token
:
AB_BIL_UNDEF);
}
STRING
bilP_compass_point_to_string(AB_COMPASS_POINT compass_point)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_compass_point_to_token(compass_point))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_text_type_to_string(AB_TEXT_TYPE text_type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_text_type_to_token(text_type))
{
string = bilP_token_to_string(token);
}
return string;
}
STRING
bilP_container_type_to_string(AB_CONTAINER_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_container_type_to_token(type))
{
string = bilP_token_to_string(token);
}
return string;
}
STRING
bilP_packing_to_string(AB_PACKING pack)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_packing_to_token(pack))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_alignment_to_string(AB_ALIGNMENT align)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_alignment_to_token(align))
{
string = (bilP_token_to_string(token));
}
return string;
}
/*
STRING
bilP_menu_type_to_string(AB_MENU_TYPE menu_type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_menu_type_to_token(menu_type))
{
string = (bilP_token_to_string(token));
}
return string;
}
*/
STRING
bilP_label_type_to_string(AB_LABEL_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_label_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_group_type_to_string(AB_GROUP_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_group_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_button_type_to_string(AB_BUTTON_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_button_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_orientation_to_string(AB_ORIENTATION type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_orientation_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_direction_to_string(AB_DIRECTION type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_direction_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_item_type_to_string(AB_ITEM_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_item_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_choice_type_to_string(AB_CHOICE_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_choice_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_label_style_to_string(AB_LABEL_STYLE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_label_style_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_func_type_to_string(AB_FUNC_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_func_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_builtin_action_to_string(AB_BUILTIN_ACTION type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_builtin_action_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_when_to_string(AB_WHEN type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_when_to_token(type))
{
string = bilP_token_to_string(token);
}
return string;
}
STRING
bilP_arg_class_to_string(AB_ARG_CLASS argClass)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_arg_class_to_token(argClass))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_arg_type_to_string(AB_ARG_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_arg_type_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
STRING
bilP_attachment_to_string(AB_ATTACH_TYPE type)
{
BIL_TOKEN token;
STRING string = NULL;
if (token = bilP_attachment_to_token(type))
{
string = (bilP_token_to_string(token));
}
return string;
}
BIL_TOKEN
bilP_initial_state_to_token(AB_OBJECT_STATE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_STATE_ACTIVE: token = AB_BIL_ACTIVE;
break;
case AB_STATE_ICONIC: token = AB_BIL_ICONIC;
break;
case AB_STATE_INACTIVE: token = AB_BIL_INACTIVE;
break;
case AB_STATE_INVISIBLE: token = AB_BIL_INVISIBLE;
break;
case AB_STATE_NOTSELECTED: token = AB_BIL_NOTSELECTED;
break;
case AB_STATE_OPEN: token = AB_BIL_OPEN;
break;
case AB_STATE_SELECTED: token = AB_BIL_SELECTED;
break;
case AB_STATE_VISIBLE: token = AB_BIL_VISIBLE;
break;
}
return (token);
}
AB_OBJECT_STATE
bilP_token_to_initial_state(int token)
{
AB_OBJECT_STATE obj_type = AB_STATE_UNDEF;
switch (token)
{
case AB_BIL_ACTIVE: obj_type = AB_STATE_ACTIVE;
break;
case AB_BIL_ICONIC: obj_type = AB_STATE_ICONIC;
break;
case AB_BIL_INACTIVE: obj_type = AB_STATE_INACTIVE;
break;
case AB_BIL_INVISIBLE: obj_type = AB_STATE_INVISIBLE;
break;
case AB_BIL_NOTSELECTED: obj_type = AB_STATE_INVISIBLE;
break;
case AB_BIL_OPEN: obj_type = AB_STATE_OPEN;
break;
case AB_BIL_SELECTED: obj_type = AB_STATE_SELECTED;
break;
case AB_BIL_VISIBLE: obj_type = AB_STATE_VISIBLE;
break;
}
return (obj_type);
}
STRING
bilP_initial_state_to_string(AB_OBJECT_STATE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_initial_state_to_token(type))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_border_frame_to_token(AB_LINE_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (type)
{
case AB_LINE_NONE: token = AB_BIL_NONE;
break;
case AB_LINE_SHADOW_IN: token = AB_BIL_SHADOW_IN;
break;
case AB_LINE_SHADOW_OUT: token = AB_BIL_SHADOW_OUT;
break;
case AB_LINE_ETCHED_IN: token = AB_BIL_ETCHED_IN;
break;
case AB_LINE_ETCHED_OUT: token = AB_BIL_ETCHED_OUT;
break;
}
return (token);
}
AB_LINE_TYPE
bilP_token_to_border_frame(int token)
{
AB_LINE_TYPE type = AB_LINE_UNDEF;
switch (token)
{
case AB_BIL_NONE: type = AB_LINE_NONE;
break;
case AB_BIL_SHADOW_IN: type = AB_LINE_SHADOW_IN;
break;
case AB_BIL_SHADOW_OUT: type = AB_LINE_SHADOW_OUT;
break;
case AB_BIL_ETCHED_IN: type = AB_LINE_ETCHED_IN;
break;
case AB_BIL_ETCHED_OUT: type = AB_LINE_ETCHED_OUT;
break;
}
return (type);
}
STRING
bilP_border_frame_to_string(AB_LINE_TYPE type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_border_frame_to_token(type))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_line_style_to_token(AB_LINE_TYPE line_style)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (line_style)
{
case AB_LINE_NONE: token = AB_BIL_NONE;
break;
case AB_LINE_ETCHED_IN: token = AB_BIL_ETCHED_IN;
break;
case AB_LINE_ETCHED_OUT: token = AB_BIL_ETCHED_OUT;
break;
case AB_LINE_ETCHED_IN_DASH: token = AB_BIL_ETCHED_IN_DASH;
break;
case AB_LINE_ETCHED_OUT_DASH: token = AB_BIL_ETCHED_OUT_DASH;
break;
case AB_LINE_SINGLE_LINE: token = AB_BIL_SINGLE_LINE;
break;
case AB_LINE_DOUBLE_LINE: token = AB_BIL_DOUBLE_LINE;
break;
case AB_LINE_SINGLE_DASHED_LINE: token = AB_BIL_SINGLE_DASHED_LINE;
break;
case AB_LINE_DOUBLE_DASHED_LINE: token = AB_BIL_DOUBLE_DASHED_LINE;
break;
}
return (token);
}
AB_LINE_TYPE
bilP_token_to_line_style(int token)
{
AB_LINE_TYPE line_style = AB_LINE_UNDEF;
switch (token)
{
case AB_BIL_NONE: line_style = AB_LINE_NONE;
break;
case AB_BIL_ETCHED_IN: line_style = AB_LINE_ETCHED_IN;
break;
case AB_BIL_ETCHED_OUT: line_style = AB_LINE_ETCHED_OUT;
break;
case AB_BIL_ETCHED_IN_DASH: line_style = AB_LINE_ETCHED_IN_DASH;
break;
case AB_BIL_ETCHED_OUT_DASH: line_style = AB_LINE_ETCHED_OUT_DASH;
break;
case AB_BIL_SINGLE_LINE: line_style = AB_LINE_SINGLE_LINE;
break;
case AB_BIL_DOUBLE_LINE: line_style = AB_LINE_DOUBLE_LINE;
break;
case AB_BIL_SINGLE_DASHED_LINE: line_style = AB_LINE_SINGLE_DASHED_LINE;
break;
case AB_BIL_DOUBLE_DASHED_LINE: line_style = AB_LINE_DOUBLE_DASHED_LINE;
break;
}
return (line_style);
}
STRING
bilP_line_style_to_string(AB_LINE_TYPE line_style)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_line_style_to_token(line_style))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_arrow_style_to_token(AB_ARROW_STYLE arrow_style)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (arrow_style)
{
case AB_ARROW_FLAT_BEGIN: token = AB_BIL_ARROW_FLAT_BEGIN;
break;
case AB_ARROW_FLAT_END: token = AB_BIL_ARROW_FLAT_END;
break;
case AB_ARROW_BEGIN: token = AB_BIL_ARROW_BEGIN;
break;
case AB_ARROW_END: token = AB_BIL_ARROW_END;
break;
case AB_ARROW_SPLIT: token = AB_BIL_ARROW_SPLIT;
break;
}
return (token);
}
AB_ARROW_STYLE
bilP_token_to_arrow_style(int token)
{
AB_ARROW_STYLE arrow_style = AB_ARROW_UNDEF;
switch (token)
{
case AB_BIL_ARROW_FLAT_BEGIN: arrow_style = AB_ARROW_FLAT_BEGIN;
break;
case AB_BIL_ARROW_FLAT_END: arrow_style = AB_ARROW_FLAT_END;
break;
case AB_BIL_ARROW_BEGIN: arrow_style = AB_ARROW_BEGIN;
break;
case AB_BIL_ARROW_END: arrow_style = AB_ARROW_END;
break;
case AB_BIL_ARROW_SPLIT: arrow_style = AB_ARROW_SPLIT;
break;
}
return (arrow_style);
}
STRING
bilP_arrow_style_to_string(AB_ARROW_STYLE arrow_style)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_arrow_style_to_token(arrow_style))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_selection_mode_to_token(AB_SELECT_TYPE selection_mode)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (selection_mode)
{
case AB_SELECT_SINGLE: token = AB_BIL_SINGLE;
break;
case AB_SELECT_BROWSE: token = AB_BIL_BROWSE;
break;
case AB_SELECT_MULTIPLE: token = AB_BIL_MULTIPLE;
break;
case AB_SELECT_BROWSE_MULTIPLE: token = AB_BIL_BROWSE_MULTIPLE;
break;
}
return (token);
}
AB_SELECT_TYPE
bilP_token_to_selection_mode(int token)
{
AB_SELECT_TYPE selection_mode = AB_SELECT_UNDEF;
switch (token)
{
case AB_BIL_SINGLE: selection_mode = AB_SELECT_SINGLE;
break;
case AB_BIL_BROWSE: selection_mode = AB_SELECT_BROWSE;
break;
case AB_BIL_MULTIPLE: selection_mode = AB_SELECT_MULTIPLE;
break;
case AB_BIL_BROWSE_MULTIPLE: selection_mode = AB_SELECT_BROWSE_MULTIPLE;
break;
}
return (selection_mode);
}
STRING
bilP_selection_mode_to_string(AB_SELECT_TYPE selection_mode)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_selection_mode_to_token(selection_mode))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_scrollbar_policy_to_token(AB_SCROLLBAR_POLICY sb_policy)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (sb_policy)
{
case AB_SCROLLBAR_ALWAYS: token = AB_BIL_ALWAYS;
break;
case AB_SCROLLBAR_NEVER: token = AB_BIL_NEVER;
break;
case AB_SCROLLBAR_WHEN_NEEDED: token = AB_BIL_WHEN_NEEDED;
break;
}
return (token);
}
AB_SCROLLBAR_POLICY
bilP_token_to_scrollbar_policy(BIL_TOKEN token)
{
AB_SCROLLBAR_POLICY sb_policy = AB_SCROLLBAR_UNDEF;
switch (token)
{
case AB_BIL_ALWAYS: sb_policy = AB_SCROLLBAR_ALWAYS;
break;
case AB_BIL_NEVER: sb_policy = AB_SCROLLBAR_NEVER;
break;
case AB_BIL_WHEN_NEEDED: sb_policy = AB_SCROLLBAR_WHEN_NEEDED;
break;
}
return (sb_policy);
}
STRING
bilP_scrollbar_policy_to_string(AB_SCROLLBAR_POLICY sb_policy)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_scrollbar_policy_to_token(sb_policy))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_msg_type_to_token(AB_MESSAGE_TYPE msg_type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (msg_type)
{
case AB_MSG_ERROR: token = AB_BIL_ERROR;
break;
case AB_MSG_INFORMATION: token = AB_BIL_INFO;
break;
case AB_MSG_QUESTION: token = AB_BIL_QUESTION;
break;
case AB_MSG_WARNING: token = AB_BIL_WARNING;
break;
case AB_MSG_WORKING: token = AB_BIL_WORKING;
break;
default:
break;
}
return (token);
}
AB_MESSAGE_TYPE
bilP_token_to_msg_type(BIL_TOKEN token)
{
AB_MESSAGE_TYPE msg_type = AB_MSG_UNDEF;
switch (token)
{
case AB_BIL_ERROR: msg_type = AB_MSG_ERROR;
break;
case AB_BIL_INFO: msg_type = AB_MSG_INFORMATION;
break;
case AB_BIL_QUESTION: msg_type = AB_MSG_QUESTION;
break;
case AB_BIL_WARNING: msg_type = AB_MSG_WARNING;
break;
case AB_BIL_WORKING: msg_type = AB_MSG_WORKING;
break;
default:
break;
}
return (msg_type);
}
STRING
bilP_msg_type_to_string(AB_MESSAGE_TYPE msg_type)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_msg_type_to_token(msg_type))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_file_type_mask_to_token(AB_FILE_TYPE_MASK ftm)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (ftm)
{
case AB_FILE_REGULAR: token = AB_BIL_REGULAR;
break;
case AB_FILE_DIRECTORY: token = AB_BIL_DIRECTORY;
break;
case AB_FILE_ANY: token = AB_BIL_ANY;
break;
default:
break;
}
return (token);
}
AB_FILE_TYPE_MASK
bilP_token_to_file_type_mask(BIL_TOKEN token)
{
AB_FILE_TYPE_MASK ftm = AB_FILE_TYPE_MASK_UNDEF;
switch (token)
{
case AB_BIL_REGULAR: ftm = AB_FILE_REGULAR;
break;
case AB_BIL_DIRECTORY: ftm = AB_FILE_DIRECTORY;
break;
case AB_BIL_ANY: ftm = AB_FILE_ANY;
break;
default:
break;
}
return (ftm);
}
STRING
bilP_file_type_mask_to_string(AB_FILE_TYPE_MASK ftm)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_file_type_mask_to_token(ftm))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_sessioning_method_to_token(AB_SESSIONING_METHOD sessioning_method)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (sessioning_method)
{
case AB_SESSIONING_NONE: token = AB_BIL_NONE;
break;
case AB_SESSIONING_CMDLINE: token = AB_BIL_SESSIONING_CMDLINE;
break;
case AB_SESSIONING_FILE: token = AB_BIL_SESSIONING_FILE;
break;
case AB_SESSIONING_CMDLINE_AND_FILE: token = AB_BIL_SESSIONING_CMDLINE_AND_FILE;
break;
default:
break;
}
return (token);
}
AB_SESSIONING_METHOD
bilP_token_to_sessioning_method(BIL_TOKEN token)
{
AB_SESSIONING_METHOD sessioning_method = AB_SESSIONING_UNDEF;
switch (token)
{
case AB_BIL_NONE: sessioning_method = AB_SESSIONING_NONE;
break;
case AB_BIL_SESSIONING_CMDLINE: sessioning_method = AB_SESSIONING_CMDLINE;
break;
case AB_BIL_SESSIONING_FILE: sessioning_method = AB_SESSIONING_FILE;
break;
case AB_BIL_SESSIONING_CMDLINE_AND_FILE: sessioning_method = AB_SESSIONING_CMDLINE_AND_FILE;
break;
default:
break;
}
return (sessioning_method);
}
STRING
bilP_sessioning_method_to_string(AB_SESSIONING_METHOD sessioning_method)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_sessioning_method_to_token(sessioning_method))
string = bilP_token_to_string(token);
return (string);
}
BIL_TOKEN
bilP_tt_desktop_level_to_token(AB_TOOLTALK_LEVEL tt_level)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (tt_level)
{
case AB_TOOLTALK_NONE: token = AB_BIL_NONE;
break;
case AB_TOOLTALK_DESKTOP_BASIC: token = AB_BIL_BASIC;
break;
case AB_TOOLTALK_DESKTOP_ADVANCED: token = AB_BIL_ADVANCED;
break;
default:
break;
}
return (token);
}
AB_TOOLTALK_LEVEL
bilP_token_to_tt_desktop_level(BIL_TOKEN token)
{
AB_TOOLTALK_LEVEL tt_level= AB_TOOLTALK_UNDEF;
switch (token)
{
case AB_BIL_NONE: tt_level= AB_TOOLTALK_NONE;
break;
case AB_BIL_ADVANCED: tt_level = AB_TOOLTALK_DESKTOP_ADVANCED;
break;
case AB_BIL_BASIC: tt_level = AB_TOOLTALK_DESKTOP_BASIC;
break;
default:
break;
}
return (tt_level);
}
STRING
bilP_tt_desktop_level_to_string(AB_TOOLTALK_LEVEL tt_level)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_tt_desktop_level_to_token(tt_level))
string = bilP_token_to_string(token);
return (string);
}
bilP_default_button_to_token(AB_DEFAULT_BUTTON button)
{
BIL_TOKEN token = AB_BIL_UNDEF;
switch (button)
{
case AB_DEFAULT_BTN_ACTION1: token = AB_BIL_ACTION1_BUTTON;
break;
case AB_DEFAULT_BTN_ACTION2: token = AB_BIL_ACTION2_BUTTON;
break;
case AB_DEFAULT_BTN_ACTION3: token = AB_BIL_ACTION3_BUTTON;
break;
case AB_DEFAULT_BTN_CANCEL: token = AB_BIL_CANCEL_BUTTON;
break;
case AB_DEFAULT_BTN_NONE: token = AB_BIL_NONE;
break;
default:
break;
}
return (token);
}
AB_DEFAULT_BUTTON
bilP_token_to_default_button(BIL_TOKEN token)
{
AB_DEFAULT_BUTTON button = AB_DEFAULT_BTN_UNDEF;
switch (token)
{
case AB_BIL_ACTION1_BUTTON: button = AB_DEFAULT_BTN_ACTION1;
break;
case AB_BIL_ACTION2_BUTTON: button = AB_DEFAULT_BTN_ACTION2;
break;
case AB_BIL_ACTION3_BUTTON: button = AB_DEFAULT_BTN_ACTION3;
break;
case AB_BIL_CANCEL_BUTTON: button = AB_DEFAULT_BTN_CANCEL;
break;
case AB_BIL_NONE: button = AB_DEFAULT_BTN_NONE;
break;
default:
break;
}
return (button);
}
STRING
bilP_default_button_to_string(AB_DEFAULT_BUTTON button)
{
BIL_TOKEN token = AB_BIL_UNDEF;
STRING string = NULL;
if (token = bilP_default_button_to_token(button))
string = bilP_token_to_string(token);
return (string);
}