## AmitkThresholdsDialog AmitkThresholdsDialog |

## Synopsis

    enum                AmitkThresholdScale;
    enum                AmitkThresholdArrow;
    enum                AmitkThresholdEntry;
    enum                AmitkThresholdLine;
    enum                AmitkThresholdLayout;
                        AmitkThreshold;
    GtkWidget*          amitk_threshold_new                 (AmitkDataSet *data_set,
                                                             AmitkThresholdLayout layout,
                                                             GtkWindow *parent,
                                                             gboolean minimal);
    void                amitk_threshold_new_data_set        (AmitkThreshold *threshold,
                                                             AmitkDataSet *new_data_set);
    void                amitk_threshold_style_widgets       (GtkWidget **radio_buttons,
                                                             GtkWidget *hbox);
    #define             AMITK_TYPE_THRESHOLD_DIALOG
    #define             AMITK_THRESHOLD_DIALOG              (obj)
    #define             AMITK_THRESHOLD_DIALOG_CLASS        (klass)
    #define             AMITK_IS_THRESHOLD_DIALOG           (obj)
    #define             AMITK_IS_THRESHOLD_DIALOG_CLASS     (klass)
                        AmitkThresholdDialog;
    GType               amitk_threshold_dialog_get_type     (void);
    GtkWidget*          amitk_threshold_dialog_new          (AmitkDataSet *data_set,
                                                             GtkWindow *parent);
    void                amitk_threshold_dialog_new_data_set (AmitkThresholdDialog *threshold_dialog,
                                                             AmitkDataSet *new_data_set);
    AmitkDataSet*       amitk_threshold_dialog_data_set     (AmitkThresholdDialog *threshold_dialog);
    #define             AMITK_TYPE_THRESHOLDS_DIALOG
    #define             AMITK_THRESHOLDS_DIALOG             (obj)
    #define             AMITK_THRESHOLDS_DIALOG_CLASS       (klass)
    #define             AMITK_IS_THRESHOLDS_DIALOG          (obj)
    #define             AMITK_IS_THRESHOLDS_DIALOG_CLASS    (klass)
                        AmitkThresholdsDialog;
    GType               amitk_thresholds_dialog_get_type    (void);
    GtkWidget*          amitk_thresholds_dialog_new         (GList *objects,
                                                             GtkWindow *parent);

## Description

## Details

### enum AmitkThresholdScale

    typedef enum {
      AMITK_THRESHOLD_SCALE_FULL,
      AMITK_THRESHOLD_SCALE_SCALED,
      AMITK_THRESHOLD_SCALE_NUM_SCALES
    } AmitkThresholdScale;

### enum AmitkThresholdArrow

    typedef enum {
      AMITK_THRESHOLD_ARROW_FULL_MIN,
      AMITK_THRESHOLD_ARROW_FULL_CENTER,
      AMITK_THRESHOLD_ARROW_FULL_MAX,
      AMITK_THRESHOLD_ARROW_SCALED_MIN,
      AMITK_THRESHOLD_ARROW_SCALED_CENTER,
      AMITK_THRESHOLD_ARROW_SCALED_MAX,
      AMITK_THRESHOLD_ARROW_NUM_ARROWS
    } AmitkThresholdArrow;

### enum AmitkThresholdEntry

    typedef enum {
      AMITK_THRESHOLD_ENTRY_MAX_ABSOLUTE,
      AMITK_THRESHOLD_ENTRY_MAX_PERCENT,
      AMITK_THRESHOLD_ENTRY_MIN_ABSOLUTE,
      AMITK_THRESHOLD_ENTRY_MIN_PERCENT,
      AMITK_THRESHOLD_ENTRY_NUM_ENTRIES
    } AmitkThresholdEntry;

### enum AmitkThresholdLine

    typedef enum {
      AMITK_THRESHOLD_LINE_MAX,
      AMITK_THRESHOLD_LINE_CENTER,
      AMITK_THRESHOLD_LINE_MIN,
      AMITK_THRESHOLD_LINE_NUM_LINES
    } AmitkThresholdLine;

### enum AmitkThresholdLayout

    typedef enum {
        AMITK_THRESHOLD_BOX_LAYOUT,
        AMITK_THRESHOLD_LINEAR_LAYOUT
    } AmitkThresholdLayout;

### AmitkThreshold

    typedef struct {
      GtkVBox vbox;

      gboolean minimal; /* true if we just want the color table menu and the color scale */
      AmitkViewMode view_mode;
      GtkWidget * color_scales[2];
      GtkWidget * histogram;
      GtkWidget * histogram_label;
      GnomeCanvasItem * color_scale_image[2][AMITK_THRESHOLD_SCALE_NUM_SCALES];
      GnomeCanvasItem * histogram_image;
      GnomeCanvasItem * arrow[2][AMITK_THRESHOLD_ARROW_NUM_ARROWS];
      GnomeCanvasItem * connector_line[2][AMITK_THRESHOLD_LINE_NUM_LINES];
      GtkWidget * spin_button[2][AMITK_THRESHOLD_ENTRY_NUM_ENTRIES];
      GtkWidget * color_table_label[AMITK_VIEW_MODE_NUM];
      GtkWidget * color_table_hbox[AMITK_VIEW_MODE_NUM];
      GtkWidget * color_table_menu[AMITK_VIEW_MODE_NUM];
      GtkWidget * color_table_independent[AMITK_VIEW_MODE_NUM];
      GtkWidget * threshold_ref_frame_menu[2];
      GtkWidget * percent_label[2];
      GtkWidget * absolute_label[2];
      GtkWidget * ref_frame_label[2];
      GtkWidget * full_label[2];
      GtkWidget * scaled_label[2];
      GtkWidget * type_button[AMITK_THRESHOLDING_NUM];
      GtkWidget * window_label;
      GtkWidget * window_vbox;
      GtkWidget * style_button[AMITK_THRESHOLD_STYLE_NUM];
      GtkWidget * min_max_label[AMITK_LIMIT_NUM];

      gdouble initial_y[2];
      amide_data_t initial_min[2];
      amide_data_t initial_max[2];

      amide_data_t threshold_max[2];
      amide_data_t threshold_min[2];

      GtkWidget * progress_dialog;

      AmitkDataSet * data_set; /* what data set this threshold corresponds to */
    } AmitkThreshold;

### amitk_threshold_new ()

    GtkWidget*          amitk_threshold_new                 (AmitkDataSet *data_set,
                                                             AmitkThresholdLayout layout,
                                                             GtkWindow *parent,
                                                             gboolean minimal);

`data_set` : |
`layout` : |
`parent` : |
`minimal` : |
Returns : |

### amitk_threshold_new_data_set ()

    void                amitk_threshold_new_data_set        (AmitkThreshold *threshold,
                                                             AmitkDataSet *new_data_set);

`threshold` : |
`new_data_set` : |

### amitk_threshold_style_widgets ()

    void                amitk_threshold_style_widgets       (GtkWidget **radio_buttons,
                                                             GtkWidget *hbox);

`radio_buttons` : |
`hbox` : |

### AMITK_TYPE_THRESHOLD_DIALOG

    #define AMITK_TYPE_THRESHOLD_DIALOG     (amitk_threshold_dialog_get_type ())

### AMITK_THRESHOLD_DIALOG()

    #define AMITK_THRESHOLD_DIALOG(obj)     (GTK_CHECK_CAST ((obj), AMITK_TYPE_THRESHOLD_DIALOG, AmitkThresholdDialog))

`obj` : |

### AMITK_THRESHOLD_DIALOG_CLASS()

    #define AMITK_THRESHOLD_DIALOG_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), AMITK_TYPE_THESHOLD_DIALOG, AmitkThresholdDialogClass))

`klass` : |

### AMITK_IS_THRESHOLD_DIALOG()

    #define AMITK_IS_THRESHOLD_DIALOG(obj)  (GTK_CHECK_TYPE ((obj), AMITK_TYPE_THRESHOLD_DIALOG))

`obj` : |

### AMITK_IS_THRESHOLD_DIALOG_CLASS()

    #define AMITK_IS_THRESHOLD_DIALOG_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), AMITK_TYPE_THRESHOLD_DIALOG))

`klass` : |

### AmitkThresholdDialog

    typedef struct {
      GtkDialog dialog;

      GtkWidget *data_set_label;
      GtkWidget *vbox;
      GtkWidget *threshold;
    } AmitkThresholdDialog;

### amitk_threshold_dialog_get_type ()

    GType               amitk_threshold_dialog_get_type     (void);

Returns : |

### amitk_threshold_dialog_new ()

    GtkWidget*          amitk_threshold_dialog_new          (AmitkDataSet *data_set,
                                                             GtkWindow *parent);

`data_set` : |
`parent` : |
Returns : |

### amitk_threshold_dialog_new_data_set ()

    void                amitk_threshold_dialog_new_data_set (AmitkThresholdDialog *threshold_dialog,
                                                             AmitkDataSet *new_data_set);

`threshold_dialog` : |
`new_data_set` : |

### amitk_threshold_dialog_data_set ()

    AmitkDataSet*       amitk_threshold_dialog_data_set     (AmitkThresholdDialog *threshold_dialog);

`threshold_dialog` : |
Returns : |

### AMITK_TYPE_THRESHOLDS_DIALOG

    #define AMITK_TYPE_THRESHOLDS_DIALOG     (amitk_thresholds_dialog_get_type ())

### AMITK_THRESHOLDS_DIALOG()

    #define AMITK_THRESHOLDS_DIALOG(obj)     (GTK_CHECK_CAST ((obj), AMITK_TYPE_THRESHOLDS_DIALOG, AmitkThresholdsDialog))

`obj` : |

### AMITK_THRESHOLDS_DIALOG_CLASS()

    #define AMITK_THRESHOLDS_DIALOG_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), AMITK_TYPE_THESHOLDS_DIALOG, AmitkThresholdsDialogClass))

`klass` : |

### AMITK_IS_THRESHOLDS_DIALOG()

    #define AMITK_IS_THRESHOLDS_DIALOG(obj)  (GTK_CHECK_TYPE ((obj), AMITK_TYPE_THRESHOLDS_DIALOG))

`obj` : |

### AMITK_IS_THRESHOLDS_DIALOG_CLASS()

    #define AMITK_IS_THRESHOLDS_DIALOG_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), AMITK_TYPE_THRESHOLDS_DIALOG))

`klass` : |

### AmitkThresholdsDialog

    typedef struct {
      GtkDialog dialog;

      GtkWidget *notebook;
      GList * thresholds;
    } AmitkThresholdsDialog;

### amitk_thresholds_dialog_get_type ()

    GType               amitk_thresholds_dialog_get_type    (void);

Returns : |

### amitk_thresholds_dialog_new ()

    GtkWidget*          amitk_thresholds_dialog_new         (GList *objects,
                                                             GtkWindow *parent);

`objects` : |
`parent` : |
Returns : |