コード例 #1
0
ファイル: grain_wshed.c プロジェクト: svn2github/gwyddion
static void
wshed_dialog_update_values(WshedControls *controls,
                           WshedArgs *args)
{
    args->locate_steps = gwy_adjustment_get_int(controls->locate_steps);
    args->locate_thresh = gwy_adjustment_get_int(controls->locate_thresh);
    args->locate_dropsize
        = gtk_adjustment_get_value(GTK_ADJUSTMENT(controls->locate_dropsize));
    args->wshed_steps = gwy_adjustment_get_int(controls->wshed_steps);
    args->wshed_dropsize
        = gtk_adjustment_get_value(GTK_ADJUSTMENT(controls->wshed_dropsize));
    args->inverted
        = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(controls->inverted));
}
コード例 #2
0
ファイル: polylevel.c プロジェクト: svn2github/gwyddion
static void
poly_level_update_values(PolyLevelControls *controls,
                         PolyLevelArgs *args)
{
    args->col_degree = gwy_adjustment_get_int(controls->col_degree);
    args->row_degree = gwy_adjustment_get_int(controls->row_degree);
    args->max_degree = gwy_adjustment_get_int(controls->max_degree);
    args->do_extract
        = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(controls->do_extract));
    args->same_degree
        = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(controls->same_degree));
    args->independent = gwy_radio_buttons_get_current(controls->type_group);
    if (controls->masking_group)
        args->masking = gwy_radio_buttons_get_current(controls->masking_group);
}
コード例 #3
0
ファイル: facet_analysis.c プロジェクト: svn2github/gwyddion
static void
facet_view_recompute(GtkAdjustment *adj,
                     FacetsControls *controls)
{
    GwyVectorLayer *layer;
    GwyDataField *dfield;
    GwySelection *selection;
    const gchar *key;

    controls->args->kernel_size = gwy_adjustment_get_int(adj);
    gwy_app_wait_cursor_start(GTK_WINDOW(controls->dialog));
    dfield = gwy_container_get_object_by_name(controls->mydata, "/0/data");
    gwy_data_field_facet_distribution(dfield, 2*controls->args->kernel_size + 1,
                                      controls->fdata);

    /* XXX: Clear selections since we cannot recalculate it properly */
    if (gwy_container_gis_object_by_name(controls->mydata, "/0/mask",
                                         &dfield)) {
        gwy_data_field_clear(dfield);
        gwy_data_field_data_changed(dfield);
    }

    layer = gwy_data_view_get_top_layer(GWY_DATA_VIEW(controls->fview));
    key = gwy_vector_layer_get_selection_key(layer);
    selection = gwy_container_get_object_by_name(controls->fdata, key);
    gwy_selection_clear(selection);
    gwy_app_wait_cursor_finish(GTK_WINDOW(controls->dialog));
    facets_invalidate(controls);
}
コード例 #4
0
static void
nstripes_changed(GtkAdjustment *adj,
                 TipBlindControls *controls)
{
    TipBlindArgs *args = controls->args;
    args->nstripes = gwy_adjustment_get_int(adj);
}
コード例 #5
0
ファイル: tip_model.c プロジェクト: svn2github/gwyddion
static void
tip_model_dialog_update_values(TipModelControls *controls, TipModelArgs *args)
{
    args->nsides = gwy_adjustment_get_int(GTK_ADJUSTMENT(controls->nsides));
    args->angle = gtk_adjustment_get_value(GTK_ADJUSTMENT(controls->angle));
    args->theta = gtk_adjustment_get_value(GTK_ADJUSTMENT(controls->theta));
}
コード例 #6
0
ファイル: fft_profile.c プロジェクト: cbuehler/gwyddion
static void
prof_resolution_changed(ProfControls *controls,
                        GtkAdjustment *adj)
{
    controls->args->resolution = gwy_adjustment_get_int(adj);
    /* Resolution can be changed only when fixres == TRUE */
    prof_selection_changed(controls, -1);
}
コード例 #7
0
static void
thickness_changed_cb(GtkObject *adj, GwyGraphLabelDialog *dialog)
{
    if (!dialog->graph_model)
        return;

    g_object_set(dialog->graph_model,
                 "label-frame-thickness", gwy_adjustment_get_int(adj),
                 NULL);
}
コード例 #8
0
ファイル: grain_filter.c プロジェクト: DavidMercier/gwyddion
static void
threshold_changed(GFilterControls *controls, GtkAdjustment *adj)
{
    GFilterArgs *args = controls->args;
    GwyInventory *inventory;
    GwyGrainValue *gvalue;
    GtkEntry *entry;
    const gchar *name;
    gboolean is_upper;
    guint id, i, k;
    gdouble *v;
    gdouble value;
    gchar *s;

    if (controls->in_init)
        return;

    id = GPOINTER_TO_UINT(g_object_get_data(G_OBJECT(adj), "id"));
    is_upper = id & IS_UPPER;
    id &= ~IS_UPPER;

    k = gwy_adjustment_get_int(adj);
    inventory = gwy_grain_values();
    gvalue = gwy_inventory_get_item(inventory, args->ranges[id].quantity);
    g_return_if_fail(gvalue);
    name = gwy_resource_get_name(GWY_RESOURCE(gvalue));
    i = gwy_inventory_get_item_position(inventory, args->ranges[id].quantity);
    v = g_ptr_array_index(args->sortedvaluedata, i);
    value = v[k];

    s = g_strdup_printf("%.*f",
                        controls->vf[id]->precision,
                        value/controls->vf[id]->magnitude);
    if (is_upper)
        entry = GTK_ENTRY(controls->upper_entry[id]);
    else
        entry = GTK_ENTRY(controls->lower_entry[id]);

    gtk_entry_set_text(entry, s);
    g_free(s);

    set_threshold_value(args, id, name, value, is_upper);
    gfilter_invalidate(controls);
}
コード例 #9
0
ファイル: grain_dist.c プロジェクト: svn2github/gwyddion
static void
grain_dist_dialog_update_values(GrainDistControls *controls,
                                GrainDistArgs *args)
{
    GSList *l;
    guint bit;

    args->selected = 0;
    for (l = controls->qlist; l; l = g_slist_next(l)) {
        bit = GPOINTER_TO_UINT(g_object_get_data(G_OBJECT(l->data), "bit"));
        if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(l->data)))
            args->selected |= bit;
    }

    args->mode = gwy_radio_buttons_get_current(controls->mode);
    args->resolution = gwy_adjustment_get_int(controls->resolution);
    args->fixres
        = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(controls->fixres));
}
コード例 #10
0
ファイル: entropy.c プロジェクト: cbuehler/gwyddion
static void
kernel_size_changed(EntropyControls *controls, GtkAdjustment *adj)
{
    controls->args->kernel_size = gwy_adjustment_get_int(adj);
}