Files
bitchx/include/tcl_bx.h
Kevin Easton ac84793dd6 Switch from direct tcl_interp->result access to Tcl_GetStringResult() and Tcl_AppendResult()
This allows building against recent libtcl versions.

A fallback definition of Tcl_GetStringResult() is included so that building against libtcl 7 still works.
2017-07-01 00:47:20 +10:00

86 lines
2.3 KiB
C

/*
*
* CopyRight Colten Edwards Oct 96
*
*/
#ifndef TCL_BX_H_
#define TCL_BX_H_
int handle_dcc_bot (int, char *);
int handle_tcl_chan (int, char *, char *, char *);
typedef struct {
char *name;
int (*func) ();
int access;
char *help;
} cmd_t;
extern cmd_t C_msg[];
extern cmd_t C_dcc[];
void tclTimerTimeout(struct timeval *wake_time);
int check_tcl_dcc (char *, char *, char *, int);
void tcl_command (char *, char *, char *, char *);
void tcl_load (char *, char *, char *, char *);
#ifdef WANT_TCL
#define USE_NON_CONST
#include <tcl.h>
#if (TCL_MAJOR_VERSION < 8)
#define Tcl_GetStringResult(interp) ((interp)->result)
#endif
extern Tcl_Interp *tcl_interp;
void check_tcl_tand (char *, char *, char *);
void check_tcl_msgm (char *, char *, char *, char *, char *);
void check_tcl_pubm (char *, char *, char *, char *);
int check_tcl_pub (char *, char *, char *, char *);
int check_tcl_msg (char *, char *, char *, char *, char *);
int check_tcl_ctcp (char *, char *, char *, char *, char *, char *);
void check_tcl_join (char *,char *, char *, char *);
int check_tcl_raw (char *, char *);
void check_tcl_rejoin (char *,char *,char *,char *);
void check_tcl_split (char *,char *,char *,char *);
void check_tcl_chat (char *,int, char *);
int check_tcl_ctcr (char *,char *,char *,char *,char *,char *);
void check_tcl_mode (char *,char *,char *,char *,char *);
void check_tcl_kick (char *,char *,char *,char *,char *,char *);
void check_tcl_nick (char *,char *,char *,char *, char *);
void check_tcl_topc (char *,char *,char *,char *,char *);
void check_tcl_sign (char *, char *,char *, char *,char *);
void check_tcl_part (char *, char *, char *, char *);
int check_help_bind (char *);
int check_tcl_input (char *);
int check_on_hook (int, char *);
void check_timers (void);
void check_utimers (void);
void tcl_list_timer (Tcl_Interp *, TimerList *);
int check_on_hook (int, char *);
void add_tcl_vars(void);
void tcl_init (void);
void add_to_tcl(Window *, char *);
void init_public_tcl(Tcl_Interp *);
void init_public_var(Tcl_Interp *);
int Tcl_Invoke(Tcl_Interp *, char *, char *);
#define STDVAR (ClientData cd, Tcl_Interp *irp, int argc, char *argv[])
#define BADARGS(nl,nh,example) \
if ((argc<(nl)) || (argc>(nh))) { \
Tcl_AppendResult(irp,"wrong # args: should be \"",argv[0], \
(example),"\"",NULL); \
return TCL_ERROR; \
}
#endif
#endif