'
'Class description:
'
!short:Win class structure:
Class Win:
~~~~~~~~~~
Simple nonswitchable nonmovable window for displaying of the noninterruptible
action as saving or restoring of database files.

Common use:
~~~~~~~~~~~
LOCAL OBJECT Win OF Win
Win:Init(...)
Win:Paint()
...
Win:Done()

Source code is in C_Win.prg

!seealso: c_box.ngo:Box c_window.ngo:Window c_color.ngo:Color ob_class.ngo:"Class hierarchy"

!short:~~~~~~~~~~~~~~~~~~~~
!short:create class Win from Box
!short:  export:
!short:  var Screen   //""
^BWin:Screen^N: private: character
  Stores the window background to restore it after window saving.

!short:  var Visible  //false
^BWin:Visible^N: read-only: logical
  If true the window is visible, if false it isn't.

!short:  method New=WinNew      //o:New() --> self
^BWin:New^N: public: return self
  Object is filled with default values.

!short:  method Paint=WinPaint  //o:Paint(IsTop,lDouble) --> true
^BWin:Paint(IsTop,lDouble)^N: public: return true
  The screen is saved and window is painted by the method
  Box:Paint(IsTop,lDouble).

!short:  method Show=WinShow    //o:Show() --> true
^BWin:Show()^N: public: return true
  Restores the window, stored by method Win:Hide().

!short:  method Hide=WinHide    //o:Hide() --> true
^BWin:Hide()^N: public: return true
  Stores the window, displayed by the method Win:Paint() or
  Win:Show().

!short:  method Done=WinDone    //o:Done() --> true
^BWin:Done()^N: public: return true
  Window is stored if it was displayed.

!short:  endclass

