Changeset: 431 fdbozzo - 29/08/2014 00:04:21:

- Definición de constantes para las opciones de menu (mnx)
This commit is contained in:
fdbozzo
2014-08-29 00:44:36 +02:00
parent 1c02c755a6
commit e41801f7ab

View File

@@ -330,6 +330,28 @@ LPARAMETERS tc_InputFile, tcType, tcTextName, tlGenText, tcDontShowErrors, tcDeb
#DEFINE FILETYPE_TEXT "T" && Text (.TXT, .H., etc.)
#DEFINE FILETYPE_OTHER "x" && Other file types not enumerated above
*-- Menu OBJTYPE constants
#DEFINE C_OBJTYPE_MENUTYPE_DEFAULT 1
#DEFINE C_OBJTYPE_MENUTYPE_BARorPOPUP 2
#DEFINE C_OBJTYPE_MENUTYPE_OPTION 3
#DEFINE C_OBJTYPE_MENUTYPE_SHORTCUT 4
#DEFINE C_OBJTYPE_MENUTYPE_MENUBARONTOP 5
*-- Menu OBJCODE constants
#DEFINE C_OBJCODE_MENUBARPOPUP_MENUPAD 0
#DEFINE C_OBJCODE_MENUBARPOPUP_MENUBAR 1
#DEFINE C_OBJCODE_MENUDEFAULT_DEFAULT 22
#DEFINE C_OBJCODE_MENUOPTION_COMMAND 67
#DEFINE C_OBJCODE_MENUOPTION_SUBMENU 77
#DEFINE C_OBJCODE_MENUOPTION_BARNUM 78
#DEFINE C_OBJCODE_MENUOPTION_PROCEDURE 80
*-- Menu Location constants
#DEFINE C_MENULOCATION_REPLACE 0
#DEFINE C_MENULOCATION_APPEND 1
#DEFINE C_MENULOCATION_BEFORE 2
#DEFINE C_MENULOCATION_AFTER 3
*-- Server Object Instancing Property
#DEFINE SERVERINSTANCE_SINGLEUSE 1 && Single use server
#DEFINE SERVERINSTANCE_NOTCREATABLE 2 && Instances creatable only inside Visual FoxPro
@@ -17442,14 +17464,15 @@ DEFINE CLASS CL_MENU_COL_BASE AS CL_COL_BASE
llRetorno = .F.
EXIT
CASE loReg.ObjType = 3 AND toReg.ObjType = 3 OR loReg.ObjType = 2 AND toReg.ObjType = 2
CASE INLIST( loReg.ObjType, C_OBJTYPE_MENUTYPE_OPTION, C_OBJTYPE_MENUTYPE_BARorPOPUP ) ;
AND toReg.ObjType = loReg.ObjType
*-- Un objeto Option no puede anidar a otro Option,
*-- y un objeto Bar/Popup no puede anidar a otro Bar/Popup
SKIP -1
llRetorno = .F.
EXIT
CASE loReg.ObjType = 2 && Bar or Popup
CASE loReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP && Bar or Popup
loBarPop = NULL
loBarPop = CREATEOBJECT('CL_MENU_BARPOP')
llHayDatos = loBarPop.get_DataFromTablabin( loReg, toCol_LastLevelName )
@@ -17457,18 +17480,18 @@ DEFINE CLASS CL_MENU_COL_BASE AS CL_COL_BASE
llRetorno = llHayDatos
.ADD( loBarPop )
loBarPop = NULL
IF NOT llHayDatos AND toReg.ObjType = 3
IF NOT llHayDatos AND toReg.ObjType = C_OBJTYPE_MENUTYPE_OPTION
EXIT
ENDIF
CASE loReg.ObjType = 3 && Option
CASE loReg.ObjType = C_OBJTYPE_MENUTYPE_OPTION && Option
loOption = NULL
loOption = CREATEOBJECT('CL_MENU_OPTION')
llHayDatos = loOption.get_DataFromTablabin( loReg, toCol_LastLevelName )
llRetorno = llHayDatos
.ADD( loOption )
loOption = NULL
IF NOT llHayDatos AND toReg.ObjType = 3
IF NOT llHayDatos AND toReg.ObjType = C_OBJTYPE_MENUTYPE_OPTION
EXIT
ENDIF
@@ -17488,7 +17511,7 @@ DEFINE CLASS CL_MENU_COL_BASE AS CL_COL_BASE
THROW
FINALLY
IF toReg.ObjType = 2
IF toReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP
lnLastKey = toCol_LastLevelName.GETKEY(toReg.LevelName)
IF lnLastKey > 0
toCol_LastLevelName.REMOVE(lnLastKey)
@@ -17677,14 +17700,14 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
toConversor.c_MenuLocation = STREXTRACT( tcLine, C_MENULOCATION_I, C_MENULOCATION_F )
DO CASE
CASE toConversor.c_MenuLocation == 'REPLACE'
loReg.Location = 0
loReg.Location = C_MENULOCATION_REPLACE
CASE toConversor.c_MenuLocation == 'APPEND'
loReg.Location = 1
loReg.Location = C_MENULOCATION_APPEND
OTHERWISE
IF LEFT(toConversor.c_MenuLocation,7) == 'BEFORE'
loReg.Location = 2
loReg.Location = C_MENULOCATION_BEFORE
ELSE
loReg.Location = 3
loReg.Location = C_MENULOCATION_AFTER
ENDIF
loReg.NAME = GETWORDNUM(toConversor.c_MenuLocation,2)
ENDCASE
@@ -17884,7 +17907,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
CASE LEFT( tcLine, LEN(C_MENUCODE_I) ) == C_MENUCODE_I
CASE LEFT( tcLine, 12 ) == 'DEFINE MENU '
loReg.OBJCODE = 22
loReg.OBJCODE = C_OBJCODE_MENUDEFAULT_DEFAULT
loReg.PROCTYPE = 1
loReg.MARK = CHR(4)
loReg.SETUPTYPE = 1
@@ -17918,7 +17941,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
EXIT
CASE LEFT( tcLine, 13 ) == 'DEFINE POPUP '
loReg.OBJCODE = 22
loReg.OBJCODE = C_OBJCODE_MENUDEFAULT_DEFAULT
loReg.PROCTYPE = 1
loReg.MARK = CHR(4)
loReg.SETUPTYPE = 1
@@ -17949,9 +17972,10 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
loOption = NULL
loOption = CREATEOBJECT("CL_MENU_OPTION")
loOption.oReg = toConversor.emptyRecord()
WITH loOption.oReg
.ObjType = 3
.OBJCODE = 77
.ObjType = C_OBJTYPE_MENUTYPE_OPTION
.OBJCODE = C_OBJCODE_MENUOPTION_SUBMENU
.MARK = CHR(0)
.PROMPT = '\<Shortcut'
.LevelName = '_MSYSMENU'
@@ -18074,13 +18098,13 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
lnNivel = 0
DO CASE
CASE loReg.Location = 0
CASE loReg.Location = C_MENULOCATION_REPLACE
lcLocation = 'REPLACE'
CASE loReg.Location = 1
CASE loReg.Location = C_MENULOCATION_APPEND
lcLocation = 'APPEND'
CASE loReg.Location = 2
CASE loReg.Location = C_MENULOCATION_BEFORE
lcLocation = 'BEFORE ' + loReg.NAME
CASE loReg.Location = 3
CASE loReg.Location = C_MENULOCATION_AFTER
lcLocation = 'AFTER ' + loReg.NAME
ENDCASE
@@ -18104,13 +18128,13 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
ENDTEXT
DO CASE
CASE loHeader.ObjType = 1 && Menu Bar (Sistema)
CASE loHeader.ObjType = C_OBJTYPE_MENUTYPE_DEFAULT && Menu Bar (Sistema)
lcText = lcText + CR_LF + 'DEFINE MENU ' + loBarPop.NAME + ' BAR'
CASE loHeader.ObjType = 5 && Menu Bar (On top)
CASE loHeader.ObjType = C_OBJTYPE_MENUTYPE_MENUBARONTOP && Menu Bar (On top)
lcText = lcText + CR_LF + 'DEFINE MENU ' + loBarPop.NAME + ' BAR'
CASE loHeader.ObjType = 4 && Shortcut
CASE loHeader.ObjType = C_OBJTYPE_MENUTYPE_SHORTCUT && Shortcut
lcText = lcText + CR_LF + 'DEFINE POPUP ' + .ITEM(1).ITEM(1).ITEM(1).oReg.NAME + ' SHORTCUT RELATIVE FROM MROW(),MCOL()'
ENDCASE
@@ -18126,7 +18150,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
loBarPop = .ITEM(1).oReg
DO CASE
CASE loHeader.ObjType = 1 OR loHeader.ObjType = 5
CASE loHeader.ObjType = C_OBJTYPE_MENUTYPE_DEFAULT OR loHeader.ObjType = C_OBJTYPE_MENUTYPE_MENUBARONTOP
*-- Propecimiento principal de _MSYSMENU (ObjType:1, ObjCode:22)
IF NOT EMPTY(loHeader.PROCEDURE)
lcExpr = loHeader.PROCEDURE
@@ -18144,7 +18168,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
ENDIF
ENDIF
CASE loHeader.ObjType = 4
CASE loHeader.ObjType = C_OBJTYPE_MENUTYPE_SHORTCUT
IF NOT EMPTY(loHeader.PROCEDURE)
lcExpr = loHeader.PROCEDURE
.AnalizarSiExpresionEsComandoOProcedimiento( lcExpr, @lcProcName, @lcProcCode, '', 1, .T. )
@@ -18364,7 +18388,7 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
WITH THIS AS CL_MENU_BARPOP OF 'FOXBIN2PRG.PRG'
.oReg = toConversor.emptyRecord()
loReg = .oReg
loReg.ObjType = 2
loReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP
loReg.PROCTYPE = 1
loReg.MARK = CHR(0)
loReg.ITEMNUM = STR(0,3)
@@ -18388,28 +18412,28 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
EXIT
CASE LEFT( tcLine, 12 ) == 'DEFINE MENU '
loReg.OBJCODE = 1
loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR
loReg.NAME = STREXTRACT( tcLine, 'DEFINE MENU ', ' BAR' )
*loReg.NAME = '_MSYSMENU'
loReg.LevelName = loReg.NAME
loReg.SCHEME = IIF( loReg.OBJCODE = 1, 3, 4 )
loReg.SCHEME = IIF( loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR, 3, 4 )
lcExpr = STREXTRACT( C_FB2PRG_CODE, 'ON SELECTION POPUP ALL ', CR_LF )
.AnalizarSiExpresionEsComandoOProcedimiento( lcExpr, @lcProcName, @lcProcCode, @C_FB2PRG_CODE, -1 )
loReg.PROCEDURE = EVL(lcProcCode, lcExpr)
CASE LEFT( tcLine, 13 ) == 'DEFINE POPUP '
IF .n_ParentCode = 22
loReg.OBJCODE = 1
IF .n_ParentCode = C_OBJCODE_MENUDEFAULT_DEFAULT
loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR
loReg.NAME = '_MSYSMENU'
loReg.LevelName = loReg.NAME
loReg.SCHEME = 3
IF .n_ParentType = 4
IF .n_ParentType = C_OBJTYPE_MENUTYPE_SHORTCUT
EXIT
ENDIF
ELSE
loReg.OBJCODE = 0
loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUPAD
loReg.SCHEME = 4
loReg.NAME = ALLTRIM( GETWORDNUM( tcLine, 3 ) )
@@ -18440,7 +18464,7 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
.ADD( loOption )
loOption.oReg.ITEMNUM = STR(.COUNT,3)
loReg.NUMITEMS = .COUNT
loReg.SCHEME = IIF( loReg.OBJCODE = 1, 3, 4 )
loReg.SCHEME = IIF( loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR, 3, 4 )
loOption = NULL
OTHERWISE && Otro valor
@@ -18486,10 +18510,9 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
loReg = THIS.oReg
lcTab = REPLICATE(CHR(9),tnNivel)
*-- Menu Bar or Popup (ObjType:2, ObjCode:0 <20> 1)
IF loReg.OBJCODE = 0 && (Menu Pad)
IF toHeader.ObjType = 4
IF loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUPAD && (Menu Pad)
IF toHeader.ObjType = C_OBJTYPE_MENUTYPE_SHORTCUT
*-- Shortcut
IF NOT PEMSTATUS(toHeader,'_MenuInicializado', 5) && Header
ADDPROPERTY(toHeader,'_MenuInicializado', .T.)
@@ -18499,7 +18522,7 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
<<lcTab>>DEFINE POPUP <<loReg.Name>> SHORTCUT RELATIVE
ENDTEXT
ENDIF
ELSE && ObjType = 1 <20> 5
ELSE && ObjType = C_OBJTYPE_MENUTYPE_DEFAULT o C_OBJTYPE_MENUTYPE_MENUBARONTOP
*-- Menu
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<lcTab>>*----------------------------------
@@ -18522,13 +18545,15 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
IF EMPTY(lcProcCode)
*-- Comando
lcText = lcText + lcTab + 'ON SELECTION POPUP ' + IIF( loReg.OBJCODE = 0, loReg.NAME, 'ALL' ) + ' ' + lcExpr + CR_LF
lcText = lcText + lcTab + 'ON SELECTION POPUP ' ;
+ IIF( loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUPAD, loReg.NAME, 'ALL' ) + ' ' + lcExpr + CR_LF
ELSE
*-- Procedure
IF EMPTY(lcProcName)
lcProcName = CHRTRAN( ALLTRIM( IIF( loReg.OBJCODE = 0, loReg.NAME, 'ALL' ) ), ' ', '_' ) + '_FB2P'
lcProcName = CHRTRAN( ALLTRIM( IIF( loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUPAD, loReg.NAME, 'ALL' ) ), ' ', '_' ) + '_FB2P'
ENDIF
lcText = lcText + lcTab + 'ON SELECTION POPUP ' + IIF( loReg.OBJCODE = 0, loReg.NAME, 'ALL' ) + ' DO ' + lcProcName + CR_LF
lcText = lcText + lcTab + 'ON SELECTION POPUP ' ;
+ IIF( loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUPAD, loReg.NAME, 'ALL' ) + ' DO ' + lcProcName + CR_LF
tcEndProcedures = tcEndProcedures + STRTRAN( lcProcCode, '<<ProcName>>', lcProcName ) + CR_LF
ENDIF
@@ -18623,8 +18648,8 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
EXIT
CASE LEFT( tcLine, LEN(C_MENUCODE_I) ) == C_MENUCODE_I
loReg.ObjType = 2
loReg.OBJCODE = 1
loReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP
loReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR
CASE .analizarBloque_DefinePAD( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor )
IF EMPTY(loReg.PROMPT)
@@ -18632,7 +18657,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
llBloqueEncontrado = .F.
EXIT
ENDIF
IF loReg.OBJCODE <> 77
IF loReg.OBJCODE <> C_OBJCODE_MENUOPTION_SUBMENU
EXIT
ENDIF
@@ -18642,7 +18667,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
llBloqueEncontrado = .F.
EXIT
ENDIF
IF loReg.OBJCODE <> 77
IF loReg.OBJCODE <> C_OBJCODE_MENUOPTION_SUBMENU
EXIT
ENDIF
@@ -18724,7 +18749,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
WITH THIS AS CL_MENU_OPTION OF 'FOXBIN2PRG.PRG'
loReg = .oReg
loReg.ObjType = 3
loReg.ObjType = C_OBJTYPE_MENUTYPE_OPTION
lcPadName = ALLTRIM( STREXTRACT( tcLine, 'PAD ' , ' OF' ) )
loReg.NAME = lcPadName
loReg.LevelName = ALLTRIM( STREXTRACT( tcLine, ' OF ', ' PROMPT ' ) )
@@ -18809,7 +18834,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
LOOP
CASE LEFT( tcLine, 7 ) == 'ON PAD '
loReg.OBJCODE = 77 && Submenu
loReg.OBJCODE = C_OBJCODE_MENUOPTION_SUBMENU && Submenu
I = I + 1
EXIT
@@ -18820,17 +18845,17 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
DO CASE
CASE EMPTY(lcProcCode)
loReg.OBJCODE = 67
loReg.OBJCODE = C_OBJCODE_MENUOPTION_COMMAND
loReg.COMMAND = lcExpr
OTHERWISE
loReg.PROCEDURE = STRTRAN( lcProcCode, '<<ProcName>>', lcProcName )
IF EMPTY( loReg.PROCEDURE )
loReg.OBJCODE = 67
loReg.OBJCODE = C_OBJCODE_MENUOPTION_COMMAND
loReg.COMMAND = lcExpr
ELSE
loReg.OBJCODE = 80
loReg.OBJCODE = C_OBJCODE_MENUOPTION_PROCEDURE
loReg.PROCTYPE = 1
ENDIF
@@ -18914,7 +18939,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
WITH THIS AS CL_MENU_OPTION OF 'FOXBIN2PRG.PRG'
loReg = .oReg
loReg.ObjType = 3
loReg.ObjType = C_OBJTYPE_MENUTYPE_OPTION
lcBarName = ALLTRIM( STREXTRACT( tcLine, 'BAR ' , ' OF' ) )
IF NOT ISDIGIT(lcBarName)
@@ -18989,7 +19014,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
IF LEFT(lcBarName,1) == '_'
*-- Es un BAR del Sistema, as<61> que no tiene ON BAR ni nada m<>s.
loReg.OBJCODE = 78 && Bar#
loReg.OBJCODE = C_OBJCODE_MENUOPTION_BARNUM && Bar#
I = I + 1
EXIT
ENDIF
@@ -19003,7 +19028,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
* ON SELECTION BAR 1 OF Contracts DO BAR_1_OF_Contracts_FB2P
*--------------------------------
*-- ANALISIS DEL "ON BAR" u "ON SELECTION BAR"
*-- ANALISIS DEL "ON BAR" U "ON SELECTION BAR"
FOR I = I + 1 TO tnCodeLines
.set_Line( @tcLine, @taCodeLines, I )
@@ -19014,11 +19039,11 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
CASE INLIST( LEFT( tcLine, 11 ), 'DEFINE BAR ', 'DEFINE PAD ' )
*-- Se encontr<74> el siguiente DEFINE BAR/PAD, por lo que el analizado es de tipo #BAR vac<61>o
*-- y no tiene ON BAR ni nada m<>s.
loReg.OBJCODE = 78 && Bar#
loReg.OBJCODE = C_OBJCODE_MENUOPTION_BARNUM && Bar#
EXIT
CASE LEFT( tcLine, 7 ) == 'ON BAR '
loReg.OBJCODE = 77 && Submenu
loReg.OBJCODE = C_OBJCODE_MENUOPTION_SUBMENU && Submenu
I = I + 1
EXIT
@@ -19032,15 +19057,15 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
loReg.PROCEDURE = STRTRAN( lcProcCode, '<<ProcName>>', lcProcName )
IF EMPTY( loReg.PROCEDURE )
loReg.OBJCODE = 67
loReg.OBJCODE = C_OBJCODE_MENUOPTION_COMMAND
loReg.COMMAND = lcExpr
ELSE
loReg.OBJCODE = 80
loReg.OBJCODE = C_OBJCODE_MENUOPTION_PROCEDURE
loReg.PROCTYPE = 1
ENDIF
OTHERWISE
loReg.OBJCODE = 67 && Command
loReg.OBJCODE = C_OBJCODE_MENUOPTION_COMMAND && Command
loReg.COMMAND = lcExpr
ENDCASE
@@ -19098,15 +19123,16 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
lcTab = REPLICATE(CHR(9),tnNivel)
loBarPop = toParentReg
*-- Options (ObjType:3)
*-- Options (ObjType:3 = C_OBJTYPE_MENUTYPE_OPTION)
DO CASE
CASE toParentReg.ObjType = 2 AND toParentReg.OBJCODE = 0
CASE toParentReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP AND toParentReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUPAD
*-- Define Bar
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<.get_DefineBarText(loReg, loBarPop, tnNivel, toHeader)>>
ENDTEXT
CASE toParentReg.ObjType = 2 AND toParentReg.OBJCODE = 1 AND (toHeader.ObjType = 1 OR toHeader.ObjType = 5)
CASE toParentReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP AND toParentReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR ;
AND (toHeader.ObjType = C_OBJTYPE_MENUTYPE_DEFAULT OR toHeader.ObjType = C_OBJTYPE_MENUTYPE_MENUBARONTOP)
*-- Define Pad
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<.get_DefinePadText(loReg, loBarPop, tnNivel, toHeader)>>
@@ -19114,7 +19140,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
ENDCASE
IF loReg.OBJCODE = 80 && Procedure de BAR o PAD
IF loReg.OBJCODE = C_OBJCODE_MENUOPTION_PROCEDURE && Procedure de BAR o PAD
*-- Reemplazo el nombre definitivo
lcExpr = loReg.PROCEDURE
.AnalizarSiExpresionEsComandoOProcedimiento( lcExpr, @lcProcName, @lcProcCode, '', 1, .T. )
@@ -19139,10 +19165,12 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
ENDIF
*-- Menu Bar or Popup (ObjType:2, ObjCode:0 <20> 1)
*-- Menu Bar or Popup (ObjType:2 [C_OBJTYPE_MENUTYPE_BARorPOPUP], ObjCode:0 <20> 1 [C_OBJCODE_MENUBARPOPUP_MENUPAD o C_OBJCODE_MENUBARPOPUP_MENUBAR])
IF .COUNT > 0
FOR EACH loBarPop IN THIS FOXOBJECT
IF toParentReg.ObjType = 2 AND toParentReg.OBJCODE = 1 AND toHeader.ObjType = 4
IF toParentReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP ;
AND toParentReg.OBJCODE = C_OBJCODE_MENUBARPOPUP_MENUBAR ;
AND toHeader.ObjType = C_OBJTYPE_MENUTYPE_SHORTCUT
*-- Shortcut
lcText = lcText + loBarPop.toText(loReg, tnNivel + 0, @tcEndProcedures, toHeader)
ELSE
@@ -19218,10 +19246,10 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
ENDIF
*-- ON BAR
IF toReg.OBJCODE <> 78 && Bar#
IF toReg.OBJCODE <> C_OBJCODE_MENUOPTION_BARNUM && Bar#
lcText = lcText + CR_LF
IF toReg.OBJCODE = 77 && Submenu
IF toReg.OBJCODE = C_OBJCODE_MENUOPTION_SUBMENU && Submenu
loBarPop = THIS.ITEM(1).oReg
lcText = lcText + lcTab + 'ON BAR ' + ALLTRIM( EVL( toReg.NAME, toReg.ITEMNUM ) ) + ' OF ' + ALLTRIM(toReg.LevelName) ;
+ ' ACTIVATE POPUP ' + ALLTRIM(loBarPop.NAME)
@@ -19229,11 +19257,11 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
lcText = lcText + lcTab + 'ON SELECTION BAR ' + ALLTRIM( EVL( toReg.NAME, toReg.ITEMNUM ) ) + ' OF ' + ALLTRIM(toReg.LevelName)
DO CASE
CASE toReg.OBJCODE = 67 && Command
CASE toReg.OBJCODE = C_OBJCODE_MENUOPTION_COMMAND && Command
IF NOT EMPTY(toReg.COMMAND)
lcText = lcText + ' ' + ALLTRIM(toReg.COMMAND)
ENDIF
CASE toReg.OBJCODE = 80 && Procedure
CASE toReg.OBJCODE = C_OBJCODE_MENUOPTION_PROCEDURE && Procedure
IF NOT EMPTY(toReg.PROCEDURE)
lcText = lcText + ' DO <<ProcName>>'
ENDIF
@@ -19318,10 +19346,10 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
lcText = lcText + CR_LF
*-- ON PAD
IF toReg.OBJCODE <> 78 && Bar#
IF toReg.OBJCODE <> C_OBJCODE_MENUOPTION_BARNUM && Bar#
lcText = lcText + CR_LF
IF toReg.OBJCODE = 77 && Submenu
IF toReg.OBJCODE = C_OBJCODE_MENUOPTION_SUBMENU && Submenu
loBarPop = THIS.ITEM(1).oReg
lcText = lcText + lcTab + 'ON PAD ' + ALLTRIM(toReg.NAME) + ' OF ' + ALLTRIM(toReg.LevelName) ;
+ ' ACTIVATE POPUP ' + ALLTRIM(loBarPop.NAME)
@@ -19329,11 +19357,11 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
lcText = lcText + lcTab + 'ON SELECTION PAD ' + ALLTRIM(toReg.NAME) + ' OF ' + ALLTRIM(toReg.LevelName)
DO CASE
CASE toReg.OBJCODE = 67 && Command
CASE toReg.OBJCODE = C_OBJCODE_MENUOPTION_COMMAND && Command
IF NOT EMPTY(toReg.COMMAND)
lcText = lcText + ' ' + ALLTRIM(toReg.COMMAND)
ENDIF
CASE toReg.OBJCODE = 80 && Procedure
CASE toReg.OBJCODE = C_OBJCODE_MENUOPTION_PROCEDURE && Procedure
IF NOT EMPTY(toReg.PROCEDURE)
lcText = lcText + ' DO <<ProcName>>'
ENDIF