## awn-overlayable awn-overlayable |

## Synopsis

    #define             AWN_OVERLAYABLE_GET_INTERFACE       (inst)
                        AwnOverlayable;
                        AwnOverlayableIface;
    AwnEffects*         awn_overlayable_get_effects         (AwnOverlayable *self);
    void                awn_overlayable_add_overlay         (AwnOverlayable *self,
                                                             AwnOverlay *overlay);
    void                awn_overlayable_remove_overlay      (AwnOverlayable *self,
                                                             AwnOverlay *overlay);
    GList*              awn_overlayable_get_overlays        (AwnOverlayable *self);

## Object Hierarchy

      GInterface
       +----AwnOverlayable

## Known Implementations

AwnOverlayable is implemented by AwnThemedIcon, AwnIcon, AwnImage and AwnAppletSimple.

## Description

## Details

### AWN_OVERLAYABLE_GET_INTERFACE()

    #define             AWN_OVERLAYABLE_GET_INTERFACE(inst)

`inst` : |

### AwnOverlayable

    typedef struct _AwnOverlayable AwnOverlayable;

### AwnOverlayableIface

    typedef struct {
      GTypeInterface parent;

      AwnEffects*   (*get_effects)          (AwnOverlayable* self);
    } AwnOverlayableIface;

### awn_overlayable_get_effects ()

    AwnEffects*         awn_overlayable_get_effects         (AwnOverlayable *self);

`self` : | AwnOverlayable instance.
Returns : | AwnEffects instance managing animations for this instance.

### awn_overlayable_add_overlay ()

    void                awn_overlayable_add_overlay         (AwnOverlayable *self,
                                                             AwnOverlay *overlay);

Adds an overlay to the list of rendered overlays.

`self` : | AwnOverlayable instance.
`overlay` : | AwnOverlay instance which should be added.

### awn_overlayable_remove_overlay ()

    void                awn_overlayable_remove_overlay      (AwnOverlayable *self,
                                                             AwnOverlay *overlay);

Removes overlay from the list of rendered overlays.

`self` : | AwnOverlayable instance.
`overlay` : | AwnOverlay which was previously added using awn_overlayable_add_overlay.

### awn_overlayable_get_overlays ()

    GList*              awn_overlayable_get_overlays        (AwnOverlayable *self);

`self` : | AwnOverlayable instance.
Returns : | a newly-allocated list of the overlays added for this instance.