[PMW 1.2] Dialog controls vanish upon editing

Peter Otten __peter__ at web.de
Tue Sep 30 11:24:37 CEST 2003


F. GEIGER wrote:

> Hi all,
> 
> I use PMW 1.2 on Python 2.3.0 on Win2k.
> 
> I've created a dialog that looks like so:
> 
>                      +----------------------+
>                 Name |                      |
>                      +----------------------+
>                      +----------------------+
>    Caption text head |                      |
>                      +----------------------+
>                      +----------------------+
>    # Digits w/o sign |                      |
>                      +----------------------+
>                      +----------------------+
>    Caption text tail |                      |
>                      +----------------------+
>                      +--+
>          Is editable |  |
>                      +--+
>                      +--------------------+-+
>       Parameter name |                    |V| Drop-down.
>                      +--------------------+-+
> 
> 
> I pull down the drop-down control, select an item, the drop-down closes
> and - vanishes. All controls have vanished. After half a second or so the
> first one reappears, but w/o its label 'Name'.
> 
> The other ones reapper if I click onto the pane where they are supposed to
> be. They also reapper if I change to an other app and then come back
> again. I guess this is because a window update is issued by the OS.
> 
> What do I miss?

I would guess that 

>    def _validateNameId_(self, text):
>       if Proxy.DataProxy().parameterExists(text):
>          return -1
>       return 1

is either awfully slow and/or throws an exception.

You could easily verify this assumption with

(a)
def _validateNameId_(self, text):
    return 1

and
(b)
def _validateNameId_(self, text):
    try:
        if Proxy.DataProxy().parameterExists(text):
            return -1
        return 1
    except: # generally a bad idea
        print >> sys.stderr, "something went wrong"
        return 1


Peter




More information about the Python-list mailing list