Mejoras para scintilla

User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Mejoras para scintilla

Post by mastintin »

Cristobla te adjunto aqui lo que he sacado de la pagina web de harbour. Lo he limpiado con un programilla hecho con fwh asi que puede que tenga algún "infiltrado" .

Code: Select all

DO( <xFuncProc> [, <xArguments...>] ) --> <xRetVal> 
HB_PVALUE( <nArg> ) --> <xExp> 
PCOUNT() --> <nArgs> 
PROCFILE( <xExp> ) --> <cEmptyString> 
PROCLINE( <nLevel> ) --> <nLine> 
PROCNAME( <nLevel> ) --> <cProcName> 
AADD(<aArray>[, <xValue>]) --> Value 
ACLONE(<aSource>) --> aDuplicate 
ACOPY( <aSource>, <aTarget>, [<nStart>], [<nCount>], [<nTargetPos>] ) --> aTarget 
ADEL(<aArray>, <nPos>) --> aTarget 
AEVAL(<aArray>, <bBlock>, [<nStart>], [<nCount>]) --> aArray 
AFILL( <aArray>, <xValue>, [<nStart>], [<nCount>] ) --> aTarget 
AINS( <aArray>, <nPos> ) --> aTarget 
ARRAY( <nElements> [, <nElements>...] ) --> aArray 
ASCAN( <aTarget>, <xSearch>, [<nStart>], [<nCount>] ) --> nStoppedAt 
ASIZE(<aArray>, <nLen>) --> aTarget 
ASORT( <aArray>, [<nStart>], [<nCount>], [<bSort>] ) --> aArray 
ATAIL( <aArray> ) --> Element 
oClass := HBClass():New("TMyClass") 
BIN2I( <cBuffer> ) --> nNumber 
BIN2L( <cBuffer> ) --> nNumber 
BIN2U( <cBuffer> ) --> nNumber 
BIN2W( <cBuffer> ) --> nNumber 
DESCEND( <xExp> ) --> xExpInverted 
I2BIN( <nNumber> ) --> cBuffer 
L2BIN( <nNumber> ) --> cBuffer 
U2BIN( <nNumber> ) --> cBuffer 
W2BIN( <nNumber> ) --> cBuffer 
WORD( <nDouble> ) --> <nInteger> 
AFields(<aNames>[,<aTypes>][,<aLen>][,<aDecs>]) --> <nFields> 
Alias([<nWorkArea>]) --> <cWorkArea> 
BOF() --> <lBegin> 
DbAppend( [<lLock>] ) --> NIL 
DbClearFilTer() --> NIL 
DbCloseAll() --> NIL 
DbCloseArea() 
DBCOMMIT() 
DBCOMMIT() 
DBCREATE( <cDatabase>, <aStruct>, [<cDriver>], [<lOpen>], 
DBDELETE() 
Dbf() --> <cWorkArea> 
DBFILTER() --> cFilter 
DBGOBOTTOM() 
DBGOTO(<xRecordNumber>) 
DBGOTOP() 
DBRECALL() 
DBRLOCK([<xIdentity>]) --> lSuccess 
DBRLOCKLIST() --> aRecordLocks 
DBRUNLOCK([<xIdentity>]) 
DBSEEK(<expKey>, [<lSoftSeek>],[<lFindLast>]) --> lFound 
DBSELECTAREA(<xArea>) - 
DBSETDRIVER( [<cDriver>] ) --> cCurrentDriver 
DBSETFILTER(<bCondition>, [<cCondition>]) 
DBSKIP([<nRecords>]) 
DBSTRUCT() --> aStruct 
DBUNLOCK() 
DBUNLOCKALL() 
DBUSEAREA( [<lNewArea>], [<cDriver>], <cName>, [<xcAlias>], [<lShared>], [<lReadonly>]) 
DELETED() --> lDeleted 
EOF() --> <lEnd> 
FCOUNT() --> nFields 
FIELDGET(<nField>) --> ValueField 
FIELDNAME/FIELD(<nPosition>) --> cFieldName 
FIELDPOS(<cFieldName>) --> nFieldPos 
FIELDPUT(<nField>, <expAssign>) --> ValueAssigned 
FLOCK() --> lSuccess 
FOUND() --> lSuccess 
HEADER() --> nBytes 
INDEXEXT() --> <cExtension> 
INDEXKEY(<nOrder>) --> <cIndexKey> 
INDEXORD() --> <nPosition> 
LASTREC() | RECCOUNT()* --> nRecords 
LUPDATE() --> dModification 
NETERR([<lNewError>]) --> lError 
ORDBAGEXT() --> cBagExt 
ORDBAGNAME(<nOrder> | <cOrderName>) --> cOrderBagName 
ORDCONSET([<cForCondition>], 
ORDCREATE(<cOrderBagName>,[<cOrderName>], <cExpKey>, [<bExpKey>], [<lUnique>]) 
ORDDESTROY(<cOrderName> [, <cOrderBagName> ]) 
ORDFOR(<xOrder>[, <cOrderBagName>]) --> cForExp 
ORDKEY(<cOrderName> | <nOrder> [, <cOrderBagName>]) --> cExpKey 
RECCOUNT()* | LASTREC() --> nRecords 
RECNO() --> Identity 
RECSIZE() --> nBytes 
RLOCK() --> lSuccess 
SELECT([<cAlias>]) --> nWorkArea 
USED() --> lDbfOpen 
__FLEDIT( <aStruct>, [<aFieldList>] ) --> aStructFiltered 
__dbCopyStruct( <cFileName>, [<aFieldList>] ) 
__dbCopyXStruct( <cFileName> ) --> lSuccess 
__dbCreate( <cFileName>, [<cFileFrom>], [<cRDDName>], [<lNew>], [<cAlias>] ) --> lUsed 
__dbDelim( <lExport>, <xcFile>, [<xcDelim>], [<aFields>], [<bFor>], [<bWhile>], [<nNext>], [<nRecord>], <lRest> ) 
__dbSDF( <lExport>, <xcFile>, [<aFields>], [<bFor>], [<bWhile>], [<nNext>], [<nRecord>], <lRest> ) 
__dbStructFilter( <aStruct>, [<aFieldList>] ) --> aStructFiltered 
CDOW(<dDate>) --> cDay 
CMONTH(<dDate>) --> cMonth 
CTOD(<cDateString>) --> dDate 
DATE() --> dCurDate 
DAY(<cDate>) --> nMonth 
DAYS(<nSecs> ) --> nDay 
DOW(<dDate>) --> nDay 
DTOC(<dDateString>) --> cDate 
DTOS(<dDateString>) --> cDate 
ELAPTIME(<cStartTime>,<cEndTime>) --> cDiference 
MONTH(<dDate>) --> nMonth 
SECONDS() --> nSeconds 
SECS( <cTime> ) --> nSeconds 
TIME() --> cTime 
YEAR(<cDate>) --> nYear 
GETE(<cEnviroment> ) --> <cReturn> 
GETENV(<cEnviroment> ) --> <cReturn> 
HB_GETENV(<cEnviroment>, [<cDefaultValue>], [<lApplyCodepage>] ) --> <cReturn> 
OS() --> <cOperatingSystem> 
RUN <cCommand> 
Set(<nSet> [, <xNewSetting> [, <xOption> ] ] ) --> xPreviousSetting 
SETMODE( <nRows>, <nCols> ) --> lSuccess 
SETTYPEAHEAD( <nSize> ) --> <nPreviousSize> 
TONE( <nFrequency>, <nDuration> ) --> NIL 
VERSION() --> <cReturn> 
__RUN( <cCommand> ) 
__SETCENTURY([<lFlag> | <cOnOff> ] ) --> lPreviousValue 
hb_eol() --> cString 
BREAK( <xExp> ) 
ERRORSYS() --> NIL 
HB_SETKEYSAVE( [ <OldKeys> ] ) 
HB_SetKeyCheck( <nKey> [, <p1> ][, <p2> ][, <p3> ] ) 
HB_SETKEYGET( <nKey> [, <bConditionByRef> ] ) 
SETKEY( <anKey> [, <bAction> [, <bCondition> ] ] ) 
__QUIT() 
__SetFunction( <nFunctionKey>, [<cString>] ) --> NIL 
__WAIT( <cMessage> ) --> <cKey> 
DBEVAL( <bBlock>, [<bFor>], [<bWhile>], [<nNext>], [<nRecord>], [<lRest>] ) --> NIL 
EVAL( <bBlock> [, <xVal> [,...]]) --> xExpression 
ADIR( [<cFileMask>], [<aName>], [<aSize>], [<aDate>], 
CURDIR( [<cDrive>] ) --> cPath 
DIRCHANGE( <cDirectory> ) --> nError 
DIRREMOVE( <cDirectory> ) --> nError 
DISKSPACE( [<nDrive>] ) --> nDiskbytes 
FCLOSE( <nHandle> ) --> <lSuccess> 
FCREATE( <cFile>, [<nAttribute>] ) --> nHandle 
FERASE( <cFile> ) --> nSuccess 
FERROR() --> <nErrorCode> 
FILE( <cFileSpec> ) --> lExists 
FOPEN( <cFile>, [<nMode>] ) --> nHandle 
FREAD( <nHandle>, @<cBuffer>, <nBytes> ) --> nBytes 
FREADSTR(<nHandle>, <nBytes>) --> cString 
FRENAME( <cOldFile>, <cNewFile> ) --> nSuccess 
FSEEK( <nHandle>, <nOffset>, [<nOrigin>] ) --> nPosition 
FWRITE( <nHandle>, <cBuffer>, [<nBytes>] ) --> nBytesWritten 
HB_DISKSPACE( [<cDrive>] [, <nType>] ) --> nDiskbytes 
HB_FEOF( <nHandle> ) --> lIsEof 
ISDISK( <cDrive> ) --> lSuccess 
MAKEDIR( <cDirectory> ) --> nError 
__Dir( [<cFileMask>] ) --> NIL 
HB_GCALL() 
#include <hbapi.h> void *hb_gcAlloc( ULONG ulSize, HB_GARBAGE_FUNC_PTR pCleanupFunc ); 
void hb_gcCollectAll( void ); 
void hb_gcFree( void *pMemoryPtr ); 
void hb_gcItemRef( PHB_ITEM pItem ); 
HB_HALLOCATE( <hsTable>, <nItems> ) 
HB_HASH( [ <Key1>, <Value1> ], [ <KeyN>, <ValueN> ], ... ) -> hsTable 
HB_HAUTOADD( <hsTable>, [<lFlag>] ) -> <lPreviousFlag> 
HB_HBINARY( <hsTable>, [<lFlag>] ) -> <lPreviousFlag> 
HB_HCASEMATCH( <hsTable>, [<lFlag>] ) -> <lPreviousFlag> 
HB_HCLONE( <hsTable> ) -> <hsDestination> 
HB_HCOPY( <hsDestination>, <hsSource>, [<nStart>], [<nCount>] ) -> <hsDestination> 
HB_HDEFAULT( <hsTable>, <DefaultValue> ) -> <OldDefaultValye> 
HB_HDEL( <hsTable>, <Key> ) -> <hsTable> 
HB_HDELAT( <hsTable>, <nPosition> ) -> <hsTable> 
HB_HEVAL( <hsTable>, <bBlock>, [<nStart>], [<nCount>] ) -> <hsTable> 
HB_HFILL( <hsTable>, <Value> ) -> <hsTable> 
HB_HGET( <hsTable>, <Key> ) -> <Value> 
HB_HGETDEF( <hsTable>, <Key>, [<DefaultValue>] ) -> <Value> 
HB_HHASKEY( <hsTable>, <Key> ) -> lExists 
HB_HKEYAT( <hsTable>, <nPosition> ) -> <Key> 
HB_HKEYS( <hsTable> ) -> <aKeys> 
HB_HMERGE( <hsDestination>, <hsSource>, <bBlock>|<nPosition> ) -> <hsDestination> 
HB_HPAIRAT( <hsTable>, <nPosition> ) -> <aKeyValue> 
HB_HPOS( <hsTable>, <Key> ) -> nPosition 
HB_HSCAN( <hsTable>, <Value>, [<nStart>], [<nCount>, [<lExact>] ) -> nPosition 
HB_HSET( <hsTable>, <Key>, <Value> ) -> <hsTable> 
HB_HSETAUTOADD( <hsTable>, [<lFlag>] ) -> <hsTable> 
HB_HSETBINARY( <hsTable>, [<lFlag>] ) -> <hsTable> 
HB_HSETCASEMATCH( <hsTable>, [<lFlag>] ) -> <hsTable> 
HB_HSORT( <hsTable> ) -> <hsSortedTable> 
HB_HVALUEAT( <hsTable>, <nPosition>, [<NewValue>] ) -> <Value> 
HB_HVALUES( <hsTable> ) -> <aValues> 
HB_IDLEADD( <bAction> ) --> nHandle 
HB_IDLEDEL( <nHandle> ) --> <bAction> 
HB_IDLESTATE() 
HB_INETACCEPT( <socket> ) -> SOCKET 
HB_INETADDRESS( <socket> ) -> cResult 
HB_INETCLEANUP() 
HB_INETCLEARERROR( <socket> ) 
HB_INETCLEARPERIODCALLBACK( <socket> ) 
HB_INETCLEARTIMELIMIT( <socket> ) 
HB_INETCLEARTIMEOUT( <socket> ) 
HB_INETCLOSE( <socket> ) -> nResult 
HB_INETCONNECTIP( <cAddress>, <nPort> ) -> SOCKET 
HB_INETCONNECT( <cAddress>, <nPort> ) -> SOCKET 
HB_INETCOUNT( <socket> ) -> nResult 
HB_INETCREATE( [ <nTimeout> ] ) -> SOCKET 
HB_INETCRLF() -> cResult 
HB_INETDATAREADY( <socket>, [ <nMillisec> ] ) -> nResult 
HB_INETDGRAMBIND( <nPort>, [<cAddress> [, <lBroadcast>] ] ) -> SOCKET 
HB_INETDGRAMRECV( <socket>, @<cBuffer> [, <nSize> ] ) -> nBytesRead 
HB_INETDGRAMSEND( <socket>, <cAddress>, <nPort>, <cBuffer> [, <nSize> ] ) -> nBytesSent 
HB_INETDGRAM( [<lBroadcast>] ) -> SOCKET 
HB_INETERRORCODE( <socket> ) -> nResult 
HB_INETERRORDESC( <socket> ) -> cResult 
HB_INETFD( <socket> [, <lNoSocket> ] ) -> nResult 
HB_INETGETALIAS( <cName> ) -> aHosts 
HB_INETGETHOSTS( <cName> ) -> aHosts 
HB_INETGETRCVBUFSIZE( <socket> ) -> nResult 
HB_INETGETSNDBUFSIZE( <socket> ) -> nResult 
HB_INETINIT() -> lResult 
HB_INETISSOCKET( <socket> ) -> lResult 
HB_INETPERIODCALLBACK( <socket> [, <xCallback> ] ) -> xPreviousCallback 
HB_INETPORT( <socket> ) -> cResult 
HB_INETRECVALL( <socket>, @<cResult>, [ <nAmount> ] ) -> nResult 
HB_INETRECVLINE( <socket> [, @<nBytesRead>, [, <nMaxLength> [, <nBufSize> ]]] ) -> cResult 
HB_INETRECV( <socket>, @<cResult>, [ <nAmount> ] ) -> nResult 
HB_INETRECVENDBLOCK( <socket> [, <cBlock >[, @<nBytesRead> [, <nMaxLength> [, <nBufSize> ]]]] ) -> cResult 
HB_INETSENDALL( <socket>, <cBuffer> [, <nLength> ] ) -> nResult 
HB_INETSEND( <socket>, <cBuffer> [, <nLength> ] ) -> nResult 
HB_INETSERVER( <port> [, <cBindAddr> [, <nListenLimit> ]] ) -> SOCKET 
HB_INETSETRCVBUFSIZE( <socket>, nSize ) -> nSize 
HB_INETSETSNDBUFSIZE( <socket>, <nSize> ) -> nSize 
HB_INETSTATUS( <socket> ) -> nResult 
HB_INETTIMELIMIT( <socket> [, <nTimeLimit> ) -> NIL 
HB_INETTIMEOUT( <socket> [, <nTimeout> ] ) -> nPreviousTimeout 
CLIPINIT() --> NIL 
__MVDBGINFO( <nScope> [, <nPosition> [, @<cVarName>] ] ) 
__SetHelpK() 
__TextRestore() 
__TextSave( <cFile> ) 
__XHELP() --> <xValue> 
HB_LANGERRMSG( <nErrorCode> ) --> cErrorMessage 
HB_LANGMESSAGE( <nMsg> ) --> cMessage 
HB_LANGNAME() --> cLangName 
HB_LANGSELECT( [<cNewLang>] ) --> cOldLang 
C Prototype (macro definition) 
HB_SETCODEPAGE( [<cNewLang>] ) --> cOldLang 
HB_TRANSLATE( <cSrcText>, [<cPageFrom>], [<cPageTo>] ) --> cDstText 
ISAFFIRM( <cChar> ) --> <lTrueOrFalse> 
ISNEGATIVE( <cChar> ) --> <lTrueOrFalse> 
Language and Nation MSG( <nMsg> ) --> <cMessage> 
HB_SETMACRO( <nOption>, [<lOnOff>] ) --> <lOldSetting> 
ABS(<nNumber>) --> <nAbsNumber> 
EXP( <nNumber> ) --> <nValue> 
HB_MATHERBLOCK ([<bNewBlock>]) --> <bOldBlock> 
HB_MATHERMODE ([<nNewMode>]) --> <nOldMode> 
INT( <nNumber> ) --> <nIntNumber> 
LOG( <nNumber> ) --> <nLog> 
MAX(<xValue>,<xValue1>) --> <xMax> 
MIN(<xValue>,<xValue1>) --> <xMin> 
MOD( <nNumber>,<nNumber1>) --> <nRemainder> 
ROUND( <nNumber>,<nPlace> ) --> <nResult> 
SQRT( <nNumber> ) --> <nSqrt> 
__ObjSetValueList( <oObject>, <aData> ) --> oObject 
__objAddData( <oObject>, <cDataName> ) --> oObject 
__objAddInline( <oObject>, <cInlineName>, <bInline> ) --> oObject 
__objAddMethod( <oObject>, <cMethodName>, <nFuncPtr> ) --> oObject 
__objDelMethod( <oObject>, <cDataName> ) --> oObject 
__objDelInline( <oObject>, <cSymbol> ) --> oObject 
__objDelMethod( <oObject>, <cSymbol> ) --> oObject 
__objDerivedFrom( <oObject>, <xSuper> ) --> lIsParent 
__objGetMethodList( <oObject> ) --> aMethodNames 
__objGetMsgList( <oObject>, [<lData>], [nClassType] ) --> aNames 
__objGetValueList( <oObject>, [<aExcept>] ) --> aData 
__objHasData( <oObject>, <cSymbol> ) --> lExist 
__objHasMethod( <oObject>, <cSymbol> ) --> lExist 
__objModInline( <oObject>, <cInlineName>, <bInline> ) --> oObject 
__objModMethod( <oObject>, <cMethodName>, <nFuncPtr> ) --> oObject 
FIELDBLOCK( <cFieldName> ) --> bFieldBlock 
FIELDWBLOCK( <cFieldName>, <nWorkArea> ) --> bFieldBlock 
ALLTRIM( <cString> ) --> cExpression 
ASC( <cCharacter> ) --> nAscNumber 
AT( <cSearch>, <cString>, [<nStart>], [<nEnd>] ) --> nPos 
CHR( <nAsciiNum> ) --> cReturn 
HARDCR( <cString> ) --> <cConvertedString> 
HB_ANSITOOEM( <cString> ) --> cDosString 
HB_OEMTOANSI( <cString> ) --> cDosString 
HB_VALTOSTR( <xValue> ) --> cString 
ISALPHA( <cString> ) --> lAlpha 
ISDIGIT( <cString> ) --> lDigit 
ISLOWER( <cString> ) --> lLower 
ISUPPER( <cString> ) --> lUpper 
LEFT( <cString>, <nLen> ) --> cReturn 
LOWER( <cString> ) --> cLowerString 
LTRIM( <cString> ) --> cReturn 
MEMOREAD( <cFileName> ) --> cString 
MEMOTRAN( <cString>, <cHard>, <cSoft> ) --> <cConvertedString> 
MEMOWRIT( <cFileName>, <cString>, [<lWriteEof>] ) --> lSuccess 
PADC( <xVal>, <nWidth>, <cFill> ) --> cString 
PADL( <xVal>, <nWidth>, <cFill> ) --> cString 
PADR( <xVal>, <nWidth>, <cFill> ) --> cString 
RAT( <cSearch>, <cString> ) --> nPos 
REPLICATE( <cString>, <nSize> ) --> cReplicateString 
RIGHT( <cString>, <nLen> ) --> cReturn 
RTRIM( <cExpression> ) --> cString 
SPACE( <nSize> ) --> cString 
STR( <nNumber>, [<nLength>], [<nDecimals>] ) --> cNumber 
STRTRAN( <cString>, <cLocString>, [<cRepString>], [<nPos>], 
STRZERO( <nNumber>, [<nLength>], [<nDecimals>] ) --> cNumber 
SUBSTR( <cString>, <nStart>, [<nLen>] ) --> cReturn 
TRANSFORM( <xExpression>, <cTemplate> ) --> cFormated 
TRIM( <cExpression> ) --> cString 
UPPER( <cString> ) --> cUpperString 
VAL( <cNumber> ) --> nNumber 
COL() --> nPosition 
DEVOUTPICT( <xExp>, <cPicture>, [<cColorString>] ) 
MAXCOL() --> nPosition 
MAXROW() --> nPosition 
RESTORE SCREEN 
ROW() --> nPosition 
SAVE SCREEN 
__TYPEFILE( <cFile>, [<lPrint>] ) --> NIL 
hb_ColorIndex( <cColorSpec>, <nIndex> ) --> <cColor> 
ACHOICE(<nTop>, <nLeft>, <nBottom>, <nRight>, <acMenuItems>, [<alSelableItems> | <lSelableItems>], [<cUserFunction> | <bUserBlock>], [<nInitialItem>], [<nWindowRow>]) --> nPosition 
ALERT( <xMessage>, [<aOptions>], [<cColorNorm>], [<nDelay>] ) --> nChoice or NIL 
BROWSE( [<nTop>, <nLeft>, <nBottom>, <nRight>] ) --> lOk 
DBEDIT( [<nTop>], [<nLeft>], [<nBottom>], [<nRight>], [<acColumns>], [<xUserFunc>], [<xColumnSayPictures>], [<xColumnHeaders>], [<xHeadingSeparators>], [<xColumnSeparators>], [<xFootingSeparators>], [<xColumnFootings>] ) --> lOk 
HB_KEYPUT( <nInkeyCode> ) 
INKEY( [<nTimeout>] [,<nEvents>] ) --> nKey 
LASTKEY( [<nInputMask>] ) --> nKey 
MCol() --> nMouseColumn 
MENU TO <cVariable> 
MRow() --> nMouseRow 
NEXTKEY( [<nInputMask>] ) --> nKey 
OUTERR( <xExp,...> ) 
OUTSTD( <xExp,...> ) 
READKEY() --> nKeyCode 
READVAR( [<cVarName>] ) --> cOldVarName 
TBrowseDB( [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ) --> oBrowse 
__AtPrompt( <nRow>, <nCol>, <cPrompt>, [<xMsg>] ) --> .F. 
__INPUT( <cMessage> ) --> <cString> 
KEYBOARD <cString> CLEAR TYPEAHEAD 
__MenuTo( <bBlock>, <cVariable> ) --> nChoice 
__NONOALERT() 
__XRestScreen() 
__XSaveScreen() 
dbSkipper( <nRecs> ) --> nSkipped 
EMPTY( <xExp> ) --> lIsEmpty 
HB_ISBYREF( @<Var> ) --> <lVarIsByRef> 
LEN( <cString> | <aArray> ) --> <nLength> 
MEMVARBLOCK( <cMemvarName> ) --> <bBlock> 
TYPE( <cExp> ) --> <cRetType> 
VALTYPE( <xExp> ) --> <cRetType> 
__MVCLEAR() 
__MVEXIST( <cVarName> ) --> <lVariableExist> 
__MVGET( <cVarName> ) --> <xVar> 
__MVPRIVATE( <variable_name> ) 
__MVPUBLIC( <variable_name> ) 
__MVGET( <cVarName> [, <xValue>] ) --> <xValue> 
__MVRELEASE( <skeleton>, <include_exclude_flag> ) 
__MVSCOPE( <cVarName> ) 
__MVXRELEASE( <variable_name> ) 


 
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

Manuel, justo lo que estaba haciendo yo, pasándolo primero a texto para extraerlo después
https://harbour.github.io/doc/index.html

Muchas gracias por tu siempre inestimable ayuda :D :P :lol:
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

Antonio Linares wrote:Cristobal,

Podrias proporcionar el EXE para ir probándolo ? gracias :-)
Mira a ver
https://bitbucket.org/navarro_cristobal/fivedit

En descargas, bajate también las .DLLs, pero tambien has de bajarte la carpeta .\Res (que está en source)
Estoy preparando el repositorio
El modo multidocumento está a falta de algunos detalles (se abren todos desde la misma pantalla y se van seleccionando en el browse de la izquierda)
El menú sale moviendo el ratón a la parte superior de la ventana
Para salir con el icono de <-
Y para salir de la aplicacion en el icono del usuario
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

Manuel, a ver qué opinas de esto

Code: Select all

#include "fivewin.ch"
#include "xbrowse.ch"

function main()
     local nSymbols, nFunctions, n
     local aFunc   := {}
     local oWnd
     local oBrw
     nSymbols := __dynsCount()
     nFunctions := 0
     
     ? "Registered functions:"

     for n := 1 to nSymbols
        if __dynsIsFun( n )
           //? "    ", __dynsGetName( n ) + "()"
           AAdd( aFunc, __dynsGetName( n ) + "()" )
           nFunctions++
        endif
     next
     
     ? "Number of registered symbols:", nSymbols
     ? "Number of registered functions:", nFunctions

     DEFINE WINDOW oWnd

     @ 1,1 XBROWSE oBrw DATASOURCE aFunc OF oWnd SIZE 1000, 600
     oBrw:CreateFromCode()

    ACTIVATE WINDOW oWnd MAXIMIZED
return nil

 
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Mejoras para scintilla

Post by mastintin »

¿ Para la cuenta de funciones ? , muy bueno .
Si algo me gusta de xMate y que falta en todos los demás editores son dos cosas :
1.- el browser de funciones que tenemos en el proyecto y poder ir a ellas rapidamente .
2.- colocarte sobre la llamada a una función -> botón derecho -> ir a la función .
No he tenido tiempo de mirar el editor mas que por encima , pero los colores escogidos para la sintaxis son muy buenos y la animación se ve estupenda.
Felicidades.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

mastintin wrote:¿ Para la cuenta de funciones ? , muy bueno .
Si algo me gusta de xMate y que falta en todos los demás editores son dos cosas :
1.- el browser de funciones que tenemos en el proyecto y poder ir a ellas rapidamente .
2.- colocarte sobre la llamada a una función -> botón derecho -> ir a la función .
No he tenido tiempo de mirar el editor mas que por encima , pero los colores escogidos para la sintaxis son muy buenos y la animación se ve estupenda.
Felicidades.
Voy a ver si implemento el punto 2.-, es una opcion muy práctica
El browse de funciones ya funciona y al dar doble click te situa en la funcion
Voy a ver si elimino un par de bugs (seleccion del documento en la lista de documentos y añadir y eliminar funciones en la lista segun se va modificando el documento) y hago la primera version
Gracias
Last edited by cnavarro on Wed Dec 03, 2014 7:06 am, edited 1 time in total.
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Mejoras para scintilla

Post by Antonio Linares »

Cristobal,

Lo he estado probando y tiene muy buena pinta :-)

Tiene ya la funcionalidad suficiente para usarlo para trabajar con él ?

Has modificado la Clase TScintilla ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

He creado una clase derivada de ella
Pero mi idea es una vez probado, añadir las modificaciones a la clase original.


Faltan un par de detalles (bugs - ver mensaje anterior) para poder ser usado convenientemente, aunque las funcionalidades básicas ya funcionan
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Mejoras para scintilla

Post by Antonio Linares »

Cristobal,

Estupendo! :-)

Gracias por la inmensa ayuda que con tu código y soporte proporcionas en estos foros :-)

Y son extensivas para Manuel, y para todos los que ayudais desinteresadamente a los demás aqui :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Mejoras para scintilla

Post by Antonio Linares »

Hay algo mejor en la vida que ayudar a los demás ? :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Baxajaun
Posts: 853
Joined: Wed Oct 19, 2005 2:17 pm
Location: Gatika. Bizkaia

Re: Mejoras para scintilla

Post by Baxajaun »

Muchas gracias Cristobal, Manuel, Antonio, Carlos, Daniel, etc..., por toda vuestra ayuda desinteresada !!!
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Mejoras para scintilla

Post by mastintin »

Cristobal el browse de funciones ¿ Permite la busqueda incremetal ? sino la tienes aún ,seria un punto a tener en cuenta.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

mastintin wrote:Cristobal el browse de funciones ¿ Permite la busqueda incremetal ? sino la tienes aún ,seria un punto a tener en cuenta.
Manuel, otro detalle muy importante que no habia caido, si señor
Pero, que hago, salto hasta el primer espacio para empezar a buscar?, es decir, salto las palabras "Function" o "Method" por ejemplo?
Dime que opinas
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Mejoras para scintilla

Post by mastintin »

cnavarro wrote:
mastintin wrote:Cristobal el browse de funciones ¿ Permite la busqueda incremetal ? sino la tienes aún ,seria un punto a tener en cuenta.
Manuel, otro detalle muy importante que no habia caido, si señor
Pero, que hago, salto hasta el primer espacio para empezar a buscar?, es decir, salto las palabras "Function" o "Method" por ejemplo?
Dime que opinas
En Xmate se busca por el nombre ( saltando function o methodo ) pero ademas el browse ( que se abre en un dialogo ) en otras columnas nos dice el tipo ( methodo o funcion statica ,etc ) , el modulo donde esta y la linea de código .

En nuestro caso creo que la busqueda por el nombre de función es mas que suficiente .
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mejoras para scintilla

Post by cnavarro »

Ok, no es mala idea porque aunque no aparece esa informacion ya la tengo almacenada en el array de funciones: nombre, linea inicio y linea fin
Seria solamente quitar el tipo (Function, metodo, etc) y ponerla en otra columna
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Post Reply