## gtk_pairs gtk_pairs — The pairs dialog. |

## Synopsis

    void                (*GtkPairsInitFunc)                 (void);
    GtkWidget *         (*GtkPairsBuildWidgetsFunc)         ();
    gchar *             (*GtkPairsGetValuesAsLabelFunc)     (VisuPairData *data);
    void                (*GtkPairsSetValuesFunc)            (VisuPairData *data);
    void                gtkPairsInit                        ();
    void                gtkPairsBuild_window                (VisuUiMain *main);
    void                gtkPairsBuild_pairs                 (VisuUiMain *main,
                                                             VisuData *dataObj,
                                                             gboolean force);
    void                gtkPairsShow                        (VisuUiMain *main);
    void                gtkPairsSet_specificLabels          (GtkTreeIter *iter,
                                                             const gchar *label);
    void                gtkPairs_createPairs                ();
    void                gtkPairsIter_startSelected          (GtkPairsIter *iter);
    void                gtkPairsIter_nextSelected           (GtkPairsIter *iter);

## Description

## Details

### GtkPairsInitFunc ()

    void                (*GtkPairsInitFunc)                 (void);

Prototype of functions called once on V_Sim start-up.

### GtkPairsBuildWidgetsFunc ()

    GtkWidget *         (*GtkPairsBuildWidgetsFunc)         ();

Prototype of functions that create a container GtkWidgets will all element needed to change characteristic of a model.

Returns : | a newly allocated GtkWidget.

### GtkPairsGetValuesAsLabelFunc ()

    gchar *             (*GtkPairsGetValuesAsLabelFunc)     (VisuPairData *data);

Create a string, internationalised and in UTF-8, that describes the given pair `data`. This string is used in a column tree view to summarize the pair description.

`data` : | information about a pair.
Returns : | a newly created string.

### GtkPairsSetValuesFunc ()

    void                (*GtkPairsSetValuesFunc)            (VisuPairData *data);

Prototype of functions used to update the widgets with given pair `data`.

`data` : | informations about a pair.

### gtkPairsInit ()

    void                gtkPairsInit                        ();

Initialise the default values for the pair dialog. It does not build the interface, use `gtkPairsBuild_window()` to do it.

### gtkPairsBuild_window ()

    void                gtkPairsBuild_window                (VisuUiMain *main);

Create the dialog window for pairs.

`main` : | the command panel the about dialog is associated to.

### gtkPairsBuild_pairs ()

    void                gtkPairsBuild_pairs                 (VisuUiMain *main,
                                                             VisuData *dataObj,
                                                             gboolean force);

Update the list of pairs. This routine must be called only after `gtkPairsBuild_window()` has been called. The job is done only if the window is visible or if the `force` argument is used.

`main` : | the command panel the about dialog is associated to ;
`dataObj` : | the VisuData the pairs are related to (can be NULL, if none is loaded) ;
`force` : | build the pairs even if the window is hidden.

### gtkPairsShow ()

    void                gtkPairsShow                        (VisuUiMain *main);

Shows the pairs dialog and run possible update of the interface.

`main` : | the container for pairs dialog.

Since 3.6

### gtkPairsSet_specificLabels ()

    void                gtkPairsSet_specificLabels          (GtkTreeIter *iter,
                                                             const gchar *label);

Change the specific label shown in the treeview of pairs for the given iter. An iter in this treeview can be retrieve using the GtkPairsIter_struct objects.

`iter` : | the GtkTreeIter to set the label ;
`label` : | the value of the label to be set.

### gtkPairs_createPairs ()

    void                gtkPairs_createPairs                ();

Wrapper to get the current rendering window, retrieve its VisuData and call `visu_pair_build()` with appropriate arguments and then emit 'OpenGLAskForReDraw' if needed.

### gtkPairsIter_startSelected ()

    void                gtkPairsIter_startSelected          (GtkPairsIter *iter);

Initialise the given iterator `iter` on the first selected pair or set iter->data to NULL if none. If `iter->data` is not NULL, `gtkPairsIter_nextSelected()` must be called until `iter->data` is NULL to be sure that `iter->selected` list is freed.

`iter` : | an iterator.

### gtkPairsIter_nextSelected ()

    void                gtkPairsIter_nextSelected           (GtkPairsIter *iter);

Go to the next selected pair or set iter->data to NULL if none.

`iter` : | an iterator.