## 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
       +----GInitiallyUnowned
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBin
                               +----GtkAlignment
                                     +----GcrKeyWidget

      GObject
       +----GcrKeyRenderer

## Implemented Interfaces

GcrKeyWidget implements AtkImplementorIface and GtkBuildable.

GcrKeyRenderer implements GcrRenderer.

## Properties

      "attributes"               GckAttributes*        : Read / Write
      "object"                   GckObject*            : Read / Write

## 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`. [allow-none]
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. [allow-none][transfer none]

### 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. [allow-none]

### 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. [allow-none]
`attrs` : | key to display, or `NULL`. [allow-none]
Returns : | a newly allocated GcrKeyRenderer, which should be freed with `g_object_unref()`. [transfer full]

### 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. [transfer none][allow-none]

### 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. [allow-none]

## Property Details

### The `"attributes"` property

      "attributes"               GckAttributes*        : Read / Write

The data displayed in the widget.

### The `"object"` property

      "object"                   GckObject*            : Read / Write

Key Object.