Пример #1
0
static void
_dialog_delete_ok_clicked_cb(void *data, Evas_Object *btn, void *ev)
{
   Enna_Localfiles_Priv *priv = data;
   Enna_File *file = evas_object_data_get(priv->dialog, "file");

   if (priv->file_dialog)
     enna_file_free(priv->file_dialog);
   priv->file_dialog = enna_file_ref(file);


   if (file->type == ENNA_FILE_DIRECTORY)
     {
        eio_dir_unlink(file->mrl,
                       _dir_filter_cb,
                       _dir_progress_cb,
                       _delete_done_cb,
                       _error_cb,
                       priv);
     }
   else if (file->type == ENNA_FILE_FILE)
     {
        eio_file_unlink(file->mrl,
                        _delete_done_cb,
                        _error_cb,
                        priv);
     }

   evas_object_del(priv->dialog);
}
Пример #2
0
static void
_delete_done_cb(void *data, Eio_File *handler)
{
   Enna_Localfiles_Priv *priv = data;

   enna_browser_file_del(priv->browser, priv->file_dialog);
   enna_file_free(priv->file_dialog);
}
Пример #3
0
static void
bs_menu_delete (void)
{
    Enna_File *f;

    if (!mod->menu)
        return;

    EINA_LIST_FREE(mod->menu_items, f);
        enna_file_free(f);

    ENNA_OBJECT_DEL(mod->menu);
}
Пример #4
0
static void
_dialog_rename_ok_clicked_cb(void *data, Evas_Object *btn, void *ev)
{
   Enna_Localfiles_Priv *priv = data;
   Enna_File *file;
   Evas_Object *entry;
   const char *new_name;
   const char *new_path;


   file = evas_object_data_get(priv->dialog, "file");
   entry = evas_object_data_get(priv->dialog, "entry");
   new_name = elm_object_text_get(entry);
   new_path = eina_stringshare_printf("%s/%s", ecore_file_dir_get(file->mrl),
                                        new_name);

   priv->new_path = new_path;

   if (priv->file_dialog)
     enna_file_free(priv->file_dialog);
   priv->file_dialog = enna_file_ref(file);

   if (file->type == ENNA_FILE_DIRECTORY)
     {
        eio_dir_move(file->mrl,
                     new_path,
                       _dir_filter_cb,
                       _dir_progress_cb,
                       _rename_done_cb,
                       _error_cb,
                       priv);
     }
   else if (file->type == ENNA_FILE_FILE)
     {
        eio_file_move(file->mrl,
                      new_path,
                      _dir_progress_cb,
                      _rename_done_cb,
                      _error_cb,
                        priv);
     }

   evas_object_del(priv->dialog);
}
Пример #5
0
void
enna_browser_del(Enna_Browser *b)
{
    Enna_File *file;
    char *token;

    if (!b)
        return;

    if (b->queue_idler)
        ecore_idler_del(b->queue_idler);
    b->queue_idler = NULL;
    eina_stringshare_del(b->uri);
    if (b->ev_handler)
        ecore_event_handler_del(b->ev_handler);
    EINA_LIST_FREE(b->files, file)
        enna_file_free(file);
    EINA_LIST_FREE(b->tokens, token)
        free(token);
    if (b->vfs)
        b->vfs->func.del(b->priv_module);
    free(b);
}