>I have been developing an enhanced project manager and have uploaded it to the Download section for user feedback/testing and comments (should be available by 5Aug2005). The GKKProjectManager is not yet completed but the core functionality of the standard project manager is completed and many of the features are completed.
>
>Features included:
>
>- code (prg) comparison tool
>- visual class comparison tool
>- form comparison tool
>- form/class/prg printing (partially developed)
>- project specific todo list
>- project search for word/phrase
>- global (file system) search for word/phrase
>- enhanced menu editor
>- form method editor
>- visual class method editor (future)
>- dual side-by-side code editor
>- user defined scripts to execute at different events in GKKProjectManager
>- enhanced rename to scan the project and update occurances (partially developed)
>
>Also, an enhanced code editor with the following features:
>
>- color syntax highlight (intellisense planned)
>- line/column selection in editor
>- line numbers
>- split screen mode for dual panes
>- regular expressions search
>- macro recording
>
>This is currently a work in progress and is being released for user feedback and to begin testing for bugs. Source is not included (.app file protected with ReFox from decompilation).
Two points,
First, it seems to only run under VFP 9.0. Can you possibly create a VFP 6.0 version; therefore it will run under VFP 6.0 and greater. Greater audience.
Second, here is a cool Project Hook. When applied to a normal project (those being load into your enhanced PM), it will load the GKKProjectManager instead of the standard project manager when the MODIFY PROJECT statement is issued.
Apply this to the INIT event of Project Hook.
#define kAppName "lcBuild.app"
#define kProjName “LifeCycle”
DO CASE
CASE TYPE("__cProject")="C"
CASE FILE(ADDBS(JUSTPATH( _VFP.ACTIVEPROJECT.NAME ))+kAppName)
DO (ADDBS(JUSTPATH( _VFP.ACTIVEPROJECT.NAME ))+kAppName)
OTHERWISE
LOCAL ow, cpath
ow = CREATEOBJECT("WScript.Shell")
cpath=""
ON ERROR *
cpath= ow.RegRead("HKCU\Software\”+ kProjName +” \Path")
ON ERROR
ow=0
DO CASE
CASE NOT EMPTY(cpath) AND FILE(cpath+kAppName)
DO (cpath+kAppName)
CASE FILE(ADDBS(HOME(1))+ kProjName +"/ "+kAppName)
DO (ADDBS(HOME(1))+ kProjName +"/ "+kAppName)
CASE FILE(ADDBS(JUSTPATH(_VFP.ACTIVEPROJECT.PROJECTHOOKLIBRARY))+kAppName)
DO (ADDBS(JUSTPATH(_VFP.ACTIVEPROJECT.PROJECTHOOKLIBRARY))+kAppName)
CASE FILE("C:\_Project.txt")
LOCAL cProject
cProject = FILETOSTR("C:\_Project.txt")
IF FILE(cProject+kAppName)
DO (cProject+kAppName)
ENDIF
OTHERWISE
LOCAL cProject1
cProject1 = ""
cProject1 = LOCFILE(kAppName,"app","Select")
IF NOT EMPTY(cProject1)
DO (cProject1)
ENDIF
ENDCASE
ENDCASE
RETURN .T.
Best of luck.
Greg Reichert