private List_d get_list_d()
    {
        List_d list_d = new List_d();
        double d      = new double();

        foreach (Gtk.SpinButton sp in hbox_list_d.Children)
        {
            d = (double)sp.Value;
            list_d.Add(d);
        }
        return(list_d);
    }
    private void putValuesStoredPreviously(double d, List_d list_d, double D, int anglePush, int angleWeight,
                                           int inertia, int extraWeightGrams, double extraWeightLength,
                                           bool has_gearedDown, string gearedUpDisplay)
    {
        if (d != -1)
        {
            spin_d.Value = d;
        }
        if (!list_d.IsEmpty())
        {
            //when there's 1 value in list_d, first value (0) in combo should be selected
            combo_d_num.Active = list_d.L.Count - 1;            //this will perform a reset on spinbuttons

            int i = 0;
            foreach (Gtk.SpinButton sp in hbox_list_d.Children)
            {
                sp.Value = list_d.L[i++];
            }
        }

        if (D != -1)
        {
            spin_D.Value = D;
        }
        if (anglePush != -1)
        {
            spin_angle_push.Value = anglePush;
        }
        if (angleWeight != -1)
        {
            spin_angle_weight.Value = angleWeight;
        }
        if (inertia != -1)
        {
            spin_inertia_machine.Value = inertia;
        }
        if (has_gearedDown)
        {
            combo_gearedUp.Active = UtilGtk.ComboMakeActive(combo_gearedUp, gearedUpDisplay);
        }

        spin_inertia_mass.Value   = extraWeightGrams;
        spin_inertia_length.Value = extraWeightLength;
    }