1 /* 2 * 3 * CopyRight Colten Edwards Oct 96 4 * 5 */ 6 7 #ifndef _IRCTCL_H 8 #define _IRCTCL_H 9 10 int handle_dcc_bot (int, char *); 11 int handle_tcl_chan (int, char *, char *, char *); 12 13 typedef struct { 14 char *name; 15 int (*func) (); 16 int access; 17 char *help; 18 } cmd_t; 19 20 extern cmd_t C_msg[]; 21 extern cmd_t C_dcc[]; 22 int check_tcl_dcc (char *, char *, char *, int); 23 24 void tcl_command (char *, char *, char *, char *); 25 void tcl_load (char *, char *, char *, char *); 26 27 #ifdef WANT_TCL 28 29 30 #include <tcl.h> 31 extern Tcl_Interp *tcl_interp; 32 void check_tcl_tand (char *, char *, char *); 33 void check_tcl_msgm (char *, char *, char *, char *, char *); 34 void check_tcl_pubm (char *, char *, char *, char *); 35 int check_tcl_pub (char *, char *, char *, char *); 36 int check_tcl_msg (char *, char *, char *, char *, char *); 37 int check_tcl_ctcp (char *, char *, char *, char *, char *, char *); 38 39 40 void check_tcl_join (char *,char *, char *, char *); 41 int check_tcl_raw (char *, char *); 42 void check_tcl_rejoin (char *,char *,char *,char *); 43 void check_tcl_split (char *,char *,char *,char *); 44 void check_tcl_chat (char *,int, char *); 45 int check_tcl_ctcr (char *,char *,char *,char *,char *,char *); 46 void check_tcl_mode (char *,char *,char *,char *,char *); 47 void check_tcl_kick (char *,char *,char *,char *,char *,char *); 48 void check_tcl_nick (char *,char *,char *,char *, char *); 49 void check_tcl_topc (char *,char *,char *,char *,char *); 50 void check_tcl_sign (char *, char *,char *, char *,char *); 51 void check_tcl_part (char *, char *, char *, char *); 52 int check_help_bind (char *); 53 int check_tcl_input (char *); 54 int check_on_hook (int, char *); 55 void check_timers (void); 56 void check_utimers (void); 57 void tcl_list_timer (Tcl_Interp *, TimerList *); 58 int check_on_hook (int, char *); 59 void add_tcl_vars(void); 60 61 void tcl_init (void); 62 void add_to_tcl(Window *, char *); 63 void init_public_tcl(Tcl_Interp *); 64 void init_public_var(Tcl_Interp *); 65 int Tcl_Invoke(Tcl_Interp *, char *, char *); 66 67 68 #define STDVAR (ClientData cd, Tcl_Interp *irp, int argc, char *argv[]) 69 70 #define BADARGS(nl,nh,example) \ 71 if ((argc<(nl)) || (argc>(nh))) { \ 72 Tcl_AppendResult(irp,"wrong # args: should be \"",argv[0], \ 73 (example),"\"",NULL); \ 74 return TCL_ERROR; \ 75 } 76 77 78 #endif 79 80 #endif 81