Added SILC Thread Queue API
[crypto.git] / apps / irssi / src / core / expandos.h
index 3dcb527e7480528afdf0f4307dca773039e17233..45608a264984c194a062ed858f50f107115a5eb4 100644 (file)
@@ -5,7 +5,7 @@
 
 /* first argument of signal must match to active .. */
 typedef enum {
-        EXPANDO_ARG_NONE,
+        EXPANDO_ARG_NONE = 1,
         EXPANDO_ARG_SERVER,
         EXPANDO_ARG_WINDOW,
        EXPANDO_ARG_WINDOW_ITEM,
@@ -16,6 +16,8 @@ typedef enum {
 typedef char* (*EXPANDO_FUNC)
        (SERVER_REC *server, void *item, int *free_ret);
 
+extern const char *current_expando;
+
 /* Create expando - overrides any existing ones.
    ... = signal, type, ..., NULL - list of signals that might change the
    value of this expando */
@@ -28,6 +30,9 @@ void expando_destroy(const char *key, EXPANDO_FUNC func);
 void expando_bind(const char *key, int funccount, SIGNAL_FUNC *funcs);
 void expando_unbind(const char *key, int funccount, SIGNAL_FUNC *funcs);
 
+/* Returns [<signal id>, EXPANDO_ARG_xxx, <signal id>, ..., -1] */
+int *expando_get_signals(const char *key);
+
 /* internal: */
 EXPANDO_FUNC expando_find_char(char chr);
 EXPANDO_FUNC expando_find_long(const char *key);