int plugin_emit_keypress (session *sess, unsigned int state, unsigned int keyval, int len, char *string) { char *word[PDIWORDS]; char keyval_str[16]; char state_str[16]; char len_str[16]; int i; if (!hook_list) return 0; sprintf (keyval_str, "%u", keyval); sprintf (state_str, "%u", state); sprintf (len_str, "%d", len); word[0] = "Key Press"; word[1] = keyval_str; word[2] = state_str; word[3] = string; word[4] = len_str; for (i = 5; i < PDIWORDS; i++) word[i] = "\000"; return plugin_hook_run (sess, word[0], word, NULL, NULL, HOOK_PRINT); }
int plugin_emit_print_attrs (session *sess, char *word[], time_t server_time) { hexchat_event_attrs attrs; attrs.server_time_utc = server_time; return plugin_hook_run (sess, word[0], word, NULL, &attrs, HOOK_PRINT_ATTRS); }
int plugin_emit_server_attrs (session *sess, char *name, char *word[], char *word_eol[], time_t server_time) { hexchat_event_attrs attrs; attrs.server_time_utc = server_time; return plugin_hook_run (sess, name, word, word_eol, &attrs, HOOK_SERVER_ATTRS); }
int plugin_emit_dummy_print(session *sess, char *name) { char *word[32]; int i; word[0] = name; for (i = 1; i < 32; i++) word[i] = "\000"; return plugin_hook_run(sess, name, word, nullptr, HOOK_PRINT); }
int plugin_emit_command (session *sess, char *name, char *word[], char *word_eol[]) { return plugin_hook_run (sess, name, word, word_eol, NULL, HOOK_COMMAND); }
int plugin_emit_print (session *sess, char *word[]) { return plugin_hook_run (sess, word[0], word, NULL, NULL, HOOK_PRINT); }
/* got a server PRIVMSG, NOTICE, numeric etc... */ int plugin_emit_server (session *sess, char *name, char *word[], char *word_eol[]) { return plugin_hook_run (sess, name, word, word_eol, NULL, HOOK_SERVER); }