Skip to content

Commit 46fe81b

Browse files
committed
REGIONMANAGER and GITFNS documentation update
GITFNS is just formatting, REGIONMANAGER documents the new SAVED-TYPED-REGION feature
1 parent 67a3e55 commit 46fe81b

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

lispusers/GITFNS.TEDIT

25 Bytes
Binary file not shown.

lispusers/REGIONMANAGER.TEDIT

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ REGIONMANAGER
1111
4
1212

1313
By Ron Kaplan
14-
This document created in December 2021, last edited September 2023.
14+
This document created in December 2021, last edited April 2025.
1515

1616
Medley comes equipped with a core set of functions for specifying regions and creating the windows that occupy those regions on the screen. But it can be disruptive if not irritating to have to draw out a new ghost region for every invocation of a particular application. Thus the common applications (e.g. TEDIT, SEDIT, DINFO...) implement particular strategies to reduce the number of times that a user has to sweep out a new region. They instead default to regions that were allocated for earlier invocations that are no longer active. TEDIT for example recycles the region of a session that was recently shut down, SEDIT allocates from a list of previous regions, DINFO always uses the same region, but FILEBROWSER always prompts for a new one. Applications that do recycle their regions tend to do so indiscrimately, without regard to the current arrangement of other windows on the screen or the role that those windows may play in higher-level applications.
1717
The REGIONMANAGER package provides simple extensions to the core region and window functions. These are aimed at giving users and application implementors more flexible and systematic control over the specification and reuse of screen regions. It introduces three new notions:
@@ -25,6 +25,7 @@ REGIONMANAGER adds overlay veneers to the core CREATEW, CLOSEW, and GETREGION fu
2525
The REGION/INITREGION arguments may now be region-type atoms in addition to either NIL or particular regions as CREATEW and GETREGION otherwise allow. The type-atom will resolve to a region drawn from a predefined pool of regions associated with that type, if the pool has at least one that is not currently allocated to another window. If the pool has no available regions, then the pool will be enlarged with a region that the user produces from a normal ghost-region prompt, and the type-atom will then resolve to the newly installed region.
2626
A typed-region is marked as "inuse" and therefore unavailable when CREATEW assigns it to a window, and the extended CLOSEW marks it as again available when the window is closed. The region of the most recently closed window will be offered the next time a region of its type is requested.
2727
An example of how an application can take advantage of this facility is the TEDIT-PF-SEE package. This provides lightweight alternatives to the PF and SEE commands that print their output to scrollable read-only Tedit windows, specifying PF-TEDIT and SEE-TEDIT as their region types. The user can predefine a preference-ordered sequence of recyclable regions that bring up multiple output windows in a predictable tiled arrangement, without region-prompting for each invocation.
28+
If a window opened with a typed region is reshaped, usually the new shape of that window is made available after closing for another window of the same type. But sometimes the reshaping is for transitory purposes, for example , the reshaping that Tedit uses to split windows, and the client wants more control over the region that will be recycled. The client can store the intended region as the value of the window property SAVED-TYPED-REGION before closing, and that is the region that will be recycled.
2829
The global variable TYPED-REGIONS is an alist that maintains the relationship between atomic type-names and the list of regions that belong to each type. The list is ordered according to preferences set by the user, and a type-atom is always resolved to the first unused region in its list. If the user is asked to sweep out a new region, that region is added at the end, as the least preferable. The function SET-TYPED-REGIONS is provided to add or replace TYPED-REGION entries.
2930
(SET-TYPED-REGIONS TYPELISTS REPLACE) [Function]
3031
TYPELISTS is an alist of the form
@@ -82,10 +83,10 @@ If NEWPOS is the new position of PARENT, moves each of the move-children so that
8283
CLASSIC
8384
TERMINALMODERN TERMINAL��TERMINAL��
8485
TIMESROMAN$ HRULE.GETFN  HRULE.GETFN  HRULE.GETFN   HRULE.GETFN  HRULE.GETFN
85-
D� � � �}/ �[ �C��T ��1 
86+
@� � � �}/ �[ �C*��T ��@�1 
8687

8788
; 3o)�� �  4 n � o2 V@1 %! A  &MmIS-g<
8889
3E
8990
"
9091

91-
l /4 v2C � &% "O=  , l�)9���W~ �& 4!Uh'�2&�$"&()MDATE:ie�m3\�z�
92+
l /4 v2C � &% "O=  , l�)9���W~ �& 4!Uh'�2&�$"&()MDATE:i�*�5V�z�

0 commit comments

Comments
 (0)