Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions Source/BuildGoFish.h
Original file line number Diff line number Diff line change
@@ -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'
Expand Down
2 changes: 1 addition & 1 deletion Source/BuildNumber.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
31
32
Binary file modified Source/Forms/gofish_options.SCT
Binary file not shown.
6 changes: 4 additions & 2 deletions Source/Forms/gofish_options.gf_options.sc2
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -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
Expand Down
Binary file modified Source/Forms/gofish_options.scx
Binary file not shown.
Binary file modified Source/GoFish.APP
Binary file not shown.
Binary file modified Source/GoFish.pjt
Binary file not shown.
Binary file modified Source/GoFish.pjx
Binary file not shown.
17 changes: 15 additions & 2 deletions Source/Lib/gf_objectexplorer.dora.sc2
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand All @@ -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"
Expand All @@ -38,5 +40,16 @@ DEFINE CLASS dora AS frmexplorer OF "gf_objectexplorer.vcx"
TREECONTAINER.txtFullPath.Name = "txtFullPath"
cmdExit.Name = "cmdExit"
*</PropValue>

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
2 changes: 1 addition & 1 deletion Source/Lib/gf_objectexplorer.inputbox.vc2
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Binary file modified Source/Lib/gf_objectexplorer.sct
Binary file not shown.
Binary file modified Source/Lib/gf_objectexplorer.scx
Binary file not shown.
2 changes: 1 addition & 1 deletion Source/Lib/gf_objectexplorer.treecontainer.vc2
Original file line number Diff line number Diff line change
Expand Up @@ -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, ;
Expand Down
Binary file modified Source/Lib/gf_objectexplorer.vct
Binary file not shown.
Binary file modified Source/Lib/gf_objectexplorer.vcx
Binary file not shown.
45 changes: 33 additions & 12 deletions Source/Lib/gofishsearchengine.prg
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -6431,6 +6439,8 @@ j
This.CallShell(m.lcBATFile, m.lcDoneFile)

* ================================================================================

This.CheckForUnmatchedParenError(m.lcErrFile)

This.AppendtoCursor(m.tcCursor, m.lcOutFile, m.lcErrFile)

Expand All @@ -6456,8 +6466,8 @@ j

Return m.lcExtensions

Endproc

EndProc

* ================================================================================
Procedure CallShell(tcBATFile, tcDoneFile)
Expand Down Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions Source/Lib/gofishsearchoptions.prg
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@ Define Class GoFishSearchOptions As Custom

lPreVFP9 = .F.
lPreVFP9EditSource = 'EditSource'
lUnmatchedParenError = .F.

*---------------------------------------------------------------------

Expand Down
Binary file modified Source/Lib/gofishui.VCT
Binary file not shown.
Loading