Problems with a HScale and set_sensitive()



Hi list,

I have a problem with my GUI :-(

In my program i have three sliders:

Gtk::HScale	m_scalebutton1, m_scalebutton2, m_scalebutton3;


When the user changes one of the sliders the following function is executed:

void myGUI::on_scale_change()
{
    m_scalebutton1.set_sensitive(false);
    m_scalebutton2.set_sensitive(false);
    m_scalebutton3.set_sensitive(false);

    /* Calculate something (takes some seconds) */
    [...]

    m_scalebutton1.set_sensitive(true);
    m_scalebutton2.set_sensitive(true);
    m_scalebutton3.set_sensitive(true);

    return;
}

The problem is that the three sliders aren't greyd out during the calculation. While the calculation runs the sliders still look normal. When I try to change the sliders during the calculation nothing happens (sliders are frozen). But after the calculation the change is performed and the sliders jump to the position where i tried to drag em to. Then the function on_scale_change() is executed again, because the value of the slider changed.

As the calculation takes some time, the user should not be able to change the sliders during the calculation.

I hope you see my problem. What can I do?


Alex


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]