Added tox_connected_identities and tox_disconnected_identities.
This commit is contained in:
parent
3731737800
commit
4882e83970
@ -1,4 +1,5 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <inttypes.h>
|
||||||
|
|
||||||
#include <weechat/weechat-plugin.h>
|
#include <weechat/weechat-plugin.h>
|
||||||
|
|
||||||
@ -7,21 +8,35 @@
|
|||||||
|
|
||||||
#include "tox-weechat-completion.h"
|
#include "tox-weechat-completion.h"
|
||||||
|
|
||||||
|
enum
|
||||||
|
{
|
||||||
|
TOX_WEECHAT_ALL_IDENTITIES,
|
||||||
|
TOX_WEECHAT_CONNECTED_IDENTITIES,
|
||||||
|
TOX_WEECHAT_DISCONNECTED_IDENTITIES,
|
||||||
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
tox_weechat_completion_identity(void *data,
|
tox_weechat_completion_identity(void *data,
|
||||||
const char *completion_item,
|
const char *completion_item,
|
||||||
struct t_gui_buffer *buffer,
|
struct t_gui_buffer *buffer,
|
||||||
struct t_gui_completion *completion)
|
struct t_gui_completion *completion)
|
||||||
{
|
{
|
||||||
|
int flag = (int)(intptr_t)data;
|
||||||
|
|
||||||
for (struct t_tox_weechat_identity *identity = tox_weechat_identities;
|
for (struct t_tox_weechat_identity *identity = tox_weechat_identities;
|
||||||
identity;
|
identity;
|
||||||
identity = identity->next_identity)
|
identity = identity->next_identity)
|
||||||
|
{
|
||||||
|
if (flag == TOX_WEECHAT_ALL_IDENTITIES
|
||||||
|
|| (flag == TOX_WEECHAT_CONNECTED_IDENTITIES && identity->tox != NULL)
|
||||||
|
|| (flag == TOX_WEECHAT_DISCONNECTED_IDENTITIES && identity->tox == NULL))
|
||||||
{
|
{
|
||||||
weechat_hook_completion_list_add(completion,
|
weechat_hook_completion_list_add(completion,
|
||||||
identity->name,
|
identity->name,
|
||||||
0,
|
0,
|
||||||
WEECHAT_LIST_POS_SORT);
|
WEECHAT_LIST_POS_SORT);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return WEECHAT_RC_OK;
|
return WEECHAT_RC_OK;
|
||||||
}
|
}
|
||||||
@ -31,5 +46,14 @@ tox_weechat_completion_init()
|
|||||||
{
|
{
|
||||||
weechat_hook_completion("tox_identities",
|
weechat_hook_completion("tox_identities",
|
||||||
"identity",
|
"identity",
|
||||||
tox_weechat_completion_identity, NULL);
|
tox_weechat_completion_identity,
|
||||||
|
(void *)(intptr_t)TOX_WEECHAT_ALL_IDENTITIES);
|
||||||
|
weechat_hook_completion("tox_connected_identities",
|
||||||
|
"identity",
|
||||||
|
tox_weechat_completion_identity,
|
||||||
|
(void *)(intptr_t)TOX_WEECHAT_CONNECTED_IDENTITIES);
|
||||||
|
weechat_hook_completion("tox_disconnected_identities",
|
||||||
|
"identity",
|
||||||
|
tox_weechat_completion_identity,
|
||||||
|
(void *)(intptr_t)TOX_WEECHAT_DISCONNECTED_IDENTITIES);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user