docs: add extra sdk docs

This commit is contained in:
2026-07-06 18:30:29 +01:00
parent 1e371910a0
commit 538705a807
17 changed files with 200972 additions and 0 deletions
+215
View File
@@ -0,0 +1,215 @@
CHAPTER 5
HWIM REFERENCE
This document is a beta version and may be subject to change.
This manual describes the changes and additions that have been made to the HWIM library as a result of
the introduction of the Siena and Series 3c machines into the SIBO range.
Siena and Series 3c
The FILELIST class
Very long pathnames are now displayed on the file selector with a leading ellipsis followed by the trailing
characters of the pathname.
The HELPLIST class
HELPLIST now folds case when sorting help list entries. This is important if you are writing Help screens
and lists for foreign language variants of your software.
The DLGBOX class
All dialog items now have the pR_wIN_IS_DLCTRL flag set. The hSetLandlordFlags () method does nothing
if PR_WIN_IS_DLCTR1L is not set. With the exception of acurst, all lodger window classes which assumed
that they were components of a DLGBox subclass now only make this assumption if the above flag is set.
There is a new DLGBox flag, DLGBOxX_SMALL_FONT, matching the value of DLGBOx_FROM_HWIF, but never set
from HWIF dialogs. (This flag is cleared from non-HWIF dialogs before the dialog is actually run). The
purpose of the flag is to allow the Workabout and Siena small font feature to be set from resource files. The
flag is harmless for Series 3, Series 3a and Series 3c dialogs.
Infrared communications
System resources
A SYS_IR_POWER_LEVEL resource has been added, giving the text “High” and “Low” for Infrared power
levels.
A SYS_PRINTER_IR resource has been added, giving the text “Infrared” as a printer type.
Keypresses
Normally, IR-related keys are captured by the built-in IR data transfer application. If the user disables IR,
by selecting another mode of communication, these keypresses are absorbed by the ws process key
method of any applications instance of wsERv. As a general service to the user, the method also displays an
“Infrared not enabled” information message. See also the descriptions of the changes to the wsERv class for
the Siena and the Series 3c, later in this chapter.
Data transfer and the Link Paste mechanism
The IR data transfer application on the Siena and Series 3c uses the Link Paste mechanism. The data to be
transferred is extracted from the selected region of the active edit window in whatever application last
declared itself to be the Link Paste server.
An exception to this rule occurs when the currently selected data is a filename in any of the System
Screens file lists. In this case the whole of that file is transferred.
SIENA/SERIES 3C UPGRADE
Siena
The Sienas 240x160 screen is half the width of the Series 3a and Series 3c screens. In consequence, great
care has to be taken to ensure that lines of text do not exceed the available width. This restriction
particularly affects the amount of text that can be displayed in the menu bar and in dialog items.
Menu bars and pull-down menus
The menu bar and pull-down menu borders are thinner than those on the Series 3a , being similar to those
used for the Workabout, and the minimum spacing between menu bar items has been reduced. Despite
these changes, a typical Siena menu bar can not contain more than, say, five menu titles plus a diamond
menu, and the text is restricted to around 26 characters in total. Siena applications with many menu options
will, in general, need to make greater use of submenus than equivalent applications running on the Series
3a or Series 3c. However, the Siena screens width is unlikely to restrict individual pull-down menus,
which may contain up to nine items.
Dialogs
Dialogs are displayed in an 11 point font, with thinner borders (DLG_Box d1_init method), as on the
Workabout. Up to eleven lines of text, including the dialog title, can be displayed in a Siena dialog.
Siena dialogs can not display more than three action buttons in an AcLIst control.
Text items in a cHLIST choice list control are automatically truncated if they are too long to be displayed.
System dialogs
The Siena does not support tone dialling. In consequence, the rpraLpuc free-form tone dialling dialog is
disabled, and application software should not attempt to use it. The spranpic dialog has been modified so
that its function is simply to display resolved telephone numbers.
The content of the various Print dialogs has been rearranged.
Help screens
The title displayed does not include a preceding “Help: ”, to compensate for the smaller screen width.
The FILELIST class
An instance of FILELIST no longer displays the time and date for each file. The wn_key method has been
modified so that pressing the space bar shows the time and date for the currently selected file.
The CALWIN class
On the Siena, an instance of cALWIN can only display the data for a single month.
The WSERV class
The ws _process_key method performs the following additional actions:
e if the keypress is that of the decimal separator key in the numeric keypad - with a keycode of
W_KEY CALC DECIMAL, 0x156 - it is converted to the current decimal separator , as determined by a
call to p_getctd
e if the keypress is one of W_KEY_IR_BRING, 0x140 Of W_KEY_IR_SEND, 0x141 (which would normally
be captured by the infrared file/record transfer software) display an information message to the
effect that Infrared is disabled
e if the keypress is W_FUNC_MODIFIER with w_KEY MENU (FN and MENU keys pressed together) the
Status Window in the System Screen is switched on or off, depending on its current state. Note
that CTRL + MENU also toggles the Status Window on the Siena.
Resource files
Several resources have been changed for the Siena to either save screen space or take account of the
different keyboard layout:
e the syS MTYPE PROTECTED resource uses the padlock symbol instead of “protected”
e SYS PREVIEW ACC is changed so that PSION + ? exits print preview (instead of PSION + * as on the
Series 3a and Series 3c)
e the degree symbol has been added to the resource string syS_SPECIAL CHARACTERS
5 HWIM REFERENCE
Series 3c
In general, the programming interface to HWIM (and XADD) classes is identical with that of the Series 3a.
Menus and dialogs
Menu and dialog borders have been restyled, but the basic geometry is unchanged. Dialogs have thinner
borders (DLG_Box dl_init method), There is no difference in the programming interface.
System dialogs
The sETPoRTDLG dialog class offers a selection of Baud rates up to a maximum of 57600, compared with
the maximum of 19200 on the Series 3a.
The wn_key methods of the FNEDIT and FNSELWN classes have been modified so that SHIFT + TAB (instead of
PSION + TAB) displays the current path in an information message (PSION + TAB is now used to instigate IR
file or record transfer).
The dial out code length in the Dial settings dialog (defined in prAL_ENvar, dialdigs.cl) has been increased
to 16 characters.
The WSERV class
The ws process key method performs the following additional action:
e if the keypress is W_KEY_IR_LINK, 0x142 (which would normally be captured by the infrared
file/record transfer software) display an information message to the effect that Infrared is disabled
e the class has been modified to take account of future extension to the resource string
SYS_SPECIAL CHARACTERS.