Plugins: Added completer_remove

This commit is contained in:
James Booth
2016-04-07 21:25:12 +01:00
parent a328367eb4
commit bfdc3b8807
8 changed files with 60 additions and 0 deletions

View File

@@ -213,6 +213,34 @@ python_api_completer_add(PyObject *self, PyObject *args)
return Py_BuildValue("");
}
static PyObject *
python_api_completer_remove(PyObject *self, PyObject *args)
{
const char *key = NULL;
PyObject *items = NULL;
if (!PyArg_ParseTuple(args, "sO", &key, &items)) {
return Py_BuildValue("");
}
Py_ssize_t len = PyList_Size(items);
char *c_items[len];
Py_ssize_t i = 0;
for (i = 0; i < len; i++) {
PyObject *item = PyList_GetItem(items, i);
char *c_item = PyString_AsString(item);
c_items[i] = c_item;
}
c_items[len] = NULL;
allow_python_threads();
autocompleters_remove(key, c_items);
disable_python_threads();
return Py_BuildValue("");
}
static PyObject*
python_api_notify(PyObject *self, PyObject *args)
{
@@ -664,6 +692,7 @@ static PyMethodDef apiMethods[] = {
{ "register_command", python_api_register_command, METH_VARARGS, "Register a command." },
{ "register_timed", python_api_register_timed, METH_VARARGS, "Register a timed function." },
{ "completer_add", python_api_completer_add, METH_VARARGS, "Add items to an autocompleter." },
{ "completer_remove", python_api_completer_remove, METH_VARARGS, "Remove items from an autocompleter." },
{ "send_line", python_api_send_line, METH_VARARGS, "Send a line of input." },
{ "notify", python_api_notify, METH_VARARGS, "Send desktop notification." },
{ "get_current_recipient", python_api_get_current_recipient, METH_VARARGS, "Return the jid of the recipient of the current window." },