[pygtk] How to prevent user-interaction with the UI?
Timo
timomlists at gmail.com
Wed Aug 15 17:42:21 WST 2012
Op 14-08-12 20:35, Ajay Garg schreef:
> Timo,
> I wish to freeze the UI, while an operation is in progress.
Maybe you need a modal dialog with a progressbar? That way the user sees
progress happening and the main window isn't active.
>
>
> Anyways, I am facing another problem. Now, while the root window is
> frozen, and if I try to unfreeze a child widget - by
> "set_sensitive(True) - it does not work.
>
> Is it expected? If yes, is there a workaround?
This could be solved with a (or more) calls like this:
while gtk.events_pending():
gtk.main_iteration()
Cheers,
Timo
>
>
> Thanks and Regards,
> Ajay
>
>
> On Tue, Aug 14, 2012 at 10:44 PM, Timo <timomlists at gmail.com> wrote:
>> Op 14-08-12 12:21, Ajay Garg schreef:
>>
>>> Thanks Timo.
>>>
>>> It worked !!!
>>>
>>>
>>> Just one last query ::
>>>
>>> When I desensitize the root window, the entire window goes "grayed".
>>> Is there a way, so that we can prevent the graying out? Ideally, I would
>>> like no colour change.
>>>
>> Maybe it's possible with theming, but I'm not familiar with that.
>>
>> I wonder why you want to do that though. From a user's view, it's very
>> confusing when the window is unresponsive without visual indication. It
>> instantly reminds me of an application that hangs.
>>
>> Cheers,
>> Timo
>>
>>> Thanks and Regards,
>>> Ajay
>>>
>>>
>>>
>>> On Tue, Aug 14, 2012 at 2:28 PM, Timo <timomlists at gmail.com
>>> <mailto:timomlists at gmail.com>> wrote:
>>>
>>> Op 14-08-12 06:35, Ajay Garg schreef:
>>>
>>> Hi all.
>>>
>>> I have four simple questions :) ::
>>>
>>>
>>> a)
>>> How to block the complete UI (in the sense that no
>>> user-interaction with the UI is effective), although the UI
>>> changes take place as usual via the changes emanating from the
>>> code?
>>>
>>>
>>> b)
>>> How to block only a widget, while the rest of the UI remains
>>> unblocked?
>>>
>>>
>>> c)
>>> How to unblock only a widget, while the rest of the UI remains
>>> blocked?
>>>
>>>
>>> d)
>>> How to unblock the complete UI?
>>>
>>>
>>> Do you mean gtk.Widget.set_sensitive(True|False) ? You can use it
>>> on your toplevel window to disable the whole application or on
>>> individual widgets.
>>>
>>> Cheers,
>>> Timo
>>>
>>>
>>> Will be grateful for a reply.
>>>
>>>
>>> Thanks and Regards,
>>> Ajay
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> pygtk mailing list pygtk at daa.com.au <mailto:pygtk at daa.com.au>
>>>
>>> http://www.daa.com.au/mailman/listinfo/pygtk
>>> Read the PyGTK FAQ: http://faq.pygtk.org/
>>>
>>>
>>> _______________________________________________
>>> pygtk mailing list pygtk at daa.com.au <mailto:pygtk at daa.com.au>
>>>
>>> http://www.daa.com.au/mailman/listinfo/pygtk
>>> Read the PyGTK FAQ: http://faq.pygtk.org/
>>>
>>>
More information about the pygtk
mailing list