diff --git a/foxbin2prg.exe b/foxbin2prg.exe index 82e1bc1..7872e75 100644 Binary files a/foxbin2prg.exe and b/foxbin2prg.exe differ diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 7a6e0c8..65a0021 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -13487,7 +13487,7 @@ DEFINE CLASS c_conversor_vcx_a_prg AS c_conversor_bin_a_prg lnStepCount = 7 USE IN (SELECT("_TABLAORIG")) - INDEX ON PADR(LOWER(PLATFORM + IIF(EMPTY(PARENT),'',ALLTRIM(PARENT)+'.')+OBJNAME),240) TAG PARENT_OBJ OF TABLABIN ADDITIVE + INDEX ON PADR(LOWER(PLATFORM + IIF(EMPTY(PARENT),'',ALLTRIM(PARENT)+'.')+OBJNAME),240) TAG PARENT_OBJ ADDITIVE SET ORDER TO 0 IN TABLABIN .get_OLEPublicObjectName( @la_NombresObjsOle ) @@ -13817,7 +13817,7 @@ DEFINE CLASS c_conversor_scx_a_prg AS c_conversor_bin_a_prg SELECT _TABLAORIG.*,RECNO() regnum FROM _TABLAORIG INTO CURSOR TABLABIN USE IN (SELECT("_TABLAORIG")) - INDEX ON PADR(LOWER(PLATFORM + IIF(EMPTY(PARENT),'',ALLTRIM(PARENT)+'.')+OBJNAME),240) TAG PARENT_OBJ OF TABLABIN ADDITIVE + INDEX ON PADR(LOWER(PLATFORM + IIF(EMPTY(PARENT),'',ALLTRIM(PARENT)+'.')+OBJNAME),240) TAG PARENT_OBJ ADDITIVE SET ORDER TO 0 IN TABLABIN .get_OLEPublicObjectName( @la_NombresObjsOle ) @@ -22513,8 +22513,8 @@ DEFINE CLASS CL_MENU_COL_BASE AS CL_COL_BASE FOR I = 1 TO lnLine_Count *-- Si existe el snippet #NAME, lo usa - IF EMPTY(tcProcName) AND UPPER( LEFT( ALLTRIM(laProcLines(I)), 6 ) ) == '#NAME ' - tcProcName = ALLTRIM( SUBSTR( ALLTRIM(laProcLines(I)), 7 ) ) + IF EMPTY(tcProcName) AND UPPER( LEFT( CHRTRAN( ALLTRIM(laProcLines(I)), C_TAB, ' ' ), 6 ) ) == '#NAME ' + tcProcName = ALLTRIM( SUBSTR( ALLTRIM( CHRTRAN( laProcLines(I), C_TAB, ' ' ) ), 7 ) ) EXIT ENDIF ENDFOR @@ -23431,6 +23431,10 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE loReg.SCHEME = IIF( loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR, 3, 4 ) loOption = NULL + IF I = lnLast_I && No avanzó, debe salir. + EXIT + ENDIF + OTHERWISE && Otro valor I = I - 1 EXIT @@ -23616,7 +23620,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR CASE .analyzeCodeBlock_DefinePAD( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor ) - IF EMPTY(loReg.PROMPT) + IF loReg.PROMPT == '' *-- Esta opción no corresponde a este nivel. Debe subir. llBloqueEncontrado = .F. EXIT @@ -23626,7 +23630,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE ENDIF CASE .analyzeCodeBlock_DefineBAR( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor ) - IF EMPTY(loReg.PROMPT) + IF loReg.PROMPT == '' *-- Esta opción no corresponde a este nivel. Debe subir. llBloqueEncontrado = .F. EXIT @@ -23907,7 +23911,10 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE loReg.ObjType = C_OBJTYPE_MENUTYPE_OPTION lcBarName = ALLTRIM( STREXTRACT( tcLine, 'BAR ' , ' OF' ) ) - IF NOT ISDIGIT(lcBarName) + IF ISDIGIT(lcBarName) + *-- Bar# + loReg.OBJCODE = C_OBJCODE_MENUOPTION_BARNUM + ELSE *-- Es un BAR del sistema loReg.NAME = lcBarName ENDIF @@ -24038,6 +24045,9 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE I = I + 1 EXIT + CASE LEFT( tcLine, 19 ) == 'ON SELECTION POPUP ' + EXIT + OTHERWISE * Nada ENDCASE