ipcBeginProcess "wish": Tk GUI doesn't accept <ButtonPress>

K

Kevin Bercaw

Guest
I am launching wish from Virtuoso. There is some kind of blocking that is happening.

Symptoms:
I cannot interact with any widgets, i.e. I can't press a button but...
I can interact with the window, i.e. I can resize it and the window gets refreshed. Also I can insert text on a text widget and update entry widget (programatically only - all UI interaction beside window resizing is dead).

Here's a test script:
button .b -text "Exit" -command exit
pack .b

In a more complex test script I was able to send Tcl commands from Virtuoso (Virtuoso sending on stdout, Tcl reading stdin), and eval this command to trigger sending a command back to Virtuoso (Tcl sending stdout, Virtuoso reading stdin). So the wish application is not hung! But I still can't interact with any widgets I put up on the GUI.

I presume that the problem is that the Tcl event handler is busy but I don't understand why. I don't believe it's due to a blocking read of stdin as my fileevent callback is only called once when I send stdout from Virtuoso. (Also I configured stdin for non-blocking read).

If anybody has any ideas please send them along, thanks much!
 
On Wednesday, September 18, 2013 9:21:32 AM UTC-4, Kevin Bercaw wrote:
I am launching wish from Virtuoso. There is some kind of blocking that is happening.



Symptoms:

I cannot interact with any widgets, i.e. I can't press a button but...

I can interact with the window, i.e. I can resize it and the window gets refreshed. Also I can insert text on a text widget and update entry widget (programatically only - all UI interaction beside window resizing is dead)..



Here's a test script:

button .b -text "Exit" -command exit

pack .b



In a more complex test script I was able to send Tcl commands from Virtuoso (Virtuoso sending on stdout, Tcl reading stdin), and eval this command to trigger sending a command back to Virtuoso (Tcl sending stdout, Virtuoso reading stdin). So the wish application is not hung! But I still can't interact with any widgets I put up on the GUI.



I presume that the problem is that the Tcl event handler is busy but I don't understand why. I don't believe it's due to a blocking read of stdin as my fileevent callback is only called once when I send stdout from Virtuoso. (Also I configured stdin for non-blocking read).



If anybody has any ideas please send them along, thanks much!

I found the problem:
Application initialization failed: Can't find a usable tk.tcl in the following directories:
/pkg/qct/software/cadence/ic614_isr11/tools/dfII/etc/tcl8.4/tk8.4 /pkg/qct/software/cadence/ic614_isr11/tools/dfII/etc/tk8.4 /usr/lib/tk8.4 /usr/lib64/tk8.4 /lib/tk8.4 /usr/library /library /tk8.4.12/library

This probably means that tk wasn't installed properly.


So strange that the wish UI came up and the app was functional rather then just not starting at all!
 

Welcome to EDABoard.com

Sponsor

Back
Top