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 application’s 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 
Screen’s file lists. In this case the whole of that file is transferred. 


SIENA/SERIES 3C UPGRADE 


Siena 


The Siena’s 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 screen’s 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. 


