Bug #3175
Bug #2677: fix drawing and functional differences between P2J GUI and 4GL GUI
a created dynamic widget is not always added to its parent's field group
Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:
0%
billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
reviewer:
production:
No
env_name:
topics:
History
#1 Updated by Sergey Ivanovskiy almost 10 years ago
If a dynamic widget is created and the parent frame handle is assigned to it, then its parent frame doesn't update its field group. Please read the notes 24 to 35 of the task #3110 for the source of this issue.
#2 Updated by Greg Shah almost 10 years ago
- Start date deleted (
08/30/2016) - Subject changed from A created dynamic widget is not added to its parent's field group to a created dynamic widget is not always added to its parent's field group
#3 Updated by Sergey Ivanovskiy almost 10 years ago
This program is failed for P2J due to the dynamic buttons are not added to the field group of its parent frame.
DEF VAR bt_ok AS HANDLE.
DEF VAR bt_c AS HANDLE.
DEF VAR bt_e AS HANDLE.
DEF FRAME f WITH SIZE 80 BY 60 KEEP-TAB-ORDER.
CREATE BUTTON bt_ok ASSIGN
X = 4
Y = 0
FRAME = FRAME f:HANDLE
LABEL = "HIDE".
CREATE BUTTON bt_c ASSIGN
X = 44
Y = 0
FRAME = FRAME f:HANDLE
LABEL = "HOME".
DEFINE VARIABLE h AS WIDGET-HANDLE.
DEF TEMP-TABLE tt FIELD f1 AS INTEGER
FIELD f2 AS CHARACTER.
CREATE tt. tt.f1 = 1. tt.f2 = "test 1".
CREATE tt. tt.f1 = 2. tt.f2 = "test 2".
CREATE tt. tt.f1 = 3. tt.f2 = "test 3".
DEFINE QUERY q1 FOR tt SCROLLING.
CREATE BROWSE h
ASSIGN
FRAME = FRAME f:HANDLE
X = 0
Y = 276
WIDTH = 40
HEIGHT = 4
QUERY = QUERY q1:HANDLE
ROW-MARKERS = FALSE
SENSITIVE = TRUE
HIDDEN = FALSE
READ-ONLY = FALSE
SEPARATORS = TRUE
COLUMN-MOVABLE = TRUE
COLUMN-RESIZABLE = TRUE
EXPANDABLE = TRUE
ALLOW-COLUMN-SEARCHING = TRUE.
/* before MOVE-BEFORE-TAB-ITEM TAB-POSITION == 3 */
h:MOVE-BEFORE-TAB-ITEM(bt_c).
/* after MOVE-BEFORE-TAB-ITEM TAB-POSITION == 2 */
CREATE BUTTON bt_e ASSIGN
X = 94
Y = 0
FRAME = FRAME f:HANDLE
LABEL = "HIDDEN".
h:ADD-LIKE-COLUMN("tt.f1").
h:ADD-LIKE-COLUMN("tt.f2").
ON 'choose':U OF bt_ok
DO:
h:VISIBLE = NOT h:VISIBLE.
RETURN.
END.
ON 'choose':U OF bt_e
DO:
h:HIDDEN = NOT h:HIDDEN.
RETURN.
END.
ON 'choose':U OF bt_c
DO:
h:HIDDEN = FALSE.
APPLY "HOME" TO h.
RETURN.
END.
ENABLE ALL WITH FRAME f.
OPEN QUERY q1 FOR EACH tt NO-LOCK.
VIEW FRAME f.
WAIT-FOR CLOSE OF CURRENT-WINDOW.
windev01 debugger shows that
PARENT for the buttons and the browse widget in this considered test case must be the same and has FIELD-GROUP type. The frame's first child is their common parent and the common field group. It is a very important difference between P2J and Progress 4GL.