by quique » Fri Apr 12, 2013 6:15 pm
El error no creo que esté en esa clase ¿que es lo que necesitas ver en ella ponerlo? más bien creo que es en la creación del menú, porque quitando esa parte ya no tengo problemas, ya pude ver el diálogo sin problemas, y esa parte no la tengo dentro de la clase derivada de tTxtEdit
Esta es casi toda la la función donde creo el menú, no me dejo subirla toda por el límite de caracteres, pero quito solamente líneas en la creación del ::aKeyCon, y no lo muestro como código porque no se muestra el mensaje
function menuPrincipal
local /*oMenu, */xMenu, nLen, hMenu, cCont
local self := qSelf()
::aKeyCon := { ; // Lista de funciones programables "TIPO" => " " , "x"- Teclas en tiempo de edición, "0" y "5"- inicia menu, "1" , "4"- menuItem, "2" separador dentro del menú "3" fin de menú
; // Teclas en tiempo de edición
{ "DESCRIP" => hIdioma:curBckSpc , "TIPO" => " ", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_BACK , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:delete( .t. ) } }, ;
{ "DESCRIP" => hIdioma:curReturn , "TIPO" => " ", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_RETURN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:edit_return() } }, ;
{ "DESCRIP" => hIdioma:curTab , "TIPO" => " ", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_TAB , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:edit_tabulador() } }, ;
{ "DESCRIP" => hIdioma:curEsc , "TIPO" => " ", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_ESCAPE , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || nil } }, ;
{ "DESCRIP" => hIdioma:curInsertar , "TIPO" => "x", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_INSERT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:toggleInsert() } }, ;
{ "DESCRIP" => hIdioma:curSelIni , "TIPO" => " ", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_HOME , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || if( ::oFuente:nPressDown == 1, ::oFuente:goBeginChar( .t. ), if( ::oFuente:nPressDown == 2, ::oFuente:goBeginLine( .t. ), if( ::oFuente:nPressDown == 3, ::oFuente:goBeginWindow( .t. ), if( ::oFuente:nPressDown == 4, ::oFuente:goTop( .t. ), ) ) ) ) } }, ;
{ "DESCRIP" => hIdioma:curSelFin , "TIPO" => " ", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_END , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || if( ::oFuente:nPressDown == 1, ::oFuente:goEndLine( .t. ), if( ::oFuente:nPressDown == 2, ::oFuente:goEndWindow( .t. ), if( ::oFuente:nPressDown == 3, ::oFuente:goBottom( .t. ), ) ) ) } }, ;
{ "DESCRIP" => hIdioma:curInicio , "TIPO" => " ", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_HOME , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || if( ::oFuente:nPressDown == 1, ::oFuente:goBeginChar( .f. ), if( ::oFuente:nPressDown == 2, ::oFuente:goBeginLine( .f. ), if( ::oFuente:nPressDown == 3, ::oFuente:goBeginWindow( .f. ), if( ::oFuente:nPressDown == 4, ::oFuente:goTop( .f. ), ) ) ) ) } }, ;
{ "DESCRIP" => hIdioma:curFin , "TIPO" => "x", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_END , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || if( ::oFuente:nPressDown == 1, ::oFuente:goEndLine( .f. ), if( ::oFuente:nPressDown == 2, ::oFuente:goEndWindow( .f. ), if( ::oFuente:nPressDown == 3, ::oFuente:goBottom( .f. ), ) ) ) } }, ;
; // Menú Archivo
{ "DESCRIP" => hIdioma:mnuArchivo , "TIPO" => "5", "VARIABLE" => "_OITMARCH" }, ;
{ "DESCRIP" => hIdioma:mnuNuevo , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::fuenteNuevo() } , "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:mnuAbrir , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F3 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::abrirFuente() } , "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:mnuGuardar , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F2 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:saveToFile() }, "WHEN" => { || ::oFuente <> nil .AND. ::oFuente:lChanged } }, ;
{ "DESCRIP" => hIdioma:mnuGuardarComo, "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:saveToFile( , .t. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuGuardarTodo, "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_F2 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::guardarTodo() } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuCerrar , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F2 , "FLAGS2" => ACC_CONTROL, "TECLA2" => VK_F4 , "ACCION" => { || ::oFuente:cerrar() } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuCerrarTodo , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F3 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:closeAll() } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuProyectos , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::proyectos() } , "WHEN" => nil }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuOS_shell , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || shellExecute( , "open", getEnv( "COMSPEC" ),,, SW_SHOWNORMAL ) }, "WHEN" => nil }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuImprimir , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "P" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:print() } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuConfImp , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "P" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || printerSetup() } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuPreprocesar, "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuDirInclude , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::config( 2 ) } , "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:mnuPPCompacto , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:preproceso( 0 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuPPNormal , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:preproceso( 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuPPDetallado, "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:preproceso( 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuSalir , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_F4 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:end() } , "WHEN" => nil }, ;
{ "TIPO" => "2" }, ;
{ "TIPO" => "3" }, ;
; // Menú Editar
{ "DESCRIP" => hIdioma:mnuEditar , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuUndo , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_BACK , "FLAGS2" => ACC_CONTROL, "TECLA2" => asc( "Z" ), "ACCION" => { || ::oFuente:undo() } , "WHEN" => { || ::oFuente <> nil .AND. len( ::oFuente:aDelLines ) >= ::oFuente:nUndo } }, ;
{ "DESCRIP" => hIdioma:mnuRedo , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_RETURN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:redo() } , "WHEN" => { || ::oFuente <> nil .AND. ::oFuente:nUndo > 1 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuCortar , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "X" ), "FLAGS2" => ACC_SHIFT , "TECLA2" => VK_DELETE , "ACCION" => { || ::oFuente:shift_delete()}, "WHEN" => { || ::oFuente <> nil .AND. ::oFuente:hSelect <> nil .and. !::oFuente:lReadOnly } }, ;
{ "DESCRIP" => hIdioma:mnuCopiar , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "C" ), "FLAGS2" => ACC_CONTROL, "TECLA2" => VK_INSERT , "ACCION" => { || ::oFuente:ctrl_insert()}, "WHEN" => { || ::oFuente <> nil .AND. ::oFuente:hSelect <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuPegar , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "V" ), "FLAGS2" => ACC_SHIFT , "TECLA2" => VK_INSERT , "ACCION" => { || ::oFuente:paste() } , "WHEN" => { || ::oFuente <> nil .AND. !::oFuente:lReadOnly } }, ;
{ "DESCRIP" => hIdioma:mnuSuprimir , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_DELETE , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:delete( .f. )}, "WHEN" => { || ::oFuente <> nil .AND. !::oFuente:lReadOnly } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuSelLine , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F7 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:edit_insert( SELECCION_LINEA ) } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuSelbloque , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F7 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:edit_insert( SELECCION_BLOQUE ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuMovCursor , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:curSelLinPrev , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_UP , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goPrevLine( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelLinSig , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_DOWN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || if( ::oFuente:lActDer .OR. ::oFuente:nLine() < len( ::oFuente:aLines ) + 1, ::oFuente:goNextLine( .t. ), ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelIzq , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_LEFT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goPrevChar( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelDer , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_RIGHT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goNextChar( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelWordPrev, "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => VK_LEFT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goPrevWord( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelWordSig , "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => VK_RIGHT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goNextWord( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelPagSig , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_NEXT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:pageDown( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelPagPrev , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_PRIOR , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:pageUp( .t. )}, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelIniArch , "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => VK_HOME , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goTop( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelFinArch , "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => VK_END , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goBottom( .t. ) }, "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:curSelScrlUp , "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => VK_UP , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:scrollUp( .t. ) } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curSelScrlDown, "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => VK_DOWN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:scrollDown( .t. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuInsVentana , "TIPO" => "0" } ;
}
FOR each xMenu in ::hVentanas
aAdd( ::aKeyCon, { "DESCRIP" => xMenu:menu, "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => codeBlockCreaVentana( self, xMenu:__enumValue() ), "WHEN" => { || ::oFuente <> nil } } )
NEXT
xMenu := { ;
{ "TIPO" => "3" }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuVentCodAct , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "V" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:verVentana() }, "WHEN" => { || ::oFuente <> nil .AND. !empty( ::oFuente:aVentanas ) } }, ;
{ "TIPO" => "3" }, ;
; // Buscar
{ "DESCRIP" => hIdioma:mnuBuscar , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuBuscar , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F5 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:dlgFind() } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuIrALinea , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_F5 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:dlgGoLine( ,, .t. ) } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curModifiUp , "TIPO" => "1", "FLAGS1" => ACC_ALTSHFT, "TECLA1" => VK_UP , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:modificadaUp() }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curModifiDown , "TIPO" => "1", "FLAGS1" => ACC_ALTSHFT, "TECLA1" => VK_DOWN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:modificadaDown() }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuMovCursor , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:curLinPrev , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_UP , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goPrevLine( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curLinSig , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_DOWN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || if( ::oFuente:lActDer .OR. ::oFuente:nLine() < len( ::oFuente:aLines ) + 1, ::oFuente:goNextLine( .f. ), ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curChrPrev , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_LEFT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goPrevChar( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curChrSig , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_RIGHT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goNextChar( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curWordPre , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_LEFT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goPrevWord( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curWordSig , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_RIGHT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:goNextWord( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curPagSig , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_NEXT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:pageDown( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curPagPrev , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_PRIOR , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:pageUp( .f. )}, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curIniArch , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_HOME , "FLAGS2" => ACC_CONTROL, "TECLA2" => VK_PRIOR , "ACCION" => { || ::oFuente:goTop( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curFinArch , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_END , "FLAGS2" => ACC_CONTROL, "TECLA2" => VK_NEXT , "ACCION" => { || ::oFuente:goBottom( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curScrollUp , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_UP , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:scrollUp( .f. ) } , "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curScrollDown , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_DOWN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:scrollDown( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curFindUp , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => VK_UP , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:findCursor( .t. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:curFindDown , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => VK_DOWN , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:findCursor( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuBanderaPone, "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F4 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:bandera( .t. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuBanderaIr , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F4 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:bandera( .f. ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuMarcadorPon, "TIPO" => "0" }, ;
{ "DESCRIP" => "1" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "1" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 1, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "2" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "2" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 2, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "3" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "3" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 3, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "4" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "4" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 4, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "5" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "5" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 5, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "6" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "6" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 6, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "9" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "9" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 9, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "0" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "0" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 10, 1 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
{ "DESCRIP" => hIdioma:mnuMarcadorIr , "TIPO" => "0" }, ;
{ "DESCRIP" => "1" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "1" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 1, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "2" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "2" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 2, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "3" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "3" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 3, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "4" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "4" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 4, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "5" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "5" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 5, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "6" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "6" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 6, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "9" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "9" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 9, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "0" , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => asc( "0" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 10, 2 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
{ "DESCRIP" => hIdioma:mnuMarcadorBor, "TIPO" => "0" }, ;
{ "DESCRIP" => "1" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "1" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 1, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "2" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "2" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 2, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "3" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "3" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 3, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "4" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "4" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 4, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "5" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "5" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 5, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "6" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "6" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 6, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "9" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "9" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 9, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => "0" , "TIPO" => "1", "FLAGS1" => ACC_ALTCTRL, "TECLA1" => asc( "0" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:marcador( 10, 3 ) }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuListaFunc , "TIPO" => "1", "FLAGS1" => ACC_ALTSHFT, "TECLA1" => asc( "F" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:listaFunciones() }, "WHEN" => { || ::oFuente <> nil .AND. !empty( ::oFuente:aFunciones ) } }, ;
{ "DESCRIP" => hIdioma:mnuListaVent , "TIPO" => "1", "FLAGS1" => ACC_ALTSHFT, "TECLA1" => asc( "V" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:listaVentanas() } , "WHEN" => { || ::oFuente <> nil .AND. !empty( ::oFuente:aVentanas ) } }, ;
{ "TIPO" => "3" }, ;
; // Texto
{ "DESCRIP" => hIdioma:mnuTexto , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuComentario , "TIPO" => "1", "FLAGS1" => ACC_CTRLSHF, "TECLA1" => asc( "C" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:comentario() }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuMayusMinus , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "C" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:changeCase() }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "DESCRIP" => hIdioma:mnuDlgMayusMi , "TIPO" => "1", "FLAGS1" => ACC_ALTSHFT, "TECLA1" => asc( "C" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:selectCase() }, "WHEN" => { || ::oFuente <> nil } }, ;
{ "TIPO" => "3" }, ;
; // Depurador (debugger)
{ "DESCRIP" => hIdioma:mnuDebugger , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuRun , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F6 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::ejecutar() } , "WHEN" => { || ::nDbgStatus == 0 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuCompilar , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F9 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::compilar( .f. ) } , "WHEN" => { || ::nDbgStatus == 0 } }, ;
{ "DESCRIP" => hIdioma:mnuReconstruir, "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F9 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::compilar( .t. ) } , "WHEN" => { || ::nDbgStatus == 0 } }, ;
{ "DESCRIP" => hIdioma:mnuDebugger , "TIPO" => "4", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { | oItm | oItm:setCheck( !oItm:lChecked ) }, "WHEN" => { || ::nDbgStatus == 0 }, "VARIABLE" => "_OITMDBG" }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuContinuar , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F8 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Seguir" ), ::nDbgStatus := 1 }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => hIdioma:mnuStep , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F8 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Paso" ), ::nDbgStatus := 1 }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => hIdioma:mnuRutina , "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_F9 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Trace" ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => hIdioma:mnuSigrutina , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_F9 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Siguiente" ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => hIdioma:mnuHastaCursor, "TIPO" => "1", "FLAGS1" => ACC_CONTROL, "TECLA1" => VK_F8 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Línea" + str( ::oFuente:nLine, 6 ) + ::oFuente:cNomSinPath ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuBreakPoint , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_F10 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oFuente:breakPoint() }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => "alt&D()" , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "D" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "altD()" ) }, "WHEN" => { || ::nDbgStatus > 0 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuVelocidad , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Velocidad" ) }, "WHEN" => { || ::nDbgStatus > 0 } }, ;
{ "DESCRIP" => hIdioma:mnuAnimado , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Animado" ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuVariables , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_F6 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Variables" ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => hIdioma:mnuWorkAreas , "TIPO" => "1", "FLAGS1" => ACC_SHIFT , "TECLA1" => VK_F6 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Areas" ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "DESCRIP" => hIdioma:mnuVisorSets , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Sets" ) }, "WHEN" => { || ::nDbgStatus == 2 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuTerminar , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => asc( "X" ), "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oDdeCli:execute( "Terminar" ) }, "WHEN" => { || ::nDbgStatus > 0 } }, ;
{ "TIPO" => "3" }, ;
; // Utilerías
{ "DESCRIP" => hIdioma:mnuUtilerias , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuConfig , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::config() } , "WHEN" => nil }, ;
{ "TIPO" => "3" }, ;
; // Menú Ventanas
{ "DESCRIP" => hIdioma:mnuWindows , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuVentVert , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:tile() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 0 } }, ;
{ "DESCRIP" => hIdioma:mnuVentHoriz , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:tile( .t. ) } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 0 } }, ;
{ "DESCRIP" => hIdioma:mnuVentCascada, "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:cascade() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 0 } }, ;
{ "DESCRIP" => hIdioma:mnuVentSiguien, "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_RIGHT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::ventanaSig() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 1 } }, ;
{ "DESCRIP" => hIdioma:mnuVentPrevia , "TIPO" => "1", "FLAGS1" => ACC_ALT , "TECLA1" => VK_LEFT , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::ventanaAnt() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 1 } }, ;
{ "TIPO" => "2" }, ;
{ "DESCRIP" => hIdioma:mnuArreglaIco , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:arrangeIcons() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 0 } }, ;
{ "DESCRIP" => hIdioma:mnuIconizaTodo, "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:iconizeAll() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 0 } }, ;
{ "DESCRIP" => hIdioma:mnuCerrarTodo , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || ::oWnd:closeAll() } , "WHEN" => { || len( ::oWnd:oWndClient:aWnd ) > 0 } }, ;
{ "TIPO" => "3" }, ;
; // Menú Ayuda
{ "DESCRIP" => hIdioma:mnuAyuda , "TIPO" => "0" }, ;
{ "DESCRIP" => hIdioma:mnuAyuda , "TIPO" => "1", "FLAGS1" => ACC_NORMAL , "TECLA1" => VK_F1 , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || shellExecute( , "open", ::cDir + "ayuda\index.htm" ) } , "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:mnuAcercaDe , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || acercaDe( .t.,,,,,::cNomReg ) } , "WHEN" => nil }, ;
{ "DESCRIP" => hIdioma:mnuNews , "TIPO" => "1", "FLAGS1" => nil , "TECLA1" => nil , "FLAGS2" => nil , "TECLA2" => nil , "ACCION" => { || shellExecute( , "open", ::cDir + "ayuda\quehaydenuevo.htm" ) }, "WHEN" => nil }, ;
{ "TIPO" => "3" } ;
}
nLen := len( ::aKeyCon )
aSize( ::aKeyCon, nLen + len( xMenu ) )
aEval( xMenu, { | x, y | ::aKeyCon[ nLen + y ] := x } )
aFill( aSize( ::hKeyDown:aAltCtrl , TOTAL_VKEYS ), .f. )
aFill( aSize( ::hKeyDown:aShiftCtrl, TOTAL_VKEYS ), .f. )
aFill( aSize( ::hKeyDown:aCtrl , TOTAL_VKEYS ), .f. )
aFill( aSize( ::hKeyDown:aShift , TOTAL_VKEYS ), .f. )
aFill( aSize( ::hKeyDown:aTecla , TOTAL_VKEYS ), .f. )
aFill( aSize( ::hKeyDown:aKeyDown , TOTAL_VKEYS ), .f. )
MENU ::oMenu 2007
FOR each hMenu in ::aKeyCon
SWITCH hMenu:tipo
CASE "0" // menuItem que inicia menú
menuItem hMenu:descrip
menu
EXIT
CASE "1" // menuItem normal
menuAddItem( hMenu:descrip + if( hMenu:flags1 == nil, "", armaKeyFlags( hMenu ) ),,,, ;
hMenu:accion,,,,, hMenu:flags1, hMenu:tecla1,,, hMenu:when )
EXIT
CASE "2" // separador
separator
EXIT
CASE "3" // endMenu
endMenu
EXIT
CASE "4" // menuItem normal asignado a una variable
hb_execFromArray( self, hMenu:variable, ;
{ menuAddItem( hMenu:descrip + if( hMenu:flags1 == nil, "", armaKeyFlags( hMenu ) ),,,, ;
hMenu:accion,,,,, hMenu:flags1, hMenu:tecla1,,, hMenu:when ) } )
EXIT
CASE "5" // menuItem que inicia menú asignado a una variable
menuItem hMenu:descrip
hb_execFromArray( self, hMenu:variable, { menuBegin() } )
EXIT
END SWITCH
// Guarda configuración del teclado
IF hMenu:tipo $ "x 14"
FOR each cCont in "12"
IF hMenu:tipo == "1" .AND. cCont == "1"
loop
ENDIF
IF hMenu[ "TECLA" + cCont ] <> nil
SWITCH hMenu[ "FLAGS" + cCont ]
CASE ACC_ALT + ACC_SHIFT
::hKeyDown:hAltShift[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aAltShift[ hMenu[ "TECLA" + cCont ] ] := .t.
CASE ACC_CONTROL + ACC_ALT
::hKeyDown:hAltCtrl[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aAltCtrl[ hMenu[ "TECLA" + cCont ] ] := .t.
CASE ACC_CONTROL + ACC_SHIFT
::hKeyDown:hShiftCtrl[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aShiftCtrl[ hMenu[ "TECLA" + cCont ] ] := .t.
EXIT
CASE ACC_CONTROL
::hKeyDown:hCtrl[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aCtrl[ hMenu[ "TECLA" + cCont ] ] := .t.
EXIT
CASE ACC_SHIFT
::hKeyDown:hShift[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aShift[ hMenu[ "TECLA" + cCont ] ] := .t.
EXIT
DEFAULT
IF hMenu[ "TIPO" ] == "x" // Teclas espaciales que no entran a keychar, solo a keydown
::hKeyDown:hKeyDown[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aKeyDown[ hMenu[ "TECLA" + cCont ] ] := .t.
ELSE
::hKeyDown:hTecla[ hMenu[ "TECLA" + cCont ] ] := hMenu:accion
::hKeyDown:aTecla[ hMenu[ "TECLA" + cCont ] ] := .t.
ENDIF
EXIT
END SWITCH
ENDIF
NEXT
ENDIF
NEXT
ENDMENU
::oMenu:oIde := self
return ::oMenu
static function codeBlockCreaVentana( self, value )
return { || ::oFuente:creaVentana( value ) }
Saludos
Quique