Flexible Windows

version 13/130803 by Jon Ingold

  • Home page
  • Beginning
  • Previous
  • Next



  • Chapter 4 - The constructing activity

    Section - Fixing problems with window scaling

    Before constructing a g-window when the scale method of the pending g-window is g-using-minimum (this is the reset minimum rule):
        now the scale method of the pending g-window is g-proportional;

    The reset minimum rule is listed before the use minimum size instead rule in the Before constructing rulebook.

    Before constructing a g-window when the scale method of the pending g-window is g-proportional (this is the fix broken proportions rule):
        if the measurement of the pending g-window > 100 or the measurement of the pending g-window < 0,
        now the scale method of the pending g-window is g-fixed-size;

    Before constructing a g-window when the position of the pending g-window is g-placenull (this is the tile automatically windows rule):
        if the position of the direct parent of the pending g-window is at least g-placeabove, now the position of the pending g-window is g-placeright;
        otherwise now the position of the pending g-window is g-placeabove.

    Before constructing a g-window when the scale method of the pending g-window is g-proportional (this is the use minimum size instead rule):
        let p1 be 100 multiplied by the minimum size of the pending g-window;
    [actually, this should be the size of the direct parent, shouldn't it? ]
        let p2 be the measurement of the pending g-window multiplied by width of the direct parent of the pending g-window;
        if p1 > p2, now the scale method of the pending g-window is g-using-minimum.

    The first after constructing a g-window :
        if the ref-number of the pending g-window is zero, now the pending g-window is g-unpresent instead.

    The last after constructing a g-window (this is the draw window after construction rule):
        if the pending g-window is g-present, follow the window-drawing rules for the pending g-window.