| file | idtbs.4gl | 
| declaration | 
function dtb_looks(frm, dsc, p)
    define frm	char(14),		# form file name
	   dsc	char(40),		# form description
	   p	smallint		# pane length
 | 
| returns | nothing | 
| purpose | Sets appearence attributes for the dtb scroller | 
| example | none | 
| notes | The form needs to have a screen array named s_dtbcontaining 4 character fields (names unimportant) | 
| file | idtbs.4gl | 
| declaration | 
function dtb_scroller(im, ip)
    define im, ip	smallint
 | 
| returns | a message | 
| services | Upstream: 
 
 | 
| purpose | A scroller suitable for many to many relations maintenance | 
| example | none | 
| notes | 
 | 
| file | imlts.4gl | 
| declaration | function mlt_create() | 
| returns | nothing | 
| purpose | (Re)creates the temporary table used by the mlt scroller for data display | 
| example | none | 
| notes | none | 
| file | imlts.4gl | 
| declaration | 
function mlt_delete(type_rec, link_rec)
    define type_rec	char(1),		# The type of the record
	   link_rec	integer			# The primay key of the record
 | 
| returns | nothing | 
| purpose | Removes from the mlt temporary table text related to a record tracked by the mlt scroller | 
| example | none | 
| notes | Normally used when deleting or updating records | 
| file | imlts.4gl | 
| declaration | 
function mlt_downstream(im, ip)
    define im, ip	smallint
 | 
| returns | a message | 
| services | 
 | 
| purpose | The downstream filter of the mlt_scroller | 
| example | none | 
| notes | none | 
| file | imltr.4gl | 
| declaration | 
function mlt_head_tail(h, t)
    define h	char(78),
	   t	char(40)
 | 
| returns | nothing | 
| purpose | Used to set head and tail for mlt scroller printouts | 
| example | none | 
| notes | none | 
| file | imlts.4gl | 
| declaration | 
function mlt_looks(frm, p)
    define frm	char(14),		# form file name
	   p	smallint		# pane lenght
 | 
| returns | nothing | 
| purpose | Sets appearence attributes for the mlt scroller | 
| example | none | 
| notes | The form needs to have a screen array named s_mltcontaining 1 character field (name unimportant) | 
| file | imlts.4gl | 
| declaration | 
function mlt_newline(txt, num_ord)
    define txt		char(78),		# The actual text
	   num_ord	smallint		# The line number
 | 
| returns | nothing | 
| purpose | Adds a new text line to a record being created | 
| example | none | 
| notes | num_ord is disregarded if the auto increment flag is in effect for the record being currently created | 
| file | imlts.4gl | 
| declaration | 
function mlt_newrec(tr, lr, dr, ai, maxl)
    define tr	char(1),		# Table type
	   lr	integer,		# Record primary key
	   dr	date,			# A date, for time sorting purposes
	   ai,				# The line auto increment flag
	   maxl	smallint		# The highest line number in the record
 | 
| returns | nothing | 
| purpose | Prepares the mlt scroller for the creation of a new record | 
| example | none | 
| notes | none | 
| file | imlts.4gl | 
| declaration | 
function mlt_op_filter(m, t)
    define m	smallint,	# message body
	   t	char(10)	# list of record types
 | 
| returns | nothing | 
| purpose | Specifies a list of record types on which a particular message is disallowed | 
| example | none | 
| notes | The mlt scroller supports message disabilitation per record type, ie a certain message, though originally enabled, will only be so if the current record is not listed in t above.< Successive calls to this function allow to specify multiple concurrently controlled messages. The limit of concurrent messages is at present set to 4. | 
| file | imlts.4gl | 
| declaration | 
function mlt_open(new_ord, cpos)
    define new_ord,			#new display order
	   cpos		smallint	#cursor position
 | 
| returns | nothing | 
| purpose | Specifies a new data display order | 
| example | none | 
| notes | currently the following orderings are supported: 
 
 MB_declareis
issued, and that the repositioning of the cursor cannot be guaranteed if control
is passed back to the menu structure before such message is issued. | 
| file | imlts.4gl | 
| declaration | function mlt_recdone() | 
| returns | nothing | 
| purpose | Terminates the creation of a record | 
| example | none | 
| notes | none | 
| file | imlts.4gl | 
| declaration | 
function mlt_retrieve(r)
    define r	integer
 | 
| returns | txt, char(78), row contents | 
| purpose | Returns the contents of a particular line. | 
| example | none | 
| notes | Although the mlt scroller services print requests, for multi pane viewers, it may be necessary to write more complex reports. mlt_retrieve comes handy in such circumstances | 
| file | imlts.4gl | 
| declaration | 
function mlt_scroller(im, ip)
    define im, ip	smallint
 | 
| returns | a message | 
| services | Upstream: see mlt_upstream Downstream: see mlt_downstream | 
| purpose | A complex scroller used to maintain and view in textual form and with different sorting orders records from multiple disjoint tables | 
| example | none | 
| notes | none | 
| file | istbs.4gl | 
| declaration | 
function stb_looks(frm, dsc, p)
    define frm	char(14),		# form file name
	   dsc	char(40),		# form description
	   p	smallint		# pane lenght
 | 
| returns | nothing | 
| purpose | Sets appearence attributes for the stb scroller | 
| example | none | 
| notes | The form needs to have a screen array named s_stbcontaining 2 character fields (names unimportant) | 
| file | istbs.4gl | 
| declaration | 
function stb_open(fname, cond)
    define fname	char(3),
	   cond		char(250)
 | 
| returns | nothing | 
| purpose | A convenient tool to quickly initialize the searchglobal variable | 
| example | none | 
| notes | none | 
| file | istbs.4gl | 
| declaration | 
function stb_scroller(im, ip)
    define im, ip	smallint
 | 
| returns | a message | 
| services | Upstream: 
 
 | 
| purpose | A scroller suitable for single table maintenance | 
| example | none | 
| notes | 
 | 
| file | iunis.4gl | 
| declaration | function uni_create() | 
| returns | nothing | 
| purpose | Allocates memory for the text variable used by the uni scroller | 
| example | none | 
| notes | see uni_setid for more info on how to use multiple panes | 
| file | iunis.4gl | 
| declaration | 
function uni_downstream(im, ip)
    define im, ip	smallint
 | 
| returns | a message | 
| services | 
 | 
| purpose | The downstream filter of the uni scroller | 
| example | none | 
| notes | none | 
| file | iunis.4gl | 
| declaration | function uni_getlength() | 
| returns | l (integer), number of lines in text | 
| purpose | returns the length in lines of the text tracked by the uni scroller. | 
| example | none | 
| notes | see uni_setid for more info on how to use multiple panes | 
| file | iunis.4gl | 
| declaration | 
function uni_gettext(t)
    define t	text
 | 
| returns | nothing | 
| purpose | Makes a copy of the text tracked by the uni scroller into the text variable t | 
| example | none | 
| notes | see uni_setid for more info on how to use multiple panes | 
| file | iunis.4gl | 
| declaration | 
function uni_looks(frm, p)
    define frm	char(14),		# form file name
	   p	smallint		# pane lenght
 | 
| returns | nothing | 
| purpose | Sets appearence attributes for the uni scroller | 
| example | none | 
| notes | 
 | 
| file | iunis.4gl | 
| declaration | 
function uni_newline(txt)
    define txt	char(78)
 | 
| returns | nothing | 
| purpose | Adds a new line to the text being displayed by the uni scroller | 
| example | none | 
| notes | see uni_setid for more info on how to use multiple panes | 
| file | iunis.4gl | 
| declaration | 
function uni_retrieve(r)
    define r	integer
 | 
| returns | txt, char(78), row contents | 
| purpose | Returns the contents of a particular line. | 
| example | none | 
| notes | 
 | 
| file | iunis.4gl | 
| declaration | 
function uni_scroller(im, ip)
    define im, ip	smallint
 | 
| returns | a message | 
| services | Upstream: see uni_upstream Downstream: see uni_downstream | 
| purpose | A simple text scroller | 
| example | none | 
| notes | none | 
| file | iunis.4gl | 
| declaration | 
function uni_setid(p)
    define p	smallint
 | 
| returns | nothing | 
| purpose | Sets identity of the pane used by most uni_scrollerroutines | 
| example | none | 
| notes | uni_setidprovides a mechanism to name and address differentuni_scrollerpanes, when more than one is in use. Rather than
addressing them by pane id, they are given a unique id by callinguni_setidprior to adding a new pane with
uni_looks. Each pane is then addressed by invokinguni_setidprior to the invocation of the appropriate routine.
The advantage of this scheme is that panes can be added to /dropped from/
shuffled in the viewer without affecting the identity of each, thus eliminating
the need to correct for the changed id in the code.uni_setidcan be safely skipped when theuni_Scrolleris in control of only one pane. | 
| file | iunis.4gl | 
| declaration | 
function uni_settext(t)
    define t	text
 | 
| returns | nothing | 
| purpose | Sets the text to be displayed by the uni scroller | 
| example | none | 
| notes | see uni_setid for more info on how to use multiple panes | 
| Please address questions or comments to
    marco greco (last updated Thu, 28 March 2002 16:09:46 GMT) |