## ChamplainLayer ChamplainLayer — A container for ChamplainMarker |

## Synopsis

                        ChamplainLayer;
    ChamplainLayer*     champlain_layer_new                 (void);
    void                champlain_layer_add_marker          (ChamplainLayer *layer,
                                                             ChamplainBaseMarker *marker);
    void                champlain_layer_remove_marker       (ChamplainLayer *layer,
                                                             ChamplainBaseMarker *marker);
    void                champlain_layer_animate_in_all_markers
                                                            (ChamplainLayer *layer);
    void                champlain_layer_animate_out_all_markers
                                                            (ChamplainLayer *layer);
    void                champlain_layer_show                (ChamplainLayer *layer);
    void                champlain_layer_hide                (ChamplainLayer *layer);
    void                champlain_layer_show_all_markers    (ChamplainLayer *layer);
    void                champlain_layer_hide_all_markers    (ChamplainLayer *layer);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----ClutterActor
                   +----ClutterGroup
                         +----ChamplainLayer
                               +----ChamplainSelectionLayer

## Implemented Interfaces

ChamplainLayer implements ClutterScriptable and ClutterContainer.

## Description

A ChamplainLayer is little more than a ClutterContainer. It keeps the markers ordered so that they display correctly.

Use clutter_container_add to add markers to the layer and clutter_container_remove to remove them.

## Details

### ChamplainLayer

    typedef struct _ChamplainLayer ChamplainLayer;

### champlain_layer_new ()

    ChamplainLayer*     champlain_layer_new                 (void);

Returns : | a new ChamplainLayer ready to be used as a ClutterContainer for the markers.

Since 0.2.2

### champlain_layer_add_marker ()

    void                champlain_layer_add_marker          (ChamplainLayer *layer,
                                                             ChamplainBaseMarker *marker);

Adds the marker to the layer.

`layer` : | a ChamplainLayer
`marker` : | a ChamplainBaseMarker

Since 0.4

### champlain_layer_remove_marker ()

    void                champlain_layer_remove_marker       (ChamplainLayer *layer,
                                                             ChamplainBaseMarker *marker);

Removes the marker from the layer.

`layer` : | a ChamplainLayer
`marker` : | a ChamplainBaseMarker

Since 0.4

### champlain_layer_animate_in_all_markers ()

    void                champlain_layer_animate_in_all_markers
                                                            (ChamplainLayer *layer);

Fade in all markers with an animation

`layer` : | a ChamplainLayer

Since 0.4

### champlain_layer_animate_out_all_markers ()

    void                champlain_layer_animate_out_all_markers
                                                            (ChamplainLayer *layer);

Fade out all markers with an animation

`layer` : | a ChamplainLayer

Since 0.4

### champlain_layer_show ()

    void                champlain_layer_show                (ChamplainLayer *layer);

Makes the layer and its markers visible.

`layer` : | a ChamplainLayer

Since 0.4

### champlain_layer_hide ()

    void                champlain_layer_hide                (ChamplainLayer *layer);

Makes the layer and its markers invisible.

`layer` : | a ChamplainLayer

Since 0.4

### champlain_layer_show_all_markers ()

    void                champlain_layer_show_all_markers    (ChamplainLayer *layer);

Calls clutter_actor_show on all markers

`layer` : | a ChamplainLayer

Since 0.4

### champlain_layer_hide_all_markers ()

    void                champlain_layer_hide_all_markers    (ChamplainLayer *layer);

Calls clutter_actor_hide on all markers

`layer` : | a ChamplainLayer

Since 0.4