38209 FoxcodePlus

Visual Studio like extensions to Visual FoxPro IntelliSense.

38236

Project Manager: Rodrigo Bruscain

The FoxcodePlus project is designed to bring new IntelliSense features found in Visual Studio to the Visual FoxPro IDE through code written in Visual FoxPro to the Windows API and a FLL. The list of features is quite extensive, more than 30 new features at least:
  • Incremental IntelliSense for functions, commands and so on.
  • Variables at write-time.
  • List of variables at write-time.
  • Constants at write-time including constants invoked by #INCLUDE MyFile.H
  • Tables at write-time and run-time also included tables from DataEnvironment in Forms and Reports.
  • Fields at write-time and run-time.
  • Selecting a table with the command "Select" or all commands with the clause "IN".
  • Windows APIs at write-time and run-time.
  • Functions and Procedures at write-time.
  • Classes at write-time.
  • Properties at write-time.
  • Methods and Events at write-time.
  • Support for _MemberData property indicating that the property had capitalization.
  • Summary Tooltip for functions, procedures, methods and events.
  • Classes objects at write-time.
  • WITH...ENDWITH with nesting infinity for any class or instantiated object at write-time and run-time.
  • Objects instantiated in memory.
  • Incremental Shortcut to controls in Form and Class Designer.
  • Replacement of native IntelliSense in Form and Class Designer.
  • New IntelliSense for some commands.
  • Code snippets for commands and functions.
  • Intellisense at write-time for objects created using the functions CreateObject(),CreateObjectEx() and NewObject() invoking a PRG or VCX file.
  • Intellisense for object created by "FOR EACH" at run-time and designer-time
  • Intellisense for Collection object at run-time and designer-time
  • Referencing any object through of a variable at run-time and designer-time
  • Classes and functions invoked by SET PROCEDURE TO...
  • Classes invoked by SET CLASSLIB TO...
  • Help pressing F1 when intellisense is opend.
  • Documenting properties in PRG files with custom tooltip like summary.
  • Error List window.
  • Error Tip for some run-time erros at write-time.
  • SQL Intellisense for connected database for SELECT, INSERT, UPDATE and DELETE instructions.


38236

vfpxicon.png New features FoxcodePlus (Beta 3.13)

NEW: SQL Intellisense (inside the TEXT...ENDTEXT block) for connected database (Page 24 to 27)
a) Support for SELECT, INSERT, UPDATE and DELETE instrunctions
b) Tables with incremental search in current connected database
c) Table and Alias with incremental searching in currente SQL instruction with the database disconnected
d) Fields with incremental searching in current database connected considering the tables used in currente SQL instruction
e) Fields list from tables and Alias when pressed "." dot
f) IntelliSense for tables/alias pressing SPACE after the clauses FROM, JOIN and INTO

NEW: Intellisense to the command "INDEX ON" (Page 18)
NEW: Now, objects instatied at run-time show more informations in the tooltip. (Page 13)
NEW: Intellisense for object created by "FOR EACH" at run-time and designer-time. (Page 22)
NEW: Intellisense for Collection object at run-time and designer-time (Page 22)
NEW: Referencing any object through of a variable at run-time and designer-time (Page 22)
NEW: FoxCode table update through the merger between native FoxCode and FoxCode provided by FoxcodePlus. (Page 34)

FIX: SHIFT+ARROWS, SHIFT+END and SHIFT+HOME behavior not adequate
FIX: "THIS" in containers object in some cases the IntelliSense hasn't load.

vfpxreleasesmall.png Download Latest Release of FoxcodePlus
If you already have installed FoxcodePlus 3.10 or a previous version, you must have to replace the files foxcode.app , foxcodeplus.app and whole directory ...\Foxcodeplus\*.*. Also, it’s necessary to do the step 7. If you have installed 3.11 or 3.12 you only have to replace foxcode.app and foxcodeplus.app.

38236

vfpxicon.png FoxcodePlus Images (see all images in documentation)

New IntelliSense Manager
fcpIntelliSenseManager.png

fcpIntelliSenseManagerUpdate.png

CreateObject( ), NewObject( ) and CreateObjectEx( )
fcpCreateObject.png

Incremental Intellisense for Constants in #INCLUDE
fcpINCLUDE.png

Signature for custom procedures, functions, methods and events
fcpTooltipParamMethod1.png

fcpTooltipParamMethod2.png

Classes and functions invoked by SET PROCEDURE TO...
fcpSetProcedure.png

fcpSetProcedure_class1.png

fcpSetProcedure_class2.png

fcpSetProcedure_func1.png

Classes invoked by SET CLASSLIB TO...
fcpSetClasslib.png

fcpSetClasslib_class1.png

fcpSetClasslib_class2.png

Error List for Form and Class Designer
fcpErrorlist2.png

_MemberData Property
fcpMemberData2.png

Error Tip
fcpTipError1.png

fcpTipError2.png

fcpTipError3.png

fcpTipError4.png

fcpTipError5.png

fcpTipError6.png

fcpTipError7.png


New Features like in Visual Studio
fcpSummary.png

fcpErrorList.png

fcpVarIncremental.png

fcpShortcutControls.png

fcpConstant.png


Tables and fields
fcpTables.png

fcpFields.png

fcpDataEnvironmentForm.png

fcpDataEnvironmentReport.png

fcpInAlias.png


Objects in memory can be used when VFP is running in background
fcpVFPbackground.png

fcpVFPbackground2.png

Last edited May 7, 2013 at 3:14 AM by bruscain, version 44

Comments

billand88 Oct 13 at 3:29 PM 
I am constantly getting this error. Usually it is generated by typing a memory variable (such as liTest) followed by a space, boom! Or memory variable, followed by an equals sign, then a period, boom!

---------------------------
Microsoft Visual FoxPro
---------------------------
A FoxcodePlus error has occured. Press CTRL+C to copy this error or send the file foxcodeplus.err to the author.



FoxcodePlus version: Beta 3.13.2

OS version: Windows 6.01

Wontop: BDIMPORT.PRG

Localization: PROCEDURE FOXCODEPLUSMAIN.GETWITHHIERARCHY C:\PROGRAM FILES (X86)\MICROSOFT VISUAL FOXPRO 9\FOXCODEPLUS.APP

Method: getwithhierarchy

Line: 1942

Error message: Subscript is outside defined range.

Error number: 1234

Line contents: ...
---------------------------
OK
---------------------------

MauroPolo Aug 7, 2013 at 1:55 PM 
Sometime VFP is closed with
Fatal error: Exception code=C0000005 @ 08/07/13 12:00:38 PM. Error log file: C:\Program Files (x86)\Microsoft Visual FoxPro 9\vfp9err.log
and i lose all work non saved.

oscarrd May 29, 2013 at 4:50 PM 
Increible trabajo, felicidades.....asombrosos resultados, algunos detalles insignificantes desde mi punto de vista, pero para mi que desarrollo en .Net encontrar esto en mi querido Foxpro, es mas que excitante.

marciolas May 28, 2013 at 11:25 AM 
Uso e recomendo! Parabéns Rodrigo, a versão ficou "show de bola".

marciolas May 21, 2013 at 6:34 PM 
Excelente trabalho Rodrigo! Voltei a utilizar e estou gostando muito. De vez em quando o VFP pára de funcionar, não sei exatamente se é por conta do FoxCodePlus ou do FoxTab, vou verificar isso depois. Tenho alguns pontos para ver com você, vou ti passar um e-mail. Mais uma vez parabéns, a ferramenta realmente está ficando excelente.

z_grzelczak May 15, 2013 at 2:15 PM 
Congratulations !
Wonderful job !

Thank you.
Zibi

mk_common May 7, 2013 at 4:32 AM 
Excellent!

Warm regards,
mk.

juanziur Apr 24, 2013 at 12:23 AM 
Excelente herramienta, Larga vida al zorro!

Ugurlu2001 Apr 10, 2013 at 8:44 AM 
FoxcodePlus Error :
****
---------------------------
Microsoft Visual FoxPro
---------------------------
A FoxcodePlus error has occured. Press CTRL+C to copy this error or send the file foxcodeplus.err to the author.
FoxcodePlus version: Beta 3.11
OS version: Windows 6.01
Wontop:
Localization: PROCEDURE FOXCODEPLUSMAIN.MAIN C:\VFP9\FOXCODEPLUS.APP
Method: main
Line: 416
Error message: Unknown member INTELLISENSE.
Error number: 1925
Line contents: ...
****

How I get Error Message :
When I use 'cd..' at "command window"

itamarnunes Apr 5, 2013 at 2:56 PM 
Muito com, parabéns Rodrigo.
Notei uma coisa somente.
É que eu não gosto da fonte que veio, então eu mudo para Courier New.
Mas a configuração não fica salva, nem pro prgs, nem pro command e nem em potions setando o default.
Sabes como posso resolver isso?
Abraço

bruscain Apr 3, 2013 at 4:25 PM 
Hi everyone,

If you want to post an issue, please use the option ISSUE TRACKER.
I can't answer the issues in this place.
Remember, FoxcodePlus is a BETA version and FREE. However, several developers have been using normaly.

Thanks

Rodrigo

abergquist Mar 26, 2013 at 6:03 AM 
WRT '22- Help pressing F1 - Pressing F1 to open intellisense, VFP will open the help with the command, function, method or event positioned.', I don't see any difference when compared against the non-FoxCodePlus behavior.

abergquist Mar 26, 2013 at 1:54 AM 
Per '21- Documenting properties with custom tooltip', you have to use a triple ampersand after a property definition to get custom tool tip for that property. It would be great if FoxCodePlus could give us a custom tool tip for a property that has the "regular" double ampersand after it.

abergquist Mar 25, 2013 at 6:48 PM 
Analogous issue with 'PROTECTED': if I *slowly* type 'PROTECTED' and then slowly press the [SpaceBar] key, I end up with 'PROTECTED ' ('PROTECTED' followed by a space) and the PROTECTED IntelliSense tooltip (correctly) displays (with a list of 'FUNCTION' and 'PROCEDURE'). If, however, I *quickly* type 'PROTECTED' and then quickly press the [SpaceBar] key, I end up with 'PROTECTED d' ('PROTECTED' followed by a space followed by an 'd') and the PROTECTED IntelliSense tooltip displays --> in this 2nd scenario, I should only see 'PROTECTED ' ('PROTECTED' followed by a space); 'd' should not be inserted for me.

abergquist Mar 25, 2013 at 6:19 PM 
Issue with 'PROCEDURE' (same issue I reported with 'REPLACE'): if I *slowly* type 'PROCEDURE' and then slowly press the [SpaceBar] key, I end up with 'PROCEDURE ' ('PROCEDURE' followed by a space) and the PROCEDURE IntelliSense tooltip (correctly) displays. If, however, I *quickly* type 'PROCEDURE' and then quickly press the [SpaceBar] key, I end up with 'PROCEDURE e' ('PROCEDURE' followed by a space followed by an 'e') and the PROCEDURE IntelliSense tooltip displays --> in this 2nd scenario, I should only see 'PROCEDURE ' ('PROCEDURE' followed by a space); 'e' should not be inserted for me.

abergquist Mar 25, 2013 at 6:16 PM 
In '9- Functions and Procedures in write-time', it correctly displays 'MyFuncGetName' and 'MyProcGetNumber' in the IntelliSense list; when I select either of them, though, they get capitalized (because of my IntelliSense settings). I would like to have native (built-in) VFP functions and commands capitalized but would like user-defined functions and procedures to retain the casing in which they were defined (this would be an enhancement to FoxCodePlus).

abergquist Mar 25, 2013 at 6:04 PM 
Issue with 'REPLACE': if I *slowly* type 'REPLACE' and then slowly press the [SpaceBar] key, I end up with 'REPLACE ' ('REPLACE' followed by a space) and the REPLACE IntelliSense tooltip (correctly) displays. If, however, I *quickly* type 'REPLACE' and then quickly press the [SpaceBar] key, I end up with 'REPLACE e' ('REPLACE' followed by a space followed by an 'e') and the REPLACE IntelliSense tooltip displays --> in this 2nd scenario, I should only see 'REPLACE ' ('REPLACE' followed by a space); 'e' should not be inserted for me.

abergquist Mar 25, 2013 at 5:14 PM 
Issue with '3 - Accessing the list variables in write-time.': when I type 'm.', I see the same list of memory variables as you show in Image 6, except the text 'ARRAY ' is in front of 'aCars' and 'laNames'. When I 'ARRAY aCars', I end up with 'm.ARRAY aCars'; it should be 'm.aCars'. When I 'ARRAY laNames', I end up with 'm.ARRAY laNames'; it should be 'm.laNames'.

abergquist Mar 25, 2013 at 5:04 PM 
Rodrigo,

*Fantastic* tool!

I did encounter a bug while testing, though; if I type '#', I correctly see a list of all the preprocessor directives, starting with '#DEFINE'. When I then type 'D' (so that I now have typed '#D'), it replaces the list of preprocessor directives with a list of functions (starting with 'cdx') and highlights 'Date'. What I should see at this point is just the #DEFINE preprocessor directive (because that's the only preprocessor directive that starts with '#D').

bruscain Feb 22, 2013 at 3:53 AM 
Hi StefanNbg,
I have been working in a new version for windows8.
Thanks,
Rodrigo

bruscain Feb 22, 2013 at 3:52 AM 
Hi Cyberfacz... download the documentation for you know how to install FoxcodePlus.
Thanks,
Rodrigo

Cyberfacz Feb 21, 2013 at 6:01 PM 
Como se instala?

StefanNbg Feb 21, 2013 at 3:32 AM 
Still Not working under windows 8 :(

dexsys Dec 26, 2012 at 7:37 PM 
Excelente herramienta, muchas gracias. desde chile

Ugurlu2001 Dec 13, 2012 at 11:55 AM 
The Foxcodeplus look like a great tool Rodrigo, Thank you for shared on codeplex.

carbcoder02 Dec 3, 2012 at 4:41 AM 
I have encounter a bug in 3.03 when using the (m.) IntelliSense the local variables are not appearing, while I issue the variable name without the (m.) it is displaying. So I use the 3.00 version of foxcodeplus I have no issues as of now.