示例#1
0
static void
media_flag_set (Smart_Data *sd, Enna_File *file)
{
    const char *h_str;
    char *flag = NULL;

    if (!file)
        goto media_unknown;

    /* try to guess video flag, based on video resolution */
    h_str = enna_file_meta_get(file, "height");
    if (h_str)
    {
        int i, h;

        h = atoi (h_str);
        for (i = 0; flag_media_mapping[i].name; i++)
            if (h <= flag_media_mapping[i].min_height)
            {
                flag = strdup(flag_media_mapping[i].name);
                break;
            }

        if (!flag)
            flag = strdup("flags/media/divx");
        eina_stringshare_del(h_str);
    }

media_unknown:
    if (!flag)
        flag = strdup("flags/media/default");

    flag_set(sd, &sd->o_media, flag, "flags.media.swallow");
    ENNA_FREE(flag);
}
示例#2
0
static void
audio_flag_set (Smart_Data *sd, Enna_File *file)
{
    const char *c_str;
    char *flag = NULL;

    if (!file)
        goto audio_unknown;

    /* try to guess audio flag (naive method atm) */
    c_str = enna_file_meta_get(file, "audio_channels");
    if (c_str)
    {
        int i, c;

        c = atoi (c_str);
        for (i = 0; flag_audio_mapping[i].name; i++)
            if (c <= flag_audio_mapping[i].channels)
            {
                flag = strdup(flag_audio_mapping[i].name);
                break;
            }

        eina_stringshare_del(c_str);
    }

audio_unknown:
    if (!flag)
        flag = strdup("flags/audio/default");

    flag_set(sd, &sd->o_audio, flag, "flags.audio.swallow");
    ENNA_FREE(flag);
}
示例#3
0
static void
studio_flag_set (Smart_Data *sd, Enna_File *file)
{
    const char *studio;
    char *flag = NULL;

    if (!file)
        goto studio_unknown;

    /* try to guess studio flag */
    studio = enna_file_meta_get(file, "studio");
    if (studio)
    {
        int i;

        for (i = 0; flag_studio_mapping[i].name; i++)
            if (!strcasecmp (studio, flag_studio_mapping[i].fullname))
            {
                flag = strdup(flag_studio_mapping[i].name);
                break;
            }

        eina_stringshare_del(studio);
    }

studio_unknown:
    if (!flag)
        flag = strdup("flags/studio/default");

    flag_set(sd, &sd->o_studio, flag, "flags.studio.swallow");
    ENNA_FREE(flag);
}
示例#4
0
static int
metadata_set_text(Evas_Object *obj,
                  Enna_File *file, const char *name, int bold)
{
    int res = 0;
    const char *str = NULL;
    char *tmp = NULL;

    if (file)
        str =  enna_file_meta_get(file, name);

    if (!str)
        res = -1;
    else
        tmp = strdup(str);

    if(bold && str)
    {
        tmp = enna_util_str_chomp(tmp);
    }
    else
    {
        tmp = enna_util_str_chomp(tmp);
    }
    elm_label_ellipsis_set(obj, EINA_TRUE);
    elm_object_text_set(obj, tmp);
    ENNA_FREE(tmp);
    eina_stringshare_del(str);
    return res;
}
示例#5
0
文件: infos.c 项目: ychoucha/enna
    if (!text || !text[0] || text[0] == ' ')
        elm_layout_text_set(obj, "enna.text.genre", alt);
    else
    {
        tmp = eina_stringshare_printf("%s%s", prefix, text);
        elm_layout_text_set(obj, part, tmp);
        eina_stringshare_del(text);
        eina_stringshare_del(tmp);
    }
}

static const char *
_update_label(Evas_Object *parent __UNUSED__, Enna_File *file, const char *key)
{
    const char *meta;
    meta = enna_file_meta_get(file, key);
    
    return meta;
}

static Evas_Object *
_update_icon(Evas_Object *parent, Enna_File *file, const char *key)
{
    Evas_Object *ic = NULL;
    const char *path;

    ic = elm_icon_add(parent);
    path = enna_file_meta_get(file, key);

    if (path && path[0] != '/')
    {