## EpcProgressWindow EpcProgressWindow — provide feedback during lengthly operations |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <libepc-ui/progress-window.h>

    struct              EpcProgressWindowClass;
                        EpcProgressWindowPrivate;
    struct              EpcProgressWindow;
    GtkWidget *         epc_progress_window_new             (const gchar *title,
                                                             GtkWindow *parent,
                                                             const gchar *message);
    void                epc_progress_window_update          (EpcProgressWindow *window,
                                                             gdouble progress,
                                                             const gchar *message);
    void                epc_progress_window_install         (GtkWindow *parent);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBin
                               +----GtkWindow
                                     +----EpcProgressWindow

## Implemented Interfaces

EpcProgressWindow implements AtkImplementorIface and GtkBuildable.

## Properties

      "message"                  gchar*                : Read / Write / Construct
      "progress"                 gdouble               : Read / Write / Construct
      "title"                    gchar*                : Read / Write / Construct

## Description

The EpcProgressWindow can be used to provide some feedback during lengthly operations, like generating server keys.

See also: `epc_tls_private_key_new()`

## Details

### struct EpcProgressWindowClass

    struct EpcProgressWindowClass {
    };

Virtual methods of the EpcProgressWindow class.

### EpcProgressWindowPrivate

    typedef struct _EpcProgressWindowPrivate EpcProgressWindowPrivate;

Private fields of the EpcProgressWindow class.

### struct EpcProgressWindow

    struct EpcProgressWindow;

Public fields of the EpcProgressWindow class.

### epc_progress_window_new ()

    GtkWidget *         epc_progress_window_new             (const gchar *title,
                                                             GtkWindow *parent,
                                                             const gchar *message);

Creates a new EpcProgressWindow instance.

`title` : | the title of the window
`parent` : | the transient parent of the window, or `NULL`
`message` : | the message to show, or `NULL`
Returns : | The newly created EpcProgressWindow.

### epc_progress_window_update ()

    void                epc_progress_window_update          (EpcProgressWindow *window,
                                                             gdouble progress,
                                                             const gchar *message);

Updates the EpcProgressWindow with new progress information. The `progress` is expressed as percentage in the range [0..1], or -1 if the progress cannot be estimated.

See also: "message", "progress"

`window` : | a EpcProgressWindow
`progress` : | the current progress, or -1
`message` : | a description of the current progress

### epc_progress_window_install ()

    void                epc_progress_window_install         (GtkWindow *parent);

Configures the hooks provided by libepc to use EpcProgressWindow when for performing long standing tasks like for instance generating private keys.

See also: `epc_tls_set_private_key_hooks()`

`parent` : | the transient parent of the window, or `NULL`

## Property Details

### The `"message"` property

      "message"                  gchar*                : Read / Write / Construct

The progress message to show.

Default value: NULL

### The `"progress"` property

      "progress"                 gdouble               : Read / Write / Construct

Current progress, or -1.

Allowed values: [-1,1]

Default value: -1

### The `"title"` property

      "title"                    gchar*                : Read / Write / Construct

The title to show.

Default value: NULL