/* **********************************************************************
 * *                                                                    *
 * *    AMS Header File                                                 *
 * *                                                                    *
 * **********************************************************************
 * File: iris/xuif/ams.h
 *
 *                        COPYRIGHT (c) 2005  BY
 *          SIGMET INCORPORATED, WESTFORD MASSACHUSETTS, U.S.A.
 * 
 * THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND  COPIED
 * ONLY  IN  ACCORDANCE WITH  THE  TERMS  OF  SUCH  LICENSE  AND WITH THE
 * INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE  OR  ANY OTHER
 * COPIES  THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
 * OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF  THE  SOFTWARE  IS  HEREBY
 * TRANSFERED.
 */

#ifndef AMS_H
#define AMS_H

#ifdef AMS_ALLOCATE
#define EXTERN
#else
#define EXTERN extern
#endif

/*-----------------------------------------------------------------------------
Variables
*/
/*The default width and height are set after first XtManagedChild call*/
EXTERN Dimension iams_defl_width_c;   
EXTERN Dimension iams_defl_height_c;

EXTERN SINT2 cur_tbl_len_c;

/*-----------------------------------------------------------------------------
Widgets & Callbacks 
*/

EXTERN Widget ams_mainbar;
EXTERN Widget ams_cmdsbtn, ams_cmdspdw;
EXTERN Widget ams_filebtn, ams_filepdw;
void ams_file_cbf( Widget wgt, int idx_a, XmPushButtonCallbackStruct* cbd );
void ams_maincmds_cbf( Widget wgt, int idx_a, XmPushButtonCallbackStruct* cbd );

EXTERN Widget ams_printpdw;

/* selections */

EXTERN Widget ams_switchlab, ams_switchtxt;
void ams_switchtxt_cbf( Widget wgt_a, void*tag, void* cbd );

EXTERN Widget ams_legendlab;

/* Warn product button and text */
EXTERN XsBTN_TXT ams_warnprod_type;
void ams_warnprodbtn_cbf( Widget wgt, void* tag, void* cbd );
void ams_warnprodtxt_cbf( Widget wgt, void* tag, void* cbd );

/* Warn product popup list */
EXTERN XsFLB *ams_warnprodlist;
void ams_warnprodlistpop(char *sptr_a, UINT4 ilen_a);


EXTERN Widget ams_alrtstatopt, ams_alrtstatbtns[3];
void ams_alrtstatopt_cbf( Widget wgt, void* tag, void* cbd );

/* New config button and text */
EXTERN XsBTN_TXT ams_newconfg_type;
void ams_newconfgbtn_cbf( Widget wgt, void* tag, void* cbd );
void ams_newconfgtxt_cbf( Widget wgt, void* tag, void* cbd );

/* New config popup list */
EXTERN XsFLB *ams_newconfglist;
void ams_newconfglistpop( char *sptr_a, UINT4 ilen_a );


EXTERN Widget ams_applybtn, ams_clrbtn;
void ams_applybtn_cbf( Widget wgt, void *tag, void *cbd );
void ams_clrbtn_cbf( Widget wgt, void *tag, void *cbd );



/* List */
EXTERN Widget ams_recordlst;
void ams_recordlst_cbf( Widget wgt, void *tag, void *cbd );

void ams_update
  ( const struct mode_switching_table *pams_a, UINT4 ilen_a );

#define SMSG_WRITELOCK "\
Tap is Write-Locked."

#undef EXTERN
#endif
