Project

General

Profile

Bug #3021

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

MESSAGE with SET clause works incorrectly

Added by Igor Skornyakov about 8 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:

aab1.p Magnifier (174 Bytes) Igor Skornyakov, 03/09/2016 07:31 AM

History

#1 Updated by Igor Skornyakov about 8 years ago

With Progress the attached program displays empty string and accepts ENTER while converted version displays "?" and I was unable to close the dialog at all in GUI mode (both Swing and Web).
In ChUI mode the "?" still appears but the application reacts correctly on ENTER.

#2 Updated by Hynek Cihlar about 8 years ago

The problem with entering the value was resolved by #3061.

#3 Updated by Hynek Cihlar about 8 years ago

Please review the fix in 3021a revision 11005.

#4 Updated by Greg Shah about 8 years ago

Code Review Task Branch 3021a Revision 11005

I believe this change is incorrect. The problem has a different cause. I think the issue is related to us not honoring the difference between UPDATE and SET. In UPDATE mode, the ? will appear:

def var txt as char init ?.
message "Edit unknown:" update txt.

Result is this:

Edit unknown: ?       

Enter data or press F4 to end.

But in SET mode it does not appear:

def var txt as char init ?.
message "Edit unknown:" set txt.

Result:

Edit unknown:         

Enter data or press F4 to end.

The reason is that in UPDATE mode there is an implicit DISPLAY which copies from the original variable/field TO the screen buffer. In SET mode, this part does not happen. So the hidden screen buffer should have the default value for the given type.

I suspect the correct code is this:

      // copy initial value in UPDATE mode; unknown value can also be used as initial except for date
      // based variables
      if (!set && !(var.isUnknown() && var instanceof date))
      {
         sb.putWidgetValue(id1, var.duplicate());
      }

#5 Updated by Greg Shah about 8 years ago

  • Assignee set to Hynek Cihlar
  • Status changed from New to WIP

#6 Updated by Hynek Cihlar about 8 years ago

3021a revision 11006 contains fix of the fix based on the review. I have tested SET and UPDATE with all data types and both ChUI and GUI and the proposed change works OK.

I will rebase the branch when it is ready to be merged or regression tested. Please review.

#7 Updated by Greg Shah about 8 years ago

Code Review Task Branch 3021a Revision 11006

I'm fine with the changes.

#8 Updated by Greg Shah about 8 years ago

Please merge 3021a into 1811u.

#9 Updated by Hynek Cihlar about 8 years ago

3021a merged to 1811u revision 11027.

#10 Updated by Hynek Cihlar about 8 years ago

  • % Done changed from 0 to 100

#11 Updated by Greg Shah about 8 years ago

  • Status changed from WIP to Closed
  • Target version set to Milestone 16
  • Start date deleted (03/09/2016)

#12 Updated by Hynek Cihlar about 8 years ago

3021a archived as dead.

#13 Updated by Greg Shah over 7 years ago

  • Target version changed from Milestone 16 to Cleanup and Stabilization for GUI

Also available in: Atom PDF