sleyzerzon / soar

Automatically exported from code.google.com/p/soar
1 stars 0 forks source link

debugger modules that register RHS functions don't work with multiple agent windows #30

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Description From Bob Marinier 2008-05-08 21:07:20 (-) [reply]
We implemented several new widgets in the debugger that are driven by RHS
functions.  When the widget is created (e.g., when the debugger layout is
loaded), it automatically registers the RHS function specified in its
properties.

The problem occurs when you create a second agent.  The debugger 
automatically
creates a second window, which contains a second instance of the widget, 
which
tries to register for the RHS function again.  This fails with an error
message.

I think the right thing to do is to register the RHS function once in the
debugger, and then route incoming calls to the proper widget based on the 
agent
it's coming from (the agent object is passed into the RHS function 
callback). 
Thus, the RHS function callback is primarily a router that keeps track of 
which
agents have windows, and routing changes appropriately.  If a window is 
closed,
then that agent is removed from the routing table, etc.

Note that we can't expect people to actually use these widgets until this 
is
fixed.
------- Comment #1 From Jonathan Voigt 2008-06-19 17:35:33 (-) [reply] ----

---
assigning to bob since I need to work with him to fix this
------- Comment #2 From Jonathan Voigt 2008-08-12 13:32:56 (-) [reply] ----

---
document these on the soar wiki

Original issue reported on code.google.com by voigtjr@gmail.com on 23 Jul 2009 at 4:53

GoogleCodeExporter commented 8 years ago

Original comment by voigtjr@gmail.com on 23 Jul 2009 at 5:29

GoogleCodeExporter commented 8 years ago

Original comment by voigtjr@gmail.com on 23 Feb 2010 at 7:43