Module: _color      Library: Clipper 5.3


This module contains the following functions and procedures:



Note: Because this is raw decompiler output, the code is closer
to that seen in a .PPO file, rather than a .PRG file. In other
words, you must allow for the preprocessor conversions normally 
performed based on the contents of STD.CH and other .CH files
 
#include "common.ch"
#include "inkey.ch"

//---------------------------------------------------[top]-
//  APPLYDEFAU( Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, ;
//
function APPLYDEFAU( Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, ;
   Arg9 )

   local Local1 := {}, Local2:= {}, Local3, Local4, Local5:= "", ;
      Local6 := {}, Local7:= "", Local8:= "", Local9:= "", Local10:= ;
      "", Local11 := "", Local12
   if ( PCount() == 0 )
      return ""
   endif
   if ( PCount() == 1 )
      return Arg1
   endif
   Local1 := SetColor()
   asize(Local2, 5)
   Local2[ 1 ] := getclrpair(Local1, 1)
   Local2[ 2 ] := getclrpair(Local1, 2)
   Local2[ 3 ] := getclrpair(Local1, 3)
   Local2[ 4 ] := getclrpair(Local1, 4)
   Local2[ 5 ] := getclrpair(Local1, 5)
   asize(Local6, 8)
   Local6[ 1 ] := Arg2
   Local6[ 2 ] := Arg3
   Local6[ 3 ] := Arg4
   Local6[ 4 ] := Arg5
   Local6[ 5 ] := Arg6
   Local6[ 6 ] := Arg7
   Local6[ 7 ] := Arg8
   Local6[ 8 ] := Arg9
   Local3 := PCount() - 1
   Local5 := Arg1
   for Local4 := 1 to Local3
      Local7 := getclrpair(Local5, Local4)
      Local12 := At("/", Local7)
      if ( Local12 == 0 )
         if ( ISNUMBER( Local6[ Local4 ] ) )
            Local5 := setclrpair(Local5, Local4, ;
               Local2[ Local6[ Local4 ] ])
         else
            Local5 := setclrpair(Local5, Local4, Local6[ Local4 ])
         endif
      else
         Local8 := getclrfore(Local7)
         Local9 := getclrback(Local7)
         if ( ISNUMBER( Local6[ Local4 ] ) )
            Local10 := getclrfore(Local2[ Local6[ Local4 ] ])
            Local11 := getclrback(Local2[ Local6[ Local4 ] ])
         else
            Local10 := getclrfore(Local6[ Local4 ])
            Local11 := getclrback(Local6[ Local4 ])
         endif
         if ( Local8 == "" )
            Local8 := Local10
         endif
         if ( Local9 == "" )
            Local9 := Local11
         endif
         Local7 := Local8 + "/" + Local9
         Local5 := setclrpair(Local5, Local4, Local7)
      endif
   next
   return Local5

//---------------------------------------------------[top]-
//  BUTTNDEFCO( Arg1 )
//
function BUTTNDEFCO( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "W/N", "N/W", "W+/N", "W+/N")
   else
      Local1 := applydefau(Arg1, 5, 2, 1, 4)
   endif
   return Local1

//---------------------------------------------------[top]-
//  CHECKDEFCO( Arg1 )
//
function CHECKDEFCO( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "W/N", "W+/N", "W/N", "W+/N")
   else
      Local1 := applydefau(Arg1, 5, 2, 1, 4)
   endif
   return Local1

//---------------------------------------------------[top]-
//  COMBODEFCO( Arg1 )
//
function COMBODEFCO( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "W/N", "W+/N", "W+/N", "N/W", "W/N", ;
         "W/N", "W+/N", "W/N")
   else
      Local1 := applydefau(Arg1, 5, 5, 5, 2, 3, 1, 4, 1)
   endif
   return Local1

//---------------------------------------------------[top]-
//  GETCLRBACK( Arg1 )
//
function GETCLRBACK( Arg1 )

   local Local1
   if ( ( Local1 := At("/", Arg1) ) == 0 )
      return ""
   endif
   return SubStr(Arg1, Local1 + 1)

//---------------------------------------------------[top]-
//  GETCLRFORE( Arg1 )
//
function GETCLRFORE( Arg1 )

   local Local1
   if ( ( Local1 := At("/", Arg1) ) == 0 )
      return ""
   endif
   return SubStr(Arg1, 1, Local1 - 1)

//---------------------------------------------------[top]-
//  GETCLRPAIR( Arg1, Arg2 )
//
function GETCLRPAIR( Arg1, Arg2 )

   local Local1
   if ( ( Local1 := getpairpos(Arg1, Arg2) ) == 0 )
      return ""
   endif
   return SubStr(Arg1, Local1, getpairlen(Arg1, Arg2))

//---------------------------------------------------[top]-
//  GETPAIRLEN( Arg1, Arg2 )
//
function GETPAIRLEN( Arg1, Arg2 )

   local Local1 := getpairpos(Arg1, Arg2), Local2
   if ( Local1 == 0 )
      return 0
   endif
   Local2 := At(",", SubStr(Arg1, Local1))
   if ( Local2 == 0 )
      Local2 := Len(Arg1) - Local1 + 1
   else
      Local2--
   endif
   return Local2

//---------------------------------------------------[top]-
//  GETPAIRPOS( Arg1, Arg2 )
//
function GETPAIRPOS( Arg1, Arg2 )

   local Local1, Local2 := 1, Local3
   for Local1 := 2 to Arg2
      Local3 := At(",", SubStr(Arg1, Local2))
      if ( Local3 == 0 )
         Local2 := 0
         exit
      endif
      Local2 := Local2 + Local3
   next
   return Local2

//---------------------------------------------------[top]-
//  LISTBDEFCO( Arg1 )
//
function LISTBDEFCO( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "W/N", "W+/N", "W+/N", "N/W", "W/N", ;
         "W/N", "W+/N")
   else
      Local1 := applydefau(Arg1, 5, 5, 5, 2, 3, 1, 4)
   endif
   return Local1

//---------------------------------------------------[top]-
//  MENUDEFCOL( Arg1 )
//
function MENUDEFCOL( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "N/W", "W/N", "W+/W", "W+/N", ;
         "N+/W", "W/N")
   else
      Local1 := applydefau(Arg1, 5, 2, 4, 2, 1, 3)
   endif
   return Local1

//---------------------------------------------------[top]-
//  RADGRDEFCO( Arg1 )
//
function RADGRDEFCO( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "W/N", "W/N", "W+/N")
   else
      Local1 := applydefau(Arg1, 3, 1, 4)
   endif
   return Local1

//---------------------------------------------------[top]-
//  RADITDEFCO( Arg1 )
//
function RADITDEFCO( Arg1 )

   local Local1 := ""
   if ( isdefcolor() )
      Local1 := applydefau(Arg1, "W/N", "W+/N", "W+/N", "N/W", "W/N", ;
         "W/N", "W+/N")
   else
      Local1 := applydefau(Arg1, 5, 5, 2, 2, 1, 1, 4)
   endif
   return Local1

//---------------------------------------------------[top]-
//  SETCLRPAIR( Arg1, Arg2, Arg3 )
//
function SETCLRPAIR( Arg1, Arg2, Arg3 )

   local Local1
   if ( ( Local1 := getpairpos(Arg1, Arg2) ) == 0 )
      return ""
   endif
   return stuff(Arg1, Local1, getpairlen(Arg1, Arg2), Arg3)

//---EOF


Use your Browser's BACK button to return to Function Listings