## EpcProgressWindow

EpcProgressWindow — provide feedback during lengthly operations

## Stability Level

Unstable, unless otherwise indicated

## Functions

GtkWidget * | epc_progress_window_new ()
void | epc_progress_window_update ()
void | epc_progress_window_install ()

## Properties

gchar * | message | Read / Write / Construct
gdouble | progress | Read / Write / Construct
gchar * | title | Read / Write / Construct

## Types and Values

struct | EpcProgressWindowClass
| EpcProgressWindowPrivate
struct | EpcProgressWindow

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBin
                        ╰── GtkWindow
                            ╰── EpcProgressWindow

## Implemented Interfaces

EpcProgressWindow implements AtkImplementorIface and GtkBuildable.

## Includes

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

## Description

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

See also: `epc_tls_private_key_new()`

## Functions

### epc_progress_window_new ()

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

Creates a new EpcProgressWindow instance.

#### Parameters

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”

#### Parameters

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()`

#### Parameters

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

## Types and Values

### 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.

## Property Details

### The `“message”` property

      “message”                  gchar *

The progress message to show.

Flags: Read / Write / Construct

Default value: NULL

### The `“progress”` property

      “progress”                 gdouble

Current progress, or -1.

Flags: Read / Write / Construct

Allowed values: [-1,1]

Default value: -1

### The `“title”` property

      “title”                    gchar *

The title to show.

Flags: Read / Write / Construct

Default value: NULL