## GnomeDbBasicForm

GnomeDbBasicForm — A GUI form to present data in a GdaParameterList

##

# Synopsis

    struct      GnomeDbBasicForm;
    struct      GnomeDbBasicFormClass;
    struct      GnomeDbBasicFormPriv;
    GtkWidget*  gnome_db_basic_form_new         (GdaParameterList *data_set);
    GtkWidget*  gnome_db_basic_form_new_custom  (GdaParameterList *data_set,
                                                 const gchar *glade_file,
                                                 const gchar *root_element,
                                                 const gchar *form_prefix);
    void        gnome_db_basic_form_set_current_as_orig
                                                (GnomeDbBasicForm *form);
    gboolean    gnome_db_basic_form_is_valid    (GnomeDbBasicForm *form);
    GdaParameterList* gnome_db_basic_form_get_data_set
                                                (GnomeDbBasicForm *form);
    gboolean    gnome_db_basic_form_has_been_changed
                                                (GnomeDbBasicForm *form);
    void        gnome_db_basic_form_show_entries_actions
                                                (GnomeDbBasicForm *form,
                                                 gboolean show_actions);
    void        gnome_db_basic_form_reset       (GnomeDbBasicForm *form);
    void        gnome_db_basic_form_entry_show  (GnomeDbBasicForm *form,
                                                 GdaParameter *param,
                                                 gboolean show);
    void        gnome_db_basic_form_entry_set_sensitive
                                                (GnomeDbBasicForm *form,
                                                 GdaParameter *param,
                                                 gboolean sensitive);
    void        gnome_db_basic_form_set_entries_auto_default
                                                (GnomeDbBasicForm *form,
                                                 gboolean auto_default);
    void        gnome_db_basic_form_set_entries_default
                                                (GnomeDbBasicForm *form);
    GtkWidget*  gnome_db_basic_form_new_in_dialog
                                                (GdaParameterList *data_set,
                                                 GtkWindow *parent,
                                                 const gchar *title,
                                                 const gchar *header);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBox
                                     +----GtkVBox
                                           +----GnomeDbBasicForm
                                                 +----GnomeDbRawForm

## Implemented Interfaces

GnomeDbBasicForm implements AtkImplementorIface.

## Properties

      "headers-sensitive"    gboolean             : Read / Write
      "layout-spec"          gpointer             : Write
      "paramlist"            gpointer             : Read / Write

## Signal Prototypes

    "param-changed"
                void        user_function      (GnomeDbBasicForm *dbbasicform,
                                                GObject *arg1,
                                                gboolean arg2,
                                                gpointer user_data);

## Description

## Details

### struct GnomeDbBasicForm

    struct GnomeDbBasicForm;

### struct GnomeDbBasicFormClass

    struct GnomeDbBasicFormClass {

    	GtkVBoxClass          parent_class;

    	/* signals */
            void       (*param_changed)         (GnomeDbBasicForm *form, GdaParameter *param, gboolean is_user_modif);
    };

### struct GnomeDbBasicFormPriv

    struct GnomeDbBasicFormPriv;

### gnome_db_basic_form_new ()

    GtkWidget*  gnome_db_basic_form_new         (GdaParameterList *data_set);

Creates a new GnomeDbBasicForm widget using all the parameters provided in `paramlist`.

The global layout is rendered using a table (a GtkTable), and an entry is created for each node of `paramlist`.

`data_set` : |
Returns : | the new widget

### gnome_db_basic_form_new_custom ()

    GtkWidget*  gnome_db_basic_form_new_custom  (GdaParameterList *data_set,
                                                 const gchar *glade_file,
                                                 const gchar *root_element,
                                                 const gchar *form_prefix);

Creates a new GnomeDbBasicForm widget using all the parameters provided in `paramlist`.

The layout is specified in the `glade_file` specification, and an entry is created for each node of `paramlist`.

`data_set` : |
`glade_file` : | a Glade XML file name
`root_element` : | the name of the top-most widget in `glade_file` to use in the new form
`form_prefix` : | the prefix used to look for widgets to add entries in
Returns : | the new widget

### gnome_db_basic_form_set_current_as_orig ()

    void        gnome_db_basic_form_set_current_as_orig
                                                (GnomeDbBasicForm *form);

Tells `form` that the current values in the different entries are to be considered as the original values for all the entries; the immediate consequence is that any sub-sequent call to `gnome_db_basic_form_has_been_changed()` will return FALSE (of course until any entry is changed).

`form` : | a GnomeDbBasicForm widget

### gnome_db_basic_form_is_valid ()

    gboolean    gnome_db_basic_form_is_valid    (GnomeDbBasicForm *form);

Tells if the form can be used as-is (if all the parameters do have some valid values)

`form` : | a GnomeDbBasicForm widget
Returns : | TRUE if the form is valid

### gnome_db_basic_form_get_data_set ()

    GdaParameterList* gnome_db_basic_form_get_data_set
                                                (GnomeDbBasicForm *form);

Get a pointer to the GdaParameterList object which is modified by `form`

`form` : | a GnomeDbBasicForm widget
Returns : |

### gnome_db_basic_form_has_been_changed ()

    gboolean    gnome_db_basic_form_has_been_changed
                                                (GnomeDbBasicForm *form);

Tells if the form has had at least on entry changed, or not

`form` : | a GnomeDbBasicForm widget
Returns : |

### gnome_db_basic_form_show_entries_actions ()

    void        gnome_db_basic_form_show_entries_actions
                                                (GnomeDbBasicForm *form,
                                                 gboolean show_actions);

Show or hide the actions button available at the end of each data entry in the form

`form` : | a GnomeDbBasicForm widget
`show_actions` : | a boolean

### gnome_db_basic_form_reset ()

    void        gnome_db_basic_form_reset       (GnomeDbBasicForm *form);

Resets all the entries in the form to their original values

`form` : | a GnomeDbBasicForm widget

### gnome_db_basic_form_entry_show ()

    void        gnome_db_basic_form_entry_show  (GnomeDbBasicForm *form,
                                                 GdaParameter *param,
                                                 gboolean show);

Shows or hides the GnomeDbDataEntry in `form` which corresponds to the `param` parameter

`form` : | a GnomeDbBasicForm widget
`param` : | a GdaParameter object
`show` : |

### gnome_db_basic_form_entry_set_sensitive ()

    void        gnome_db_basic_form_entry_set_sensitive
                                                (GnomeDbBasicForm *form,
                                                 GdaParameter *param,
                                                 gboolean sensitive);

Shows or hides the GnomeDbDataEntry in `form` which corresponds to the `param` parameter

`form` : | a GnomeDbBasicForm widget
`param` : | a GdaParameter object
`sensitive` : |

### gnome_db_basic_form_set_entries_auto_default ()

    void        gnome_db_basic_form_set_entries_auto_default
                                                (GnomeDbBasicForm *form,
                                                 gboolean auto_default);

Sets weather all the GnomeDbDataEntry entries in the form must default to a default value if they are assigned a non valid value. Depending on the real type of entry, it will provide a default value which the user does not need to modify if it is OK.

For example a date entry can by default display the current date.

`form` : | a GnomeDbBasicForm widget
`auto_default` : |

### gnome_db_basic_form_set_entries_default ()

    void        gnome_db_basic_form_set_entries_default
                                                (GnomeDbBasicForm *form);

For each entry in the form, sets it to a default value if it is possible to do so.

`form` : | a GnomeDbBasicForm widget

### gnome_db_basic_form_new_in_dialog ()

    GtkWidget*  gnome_db_basic_form_new_in_dialog
                                                (GdaParameterList *data_set,
                                                 GtkWindow *parent,
                                                 const gchar *title,
                                                 const gchar *header);

Creates a new GnomeDbBasicForm widget in the same way as `gnome_db_basic_form_new()` and puts it into a GtkDialog widget. The returned dialog has the "Ok" and "Cancel" buttons which respectively return GTK_RESPONSE_ACCEPT and GTK_RESPONSE_REJECT.

The GnomeDbBasicForm widget is attached to the dialog using the user property "form".

`data_set` : |
`parent` : | the parent window for the new dialog, or `NULL`
`title` : | the title of the dialog window, or `NULL`
`header` : | a helper text displayed at the top of the dialog, or `NULL`
Returns : | the new GtkDialog widget

## Properties

"`headers-sensitive`" (gboolean : Read / Write) |
"`layout-spec`" (gpointer : Write) |
"`paramlist`" (gpointer : Read / Write) |

## Signals

### The "param-changed" signal

    void        user_function                  (GnomeDbBasicForm *dbbasicform,
                                                GObject *arg1,
                                                gboolean arg2,
                                                gpointer user_data);

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