## GcrKeyWidget

GcrKeyWidget — Key widget and renderer

## Synopsis

                        GcrKeyWidget;
                        GcrKeyWidgetClass;
    struct              GcrKeyRenderer;
    struct              GcrKeyRendererClass;
    GcrKeyWidget *      gcr_key_widget_new                  (GckAttributes *attrs);
    GckAttributes *     gcr_key_widget_get_attributes       (GcrKeyWidget *self);
    void                gcr_key_widget_set_attributes       (GcrKeyWidget *self,
                                                             GckAttributes *attrs);
    GcrKeyRenderer *    gcr_key_renderer_new                (const gchar *label,
                                                             GckAttributes *attrs);
    GckAttributes *     gcr_key_renderer_get_attributes     (GcrKeyRenderer *self);
    void                gcr_key_renderer_set_attributes     (GcrKeyRenderer *self,
                                                             GckAttributes *attrs);

## Object Hierarchy

      GObject
       +----GcrKeyRenderer

## Implemented Interfaces

GcrKeyRenderer implements GcrRendererIface.

## Description

A GcrKeyWidget can be used to display a RSA or DSA key. The widget is normally in a collapsed state showing only details, but can be expanded by the user.

Use `gcr_key_widget_new()` to create a new key widget. Only one key can be displayed. A GcrKeyWidget contains a GcrViewer internally and GcrKeyRenderer is used to render the key to the viewer. To show more than one key in a view, create the viewer and add renderers to it.

## Details

### GcrKeyWidget

    typedef struct _GcrKeyWidget GcrKeyWidget;

A widget that displays a key.

### GcrKeyWidgetClass

    typedef struct _GcrKeyWidgetClass GcrKeyWidgetClass;

The class for GcrKeyWidget

### struct GcrKeyRenderer

    struct GcrKeyRenderer;

An implementation of GcrRenderer which renders keys.

### struct GcrKeyRendererClass

    struct GcrKeyRendererClass {
    	GObjectClass parent_class;
    };

The class for GcrKeyRenderer.

GObjectClass `parent_class`; | The parent class.

### gcr_key_widget_new ()

    GcrKeyWidget *      gcr_key_widget_new                  (GckAttributes *attrs);

Create a new key widget which displays a given key in the attributes.

`attrs` : | Key to display, or `NULL`
Returns : | A newly allocated GcrKeyWidget, which should be freed with `g_object_unref()`.

### gcr_key_widget_get_attributes ()

    GckAttributes *     gcr_key_widget_get_attributes       (GcrKeyWidget *self);

Get the attributes displayed in the widget.

`self` : | The key widget
Returns : | The attributes, owned by the widget.

### gcr_key_widget_set_attributes ()

    void                gcr_key_widget_set_attributes       (GcrKeyWidget *self,
                                                             GckAttributes *attrs);

Get the attributes displayed in the widget. The attributes should represent either an RSA or DSA key in PKCS#11 style.

`self` : | The key widget
`attrs` : | The attributes to display

### gcr_key_renderer_new ()

    GcrKeyRenderer *    gcr_key_renderer_new                (const gchar *label,
                                                             GckAttributes *attrs);

Create a new key renderer which renders a given key in the attributes.

`label` : | Label describing the key
`attrs` : | Key to display, or `NULL`
Returns : | A newly allocated GcrKeyRenderer, which should be freed with `g_object_unref()`.

### gcr_key_renderer_get_attributes ()

    GckAttributes *     gcr_key_renderer_get_attributes     (GcrKeyRenderer *self);

Get the attributes displayed in the renderer.

`self` : | The key renderer
Returns : | The attributes, owned by the renderer.

### gcr_key_renderer_set_attributes ()

    void                gcr_key_renderer_set_attributes     (GcrKeyRenderer *self,
                                                             GckAttributes *attrs);

Get the attributes displayed in the renderer. The attributes should represent either an RSA or DSA key in PKCS#11 style.

`self` : | The key renderer
`attrs` : | The attributes to display