diff --git a/Source/BuildGoFish.h b/Source/BuildGoFish.h index e1777e1..fb7fa46 100644 --- a/Source/BuildGoFish.h +++ b/Source/BuildGoFish.h @@ -1,10 +1,10 @@ #DEFINE GOFISH_APP_NAME 'GoFish' #DEFINE GOFISH_APP_FILE 'GoFish.app' - #DEFINE GOFISH_VERSION '7.1.31' - #DEFINE GOFISH_BUILDDATE 'November 04, 2024' - #DEFINE GOFISH_DBUILDDATE Date(2024,11, 4) + #DEFINE GOFISH_VERSION '7.1.32' + #DEFINE GOFISH_BUILDDATE 'November 09, 2024' + #DEFINE GOFISH_DBUILDDATE Date(2024,11, 9) #DEFINE GOFISH_DOWNLOAD_URL 'https://raw.githubusercontent.com/VFPX/GoFish/master/Source/Source.zip' - #DEFINE GOFISH_VERSION_STRING_FOR_VERSION_FILE 'GoFish - 7.1.31 - November 04, 2024 - 20241104' + #DEFINE GOFISH_VERSION_STRING_FOR_VERSION_FILE 'GoFish - 7.1.32 - November 09, 2024 - 20241109' #DEFINE THOR_TOOL_NAME 'Thor_Tool_GoFish' #DEFINE VERSON_FILE_URL 'https://github.com/VFPX/GoFish/_GoFishVersionFile.txt' #DEFINE VERSION_LOCAL_FILE 'GoFishVersionFile.txt' diff --git a/Source/BuildNumber.txt b/Source/BuildNumber.txt index b74e882..1758ddd 100644 --- a/Source/BuildNumber.txt +++ b/Source/BuildNumber.txt @@ -1 +1 @@ -31 \ No newline at end of file +32 \ No newline at end of file diff --git a/Source/Forms/gofish_options.SCT b/Source/Forms/gofish_options.SCT index 16a4bb0..7349502 100644 Binary files a/Source/Forms/gofish_options.SCT and b/Source/Forms/gofish_options.SCT differ diff --git a/Source/Forms/gofish_options.gf_options.sc2 b/Source/Forms/gofish_options.gf_options.sc2 index 5ddca4a..f10e79b 100644 --- a/Source/Forms/gofish_options.gf_options.sc2 +++ b/Source/Forms/gofish_options.gf_options.sc2 @@ -3514,7 +3514,8 @@ DEFINE CLASS gf_options AS gf_baseform OF "..\lib\gofishui.vcx" .nCSS_tr_odd_Colour = Thisform.nCSS_tr_odd_Colour */missing from 206 - If .lCR_Allow Then + *!* ******** JRN Removed 2024-11-07 ******** + *!* If .lCR_Allow Then .lCR_Local_Default = Thisform.lCR_Local_Default .lCR_Local = Thisform.lCR_Local @@ -3534,7 +3535,8 @@ DEFINE CLASS gf_options AS gf_baseform OF "..\lib\gofishui.vcx" .lCR_SortTreeByExt = Thisform.lCR_SortTreeByExt .lCR_SortTreeAlpha = Thisform.lCR_SortTreeAlpha - Endif &&.lCR_Allow + *!* ******** JRN Removed 2024-11-07 ******** + *!* Endif &&.lCR_Allow */SF 20221019 5.2.000 .lDeleteStorage = Thisform.lDeleteStorage diff --git a/Source/Forms/gofish_options.scx b/Source/Forms/gofish_options.scx index 834de6a..525a371 100644 Binary files a/Source/Forms/gofish_options.scx and b/Source/Forms/gofish_options.scx differ diff --git a/Source/GoFish.APP b/Source/GoFish.APP index 89d869e..be1450b 100644 Binary files a/Source/GoFish.APP and b/Source/GoFish.APP differ diff --git a/Source/GoFish.pjt b/Source/GoFish.pjt index 4b985f2..1869c86 100644 Binary files a/Source/GoFish.pjt and b/Source/GoFish.pjt differ diff --git a/Source/GoFish.pjx b/Source/GoFish.pjx index 3e07901..7c438eb 100644 Binary files a/Source/GoFish.pjx and b/Source/GoFish.pjx differ diff --git a/Source/Lib/gf_objectexplorer.dora.sc2 b/Source/Lib/gf_objectexplorer.dora.sc2 index 8cca0c1..61ccaac 100644 --- a/Source/Lib/gf_objectexplorer.dora.sc2 +++ b/Source/Lib/gf_objectexplorer.dora.sc2 @@ -13,6 +13,10 @@ DEFINE CLASS dora AS frmexplorer OF "gf_objectexplorer.vcx" Name = "Dora" ShowWindow = 1 WindowType = 1 + TREECONTAINER.chklHighlightFavorites.Alignment = 0 + TREECONTAINER.chklHighlightFavorites.Name = "chklHighlightFavorites" + TREECONTAINER.chklSortFavorites.Alignment = 0 + TREECONTAINER.chklSortFavorites.Name = "chklSortFavorites" TREECONTAINER.cmdBrowse.Name = "cmdBrowse" TREECONTAINER.cntCheckBoxes.chklShowCustom.Alignment = 0 TREECONTAINER.cntCheckBoxes.chklShowCustom.Name = "chklShowCustom" @@ -22,8 +26,6 @@ DEFINE CLASS dora AS frmexplorer OF "gf_objectexplorer.vcx" TREECONTAINER.cntCheckBoxes.chklShowNative.Name = "chklShowNative" TREECONTAINER.cntCheckBoxes.chklShowNonDefault.Alignment = 0 TREECONTAINER.cntCheckBoxes.chklShowNonDefault.Name = "chklShowNonDefault" - TREECONTAINER.cntCheckBoxes.chklSortFavorites.Alignment = 0 - TREECONTAINER.cntCheckBoxes.chklSortFavorites.Name = "chklSortFavorites" TREECONTAINER.cntCheckBoxes.lblFilter.Name = "lblFilter" TREECONTAINER.cntCheckBoxes.Name = "cntCheckBoxes" TREECONTAINER.cntCheckBoxes.txtFilter.Name = "txtFilter" @@ -38,5 +40,16 @@ DEFINE CLASS dora AS frmexplorer OF "gf_objectexplorer.vcx" TREECONTAINER.txtFullPath.Name = "txtFullPath" cmdExit.Name = "cmdExit" * + + PROCEDURE Init + Lparameters toObject, tcObjectName, tcFormCaptionSuffix, tcPublicVariable + + DoDefault(m.toObject, m.tcObjectName, m.tcFormCaptionSuffix, m.tcPublicVariable) + + If This.TreeContainer.oleTree.Nodes.Count > 0 + This.TreeContainer.oleTree.Nodes[1].Expanded = .T. + Endif + + ENDPROC ENDDEFINE diff --git a/Source/Lib/gf_objectexplorer.inputbox.vc2 b/Source/Lib/gf_objectexplorer.inputbox.vc2 index ab9f1cf..e249fc2 100644 --- a/Source/Lib/gf_objectexplorer.inputbox.vc2 +++ b/Source/Lib/gf_objectexplorer.inputbox.vc2 @@ -140,7 +140,7 @@ DEFINE CLASS inputbox AS form Create Cursor MemoCursor(MemoField M) Insert Into MemoCursor Values (Thisform.xValue) This.ControlSource = 'MemoCursor.MemoField' - Thisform.Width = This.Left + 80 + 7 * Max(20, Len(Thisform.xValue)) + Thisform.Width = Min(This.Left + 80 + 7 * Max(20, Len(Thisform.xValue)), 1000) Else This.Visible = .F. Endif diff --git a/Source/Lib/gf_objectexplorer.sct b/Source/Lib/gf_objectexplorer.sct index e6c5632..be31282 100644 Binary files a/Source/Lib/gf_objectexplorer.sct and b/Source/Lib/gf_objectexplorer.sct differ diff --git a/Source/Lib/gf_objectexplorer.scx b/Source/Lib/gf_objectexplorer.scx index d9b7214..0b9cf13 100644 Binary files a/Source/Lib/gf_objectexplorer.scx and b/Source/Lib/gf_objectexplorer.scx differ diff --git a/Source/Lib/gf_objectexplorer.treecontainer.vc2 b/Source/Lib/gf_objectexplorer.treecontainer.vc2 index 23d94a7..c8f6255 100644 --- a/Source/Lib/gf_objectexplorer.treecontainer.vc2 +++ b/Source/Lib/gf_objectexplorer.treecontainer.vc2 @@ -394,7 +394,7 @@ DEFINE CLASS treecontainer AS container Name = "oleTree", ; Top = 8, ; Width = 199 - *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANB5znLjjNoBAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAFcBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAACRFAAAXDwAALE8wWoBAAYAIgAAAHkATQDcAQAASgBvAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFABCdzgACAGUAAAAAAAUAAIBE6RkAAQAAAFwAH97svQEABQCM6RkARgBCADYANgA3ADgAQgB9ACAAQwA6AAAAMkAKAAAATGFiZWxFZGl0AAkAAABJCgAAAAEAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAAsAAABBcHBlYXJhbmNlAAkAAABJCgAAAAAAAAAOAAAARnVsbFJvd1NlbGVjdAAFAAAATAEAAAAKAAAAU2luZ2xlU2VsAAUAAABMAAAAAH//f/9//38AAAAAAAAYIB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAkAkQEPAFdIQVRTVEhJU0hFTFBJRABwBRYAcAUWAC4AVgGVAQgAwCFYJ/whHgBIIh4AcCxYJwAAAAABAAAAAABzACg0WCcYNFgn+DNYJ7gjHgAYIB4AAAAAAG4AcwAAAGUAYwB0AG8AcgAuAHMAAAAAADYAAADQ2x0AlNwdAFAWXCdAFlwnAAAAAADAWEQAAABAaQBvAAAAcwBcAGMAbwBsAGwAZQAAAHQAaQBvAG4AaQBuAHMAwCFYJ4wiHgDYIh4AcCxYJwEAAAAeAAAAAAAAACg0WCcYNFgn+DNYJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ2x0AAAAAAFgYXCdIGFwnAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAADAIVgnDCMeAEgjHgBwLFgnAQAAAB8AAAAAAAAAQCJYJyAiWCcAAAAAAAAAAAAAAAAAAAAAAAAAAEgiHgAAAAAA" /> + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDGrMxVMNsBAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAFcBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAACRFAAAXDwAALE8wWoBAAYAIgAAAHkATQDcAQAASgBvAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAMhrEAMCAGUAAAAAAAUAAIBE6RkAAQAAAFwAH97svQEABQCM6RkARgBCADYANgA3ADgAQgB9ACAAQwA6AAAAMkAKAAAATGFiZWxFZGl0AAkAAABJCgAAAAEAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAAsAAABBcHBlYXJhbmNlAAkAAABJCgAAAAAAAAAOAAAARnVsbFJvd1NlbGVjdAAFAAAATAEAAAAKAAAAU2luZ2xlU2VsAAUAAABMAAAAAH//f/9//38AAAAAAAAYIB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAkAkQEPAFdIQVRTVEhJU0hFTFBJRABwBRYAcAUWAC4AVgGVAQgAwCFYJ/whHgBIIh4AcCxYJwAAAAABAAAAAABzACg0WCcYNFgn+DNYJ7gjHgAYIB4AAAAAAG4AcwAAAGUAYwB0AG8AcgAuAHMAAAAAADYAAADQ2x0AlNwdAFAWXCdAFlwnAAAAAADAWEQAAABAaQBvAAAAcwBcAGMAbwBsAGwAZQAAAHQAaQBvAG4AaQBuAHMAwCFYJ4wiHgDYIh4AcCxYJwEAAAAeAAAAAAAAACg0WCcYNFgn+DNYJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ2x0AAAAAAFgYXCdIGFwnAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAADAIVgnDCMeAEgjHgBwLFgnAQAAAB8AAAAAAAAAQCJYJyAiWCcAAAAAAAAAAAAAAAAAAAAAAAAAAEgiHgAAAAAA" /> ADD OBJECT 'oPropGrid' AS grid WITH ; Anchor = 45, ; diff --git a/Source/Lib/gf_objectexplorer.vct b/Source/Lib/gf_objectexplorer.vct index dfe9496..7f4a45a 100644 Binary files a/Source/Lib/gf_objectexplorer.vct and b/Source/Lib/gf_objectexplorer.vct differ diff --git a/Source/Lib/gf_objectexplorer.vcx b/Source/Lib/gf_objectexplorer.vcx index 0c967a1..972a776 100644 Binary files a/Source/Lib/gf_objectexplorer.vcx and b/Source/Lib/gf_objectexplorer.vcx differ diff --git a/Source/Lib/gofishsearchengine.prg b/Source/Lib/gofishsearchengine.prg index 485feb0..1ac9e8a 100644 --- a/Source/Lib/gofishsearchengine.prg +++ b/Source/Lib/gofishsearchengine.prg @@ -6251,8 +6251,10 @@ j * or " in the search expression (calls to grep use ") * or any characters before chr[32] or after chr[126] * or has a trailing backslash - Local lcChar, lcSearchExpression, lnI - + * or, for some users, wildcard * along with ( or ) + + Local lcChar, lcEscapedSearchExpression, lcSearchExpression, lnI + If Not This.oSearchOptions.lOptimizeWithGrep Return .F. Endif @@ -6266,9 +6268,9 @@ j Return .F. Endif - For lnI = 1 To len(lcSearchExpression) + For lnI = 1 To Len(lcSearchExpression) lcChar = Substr(lcSearchExpression, lnI) - If Not Between(Asc(lcChar), 32, 126) + If Not Between(Asc(lcChar), 32, 126) Return .F. Endif Endfor @@ -6277,15 +6279,21 @@ j Return .F. Endif - *!* ******** JRN Removed 2024-07-19 ******** - *!* If Left(lcSearchExpression, 1) = '-' - *!* Return .F. - *!* Endif - + If This.oSearchOptions.lUnmatchedParenError + *** JRN 2024-11-07 : A rare case for some users: cannot use grep if wild card * along with either of ( or ) + lcEscapedSearchExpression = This.oSearchOptions.cEscapedSearchExpression + * ignore leading and trailing .* + lcEscapedSearchExpression = Substr(m.lcEscapedSearchExpression, 3, Len(m.lcEscapedSearchExpression) - 4) + + If '.*' $ m.lcEscapedSearchExpression And ('\(' $ m.lcEscapedSearchExpression Or '\)' $ m.lcEscapedSearchExpression) + Return .F. + Endif + Endif + Return .T. Endproc - + * ================================================================================ * ================================================================================ *** JRN 2024-05-31 : Optimized section, using grep to create (shorter) list of files @@ -6431,6 +6439,8 @@ j This.CallShell(m.lcBATFile, m.lcDoneFile) * ================================================================================ + + This.CheckForUnmatchedParenError(m.lcErrFile) This.AppendtoCursor(m.tcCursor, m.lcOutFile, m.lcErrFile) @@ -6456,8 +6466,8 @@ j Return m.lcExtensions - Endproc - + EndProc + * ================================================================================ Procedure CallShell(tcBATFile, tcDoneFile) @@ -6511,6 +6521,17 @@ j Endproc + * ================================================================================ + Procedure CheckForUnmatchedParenError(lcErrFile) + If This.oSearchOptions.nSearchMode = 2 ; + And File(m.lcErrFile) ; + And Atc('grep: unmatched', Filetostr(m.lcErrFile)) # 0 + This.StopProgressBar() + This.oSearchOptions.lUnmatchedParenError = .T. + MessageBox('GoFish: Internal error (grep.exe)' + CR + CR + 'Please try again', 16, 'GoFish - but try again') + Endif + Endproc + * ================================================================================ Procedure AppendErrorFiles(lcErrFile) Local laErrors[1], lcText, lnCount, lnI diff --git a/Source/Lib/gofishsearchoptions.prg b/Source/Lib/gofishsearchoptions.prg index ef940b9..b0fdcde 100644 --- a/Source/Lib/gofishsearchoptions.prg +++ b/Source/Lib/gofishsearchoptions.prg @@ -157,6 +157,7 @@ Define Class GoFishSearchOptions As Custom lPreVFP9 = .F. lPreVFP9EditSource = 'EditSource' + lUnmatchedParenError = .F. *--------------------------------------------------------------------- diff --git a/Source/Lib/gofishui.VCT b/Source/Lib/gofishui.VCT index f5bbc3f..17093ef 100644 Binary files a/Source/Lib/gofishui.VCT and b/Source/Lib/gofishui.VCT differ diff --git a/Source/Lib/gofishui.gf_resultsform.vc2 b/Source/Lib/gofishui.gf_resultsform.vc2 index 58a3150..6f0c02a 100644 --- a/Source/Lib/gofishui.gf_resultsform.vc2 +++ b/Source/Lib/gofishui.gf_resultsform.vc2 @@ -1103,7 +1103,7 @@ DEFINE CLASS gf_resultsform AS gf_baseform OF "gofishui.vcx" Name = "oTreeView", ; Top = 0, ; Width = 186 - *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAPWzdELtsBAwAAAEACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAACABAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAD+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAAA5EwAABTUAALE8wWoBAAYAIgAAABkAAAARAgAACgAAAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAKB7+wIGAAAAAAAAAAUAAIBw5xkAAQAAAFwAH97svQEABQC45xkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANEAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAA4AAABGdWxsUm93U2VsZWN0AAUAAABMAQAAAAoAAABTaW5nbGVTZWwABQAAAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" /> + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGA6NgMoMdsBAwAAAEACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAACABAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAD+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAAA5EwAABTUAALE8wWoBAAYAIgAAABkAAAARAgAACgAAAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAPiM0AwGAAAAAAAAAAUAAIBw5xkAAQAAAFwAH97svQEABQC45xkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANEAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAA4AAABGdWxsUm93U2VsZWN0AAUAAABMAQAAAAoAAABTaW5nbGVTZWwABQAAAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" /> ADD OBJECT 'containerRight' AS container WITH ; Anchor = 15, ; @@ -8701,7 +8701,8 @@ DEFINE CLASS gf_resultsform AS gf_baseform OF "gofishui.vcx" */SF 20221020 5.2.000 *SF 20221019 5.2.000 - If This.lCR_Allow Then + *!* ******** JRN Removed 2024-11-07 ******** + *!* If This.lCR_Allow Then .Add("lCR_OpenMode" ,This.lCR_OpenMode ) .Add("lCR_HistoryPerScope" ,This.lCR_HistoryPerScope ) .Add("lCR_SearchComboPerScope" ,This.lCR_SearchComboPerScope) @@ -8711,7 +8712,8 @@ DEFINE CLASS gf_resultsform AS gf_baseform OF "gofishui.vcx" .Add("lCR_SortTreeByExt" ,This.lCR_SortTreeByExt ) .Add("lCR_SortTreeAlpha" ,This.lCR_SortTreeAlpha ) - Endif &&This.lCR_Allow + *!* ******** JRN Removed 2024-11-07 ******** + *!* Endif &&This.lCR_Allow */SF 20221019 5.2.000 *SF 20230211 6.0.000 diff --git a/Source/Lib/gofishui.vcx b/Source/Lib/gofishui.vcx index c4f3bf4..926f9b5 100644 Binary files a/Source/Lib/gofishui.vcx and b/Source/Lib/gofishui.vcx differ diff --git a/Source/Source.zip b/Source/Source.zip index 97601d8..f26a778 100644 Binary files a/Source/Source.zip and b/Source/Source.zip differ diff --git a/_GoFishVersionFile.txt b/_GoFishVersionFile.txt index 2409c00..ca251c9 100644 --- a/_GoFishVersionFile.txt +++ b/_GoFishVersionFile.txt @@ -9,6 +9,12 @@ Text to lcNote NoShow --- +## Version 7.1.32 - 2024-11-09 + +Bug fixes: +- "Set scope to Active Project" in Options form was not being saved (#310) +- For some users, when * was used in a wildcard search along with either a left or right parenthesis, no matches were being found (an apparent problem with grep.exe). + ## Version 7.1.31 - 2024-11-04 - Fixed "illegal value error" bug occurring when shrinking the form width (#308) @@ -198,16 +204,14 @@ Concept and code suggestions for this courtesy of Mike Yearwood. ## Version 7.0.34 - 2024-05-29 - Fixed bug (#231) related to file templates on "Advanced" screen (again). Related changes: - - You can enter multiple file templates, separated by commas. - - If you do not enter a file extension, the "normal" list of file extensions (appearing on same screen) is used. - - If you use '*' as the extension, GF may be bogged down searching files not of interest (such as text file + EndText * For GF, strip off links at top of change log lcNote = Substr(lcNote, At('--', lcNote)) lcNote = Alltrim(lcNote, 1, ' ', '-', Chr(13), Chr(10)) -AddProperty(toUpdateInfo, 'AvailableVersion', 'GoFish - 7.1.31 - November 04, 2024 - 20241104') +AddProperty(toUpdateInfo, 'AvailableVersion', 'GoFish - 7.1.32 - November 09, 2024 - 20241109') AddProperty(toUpdateInfo, 'SourceFileUrl', 'https://raw.githubusercontent.com/VFPX/GoFish/master/Source/Source.zip') AddProperty(toUpdateInfo, 'LinkPrompt', 'GoFish Home Page') AddProperty(toUpdateInfo, 'Link', 'https://github.com/VFPX/GoFish') diff --git a/docs/ChangeLog.md b/docs/ChangeLog.md index 4c0ae60..a1ccfcc 100644 --- a/docs/ChangeLog.md +++ b/docs/ChangeLog.md @@ -6,6 +6,12 @@ --- +## Version 7.1.32 - 2024-11-09 + +Bug fixes: +- "Set scope to Active Project" in Options form was not being saved (#310) +- For some users, when * was used in a wildcard search along with either a left or right parenthesis, no matches were being found (an apparent problem with grep.exe). + ## Version 7.1.31 - 2024-11-04 - Fixed "illegal value error" bug occurring when shrinking the form width (#308)