Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Variable Windowing Implementation

IP.com Disclosure Number: IPCOM000099436D
Original Publication Date: 1990-Jan-01
Included in the Prior Art Database: 2005-Mar-14
Document File: 4 page(s) / 158K

Publishing Venue

IBM

Related People

Herrod, JA: AUTHOR

Abstract

When windows are used to project multiple presentation spaces onto a single visual display terminal, it is essential to be able to reformat the contents of the presentation space in the window as the size and shape of the window is changed. For example, dialogs using a command line must avoid having the command line clipped from the window. The technique used to do this is called variable windowing.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 37% of the total text.

Variable Windowing Implementation

       When windows are used to project multiple presentation
spaces onto a single visual display terminal, it is essential to be
able to reformat the contents of the presentation space in the window
as the size and shape of the window is changed.  For example, dialogs
using a command line must avoid having the command line clipped from
the window.  The technique used to do this is called variable
windowing.

      This disclosure solves the problems of implementing variable
windowing by using a presentation manager to do the work for the
application.  When the application defines the areas within a panel,
it also specifies, to the presentation manager, how they are to be
moved and sized in response to changes in window size.  It is an
efficient scheme to enable applications to specify projection
functions to a presentation manager that calculates the size and
position of the panel area, scales it and, if need be, can download
it to an intelligent workstation.  As a result, applications become
simpler and the need to duplicate the function in many applications
is removed.

      The applications are shielded from the complexities of
providing exit routines.  Simplification of the applications task
means that the average application programmer can write an
application using variable windowing.  The scheme for specifying
projection functions can be incorporated into panel definitions
produced by a panel editor.  Better performance characteristics
result because the window sizing processing is contained within the
presentation manager. There are no API call and task switching
overheads involved in invoking the application via an exit routine.
Background and terminology is given in the Appendix. The Technique

      When an application defines areas within a panel, it also
specifies, to the presentation manager, how they are to be moved and
sized in response to changes in window size. We require a
straightforward and efficient way for the application to define the
projection functions for the panel areas.  The class of projection
functions required for panel area row position and depth are both
functions of the window depth, and the projection functions for panel
area column position and width are both functions of the window
width. These functions are not necessarily simple.  Example:  For a
window depth of 32, the depth of a panel area may be 24, and reduce
as the window depth is reduced, until a depth of 8 is reached, after
which the depth may stay constant while an adjacent area is being
reduced in size.  If the window depth is decreased further then the
depth of the original area will eventually have to decrease again.
This could be defined mathematically as:
    ad = (wd-8,  32>=wd>=16,
    (   8,  16>=wd>=8,
    (  wd,   8>=wd>=0, where 'ad' is the area depth, and 'wd' is the
window depth. Or it could be represented graphically as follows :
    24 º x
   ...