Hi,
I am currently struggling with SO's and I found this strange behaveour. I
try to explain.
I have a SmartWindow (say a.w) that is a container for 1 SDO and 2 SW's. I
run a.w from another SO, which is a SmartDataField (say b.w). The idea is
that a.w should give the user the opportunity to make some kind of selection
and upon termination of a.w, the results should be returned to the
SmartDataField and displayed there.
(I hope sofar I haven't said anything strange SmartObject-wise!)
I run my code from within the AppBuilder (just to test). No all is well,
until I close down a.w. Instead of seeing a.w dissapear and focus being
returned to b.w, everything disappears but the AppBuilder tells me there is
still something running. I consider that strange (at least not what I
anticipated).
Upon closer investigation in de de*, I saw that the procedure
'hideObject' in a.w's smart.p is responsible for this behaveour. Apparently
it searches it's container-handle and hides that one. Something like this:
{get ContainerHandle hContainer}.
IF VALID-HANDLE(hContainer) THEN
ASSIGN hContainer:HIDDEN = YES.
I don't understand why this happens. I can understand that an object hides
itself before termination, but I don't understand why the handle of b.w
seems to be used to hide it as well! When I display the values of the
handles of a.w, b.w and even the handle of b.w's frame, they are not the
same!
Can anyone out there shed some light on this and, more importantly, tell me
what to do to prevent this from happening?
(I hope I have stated my problem and my questions clearly enough)
TIA
Pieter Brouwer.