## CajaInfoProvider

CajaInfoProvider — Interface to provide additional information about files

## Functions

void | ( *CajaInfoProviderUpdateComplete ) ()
CajaOperationResult | caja_info_provider_update_file_info ()
void | caja_info_provider_cancel_update ()
void | caja_info_provider_update_complete_invoke ()

## Types and Values

| CajaInfoProvider
struct | CajaInfoProviderIface

## Object Hierarchy

        GInterface
        ╰── CajaInfoProvider

## Prerequisites

CajaInfoProvider requires GObject.

## Includes

    #include <libcaja-extension/caja-column-provider.h>

## Description

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

## Functions

### CajaInfoProviderUpdateComplete ()

    void
    (*CajaInfoProviderUpdateComplete) (CajaInfoProvider *provider,
                                       CajaOperationHandle *handle,
                                       CajaOperationResult result,
                                       gpointer user_data);

### caja_info_provider_update_file_info ()

    CajaOperationResult
    caja_info_provider_update_file_info (CajaInfoProvider *provider,
                                         CajaFileInfo *file,
                                         GClosure *update_complete,
                                         CajaOperationHandle **handle);

#### Returns

### caja_info_provider_cancel_update ()

    void
    caja_info_provider_cancel_update (CajaInfoProvider *provider,
                                      CajaOperationHandle *handle);

### caja_info_provider_update_complete_invoke ()

    void
    caja_info_provider_update_complete_invoke
                                   (GClosure *update_complete,
                                    CajaInfoProvider *provider,
                                    CajaOperationHandle *handle,
                                    CajaOperationResult result);

## Types and Values

### CajaInfoProvider

    typedef struct _CajaInfoProvider CajaInfoProvider;

### struct CajaInfoProviderIface

    struct CajaInfoProviderIface {
        GTypeInterface g_iface;

        CajaOperationResult (*update_file_info) (CajaInfoProvider     *provider,
                                                 CajaFileInfo         *file,
                                                 GClosure             *update_complete,
                                                 CajaOperationHandle **handle);
        void                (*cancel_update)    (CajaInfoProvider     *provider,
                                                 CajaOperationHandle  *handle);
    };

Interface for extensions to provide additional information about files.

#### Members

GTypeInterface `g_iface`; | The parent interface. |
`update_file_info` () | Returns a CajaOperationResult. See `caja_info_provider_update_file_info()` for details. |
`cancel_update` () | Cancels a previous call to `caja_info_provider_update_file_info()`. See `caja_info_provider_cancel_update()` for details. |