Project

General

Profile

Bug #3740

Not all ENTRY/LEAVE events are triggered when entering/leaving a hierarchy of enabled widgets

Added by Hynek Cihlar over 5 years ago. Updated over 5 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:

0%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:

Related issues

Related to Runtime Infrastructure - Bug #4357: Infinite trigger loop Closed

History

#1 Updated by Hynek Cihlar over 5 years ago

Consider the following example:

def var i as int.
def var h as handle.
view default-window.
DEFINE VAR ch AS CHAR.
DEFINE FRAME fr ch.
on "a" anywhere do:
   create window h.
   h:title = string(i).
   view h.
   h:move-to-top().
   apply "entry" to h.
   i = i + 1.
   ENABLE ALL WITH FRAME fr IN WINDOW h.
end.

on entry anywhere do:
   DEF VAR t AS CHAR.
   ASSIGN t = SELF:type NO-ERROR.
   message "entry in " t.
end.

on leave anywhere do:
   DEF VAR t AS CHAR.
   ASSIGN t = SELF:type NO-ERROR.
   message "leave of " t.
end.

wait-for close of this-procedure.

When entering or leaving the fill-in in the example above, ENTRY or LEAVE events must be triggered for the fill-in as well as for the parent WINDOW when the focus crosses multiple window. However the problem likely exists when single window is involved - crossing focus between widgets in frames on the same widget tree level, etc.

#2 Updated by Hynek Cihlar over 4 years ago

  • Related to Bug #4357: Infinite trigger loop added

Also available in: Atom PDF