ETHZ_Logo RAMSES_Logo_Right   RAMSES   RAMSES_Logo_Left Systems Ecology  
Start    search button      Modules:   A-Z   Function   Layer        QuickRefs:   DM   AuxLib   AuxLibE   SciLib   EasyMW   MW   ISIS   RMSLib

DEFINITION MODULE EasyWindow;

  (*******************************************************************

    Module  EasyWindow     (Version 1.0)

      Copyright (c) 1995-2006 by Andreas Fischlin and ETH Zurich.

    Purpose   Manages a simple "Dialog Machine" window
              to draw or show results from computations.

    Remarks   The state management of associated menu commands and
              key short-cuts to open and close the window are
              also provided. The default window is sized to fill
              the main screen.


    Programming

      o Design
        Andreas Fischlin          25/09/1995

      o Implementation
        Andreas Fischlin          25/09/1995


    ETH Zurich
    Systems Ecology
    CHN E 35.1
    Universitaetstrasse 16
    8092 Zurich
    SWITZERLAND

    URLs:
        <mailto:RAMSES@env.ethz.ch>
        <http://www.sysecol.ethz.ch>
        <http://www.sysecol.ethz.ch/SimSoftware/RAMSES>


    Last revision of definition:  05/10/1995  AF

  *******************************************************************)


  FROM DMWindows IMPORT WindowFrame;
  FROM DMMenus IMPORT Menu;


  PROCEDURE MakeEasyWindow;
  PROCEDURE DiscardEasyWindow;
    (*
      Installs respectively discards the easy window mechanism by adding a
      menu with open and close commands, the standard keyboard short-cuts
      for opening (Cmd^O) and closing (Cmd^W), and opens the easy window.
    *)

  PROCEDURE SelectEasyWindowForOutput;
    (*
      Calls DMWindIO.SelectForOutput(easyWindow) to divert any
      subsequent DMWindowIO output to the easy window.
    *)

  PROCEDURE IsEasyWindowOpen(): BOOLEAN;
  PROCEDURE EasyWindowMenu(): Menu;
    (*
      Returns the easy window menu in order to install additional
      commands in the same menu with routines from DMMenus.
    *)


  PROCEDURE PlaceEasyWindow(x,y,w,h: INTEGER);
    (*
      Allows to place the easy window at a location and with a size
      different from the defaults, which almost fills the main screen.  x,y
      denote the lower, left corner of the outer window frame, w and h
      specify the width and height of the outer window frame.  If the
      window is already open, it will move and resize it, else it will make
      an implicit call to MakeEasyWindow and open the window at the desired
      location.
    *)

  PROCEDURE ResetEasyWindow;
    (* Reverts the effect of any previous PlaceEasyWindow call *)


END EasyWindow.

  Contact RAMSES@env.ethz.ch Last updated: 25-Jul-2011 [Top of page]