X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=alias.cpkg;h=d1b536cbdf6d783c060c8930f5f70f70f0f3700d;hp=2651026821d6ee7ae5b14bd92732fec8f7d8aac5;hb=c9f72ab0cd65f517a2047feb942ad85025c1b7e8;hpb=6aac4a85332ec3647c29a7b996cade972895a8b8 diff --git a/alias.cpkg b/alias.cpkg index 2651026..d1b536c 100644 --- a/alias.cpkg +++ b/alias.cpkg @@ -39,6 +39,8 @@ @import "lib-lua/base.cpkg" static rx_t *Alternates = NULL, *UnAlternates = NULL; +rx_t *MailLists = NULL, *UnMailLists = NULL; +rx_t *SubscribedLists = NULL, *UnSubscribedLists = NULL; @static_package MAlias { /* @@ -70,12 +72,36 @@ static rx_t *Alternates = NULL, *UnAlternates = NULL; rx_list_add(&Alternates, rx); RETURN(); }; - void unalternates(rx_t rx) { rx_list_remove(&Alternates, rx); rx_list_add(&UnAlternates, rx); RETURN(); }; + + void lists(rx_t rx) { + rx_list_remove(&UnMailLists, rx); + rx_list_add(&MailLists, rx); + RETURN(); + }; + void unlists(rx_t rx) { + rx_list_remove(&MailLists, rx); + rx_list_remove(&SubscribedLists, rx); + rx_list_add(&UnMailLists, rx); + RETURN(); + }; + + void subscribe(rx_t rx) { + rx_list_remove(&UnMailLists, rx); + rx_list_remove(&UnSubscribedLists, rx); + rx_list_add(&MailLists, rx); + rx_list_add(&SubscribedLists, rx_dup(rx)); + RETURN(); + }; + void unsubscribe(rx_t rx) { + rx_list_remove(&SubscribedLists, rx); + rx_list_add(&UnSubscribedLists, rx); + RETURN(); + }; }; alias_t *Aliases;