## GnomeDbDsnSpec GnomeDbDsnSpec — a form to enter information required to open a connection |

## Synopsis

                        GnomeDbDsnSpec;
                        GnomeDbDsnSpecClass;
                        GnomeDbDsnSpecPrivate;
    GtkWidget*          gnome_db_dsn_spec_new               (const gchar *provider);
    void                gnome_db_dsn_spec_set_provider      (GnomeDbDsnSpec *spec,
                                                             const gchar *provider);
    gboolean            gnome_db_dsn_spec_is_valid          (GnomeDbDsnSpec *spec);
    gchar*              gnome_db_dsn_spec_get_specs         (GnomeDbDsnSpec *spec);
    void                gnome_db_dsn_spec_set_specs         (GnomeDbDsnSpec *spec,
                                                             const gchar *specs_string);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBox
                                     +----GtkVBox
                                           +----GnomeDbDsnSpec

## Implemented Interfaces

GnomeDbDsnSpec implements AtkImplementorIface and GtkBuildable.

## Properties

      "provider"                 gchararray            : Read / Write

## Signals

      "changed"                                        : Run Last

## Description

The GnomeDbDsnSpec widget contains a form to display and edit the information required by a provider to open a connection.

## Details

### GnomeDbDsnSpec

    typedef struct _GnomeDbDsnSpec GnomeDbDsnSpec;

### GnomeDbDsnSpecClass

    typedef struct {
    	GtkVBoxClass           parent_class;

    	/* signals */
    	void                (* changed) (GnomeDbDsnSpec *spec);
    } GnomeDbDsnSpecClass;

### GnomeDbDsnSpecPrivate

    typedef struct _GnomeDbDsnSpecPrivate GnomeDbDsnSpecPrivate;

### gnome_db_dsn_spec_new ()

    GtkWidget*          gnome_db_dsn_spec_new               (const gchar *provider);

Creates a new GnomeDbDsnSpec widget

`provider` : | the provider to be used
Returns : |

### gnome_db_dsn_spec_set_provider ()

    void                gnome_db_dsn_spec_set_provider      (GnomeDbDsnSpec *spec,
                                                             const gchar *provider);

Updates the displayed fields in `spec` to represent the required and possible arguments that a connection to a database through `provider` would require

`spec` : | a GnomeDbDsnSpec widget
`provider` : | the provider to be used

### gnome_db_dsn_spec_is_valid ()

    gboolean            gnome_db_dsn_spec_is_valid          (GnomeDbDsnSpec *spec);

Tells if the current information displayed in `spec` respects the provider's specifications (about non NULL values for example)

`spec` : | a GnomeDbDsnSpec widget
Returns : |

### gnome_db_dsn_spec_get_specs ()

    gchar*              gnome_db_dsn_spec_get_specs         (GnomeDbDsnSpec *spec);

Get the currently displayed provider's specific connection string

`spec` : | a GnomeDbDsnSpec widget
Returns : | a new string, or `NULL` if no provider have been specified

### gnome_db_dsn_spec_set_specs ()

    void                gnome_db_dsn_spec_set_specs         (GnomeDbDsnSpec *spec,
                                                             const gchar *specs_string);

Sets the connection string to be displayed in the widget

`spec` : | a GnomeDbDsnSpec widget
`specs_string` : |

## Property Details

### The `"provider"` property

      "provider"                 gchararray            : Read / Write

Default value: NULL

## Signal Details

### The `"changed"` signal

    void                user_function                      (GnomeDbDsnSpec *dbdsnspec,
                                                            gpointer        user_data)      : Run Last

`dbdsnspec` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

## See Also

The GnomeDbDsnEditor to edit a complete DSN definition, or the GnomeDbDsnAssistant to create a new DSN using an assistant.