Project

General

Profile

Bug #3106

Bug #2677: fix drawing and functional differences between P2J GUI and 4GL GUI

Various GUI COMBO-BOX issues

Added by Hynek Cihlar almost 8 years ago. Updated almost 6 years ago.

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

0%

billable:
No
vendor_id:
GCD
case_num:

History

#1 Updated by Hynek Cihlar almost 8 years ago

combo_box/combo_box10_1.p shows blank rectangle instead of the SIMPLE list.

Clicking on an item in the combo simple list selects the item one below. The click must be targeted to the lower part of the item.

Switching focus with Alt+Shift+Tab in a frame gets confused when the next widget is a disabled combo-box. There are draw artifacts and the focus cannot be switched to another widget.

Selecting an item in a combo box with a keyboard sometimes causes an abend. Move focus to the combo box, activate drop-down with Alt-Down, select an item with arrow keys and hit Enter.

Caused by: java.lang.IllegalStateException: Widget sellstframe0##com.goldencode.testcases.ui.combo_box.ComboBox127Sellstframe0$ComboBox127Sellstframe0Def 25 is not attached to a Window instance.
    at com.goldencode.p2j.ui.client.widget.AbstractWidget.window(AbstractWidget.java:289)
    at com.goldencode.p2j.ui.client.gui.FrameGuiImpl.getCustomMousePointer(FrameGuiImpl.java:853)
    at com.goldencode.p2j.ui.client.widget.AbstractWidget.getEffectiveMousePointer(AbstractWidget.java:2287)
    at com.goldencode.p2j.ui.client.gui.driver.MouseHoverAction.updateCursor(MouseHoverAction.java:97)
    at com.goldencode.p2j.ui.chui.ThinClient.refreshHover(ThinClient.java:3176)
    at com.goldencode.p2j.ui.client.ComboBox.exitDropDown(ComboBox.java:1033)
    at com.goldencode.p2j.ui.client.gui.ComboBoxGuiImpl.exitDropDown(ComboBoxGuiImpl.java:946)
    at com.goldencode.p2j.ui.client.ComboBox.lambda$1(ComboBox.java:1165)
    at com.goldencode.p2j.ui.chui.ThinClient.eventBracket(ThinClient.java:14335)
    at com.goldencode.p2j.ui.chui.ThinClient.eventDrawingBracket(ThinClient.java:14276)
    at com.goldencode.p2j.ui.chui.ThinClient.independentEventDrawingBracket(ThinClient.java:14149)
    at com.goldencode.p2j.ui.client.ComboBox.activate(ComboBox.java:1137)
    at com.goldencode.p2j.ui.client.gui.ComboBoxGuiImpl.processSystemKey(ComboBoxGuiImpl.java:559)
    at com.goldencode.p2j.ui.chui.ThinClient.checkForSystemEvent(ThinClient.java:13513)
    at com.goldencode.p2j.ui.chui.ThinClient.waitForEvent(ThinClient.java:13402)
    at com.goldencode.p2j.ui.chui.ThinClient.waitForWorker(ThinClient.java:11243)
    at com.goldencode.p2j.ui.chui.ThinClient.waitForWorker(ThinClient.java:10822)
    at com.goldencode.p2j.ui.chui.ThinClient.waitFor(ThinClient.java:10770)
    at com.goldencode.p2j.ui.chui.ThinClient.waitFor(ThinClient.java:10724)

Cycling focus sometime causes an abend below. Can be reproduced in combo_box/combo_box2.p, populate the combo and cycle the focus with Alt-Tab until the exception occurs.

java.lang.IllegalStateException: Could not resolve frame from widget ScrollBarGuiButton [id=-43]
    at com.goldencode.p2j.ui.client.FocusManager.focusChange(FocusManager.java:1232)
    at com.goldencode.p2j.ui.chui.ThinClient.nextTabStop(ThinClient.java:18402)
    at com.goldencode.p2j.ui.client.AbstractButton.nextTabStop(AbstractButton.java:481)
    at com.goldencode.p2j.ui.client.AbstractButton.handleCursorKeys(AbstractButton.java:352)
    at com.goldencode.p2j.ui.client.AbstractButton.processKeyEventCommon(AbstractButton.java:312)
    at com.goldencode.p2j.ui.client.Button.processKeyEvent(Button.java:479)
    at com.goldencode.p2j.ui.client.widget.TitledWindow.processKeyEvent(TitledWindow.java:226)
    at com.goldencode.p2j.ui.client.widget.AbstractWidget.processEvent(AbstractWidget.java:1235)
    at com.goldencode.p2j.ui.client.Button.processEvent(Button.java:441)
    at com.goldencode.p2j.ui.client.widget.TitledWindow.processEvent(TitledWindow.java:195)
    at com.goldencode.p2j.ui.client.TopLevelWindow.processEvent(TopLevelWindow.java:962)
    at com.goldencode.p2j.ui.client.gui.WindowGuiImpl.processEvent(WindowGuiImpl.java:1300)
    at com.goldencode.p2j.ui.chui.ThinClient.processEventsWorker(ThinClient.java:15554)
    at com.goldencode.p2j.ui.chui.ThinClient.pop(ThinClient.java:14375)
    at com.goldencode.p2j.ui.chui.ThinClient.eventBracket(ThinClient.java:14358)
    at com.goldencode.p2j.ui.chui.ThinClient.eventDrawingBracket(ThinClient.java:14276)
    at com.goldencode.p2j.ui.chui.ThinClient.applyWorker(ThinClient.java:14032)
    at com.goldencode.p2j.ui.chui.ThinClient.waitForWorker(ThinClient.java:11317)
    at com.goldencode.p2j.ui.chui.ThinClient.waitForWorker(ThinClient.java:10822)
    at com.goldencode.p2j.ui.chui.ThinClient.waitFor(ThinClient.java:10770)
    at com.goldencode.p2j.ui.chui.ThinClient.waitFor(ThinClient.java:10724)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

#2 Updated by Hynek Cihlar almost 8 years ago

All the issues above can be reproduced in current trunk, in GUI mode.

#3 Updated by Hynek Cihlar almost 8 years ago

Another issue, in combo_box/combo_box11.p the combo drop-down won't activate on Alt+Down.

#4 Updated by Hynek Cihlar almost 8 years ago

Another issue. When VALUE-CHANGED event handler disables the combo's parent frame, the combo's active drop-down must be deactivated.

define var combo as character format "x(15)" 
    view-as combo-box
    inner-lines 9 list-items "item1", "item2", "item3".

define var fi1 as char view-as fill-in.

define frame ComboBoxFrame
   combo
   fi1
with side-labels.

display combo with frame ComboBoxFrame.
enable all with frame ComboBoxFrame.

def var ed as char.
def frame f2 ed.

ON 'value-changed':U OF combo
    DO:
        /* active drop-down should be closed and focus moved to fi1 */
        disable all with frame ComboBoxFrame.
        enable all with frame f2.
        RETURN.
    END.

wait-for close of frame ComboBoxFrame.

#5 Updated by Hynek Cihlar almost 8 years ago

Another issue. Combo-box drop-down won't close on ESC key.

EDIT: In ChUI.

#6 Updated by Greg Shah almost 8 years ago

  • Project changed from Liberty to User Interface

#7 Updated by Greg Shah almost 8 years ago

  • Parent task set to #2677

#8 Updated by Hynek Cihlar almost 6 years ago

Another issue, when an item selected in the combo drop-down, ENTER key doesn't have any effect. ENTER should close the drop-down and select the selected item.

Also available in: Atom PDF