Initializing GUI widget tooltips

Chris Kelleher

Administrator
Staff member
<BLOCKQUOTE><font size="1" face="Arial, Verdana">code:</font><HR><pre>FONCTION Liste-Widgets RETURNS CHARACTER
( INPUT wh AS WIDGET-HANDLE ) :
/*--------------------------------------------------------------------------
----
Purpose:
Notes:
----------------------------------------------------------------------------
--*/

DEF VAR hdl-list as char no-undo.

do while wh <> ? :
IF hdl-list > '' THEN hdl-list = hdl-list + CHR(10).
hdl-list = hdl-list +
( if wh:name <> ? then wh:name else "???" ) + ','
+ wh:type + ','
+ string(wh:handle) + ','.
if can-query ( wh , 'TABLE' ) then do:
IF wh:TABLE <> ? AND wh:TABLE <> '' THEN
hdl-list = hdl-list + wh:TABLE .
end.
hdl-list = hdl-list + "".
if can-query(wh , 'FIRST-CHILD') then do:

if wh:first-child <> ? then do:

hdl-list = hdl-list + chr(10) + Liste-Widgets ( wh:first-child ).

end.
end.
wh = wh:next-sibling.

end.


RETURN hdl-list. /* Function return value. */


END FUNCTION.

PROCEDURE Init-ToolTips-From-Help :
/*--------------------------------------------------------------------------
----
Purpose:
Parameters:
Notes:
----------------------------------------------------------------------------
--*/
DEF INPUT PARAMETER wh AS WIDGET-HANDLE NO-UNDO.

DEF VAR wl AS CHAR NO-UNDO.
DEF VAR wa AS CHAR NO-UNDO.

DEF VAR i AS INT NO-UNDO.


wl = Liste-Widgets ( wh ).

DO i=1 TO NUM-ENTRIES(wl , CHR(10) ):
wa = ENTRY( i , wl , CHR(10) ).
IF (NUM-ENTRIES(wa) >= 3) AND (ENTRY(1,wa) <> "???") THEN DO:
wh = WIDGET-HANDLE ( ENTRY(3,wa) ).
IF CAN-SET(wh , 'tooltip' ) THEN DO:
IF ( wh:TOOLTIP = "" OR wh:TOOLTIP = ? ) AND
( wh:HELP <> "" AND wh:HELP <> ? )
THEN wh:TOOLTIP = wh:HELP.
END.
END.
END.

END PROCEDURE.

[/code]
 
Top