## PeonyInfoProvider

PeonyInfoProvider — Interface to provide additional information about files

## Functions

void | (*PeonyInfoProviderUpdateComplete) ()
PeonyOperationResult | peony_info_provider_update_file_info ()
void | peony_info_provider_cancel_update ()
void | peony_info_provider_update_complete_invoke ()

## Types and Values

| PeonyInfoProvider
struct | PeonyInfoProviderIface

## Object Hierarchy

        GInterface
        ╰── PeonyInfoProvider

## Prerequisites

PeonyInfoProvider requires GObject.

## Includes

    #include <libpeony-extension/peony-column-provider.h>

## Description

PeonyInfoProvider allows extension to provide additional information about files. When `peony_info_provider_update_file_info()` is called by the application, extensions will know that it's time to add extra information to the provided PeonyFileInfo.

## Functions

### PeonyInfoProviderUpdateComplete ()

    void
    (*PeonyInfoProviderUpdateComplete) (PeonyInfoProvider *provider,
                                        PeonyOperationHandle *handle,
                                        PeonyOperationResult result,
                                        gpointer user_data);

### peony_info_provider_update_file_info ()

    PeonyOperationResult
    peony_info_provider_update_file_info (PeonyInfoProvider *provider,
                                          PeonyFileInfo *file,
                                          GClosure *update_complete,
                                          PeonyOperationHandle **handle);

### peony_info_provider_cancel_update ()

    void
    peony_info_provider_cancel_update (PeonyInfoProvider *provider,
                                       PeonyOperationHandle *handle);

### peony_info_provider_update_complete_invoke ()

    void
    peony_info_provider_update_complete_invoke
                                   (GClosure *update_complete,
                                    PeonyInfoProvider *provider,
                                    PeonyOperationHandle *handle,
                                    PeonyOperationResult result);

## Types and Values

### PeonyInfoProvider

    typedef struct _PeonyInfoProvider PeonyInfoProvider;

### struct PeonyInfoProviderIface

    struct PeonyInfoProviderIface {
        GTypeInterface g_iface;

        PeonyOperationResult (*update_file_info) (PeonyInfoProvider     *provider,
                                                 PeonyFileInfo         *file,
                                                 GClosure             *update_complete,
                                                 PeonyOperationHandle **handle);
        void                (*cancel_update)    (PeonyInfoProvider     *provider,
                                                 PeonyOperationHandle  *handle);
    };

Interface for extensions to provide additional information about files.

#### Members

`update_file_info` () | Returns a PeonyOperationResult. See `peony_info_provider_update_file_info()` for details. |
`cancel_update` () | Cancels a previous call to `peony_info_provider_update_file_info()`. See `peony_info_provider_cancel_update()` for details. |