// Copyright (c) 1993-2005 "Компания БЭСТ". Все права сохраняются.
#ifdef __HARBOUR__
#include "s_public.ch"
#endif



//lWide - если пpисутствует, то pисуется шиpокая pамка
FUNCTION ShadowBox(cTitul,nTop,nLeft,nBot,nRight,cClr,cBrd,lWide, lSaveScreen,noShadow )
   LOCAL aShadow := { SetColor(),nTop,nLeft,nBot,nRight, NIL }
   IF( cTitul==NIL, cTitul := '', )
   IF cClr!=NIL.AND.LEFT(cClr,1)$"╔┌"
      cBrd:=cClr
      cClr:=NIL
   ENDIF
   IF( cBrd==NIL, cBrd := "╔═╗║╝═╚║", )
   IF( cClr==NIL, cClr := SETCOLOR(), )
   IF !EMPTY( lWide )
      aShadow[2]--  ;   aShadow[3]-=2 ;    aShadow[4]++ ;   aShadow[5]+=2
   ENDIF
   IF !EMPTY( lSaveScreen )
     aShadow[6] := BrSaveScreen( aShadow[2],aShadow[3],aShadow[4]+1,aShadow[5]+2 )
   ENDIF
   IF noShadow == NIL
      Shadow( aShadow[2], aShadow[3], aShadow[4], aShadow[5] )
   ENDIF
   SETCOLOR(cClr)
   IF lWide!=NIL
     @ aShadow[2], aShadow[3] CLEAR TO aShadow[4], aShadow[5]
   ENDIF
   @ nTop,nLeft,nBot,nRight BOX cBrd+' '
   @ nTop,nLeft+2 SAY cTitul
   SETCOLOR( aShadow[1] )
RETURN aShadow[ 6 ]

