## NMVpnPluginUiWidget

NMVpnPluginUiWidget

## Functions

NMVpnPluginUiInterface * | ( *NMVpnPluginUiFactory ) ()
NMVpnPluginUiInterface * | nm_vpn_plugin_ui_factory ()
NMVpnPluginUiWidgetInterface * | nm_vpn_plugin_ui_interface_ui_factory ()
guint32 | nm_vpn_plugin_ui_interface_get_capabilities ()
NMConnection * | nm_vpn_plugin_ui_interface_import ()
gboolean | nm_vpn_plugin_ui_interface_export ()
char * | nm_vpn_plugin_ui_interface_get_suggested_name ()
gboolean | nm_vpn_plugin_ui_interface_delete_connection ()
GObject * | nm_vpn_plugin_ui_widget_interface_get_widget ()
gboolean | nm_vpn_plugin_ui_widget_interface_update_connection ()
gboolean | nm_vpn_plugin_ui_widget_interface_save_secrets ()

## Types and Values

enum | NMVpnPluginUiCapability
#define | NM_VPN_PLUGIN_UI_INTERFACE_NAME
#define | NM_VPN_PLUGIN_UI_INTERFACE_DESC
#define | NM_VPN_PLUGIN_UI_INTERFACE_SERVICE
enum | NMVpnPluginUiInterfaceProp

## Description

## Functions

### NMVpnPluginUiFactory ()

    NMVpnPluginUiInterface *
    (*NMVpnPluginUiFactory) (GError **error);

### nm_vpn_plugin_ui_factory ()

    NMVpnPluginUiInterface *
    nm_vpn_plugin_ui_factory (GError **error);

### nm_vpn_plugin_ui_interface_ui_factory ()

    NMVpnPluginUiWidgetInterface *
    nm_vpn_plugin_ui_interface_ui_factory (NMVpnPluginUiInterface *iface,
                                           NMConnection *connection,
                                           GError **error);

### nm_vpn_plugin_ui_interface_get_capabilities ()

    guint32
    nm_vpn_plugin_ui_interface_get_capabilities
                                   (NMVpnPluginUiInterface *iface);

### nm_vpn_plugin_ui_interface_import ()

    NMConnection *
    nm_vpn_plugin_ui_interface_import (NMVpnPluginUiInterface *iface,
                                       const char *path,
                                       GError **error);

### nm_vpn_plugin_ui_interface_export ()

    gboolean
    nm_vpn_plugin_ui_interface_export (NMVpnPluginUiInterface *iface,
                                       const char *path,
                                       NMConnection *connection,
                                       GError **error);

### nm_vpn_plugin_ui_interface_get_suggested_name ()

    char *
    nm_vpn_plugin_ui_interface_get_suggested_name
                                   (NMVpnPluginUiInterface *iface,
                                    NMConnection *connection);

### nm_vpn_plugin_ui_interface_delete_connection ()

    gboolean
    nm_vpn_plugin_ui_interface_delete_connection
                                   (NMVpnPluginUiInterface *iface,
                                    NMConnection *connection,
                                    GError **error);

`nm_vpn_plugin_ui_interface_delete_connection` is deprecated and should not be used in newly-written code.

### nm_vpn_plugin_ui_widget_interface_get_widget ()

    GObject *
    nm_vpn_plugin_ui_widget_interface_get_widget
                                   (NMVpnPluginUiWidgetInterface *iface);

### nm_vpn_plugin_ui_widget_interface_update_connection ()

    gboolean
    nm_vpn_plugin_ui_widget_interface_update_connection
                                   (NMVpnPluginUiWidgetInterface *iface,
                                    NMConnection *connection,
                                    GError **error);

### nm_vpn_plugin_ui_widget_interface_save_secrets ()

    gboolean
    nm_vpn_plugin_ui_widget_interface_save_secrets
                                   (NMVpnPluginUiWidgetInterface *iface,
                                    NMConnection *connection,
                                    GError **error);

`nm_vpn_plugin_ui_widget_interface_save_secrets` is deprecated and should not be used in newly-written code.

## Types and Values

### enum NMVpnPluginUiCapability

Flags that indicate to UI programs certain capabilities of the plugin.

#### Members

NM_VPN_PLUGIN_UI_CAPABILITY_NONE | unknown or no capability |
NM_VPN_PLUGIN_UI_CAPABILITY_IMPORT | the plugin can import new connections |
NM_VPN_PLUGIN_UI_CAPABILITY_EXPORT | the plugin can export connections |
NM_VPN_PLUGIN_UI_CAPABILITY_IPV6 | the plugin supports IPv6 addressing |

### NM_VPN_PLUGIN_UI_INTERFACE_NAME

    #define NM_VPN_PLUGIN_UI_INTERFACE_NAME "name"

### NM_VPN_PLUGIN_UI_INTERFACE_DESC

    #define NM_VPN_PLUGIN_UI_INTERFACE_DESC "desc"

### NM_VPN_PLUGIN_UI_INTERFACE_SERVICE

    #define NM_VPN_PLUGIN_UI_INTERFACE_SERVICE "service"

### enum NMVpnPluginUiInterfaceProp

GObject property numbers that plugins should override to provide certain information to UI programs.

#### Members

NM_VPN_PLUGIN_UI_INTERFACE_PROP_FIRST |  |
NM_VPN_PLUGIN_UI_INTERFACE_PROP_NAME | the VPN plugin's name |
NM_VPN_PLUGIN_UI_INTERFACE_PROP_DESC | description of the VPN plugin and what VPN services it supports |
NM_VPN_PLUGIN_UI_INTERFACE_PROP_SERVICE | the D-Bus service name used by the plugin's VPN service daemon |