Thumbnail

- Main Page
- Related Pages
- Data Structures
- Files
- Examples

Enumerations | Functions
Thumbnail

## Enumerations

## Functions
Eina_Bool | elm_need_ethumb (void)
| Request that your elementary application needs ethumb. More...
void * | elm_thumb_ethumb_client_get (void)
| Get the ethumb_client handle so custom configuration can be made. More...
Eina_Bool | elm_thumb_ethumb_client_connected_get (void)
| Get the ethumb_client connection state. More...
Evas_Object * | elm_thumb_add (Evas_Object *parent)
| Add a new thumb object to the parent. More...
void | elm_thumb_file_set (Eo *obj, const char *file, const char *key)
| Set the file that will be used as thumbnail source. More...
void | elm_thumb_file_get (const Eo *obj, const char **file, const char **key)
| Get the image or video path and key used to generate the thumbnail. More...

## Detailed Description

A thumbnail object is used for displaying the thumbnail of an image or video. You must have compiled Elementary with `Ethumb_Client` support. Also, Ethumb's DBus service must be present and auto-activated in order to have thumbnails generated. You must also have a session bus, not a system one.

Once the thumbnail object becomes visible, it will check if there is a previously generated thumbnail image for the file set on it. If not, it will start generating this thumbnail.

Different configuration settings will cause different thumbnails to be generated even on the same file.

Generated thumbnails are stored under `$HOME/`.thumbnails/. Check Ethumb's documentation to change this path, and to see other configuration options.

If you set formatting features such as, aspect, size, format, orientation, crop, compression, or quality after the thumbnail has been shown, it needs to be reloaded with elm_thumb_reload.

This widget emits the following signals:

- `"clicked"` - This is called when a user has clicked the thumbnail object without dragging it around.
- `"clicked,double"` - This is called when a user has double-clicked the thumbnail object.
- `"press"` - This is called when a user has pressed down over the thumbnail object.
- `"generate,start"` - The thumbnail generation has started.
- `"generate,stop"` - The generation process has stopped.
- `"generate,error"` - The thumbnail generation failed.
- `"load,error"` - The thumbnail image loading failed.

Available styles:

- `"default"`
- `"noframe"`

An example of use of thumbnail:

- Thumb - generating thumbnails.

## Enumeration Type Documentation

enum Elm_Thumb_Animation_Setting

Used to set if a video thumbnail is animating or not.

Enumerator
ELM_THUMB_ANIMATION_START | Play animation once.
ELM_THUMB_ANIMATION_LOOP | Keep playing animation until stop is requested.
ELM_THUMB_ANIMATION_STOP | Stop playing the animation.

## Function Documentation

Eina_Bool elm_need_ethumb | ( | void |  | ) |

Request that your elementary application needs ethumb.

This initializes the Ethumb library when called and if support exists it returns `EINA_TRUE`, otherwise returns `EINA_FALSE`. This must be called before any other function that deals with elm_thumb objects or ethumb_client instances.

Examples:
  fileselector_example.c, and thumb_example_01.c.

Evas_Object* elm_thumb_add | ( | Evas_Object * | parent | ) |

Add a new thumb object to the parent.

Parameters

  parent | The parent object.

Returns
  The new object or NULL if it cannot be created.

See also
  elm_thumb_file_set()
  elm_thumb_ethumb_client_get()

References ELM_THUMB_ANIMATION_LOOP, ELM_THUMB_ANIMATION_START, and ELM_THUMB_ANIMATION_STOP.

Eina_Bool elm_thumb_ethumb_client_connected_get | ( | void |  | ) |

Get the ethumb_client connection state.

Returns
  `EINA_TRUE` if the client is connected to the server or `EINA_FALSE` otherwise.

References elm_drop_target_add(), elm_drop_target_del(), and ELM_SEL_FORMAT_IMAGE.

Referenced by elm_icon_file_get().

void* elm_thumb_ethumb_client_get | ( | void |  | ) |

Get the ethumb_client handle so custom configuration can be made.

Returns
  Ethumb_Client instance or NULL.

The ethumb client handle returned may or may not be NULL. It may or may not survive into the future (ethumbd may become disconnected). Do not use this unless you know what you are doing.

void elm_thumb_file_get | ( | const Eo * | obj,
|  | const char ** | file,
|  | const char ** | key
| ) |  |

Get the image or video path and key used to generate the thumbnail.

See also
  elm_thumb_file_set()
  elm_thumb_path_get()

Parameters

  [out] | file | The path to file that will be used as thumbnail source.
  [out] | key | The key used in case of an EET file.

void elm_thumb_file_set | ( | Eo * | obj,
|  | const char * | file,
|  | const char * | key
| ) |  |

Set the file that will be used as thumbnail source.

The file can be an image or a video (in that case, acceptable extensions are: avi, mp4, ogv, mov, mpg and wmv). To start the video animation, use the function elm_thumb_animate().

See also
  elm_thumb_file_get()
  elm_thumb_reload()
  elm_thumb_animate()

Parameters

  [in] | file | The path to file that will be used as thumbnail source.
  [in] | key | The key used in case of an EET file.