Inspector de Objetos
Posted: Sat Apr 04, 2015 4:49 am
Antonio
Estoy muy entusiasmado con las posibilidades de FiveTouch
Es posible linkar la funcion aOData de FW o cual sera su equivalente en harbour, necesito leer cada Objeto, conocer sus Data y Metodos.
Existe posibilidad de publicar algunas fuentes de la clase BROWSE, y asi conocer sus alcances. Tambien Agregar en FIND y REPLACE en FIVEEDIT incluido en Fivetouch
Estoy muy entusiasmado con las posibilidades de FiveTouch
Es posible linkar la funcion aOData de FW o cual sera su equivalente en harbour, necesito leer cada Objeto, conocer sus Data y Metodos.
Existe posibilidad de publicar algunas fuentes de la clase BROWSE, y asi conocer sus alcances. Tambien Agregar en FIND y REPLACE en FIVEEDIT incluido en Fivetouch
Code: Select all
FUNCTION FT_INSPECT(oBj)
LOCAL aInfo,I,aMetodos:={},aData:={},uValue,cType,cVar,aLista,oFont,oFontB
LOCAL aArray:={}
aMetodos:=__objGetMethodList( oObj ) // Lectura de Metodos
[b] aLista := aOData( oObj ) // Lectura de Data
[/b]
FOR I:=1 TO LEN(aLista)
cVar :=aLista[I]
uValue:=oSend(oObj,cVar)
AADD(aArray,uValue)
uValue:=VAL2CHAR_( uValue )
uValue:=CTOO(uValue,"C")
AADD(aData,{cVar,uValue})
NEXT I
AADD(aData,{"ClassName",oObj:ClassName()})
FOR I=1 TO LEN(aMetodos)
aMetodos[I]:={aMetodos[I],""}
NEXT I
RETURN ACLONE(aArray)
FUNCTION VAL2CHAR_( uValue )
LOCAL cResult := "NIL", cType := VALTYPE( uValue )
DO CASE
CASE cType == "A"
cResult := "{ ... }"
CASE cType == "C"
cResult := '"' + uValue + '"'
CASE cType == "D"
cResult := DTOC( uValue )
CASE cType == "L"
cResult := IIF( uValue, ".T.", ".F." )
CASE cType == "N"
cResult := LTRIM( STR( uValue))
CASE cType == "O"
cResult := "Object"
CASE cType == "B"
cResult := "{ || ... }"
ENDCASE
RETURN cResult