Re: 5250 data stream displays secret APL symbols
Simon Coulter <shc-Q/[email protected]> Sat, 13 Mar 2010 17:09:00 +1100
| Newsgroups | gmane.comp.lang.as400.mi |
|---|---|
| Message-ID | <[email protected]> |
On 13/03/2010, at 9:42 AM, Gene_Gaunt-GDFlLPZ4eRKEK/[email protected] wrote: > After Googling this stuff, we found this table named 'Graphic Escape > APL/TN, Code Page 310' and here is it's picture: > > http://www-03.ibm.com/systems/resources/systems_i_software_globalization_pdf_cp00310z.pdf That helps explain something I'd noticed in the 5250 data stream for READ SCREEN (WITH EXTENDED ATTRIBUTES) and PRINT SCREEN (WITH EXTENDED ATTRIBUTES). When PC250 builds a data stream for these commands it uses GUI-like characters when windows, menu bars, scroll bars, etc. are active. These are what causes the "pretty" displays of these advanced DDS (extended 5250) features in PC5250 e.g., windows with solid borders and drop shadow on right and bottom borders. For PRINT SCREEN (WITH EXTENDED ATTRIBUTES) the client is supposed to replace these GUI-like characters with their character equivalents. In some versions of PC5250 this is not done (e.g., V5.7) although I note the DBCS version (at the same release) does do it properly. Given that the chart for CP 310 shows only those characters above x'40' and that the GUI-like characters used by PC5250 are all below x'40' I cannot be certain but my guess is that PC5250 uses CP 310 for drawing GUI-like constructs and therefore once it has switched into that mode any characters it encounters, such as those in the transparent data, are treated as CP 310 values until it switches out at the end of a given GUI construct. As a test I modified your horizontal scroll bar program to generate a window and then put transparent data over the top and bottom borders and lo did I see the same APL characters. I noted previously that the APL characters disappear and normal characters are displayed when another window overlays this screen. I'm not sure why the APL characters are not reinstated after the window is closed and the system redraws the underlying screen. Also printing the APL screen results in normal characters being printed and no evidence of scroll-bars. Compare this with printing the screen when it contains only the horizontal scroll-bars. I've not found any documentation for the GUI-like characters so for anyone who cares the list (so far) is: Horizontal scroll bar: 03 left-arrow 1B scroll-bar shaft 1D scroll-bar slider (as many 1B and 1D characters as necessary are used to complete the scroll bar) 05 right-arrow Vertical scroll bar: 01 up-arrow 1A scroll-bar shaft 19 scroll-bar slider (as many 1A and 19 characters as necessary are used to complete the scroll bar) 02 down-arrow Window: 0C top-left corner 13 top border 0B top-right corner 12 left border 10 right border 0A bottom-left corner 11 bottom border 0D bottom-right corner Drop-down Menu: 08 top-left and top-right corners 12 left border 10 right-border 11 bottom border There are probably others I've not yet discovered such as the menu bar separator, check boxes, radio buttons, push buttons etc. > Insane? Perhaps not ... perhaps just slightly mad but then we all must be to some degree else we wouldn't bother trying to puzzle this stuff out. We'd be drinking beer and watching sports. Regards, Simon Coulter. -------------------------------------------------------------------- FlyByNight Software OS/400, i5/OS Technical Specialists http://www.flybynight.com.au/ Phone: +61 2 6657 8251 Mobile: +61 0411 091 400 /"\ Fax: +61 2 6657 8251 \ / X ASCII Ribbon campaign against HTML E-Mail / \ -------------------------------------------------------------------- _______________________________________________ This is the MI Programming on the AS400 / iSeries (MI400) mailing list To post a message email: MI400-Zwy7GipZuJhWk0Htik3J/[email protected] To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/mi400 or email: MI400-request-Zwy7GipZuJhWk0Htik3J/[email protected] Before posting, please take a moment to review the archives at http://archive.midrange.com/mi400.