Changeset: 527 fdbozzo - 29/11/2014 15:56:16:

- Nuevo: AutoFix para propiedades partidas debido a ediciones manuales del scx/vcx
This commit is contained in:
fdbozzo
2014-11-29 16:20:39 +01:00
parent 702840ebf6
commit 4d0535e501

View File

@@ -9458,8 +9458,8 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
EXTERNAL ARRAY taPropsAndValues EXTERNAL ARRAY taPropsAndValues
TRY TRY
LOCAL laItems(1), I, X, lnLenAcum, lnPosEQ, lcPropName, lnLenVal, lcValue, lcMethods LOCAL laItems(1), I, X, lnLenAcum, lnPosEQ, lcPropName, lnLenVal, lcValue, lcMethods, lcLastIncompletePropName
tcSortedMemo = '' STORE '' TO tcSortedMemo, lcLastIncompletePropName
tnPropsAndValues_Count = 0 tnPropsAndValues_Count = 0
IF NOT EMPTY(m.tcMemo) IF NOT EMPTY(m.tcMemo)
@@ -9480,14 +9480,11 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
LOOP LOOP
ENDIF ENDIF
X = X + 1
DIMENSION taPropsAndValues(X,2)
IF C_MPROPHEADER $ laItems(I) IF C_MPROPHEADER $ laItems(I)
*-- Solo entrar<61> por aqu<71> cuando se eval<61>e una propiedad de PROPERTIES con un valor especial (largo) *-- Solo entrar<61> por aqu<71> cuando se eval<61>e una propiedad de PROPERTIES con un valor especial (largo)
lnLenAcum = 0 lnLenAcum = 0
lnPosEQ = AT( '=', laItems(I) ) lnPosEQ = AT( '=', laItems(I) )
lcPropName = LEFT( laItems(I), lnPosEQ - 2 ) lcPropName = lcLastIncompletePropName + LEFT( laItems(I), lnPosEQ - 2 )
lnLenVal = INT( VAL( SUBSTR( laItems(I), lnPosEQ + 2 + 517, 8) ) ) lnLenVal = INT( VAL( SUBSTR( laItems(I), lnPosEQ + 2 + 517, 8) ) )
lcValue = SUBSTR( laItems(I), lnPosEQ + 2 + 517 + 8 ) lcValue = SUBSTR( laItems(I), lnPosEQ + 2 + 517 + 8 )
@@ -9507,15 +9504,37 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
ENDIF ENDIF
*-- Es un valor especial, por lo que se encapsula en un marcador especial *-- Es un valor especial, por lo que se encapsula en un marcador especial
X = X + 1
DIMENSION taPropsAndValues(X,2)
taPropsAndValues(X,1) = lcPropName taPropsAndValues(X,1) = lcPropName
taPropsAndValues(X,2) = .normalizarValorPropiedad( lcPropName, lcValue, '' ) taPropsAndValues(X,2) = .normalizarValorPropiedad( lcPropName, lcValue, '' )
ELSE ELSE
*-- Propiedad normal *-- Propiedad normal
lnPosEQ = AT( '=', laItems(I) ) lnPosEQ = AT( '=', laItems(I) )
taPropsAndValues(X,1) = LEFT( laItems(I), lnPosEQ - 2 )
IF lnPosEQ = 0 THEN
*-- AUTOFIX DE PROPIEDAD PARTIDA:
*-- Esto solo puede ocurrir cuando en el memo de Propiedades hay alguna propiedad
*-- partida debido a una edici<63>n manual con un Enter err<72>neo, algo como esto:
* comm
* AND2.Caption = "Command2"
*
*-- En el caso anterior, las 2 l<>neas son realmente una:
* command2.Caption = "Command2"
*
*-- Soluci<63>n: Guardar esta parte del nombre y agregarlo a la pr<70>xima propiedad.
lcLastIncompletePropName = laItems(I)
LOOP
ENDIF
X = X + 1
DIMENSION taPropsAndValues(X,2)
taPropsAndValues(X,1) = lcLastIncompletePropName + LEFT( laItems(I), lnPosEQ - 2 )
taPropsAndValues(X,2) = .normalizarValorPropiedad( taPropsAndValues(X,1), LTRIM( SUBSTR( laItems(I), lnPosEQ + 2 ) ), '' ) taPropsAndValues(X,2) = .normalizarValorPropiedad( taPropsAndValues(X,1), LTRIM( SUBSTR( laItems(I), lnPosEQ + 2 ) ), '' )
ENDIF ENDIF
lcLastIncompletePropName = ''
ENDFOR ENDFOR