/* **********************************************************************
 * *                                                                    *
 * *  Archive menu header file                                          *
 * *                                                                    *
 * **********************************************************************
 * File: iris/xuif/arc.h
 *
 *                     COPYRIGHT (c) 2001, 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.
 */

#ifdef ARC_ALLOCATE
#define EXTERN
#else
#define EXTERN extern
#endif


#define TAPTAG_X_P    0
#define TAPINDX_X_P   2
#define TAPSITE_X_P   8
#define TAPTYPE_X_P  14
#define TAPNAME_X_P  20 
#define TAPPARM_X_P  33 
#define TAPTASK_X_P  62 
#define TAPTIME_X_P  75 
/*-----------------------------------------------------------------------------
Variables
*/

/*The default width and height are set after first XtManagedChild call*/
EXTERN SINT2 itap_defl_width_c;   
EXTERN SINT2 itap_defl_height_c;


EXTERN SOUT_OPT     tapoptions_c;
EXTERN struct device_info tape_list[MAX_OUT_DEVICES];

/*-----------------------------------------------------------------------------
Widgets & Callbacks 
*/
EXTERN char   stapname_c[21];
EXTERN Widget tap_mainbar;
EXTERN Widget tap_cmdsbtn, tap_cmdspdw;
void tap_maincmds_cbf( Widget wgt, int idx_a, XmPushButtonCallbackStruct* cbd );
EXTERN Widget tap_devsbtn, tap_devspdw;
void tap_devs_cbf( Widget wgt_a, int idx_a, XmPushButtonCallbackStruct* cbd_a );
EXTERN Widget tap_filebtn, tap_filepdw;
void   tap_file_cbf( Widget w, int index, XmPushButtonCallbackStruct *cbd );
EXTERN Widget tap_menubtn, tap_menupdw;
void   tap_menu_cbf( Widget w, int index, XmPushButtonCallbackStruct *cbd );
EXTERN Widget tap_helpbtn, tap_helppdw;

EXTERN Widget tap_printpdw;

void   tap_recordlst_cbf( Widget w, char *tag, XmListCallbackStruct *cbd );
void   tap_recordlst_focus( Widget base, Widget pop, XFocusChangeEvent *event );

#ifdef SIGMET_OUTPUT_H
void   StrToTAPEntry( char str_a[], STP_SUM *entry_a );
#endif

EXTERN Widget tap_sep, tap_cmdslab,  tap_cmdsopt, tap_cmdspop, tap_cmdsbtns[6];
void   tap_cmds_cbf( Widget wgt_a,int idx_a, XmPushButtonCallbackStruct* cbd_a );
EXTERN Widget tap_statlab,  tap_stattxt;
EXTERN Widget tap_writelab, tap_writetxt;

EXTERN Widget tap_namelab,  tap_nametxt;
EXTERN Widget tap_sumalab,  tap_sumatxt;
EXTERN XsPDW_TXT tap_start;
void tap_startpdw_cbf( Widget wgt, void *, void *);
void tap_starttxt_cbf( Widget wgt, void *, void *);


/* List Filter */
#ifdef SIGMET_OUTPUT_H
EXTERN STAP_UPD  tapupdate_c;
#endif
EXTERN SFLT      tapfilter_c;

#ifdef SIGMET_OUTPUT_H
EXTERN STP_SUM   hot_tap_entries_c[MAX_SCROLL_SIZE];
#endif

EXTERN int          tap_num_sel_taplst_c;
EXTERN int          tap_making_selection_c;

EXTERN Widget    tap_filtertxt;

EXTERN Widget    tap_flgndlab;         /* Line one */

EXTERN XsPDW_TXT tap_fsite;
void      tap_fsitepdw_cbf( Widget wgt_a, void *idx_a, void* cbd_a );
void      tap_fsitetxt_cbf( Widget wgt, void* tag, void* cbd );

EXTERN XsPDW_TXT tap_ftype;
void      tap_ftypepdw_cbf( Widget wgt_a, void *idx_a, void* cbd_a );
void      tap_ftypetxt_cbf( Widget wgt_a, void *idx_a, void* cbd_a );

EXTERN Widget    tap_fprodtxt;
void      tap_fprodtxt_cbf( Widget wgt, void* tag, void* cbd );
EXTERN Widget    tap_ftasktxt;
void      tap_ftasktxt_cbf( Widget wgt, void* tag, void* cbd );


EXTERN XsPDW_TXT tap_fhour;
void      tap_fhourpdw_cbf( Widget wgt, void *tag, void *cbf );
void      tap_fhourfromtxt_cbf( Widget wgt, void* tag, void* cbd );
EXTERN Widget    tap_fhourtotxt;
void      tap_fhourtotxt_cbf( Widget wgt, void* tag, void* cbd );


EXTERN XsPDW_TXT tap_fday;
void      tap_fdaypdw_cbf( Widget wgt, void* tag, void* cbd );
void      tap_fdaytxt_cbf( Widget wgt, void* tag, void* cbd );
EXTERN XsPDW_TXT tap_fmon;
void      tap_fmonpdw_cbf( Widget wgt, int indx, void* cbd );
EXTERN XsPDW_TXT tap_fyear;
void      tap_fyearpdw_cbf( Widget wgt, void* tag, void* cbd );
void      tap_fyeartxt_cbf( Widget wgt, void* tag, void* cbd );

EXTERN XsPDW_TXT tap_fmax;
void      tap_fmaxpdw_cbf( Widget wgt, void* tag, void* cbd );
void      tap_fmaxtxt_cbf( Widget wgt, void* tag, void* cbd );
EXTERN Widget    tap_ffilelab;

EXTERN Widget    tap_fgrabbtn;         /* Line two */
void      tap_fgrabbtn_cbf( Widget wgt, void* tag, void* cbd );
EXTERN Widget    tap_fapplybtn;
void      tap_fapplybtn_cbf( Widget wgt, void* tag, void* cbd );
EXTERN Widget    tap_fwildbtn;
void      tap_fwildbtn_cbf(Widget wgt, char *tag, XmAnyCallbackStruct *cbd);
EXTERN Widget    tap_ftimebtn,  tap_ftimebtns[4];
void      tap_ftimebtn_cbf( Widget wgt, void* tag, void* cbd );
EXTERN Widget tap_fcmdsbar, tap_fcmdsbtn, tap_fcmdspdw;
void      tap_fcmdspdw_cbf( Widget wgt_a, int idx_a, XmPushButtonCallbackStruct* cbd_a );
EXTERN int tap_fcmds_idx_c;


/* Pop */
EXTERN Widget    tap_retrvshl;
void tap_retrv_cbf( Widget wgt_a, int idx_a,XmPushButtonCallbackStruct* cbd_a );



/* List */
EXTERN Widget tap_legendlab;
EXTERN Widget tap_recordlst;
void tap_postit( Widget wgtbase_a,Widget wgtpop_a,XButtonPressedEvent *evt_a );
void tap_update_rqst( void );
void tap_update( char *sptr_a, UINT4 ilen_a );


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

#undef EXTERN
