2010-04-22 12:17:51 -07:00
|
|
|
#include "e_mod_main.h"
|
|
|
|
|
2011-02-20 23:30:55 -08:00
|
|
|
typedef struct _Plugin Plugin;
|
|
|
|
|
|
|
|
struct _Plugin
|
|
|
|
{
|
2011-11-29 19:32:54 -08:00
|
|
|
Evry_Plugin base;
|
2011-02-20 23:30:55 -08:00
|
|
|
};
|
|
|
|
|
|
|
|
static Evry_Plugin *p1, *p2;
|
2010-04-22 12:17:51 -07:00
|
|
|
|
2010-06-04 12:32:59 -07:00
|
|
|
static Evry_Plugin *
|
2011-02-20 23:30:55 -08:00
|
|
|
_begin(Evry_Plugin *plugin, const Evry_Item *it __UNUSED__)
|
2010-06-04 12:32:59 -07:00
|
|
|
{
|
2011-02-20 23:30:55 -08:00
|
|
|
Plugin *p;
|
|
|
|
|
|
|
|
EVRY_PLUGIN_INSTANCE(p, plugin);
|
2011-11-29 19:32:54 -08:00
|
|
|
|
2011-02-20 23:30:55 -08:00
|
|
|
return EVRY_PLUGIN(p);
|
2010-06-04 12:32:59 -07:00
|
|
|
}
|
|
|
|
|
2010-04-22 12:17:51 -07:00
|
|
|
static void
|
2011-02-20 23:30:55 -08:00
|
|
|
_finish(Evry_Plugin *plugin)
|
2010-04-22 12:17:51 -07:00
|
|
|
{
|
2011-02-20 23:30:55 -08:00
|
|
|
GET_PLUGIN(p, plugin);
|
2011-11-29 19:32:54 -08:00
|
|
|
|
2010-04-22 12:17:51 -07:00
|
|
|
EVRY_PLUGIN_ITEMS_FREE(p);
|
2011-02-20 23:30:55 -08:00
|
|
|
E_FREE(p);
|
2010-04-22 12:17:51 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
static int
|
2011-02-20 23:30:55 -08:00
|
|
|
_fetch(Evry_Plugin *plugin, const char *input)
|
2010-04-22 12:17:51 -07:00
|
|
|
{
|
|
|
|
Evry_Item *it;
|
2011-11-29 19:32:54 -08:00
|
|
|
|
2011-02-20 23:30:55 -08:00
|
|
|
GET_PLUGIN(p, plugin);
|
2010-04-23 17:54:12 -07:00
|
|
|
|
2010-04-22 12:17:51 -07:00
|
|
|
if (input)
|
|
|
|
{
|
2011-11-29 19:32:54 -08:00
|
|
|
if (!p->base.items)
|
|
|
|
{
|
|
|
|
it = evry_item_new(NULL, EVRY_PLUGIN(p), input, NULL, NULL);
|
|
|
|
it->fuzzy_match = 999;
|
|
|
|
EVRY_PLUGIN_ITEM_APPEND(p, it);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
it = p->base.items->data;
|
|
|
|
EVRY_ITEM_LABEL_SET(it, input);
|
|
|
|
evry_item_changed(it, 0, 0);
|
|
|
|
}
|
|
|
|
return 1;
|
2010-04-22 12:17:51 -07:00
|
|
|
}
|
2011-08-10 03:59:31 -07:00
|
|
|
|
|
|
|
EVRY_PLUGIN_ITEMS_FREE(p);
|
2011-11-29 19:32:54 -08:00
|
|
|
|
2010-04-22 12:17:51 -07:00
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
Eina_Bool
|
|
|
|
evry_plug_text_init(void)
|
|
|
|
{
|
2011-08-12 10:18:25 -07:00
|
|
|
p1 = EVRY_PLUGIN_BASE("Text", "accessories-text-editor",
|
2011-11-29 19:32:54 -08:00
|
|
|
EVRY_TYPE_TEXT, _begin, _finish, _fetch);
|
2010-04-22 12:17:51 -07:00
|
|
|
|
2011-08-12 10:18:25 -07:00
|
|
|
p2 = EVRY_PLUGIN_BASE("Text", "accessories-text-editor",
|
2011-11-29 19:32:54 -08:00
|
|
|
EVRY_TYPE_TEXT, _begin, _finish, _fetch);
|
2010-04-23 17:54:12 -07:00
|
|
|
|
2011-08-10 03:59:31 -07:00
|
|
|
if (evry_plugin_register(p1, EVRY_PLUGIN_OBJECT, 999))
|
2010-05-06 06:09:14 -07:00
|
|
|
{
|
2011-11-29 19:32:54 -08:00
|
|
|
p1->config->trigger = eina_stringshare_add(" ");
|
|
|
|
p1->config->aggregate = EINA_FALSE;
|
|
|
|
p1->config->top_level = EINA_FALSE;
|
|
|
|
p1->config->view_mode = VIEW_MODE_LIST;
|
2010-05-06 06:09:14 -07:00
|
|
|
}
|
2010-05-20 08:41:27 -07:00
|
|
|
|
2010-05-06 06:09:14 -07:00
|
|
|
if (evry_plugin_register(p2, EVRY_PLUGIN_SUBJECT, 999))
|
|
|
|
{
|
2011-11-29 19:32:54 -08:00
|
|
|
p2->config->trigger = eina_stringshare_add(" ");
|
|
|
|
p2->config->aggregate = EINA_FALSE;
|
|
|
|
p2->config->top_level = EINA_FALSE;
|
|
|
|
p2->config->view_mode = VIEW_MODE_LIST;
|
2010-05-06 06:09:14 -07:00
|
|
|
}
|
2010-05-20 08:41:27 -07:00
|
|
|
|
2010-04-27 20:22:40 -07:00
|
|
|
return EINA_TRUE;
|
2010-04-22 12:17:51 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
void
|
|
|
|
evry_plug_text_shutdown(void)
|
|
|
|
{
|
|
|
|
EVRY_PLUGIN_FREE(p1);
|
|
|
|
EVRY_PLUGIN_FREE(p2);
|
|
|
|
}
|
2011-11-29 19:32:54 -08:00
|
|
|
|