diff --git a/-GoFish-.fpw b/-GoFish-.fpw new file mode 100644 index 0000000..ca85dde --- /dev/null +++ b/-GoFish-.fpw @@ -0,0 +1,3 @@ +RESOURCE = 'FOXUSER_9.dbf' +COMMAND = DO GoFish.prg +*TEDIT = /N "C:\Program Files\IDM Computer Solutions\UEStudio\UEStudio.exe" \ No newline at end of file diff --git a/-GoFish.prg b/-GoFish.prg new file mode 100644 index 0000000..bbb2dc4 --- /dev/null +++ b/-GoFish.prg @@ -0,0 +1,40 @@ +LOCAL; + lcProg AS CHARACTER,; + lcBase AS CHARACTER + +*Bestimme Pfad +lcProg = SYS(16) +lcBase = JUSTPATH(m.lcProg) + +DO WHILE !EMPTY(m.lcBase) + IF DIRECTORY(m.lcBase+'\Tools') THEN +*gefunden + EXIT + ENDIF &&DIRECTORY(m.lcBase+'\Tools') + + lcBase = JUSTPATH(m.lcBase) +ENDDO &&WHILE !EMPTY(m.lcBase) + +DO CASE + CASE !EMPTY(m.lcBase) +*done + CASE DIRECTORY('E:\SE\Tools') + lcBase = 'E:\SE' + CASE DIRECTORY('E:\Tools') + lcBase = 'E:' + CASE DIRECTORY(JUSTDRIVE(m.lcProg)+'\SE\Tools') + lcBase = JUSTDRIVE(m.lcProg)+'\SE' + CASE DIRECTORY(JUSTDRIVE(m.lcProg)+'\Tools') + lcBase = JUSTDRIVE(m.lcProg) +ENDCASE + +*Menü nach Path laden (.mpr ist im Pfad) +IF !EMPTY(m.lcBase) THEN + DO lcBase+'\TOOLS\Start_Project.prg' WITH; + lcProg,; + '',; + RGB(236,94,236),; + RGB(000,000,000),; + 'Source\Images\Fish13.ico',; + ' - Go! Fish!' +ENDIF &&!EMPTY(m.lcBase) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 003b84e..2b5ac80 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -6,29 +6,31 @@ ## Fix a bug or add an enhancement - Fork the project: see this [guide](https://www.dataschool.io/how-to-contribute-on-github/) for setting up and using a fork. -- If you have already forked the project: **Remember yourself to pull first.** + - If allready forked, pull the recent state, or get most recent version otherwise. - Make whatever changes are necessary. -- Add a description of the changes to `Source\changelog_ver_5.txt`. This is: - - *Version number* and *Release date* - - Changes for the Version -- Copy the added text *Changes for the Version* from `Source\changelog_ver_5.txt` to the *Release History section* of `readme.md` and change, at the top of the document, the +- Add a description of the changes to **[docs\Changes.md](/docs/Changes.md)**. See previous changes. +- on top of **[readme.md](/readme.md)**, change: - version number and - - date . -- In `Source\BuildGoFish.prg`, change at top the - - *lcVersion* and - - *lcBuild* variables + - date +- Copy the changes of the recent (and only the recent) version to **Source\Changelog_Thor.txt**, available in the project. +- If there is more documentation, alter appropriate files +- In the footer of any file changed, alter date. -- run `Source\BuildGoFish.prg` **in VFP 9 SP2** to +- In **Source\BuildGoFish.prg**, available in the project, change at top the + - `lcVersion` and + - `lcBuild` variables + +- run **Source\BuildGoFish.prg** to - update several files - build GoFish5.app, - and generate the text equivalents for all VFP binary files (SCX, VCX, DBF, etc.) using FoxBin2PRG. > **Note: use VFP 9 SP2 rather than VFP Advanced to run BuildGoFish.prg since GoFish5.app must be built in VFP rather than VFPA for compatibility for all users.** - **close the project** -- In File Explorer, right-click `Source\BuildCloudZip.ps1` and choose *Run with PowerShell* to create Source.zip. +- In File Explorer, right-click **Source\BuildCloudZip.ps1** and choose *Run with PowerShell* to create Source.zip. - Commit the changes. - Push to your fork. - Create a pull request; ensure the description clearly describes the problem and solution or the enhancement. ---- -Last changed: 2022-10-16 \ No newline at end of file +Last changed: 2023-03-08 \ No newline at end of file diff --git a/FOXUSER_9.FPT b/FOXUSER_9.FPT index 7219a2a..99449b4 100644 Binary files a/FOXUSER_9.FPT and b/FOXUSER_9.FPT differ diff --git a/FOXUSER_9.dbf b/FOXUSER_9.dbf index 1c650d9..a66d243 100644 Binary files a/FOXUSER_9.dbf and b/FOXUSER_9.dbf differ diff --git a/GoFish.prg b/GoFish.prg new file mode 100644 index 0000000..d8d9c0f --- /dev/null +++ b/GoFish.prg @@ -0,0 +1,40 @@ +LOCAL; + lcProg AS CHARACTER,; + lcBase AS CHARACTER + +*Bestimme Pfad +lcProg = SYS(16) +lcBase = JUSTPATH(m.lcProg) + +DO WHILE !EMPTY(m.lcBase) + IF DIRECTORY(m.lcBase+'\Tools') THEN +*gefunden + EXIT + ENDIF &&DIRECTORY(m.lcBase+'\Tools') + + lcBase = JUSTPATH(m.lcBase) +ENDDO &&WHILE !EMPTY(m.lcBase) + +DO CASE + CASE !EMPTY(m.lcBase) +*done + CASE DIRECTORY('E:\SE\Tools') + lcBase = 'E:\SE' + CASE DIRECTORY('E:\Tools') + lcBase = 'E:' + CASE DIRECTORY(JUSTDRIVE(m.lcProg)+'\SE\Tools') + lcBase = JUSTDRIVE(m.lcProg)+'\SE' + CASE DIRECTORY(JUSTDRIVE(m.lcProg)+'\Tools') + lcBase = JUSTDRIVE(m.lcProg) +ENDCASE + +*Menü nach Path laden (.mpr ist im Pfad) +IF !EMPTY(m.lcBase) THEN + DO lcBase+'\TOOLS\Start_Project.prg' WITH; + lcProg,; + '',; + RGB(255,183,255),; + RGB(000,000,000),; + 'Source\Images\Fish13.ico',; + ' - Go! Fish!' +ENDIF &&!EMPTY(m.lcBase) diff --git a/Source/BuildGoFish.PRG b/Source/BuildGoFish.PRG index 7028d85..88d8cb3 100644 --- a/Source/BuildGoFish.PRG +++ b/Source/BuildGoFish.PRG @@ -16,8 +16,8 @@ lcSourceLoc = Addbs(Justpath(Sys(16))) && Change this to location of source fil Cd (lcSourceLoc) *== Most of these local variables will make their way into BuildGoFish.h -lcVersion = '5.1' -lcBuild = '011' && <---- Set your desired version level of the tool here +lcVersion = '6.0' +lcBuild = '000' && <---- Set your desired version level of the tool here && This will be used on the GoFish form and will live on the && the _GoFish object that gets attached to _Screen at run time. @@ -75,7 +75,7 @@ TEXT to lcCloudVersionFileContents NoShow TextMerge PRETEXT 3 Lparameters toUpdateInfo ###Text to lcNote NoShow - <> + <> ###EndText AddProperty(toUpdateInfo, 'AvailableVersion', '<>') diff --git a/Source/BuildGoFish.h b/Source/BuildGoFish.h index 1f5c22e..584c2e0 100644 --- a/Source/BuildGoFish.h +++ b/Source/BuildGoFish.h @@ -1,10 +1,10 @@ #DEFINE GOFISH_APP_NAME 'GoFish5' #DEFINE GOFISH_APP_FILE 'GoFish5.app' - #DEFINE GOFISH_VERSION '5.1.011' - #DEFINE GOFISH_BUILDDATE '23. Februar 2023, ' - #DEFINE GOFISH_DBUILDDATE Date(2023,2, 23) + #DEFINE GOFISH_VERSION '6.0.000' + #DEFINE GOFISH_BUILDDATE '8. März 2023, ' + #DEFINE GOFISH_DBUILDDATE Date(2023,3, 8) #DEFINE GOFISH_DOWNLOAD_URL 'https://raw.githubusercontent.com/VFPX/GoFish/master/Source/Source.zip' - #DEFINE GOFISH_VERSION_STRING_FOR_VERSION_FILE 'GoFish5 - 5.1.011 - 23. Februar 2023, - 20230223' + #DEFINE GOFISH_VERSION_STRING_FOR_VERSION_FILE 'GoFish5 - 6.0.000 - 8. März 2023, - 20230308' #DEFINE THOR_TOOL_NAME 'Thor_Tool_GoFish5' #DEFINE VERSON_FILE_URL 'https://github.com/VFPX/GoFish/_GoFishVersionFile.txt' #DEFINE VERSION_LOCAL_FILE 'GoFishVersionFile.txt' diff --git a/Source/Changelog_Thor.txt b/Source/Changelog_Thor.txt new file mode 100644 index 0000000..03b8929 --- /dev/null +++ b/Source/Changelog_Thor.txt @@ -0,0 +1,16 @@ +GoFish Change Log + +## Ver 6.0.000 **Released 2023-03-08** +For more details check https://github.com/VFPX/GoFish/docs/Changes.md +- New: Mode to display history in tree +- New: Modified structure to store history to speed up display of history in tree while keeeping common history table small. +- New: Option to swap buttons in search history. Send OK / Cancel buttom left. +- New: Option to show search history by active scope +- New: Option to set scope to Active Project / Active Path as default +- New: Additional parameters for active scope +- New: Additional parameters to clear settings / storage +- Improved: Alternative button layout for *Load History Form* +- Improved: Load history faster +- Improved: Storage of replace history +- Improved: Display of replace history +- Improved: Sort per filepath rather then filename diff --git a/Source/Forms/gf_collection_explorer.SCT b/Source/Forms/gf_collection_explorer.SCT index 74ecef4..fc50716 100644 Binary files a/Source/Forms/gf_collection_explorer.SCT and b/Source/Forms/gf_collection_explorer.SCT differ diff --git a/Source/Forms/gf_collection_explorer.dataenvironment.sc2 b/Source/Forms/gf_collection_explorer.dataenvironment.sc2 new file mode 100644 index 0000000..290e453 --- /dev/null +++ b/Source/Forms/gf_collection_explorer.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gf_collection_explorer.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gf_collection_explorer.frmcollectionexplorer.sc2 b/Source/Forms/gf_collection_explorer.frmcollectionexplorer.sc2 new file mode 100644 index 0000000..22bbde9 --- /dev/null +++ b/Source/Forms/gf_collection_explorer.frmcollectionexplorer.sc2 @@ -0,0 +1,536 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gf_collection_explorer.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS frmcollectionexplorer AS form + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="oleTree" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtFullPath" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="olePropList" UniqueID="" Timestamp="" /> + + * + *m: getobjectreference && Returns the object reference to the item represented by a node. + *m: loadcollection && Loads a collection object into the treeview. + *m: loaditems && Loads the items in a collection into the treeview. + *m: loadmembers && Loads the member objects of an object into the tree view. + *m: loadobject && Loads an object into the TreeView. + *m: loadproperties && Loads the properties of an object into the treeview. + *m: newkey && Creates a new key for a node added to the tree. + *m: newnode && Adds an empty node to the treeview. + *m: showproperties && Displays the properties for the passed node. + *p: lshowarrays && Indicates that arrays should be displayed in the treeview. + *p: lshowitems && Indicates the items in a collection should be displayed in the tree. + *p: lshowmemberobjects && Indicates that member objects should be displayed in the treeview. + *p: lshowobjectreferences && Indicates that properties that hold object references should be added to the treeview. + *p: lshowproperties && Indicates that all properties should be displayed in the list view. + *p: ocollection && Contains an object reference to the top level collection in the treeview. + *p: ofirstobject && Stores an object reference to the top most object in the treeview. + *p: oflatcollection && Contains references to all of the items in all collections, without regard for hierarchy. + *a: apems[1,0] + * + + Caption = "Collection Explorer" + DoCreate = .T. + Height = 407 + Left = 1 + lshowarrays = .T. && Indicates that arrays should be displayed in the treeview. + lshowitems = .T. && Indicates the items in a collection should be displayed in the tree. + lshowmemberobjects = .T. && Indicates that member objects should be displayed in the treeview. + lshowobjectreferences = .T. && Indicates that properties that hold object references should be added to the treeview. + lshowproperties = .T. && Indicates that all properties should be displayed in the list view. + Name = "frmCollectionExplorer" + ocollection = NULL && Contains an object reference to the top level collection in the treeview. + ofirstobject = .NULL. && Stores an object reference to the top most object in the treeview. + oflatcollection = .NULL. && Contains references to all of the items in all collections, without regard for hierarchy. + Top = 0 + Width = 468 + WindowType = 1 + + ADD OBJECT 'olePropList' AS olecontrol WITH ; + Anchor = 45, ; + Height = 331, ; + Left = 168, ; + Name = "olePropList", ; + Top = 0, ; + Width = 290 + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBJJ//1Zc0BAwAAAAACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcgAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAMUAAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9L8NG9i4XREbFqAMDwKDYoIUM0EggAAAD5HQAANiIAAE4IfesBAAYAHAAAAAAAAAAAAAAAIxIAAPkdAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAACgAAAExhYmVsRWRpdAAJAAAASQoAAAABAAAADQAAAE1vAAAFAEhKjgQDAAAACAAAgAUAAIA4uFkLAAAAAAAAAAAAAAAAH97svQEABQCwt1kLAAA3ADgAQgB9ACAAQwA6AHVzZVBvaW50ZXIACQAAAEkKAAAAAAAAAAUAAABWaWV3AAkAAABJCgAAAAMAAAALAAAAQXBwZWFyYW5jZQAJAAAASQoAAAAAAAAAEwAAAEFsbG93Q29sdW1uUmVvcmRlcgAFAAAATAEAAAAOAAAARmxhdFNjcm9sbEJhcgAFAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==" /> + + ADD OBJECT 'oleTree' AS olecontrol WITH ; + Anchor = 135, ; + Height = 328, ; + Left = 4, ; + Name = "oleTree", ; + Top = 0, ; + Width = 157 + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiJ//1Zc0BAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAFcBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAAA6EAAA5iEAALE8wWoBAAYAIgAAAHkATQDcAQAASgBvAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAKiDXAsCAGUAAAAAAAUAAIBA6hgAAQAAAFwAH97svQEABQCI6hgARgBCADYANgA3ADgAQgB9ACAAQwA6AAAAMkAKAAAATGFiZWxFZGl0AAkAAABJCgAAAAEAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAAsAAABBcHBlYXJhbmNlAAkAAABJCgAAAAAAAAAOAAAARnVsbFJvd1NlbGVjdAAFAAAATAEAAAAKAAAAU2luZ2xlU2VsAAUAAABMAAAAAH//f/9//38AAAAAAAAYIB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAkAkQEPAFdIQVRTVEhJU0hFTFBJRABwBRYAcAUWAC4AVgGVAQgAwCFYJ/whHgBIIh4AcCxYJwAAAAABAAAAAABzACg0WCcYNFgn+DNYJ7gjHgAYIB4AAAAAAG4AcwAAAGUAYwB0AG8AcgAuAHMAAAAAADYAAADQ2x0AlNwdAFAWXCdAFlwnAAAAAADAWEQAAABAaQBvAAAAcwBcAGMAbwBsAGwAZQAAAHQAaQBvAG4AaQBuAHMAwCFYJ4wiHgDYIh4AcCxYJwEAAAAeAAAAAAAAACg0WCcYNFgn+DNYJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ2x0AAAAAAFgYXCdIGFwnAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAADAIVgnDCMeAEgjHgBwLFgnAQAAAB8AAAAAAAAAQCJYJyAiWCcAAAAAAAAAAAAAAAAAAAAAAAAAAEgiHgAAAAAA" /> + + ADD OBJECT 'txtFullPath' AS textbox WITH ; + Anchor = 14, ; + DisabledForeColor = 0,0,0, ; + Enabled = .F., ; + Height = 72, ; + Left = 3, ; + Name = "txtFullPath", ; + NullDisplay = "", ; + Top = 333, ; + Width = 456 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Destroy + This.oFirstObject = NULL + This.oCollection = NULL + This.oFlatCollection.Remove(-1) + This.oFlatCollection = NULL + + ENDPROC + + PROCEDURE getobjectreference && Returns the object reference to the item represented by a node. + LPARAMETERS ; + toNode + + LOCAL ; + loReturn, ; + loItem, ; + lnIndex, ; + loTemp + + lnIndex = 0 + loReturn = NULL + TRY + loTemp = This.oFlatcollection.Item(toNode.Tag) + CATCH + loTemp = NULL + ENDTRY + + * We have to iterate the collection to find the object in order + * to get a Fox reference vs. a COM reference. + IF NOT ISNULL(loTemp) + FOR EACH loItem IN This.oFlatcollection FOXOBJECT + IF COMPOBJ(loTemp,loItem) + *!* IF loItem == loTemp + *!* lnIndex = lnIndex + 1 + *!* IF loItem.Tag == toNode.Tag + loReturn = loItem + EXIT + ENDIF + NEXT + ENDIF + *!* loReturn = Thisform.oFlatCollection.Item(toNode.Index) + RETURN loReturn + ENDPROC + + PROCEDURE Init + LPARAMETERS ; + toObject + + This.oFlatcollection = CREATEOBJECT([Collection]) + IF PCOUNT() = 1 + This.LoadObject(toObject) + ELSE + MESSAGEBOX([You must pass an object to start exploring from to this form.]) + ENDIF + + ENDPROC + + PROCEDURE loadcollection && Loads a collection object into the treeview. + LPARAMETERS ; + toCollection AS Collection , ; + tcMemberProperty, ; + toParent + + LOCAL ; + loItem AS Object, ; + lcMemberProperty, ; + loNode, ; + lnI, ; + lnItemNo, ; + loObject, ; + loMemberNode, ; + lnJ, ; + lvPropVal, ; + loE + + IF TYPE([toCollection]) <> [O] + RETURN + ENDIF + + + + LOCAL ARRAY laMembers[1] + *!* IF PCOUNT() < 3 + *!* This.oCollection = toCollection + *!* ENDIF + + lcMemberProperty = IIF(TYPE("tcMemberProperty") = [C], tcMemberProperty,[Name]) + lnItemNo = 0 + *!* FOR EACH loItem IN toCollection FOXOBJECT + FOR lnI = 1 TO toCollection.Count + loItem = toCollection.Item(lnI) + + lnItemNo = lnItemNo+1 + This.oFlatcollection.Add(loItem) + *!* loItem2 = This.oFlatcollection.Item(This.oFlatcollection.Count) + loNode = This.oleTree.Nodes.Add() + IF PCOUNT() = 3 + loNode.Parent = toParent + ENDIF + + + IF PEMSTATUS(loItem,lcMemberProperty,5) + loNode.Text = EVALUATE([loItem.]+lcMemberProperty) + ELSE + loNode.Text = [Item]+TRANSFORM(lnItemNo) + ENDIF + *!* FOR lnJ = 1 TO AMEMBERS(laMembers,loItem,2) + FOR lnJ = 1 TO AMEMBERS(laMembers,loItem,1) + + + DO CASE + CASE TYPE([loItem.]+laMembers[lnJ,1]) = [O] + loMemberNode = This.oleTree.Nodes.Add() + loMemberNode.Parent = loNode + loObject = EVALUATE([loItem.]+laMembers[lnJ,1]) + loMemberNode.Text = laMembers[lnJ,1] + *!* IF PEMSTATUS(loObject,lcMemberProperty,5) + *!* loMemberNode.Text = EVALUATE([loObject.]+lcMemberProperty) + *!* ELSE + *!* loMemberNode.Text = [Item]+TRANSFORM(lnItemNo) + *!* ENDIF + This.oFlatcollection.Add(loObject) + IF PEMSTATUS(loObject,[Item],5) + This.LoadCollection(loObject, lcMemberProperty, loMemberNode) + ENDIF + loMemberNode.Expanded = .F. + IF PEMSTATUS(loItem,[Item],5) + This.LoadCollection(loItem, lcMemberProperty, loNode) + ENDIF + CASE TYPE([loItem.]+laMembers[lnJ,1],1) = [A] + loMemberNode = This.oleTree.Nodes.Add() + loMemberNode.Parent = loNode + loMemberNode.Text = laMembers[lnJ,1] + This.oFlatcollection.Add(EVALUATE([loItem.]+laMembers[lnJ,1])) + + ENDCASE + NEXT + + + loNode.Expanded = .F. + + NEXT + IF ISNULL(This.oleTree.SelectedItem) AND This.oleTree.Nodes.Count>0 + This.oleTree.SelectedItem = This.oleTree.Nodes.Item(1) + This.oleTree.NodeClick(This.oleTree.Nodes.Item(1)) + ENDIF + + ENDPROC + + PROCEDURE loaditems && Loads the items in a collection into the treeview. + LPARAMETERS ; + toObject, ; + toParentNode + + LOCAL ; + loNode, ; + lnI, ; + lvItem + + IF This.lShowItems AND TYPE([toObject.Count]) = [N] + TRY + FOR lnI = 1 TO toObject.Count + lvItem = toObject.Item(lnI) + IF TYPE([lvItem]) = [O] + This.LoadObject(lvItem, toParentNode) + ELSE + loNode = This.NewNode() + loNode.Parent = toParentNode + loNode.Text = TRANSFORM(lvItem) + ENDIF + NEXT + CATCH TO foo + ENDTRY + ENDIF + + + ENDPROC + + PROCEDURE loadmembers && Loads the member objects of an object into the tree view. + LPARAMETERS ; + toObject, ; + toParentNode + + LOCAL ; + loObject, ; + lnI + + LOCAL ARRAY laMembers[1] + IF This.lShowMemberobjects AND TYPE([toObject])= [O] + FOR lnI = 1 TO AMEMBERS(laMembers,toObject,2) + loObject = EVALUATE([toObject.] + laMembers[lnI]) + This.LoadObject(loObject, toParentNode, laMembers[lnI]) + NEXT + ENDIF + + ENDPROC + + PROCEDURE loadobject && Loads an object into the TreeView. + LPARAMETERS ; + toObject, ; + toParentNode, ; + tcName + + LOCAL ; + lcName, ; + loNode, ; + loDummyNode, ; + lcKey + + WITH This + IF ISNULL(.oFirstObject) + .oFirstObject = toObject + .oleTree.Nodes.Clear() + ENDIF + + lcName = SYS(1272,toObject) + loNode = .oleTree.Nodes.Add() + lcKey = This.Newkey(.t.) + loNode.Tag = lcKey + + IF TYPE([toParentNode.Text]) = T_CHARACTER + loNode.Parent = toParentNode + ENDIF + + DO CASE + CASE NOT EMPTY(tcName) AND TYPE([tcName]) = T_CHARACTER + loNode.Text = tcName + CASE NOT EMPTY(lcName) AND lcName <> [unknown type] + loNode.Text = lcName + CASE PEMSTATUS(toObject,[Name],5) + loNode.Text = toObject.Name + CASE PEMSTATUS(toObject,[Class],5) + loNode.Text = toObject.Class + OTHERWISE + loNode.Text = [Object] + ENDCASE + + .oFlatCollection.Add(toObject,lcKey) + + *!* .LoadItems(toObject, loNode) + *!* .LoadMembers(toObject, loNode) + *!* .LoadProperties(toObject, loNode) + loDummyNode = This.oleTree.Nodes.Add() + loDummyNode.Text = [(Loading...)] + loDummyNode.Parent=loNode + + loNode.Expanded = .F. + ENDWITH + RETURN + + ENDPROC + + PROCEDURE loadproperties && Loads the properties of an object into the treeview. + LPARAMETERS ; + toObject, ; + toParentNode + + LOCAL ; + lvProperty, ; + lnI, ; + loObject, ; + lnJ, ; + loCollectionNode + + IF TYPE([toObject]) <> [O] + RETURN + ENDIF + + LOCAL ARRAY laMembers[1] + FOR lnI = 1 TO AMEMBERS(laMembers,toObject) + TRY + lvProperty = EVALUATE([toObject.] + laMembers[lnI]) + CATCH + lvProperty = NULL + ENDTRY + DO CASE + CASE TYPE([lvProperty]) = [O] AND NOT ISNULL(lvProperty) + This.LoadObject(lvProperty, toParentNode, laMembers[lnI]) + CASE TYPE([toObject.] + laMembers[lnI],1) = [A] + *!* WAIT WINDOW laMembers[lnI] + CASE TYPE([toObject.] + laMembers[lnI],1) = [C] + *!* This.LoadCollection(EVALUATE([toObject.] + laMembers[lnI]), toParentNode, laMembers[lnI]) + + loCollectionNode = Null + TRY + FOR lnJ = 1 TO EVALUATE([toObject.] + laMembers[lnI] + [.Count]) + *!* loObject = EVALUATE([toObject.] + laMembers[lnI] + [.Item(] + TRANSFORM(lnJ) + [)]) + loObject = EVALUATE([toObject.] + laMembers[lnI] + [(] + TRANSFORM(lnJ) + [)]) + IF ISNULL(loCollectionNode) + loCollectionNode = This.oleTree.Nodes.Add() + loCollectionNode.Parent = toParentNode + loCollectionNode.Text = laMembers[lnI] + ENDIF + This.LoadObject(loObject, loCollectionNode) + NEXT + CATCH TO Foo + *!* WAIT WINDOW MESSAGE() + CHR(13) + laMembers[lnI] + ENDTRY + loCollectionNode = NULL + ENDCASE + NEXT + + + ENDPROC + + PROCEDURE newkey && Creates a new key for a node added to the tree. + * Code from http://fox.wikis.com/wc.dll?Wiki~GUID~VFP + *== F9GUID + *== Create a new GUID character string, + *== optionally retaining the declared Windows functions + LPARAMETERS tlNoClear + LOCAL lcBuffer, ; + lcReturnValue, ; + llNoClear, ; + lnFuncVal + + *-- Define local variables + lcBuffer = REPLICATE( CHR( 0 ), 256 ) + lcReturnValue = [] + llNoClear = IIF( PCOUNT() > 0 AND VARTYPE( tlNoClear ) = "L", ; + tlNoClear, ; + .f. ; + ) + lnFuncVal = 0 + + *-- Declare DLL functions + DECLARE INTEGER CoCreateGuid ; + IN Ole32.DLL ; + STRING @pGuid + DECLARE INTEGER StringFromGUID2 ; + IN Ole32.DLL ; + STRING rguid, STRING @lpsz, INTEGER cchMax + + *-- Initialize a buffer to hold the GUID value + pGuid = REPLICATE( CHR( 0 ), 17 ) + + *-- Call the CoCreateGuid function + lnFuncVal = CoCreateGuid( @pGuid ) + + *-- If the DLL function returned zero, + *-- the function was successful, + *-- so build a string of the GUID data + IF lnFuncVal = 0 + = StringFromGUID2( pGuid, @lcBuffer, 128 ) + + *-- Truncate the GUID string to the desired length + lcBuffer = SUBSTR( lcBuffer, ; + 1, ; + AT( CHR( 0 ) + CHR( 0 ), lcBuffer ) ; + ) + + *-- Convert the string + lcReturnValue = STRCONV( lcBuffer, 6 ) + + ENDIF && lnFuncVal = 0 + + *-- Unless the calling module chose not to, + *-- clear the instantiated DLLs from memory + IF !llNoClear + CLEAR DLLS "StringFromGUID2" + CLEAR DLLS "CoCreateGuid" + + ENDIF && !tlNoClear + + *-- Clean up and return + RETURN ( lcReturnValue ) + + *== End module F9GUID + + ENDPROC + + PROCEDURE newnode && Adds an empty node to the treeview. + LOCAL ; + loNode + + loNode = This.oleTree.Nodes.Add() + RETURN loNode + + ENDPROC + + PROCEDURE showproperties && Displays the properties for the passed node. + LPARAMETERS ; + toNode + + LOCAL ; + loItem, ; + lcPropVal, ; + lnI, ; + loRow + + LOCAL ARRAY laPems[1] + This.olePropList.ListItems.Clear() + loItem = Thisform.GetObjectReference(toNode) + IF NOT ISNULL(loItem) + FOR lnI = 1 TO AMEMBERS(laPems,loItem) + loRow = This.olePropList.ListItems.Add() + loRow.Text = laPems[lnI] + TRY + lcPropVal = TRANSFORM(EVALUATE([loItem.]+laPems[lnI])) + CATCH + * This occurs when a property that would normally reference an object, + * such as parent, does not return an object reference. + lcPropVal = [(none)] + ENDTRY + loRow.SubItems(1)=lcPropVal + NEXT + ENDIF + Thisform.txtFullPath.Value = toNode.fullpath + + ENDPROC + + PROCEDURE olePropList.Init + loColumn = This.ColumnHeaders.Add() + loColumn.Width = This.Width/2 + loColumn.Text = [Property] + + loColumn = This.ColumnHeaders.Add() + loColumn.Width = This.Width/2 + loColumn.Text = [Value] + + ENDPROC + + PROCEDURE oleTree.Expand + *** ActiveX Control Event *** + LPARAMETERS toNode + LOCAL ; + loObject, ; + loNode, ; + lnI + + + loObject = Thisform.GetObjectReference(toNode) + FOR lnI = 1 TO toNode.Children + IF NOT EMPTY(toNode.Child.Tag) + Thisform.oFlatcollection.Remove(toNode.Child.Tag) + ENDIF + This.Nodes.Remove(toNode.Child.Index) + NEXT + loObject = Thisform.GetObjectReference(toNode) + + WITH Thisform + .LoadItems(loObject, toNode) + .LoadMembers(loObject, toNode) + .LoadProperties(loObject, toNode) + ENDWITH + ENDPROC + + PROCEDURE oleTree.NodeClick + *** ActiveX Control Event *** + LPARAMETERS node + Thisform.ShowProperties(Node) + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gf_collection_explorer.gf_collectionexplorer.sc2 b/Source/Forms/gf_collection_explorer.gf_collectionexplorer.sc2 new file mode 100644 index 0000000..5ca2912 --- /dev/null +++ b/Source/Forms/gf_collection_explorer.gf_collectionexplorer.sc2 @@ -0,0 +1,536 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gf_collection_explorer.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_collectionexplorer AS form + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="oleTree" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtFullPath" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="olePropList" UniqueID="" Timestamp="" /> + + * + *m: getobjectreference && Returns the object reference to the item represented by a node. + *m: loadcollection && Loads a collection object into the treeview. + *m: loaditems && Loads the items in a collection into the treeview. + *m: loadmembers && Loads the member objects of an object into the tree view. + *m: loadobject && Loads an object into the TreeView. + *m: loadproperties && Loads the properties of an object into the treeview. + *m: newkey && Creates a new key for a node added to the tree. + *m: newnode && Adds an empty node to the treeview. + *m: showproperties && Displays the properties for the passed node. + *p: lshowarrays && Indicates that arrays should be displayed in the treeview. + *p: lshowitems && Indicates the items in a collection should be displayed in the tree. + *p: lshowmemberobjects && Indicates that member objects should be displayed in the treeview. + *p: lshowobjectreferences && Indicates that properties that hold object references should be added to the treeview. + *p: lshowproperties && Indicates that all properties should be displayed in the list view. + *p: ocollection && Contains an object reference to the top level collection in the treeview. + *p: ofirstobject && Stores an object reference to the top most object in the treeview. + *p: oflatcollection && Contains references to all of the items in all collections, without regard for hierarchy. + *a: apems[1,0] + * + + Caption = "Collection Explorer" + DoCreate = .T. + Height = 407 + Left = 1 + lshowarrays = .T. && Indicates that arrays should be displayed in the treeview. + lshowitems = .T. && Indicates the items in a collection should be displayed in the tree. + lshowmemberobjects = .T. && Indicates that member objects should be displayed in the treeview. + lshowobjectreferences = .T. && Indicates that properties that hold object references should be added to the treeview. + lshowproperties = .T. && Indicates that all properties should be displayed in the list view. + Name = "GF_CollectionExplorer" + ocollection = NULL && Contains an object reference to the top level collection in the treeview. + ofirstobject = .NULL. && Stores an object reference to the top most object in the treeview. + oflatcollection = .NULL. && Contains references to all of the items in all collections, without regard for hierarchy. + Top = 0 + Width = 468 + WindowType = 1 + + ADD OBJECT 'olePropList' AS olecontrol WITH ; + Anchor = 45, ; + Height = 331, ; + Left = 168, ; + Name = "olePropList", ; + Top = 0, ; + Width = 290 + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALC9B/i17dgBAwAAAAACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcgAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAMUAAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9L8NG9i4XREbFqAMDwKDYoIUM0EggAAAD5HQAANiIAAE4IfesBAAYAHAAAAAAAAAAAAAAAIxIAAPkdAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAACgAAAExhYmVsRWRpdAAJAAAASQoAAAABAAAADQAAAE1vAAAFANgjnhEDAAAACAAAgAUAAICg0M0AAAAAAAAAAAAAAAAAH97svQEABQCII54RAAA3ADgAQgB9ACAAQwA6AHVzZVBvaW50ZXIACQAAAEkKAAAAAAAAAAUAAABWaWV3AAkAAABJCgAAAAMAAAALAAAAQXBwZWFyYW5jZQAJAAAASQoAAAAAAAAAEwAAAEFsbG93Q29sdW1uUmVvcmRlcgAFAAAATAEAAAAOAAAARmxhdFNjcm9sbEJhcgAFAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==" /> + + ADD OBJECT 'oleTree' AS olecontrol WITH ; + Anchor = 135, ; + Height = 328, ; + Left = 4, ; + Name = "oleTree", ; + Top = 0, ; + Width = 157 + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCWB/i17dgBAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAFcBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAAA6EAAA5iEAALE8wWoBAAYAIgAAAHkATQDcAQAASgBvAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAFgUoRECAGUAAAAAAAUAAIAc6hkAAQAAAFwAH97svQEABQBk6hkARgBCADYANgA3ADgAQgB9ACAAQwA6AAAAMkAKAAAATGFiZWxFZGl0AAkAAABJCgAAAAEAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAAsAAABBcHBlYXJhbmNlAAkAAABJCgAAAAAAAAAOAAAARnVsbFJvd1NlbGVjdAAFAAAATAEAAAAKAAAAU2luZ2xlU2VsAAUAAABMAAAAAH//f/9//38AAAAAAAAYIB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAkAkQEPAFdIQVRTVEhJU0hFTFBJRABwBRYAcAUWAC4AVgGVAQgAwCFYJ/whHgBIIh4AcCxYJwAAAAABAAAAAABzACg0WCcYNFgn+DNYJ7gjHgAYIB4AAAAAAG4AcwAAAGUAYwB0AG8AcgAuAHMAAAAAADYAAADQ2x0AlNwdAFAWXCdAFlwnAAAAAADAWEQAAABAaQBvAAAAcwBcAGMAbwBsAGwAZQAAAHQAaQBvAG4AaQBuAHMAwCFYJ4wiHgDYIh4AcCxYJwEAAAAeAAAAAAAAACg0WCcYNFgn+DNYJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ2x0AAAAAAFgYXCdIGFwnAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAADAIVgnDCMeAEgjHgBwLFgnAQAAAB8AAAAAAAAAQCJYJyAiWCcAAAAAAAAAAAAAAAAAAAAAAAAAAEgiHgAAAAAA" /> + + ADD OBJECT 'txtFullPath' AS textbox WITH ; + Anchor = 14, ; + DisabledForeColor = 0,0,0, ; + Enabled = .F., ; + Height = 72, ; + Left = 3, ; + Name = "txtFullPath", ; + NullDisplay = "", ; + Top = 333, ; + Width = 456 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Destroy + This.oFirstObject = NULL + This.oCollection = NULL + This.oFlatCollection.Remove(-1) + This.oFlatCollection = NULL + + ENDPROC + + PROCEDURE getobjectreference && Returns the object reference to the item represented by a node. + LPARAMETERS ; + toNode + + LOCAL ; + loReturn, ; + loItem, ; + lnIndex, ; + loTemp + + lnIndex = 0 + loReturn = NULL + TRY + loTemp = This.oFlatcollection.Item(toNode.Tag) + CATCH + loTemp = NULL + ENDTRY + + * We have to iterate the collection to find the object in order + * to get a Fox reference vs. a COM reference. + IF NOT ISNULL(loTemp) + FOR EACH loItem IN This.oFlatcollection FOXOBJECT + IF COMPOBJ(loTemp,loItem) + *!* IF loItem == loTemp + *!* lnIndex = lnIndex + 1 + *!* IF loItem.Tag == toNode.Tag + loReturn = loItem + EXIT + ENDIF + NEXT + ENDIF + *!* loReturn = Thisform.oFlatCollection.Item(toNode.Index) + RETURN loReturn + ENDPROC + + PROCEDURE Init + LPARAMETERS ; + toObject + + This.oFlatcollection = CREATEOBJECT([Collection]) + IF PCOUNT() = 1 + This.LoadObject(toObject) + ELSE + MESSAGEBOX([You must pass an object to start exploring from to this form.]) + ENDIF + + ENDPROC + + PROCEDURE loadcollection && Loads a collection object into the treeview. + LPARAMETERS ; + toCollection AS Collection , ; + tcMemberProperty, ; + toParent + + LOCAL ; + loItem AS Object, ; + lcMemberProperty, ; + loNode, ; + lnI, ; + lnItemNo, ; + loObject, ; + loMemberNode, ; + lnJ, ; + lvPropVal, ; + loE + + IF TYPE([toCollection]) <> [O] + RETURN + ENDIF + + + + LOCAL ARRAY laMembers[1] + *!* IF PCOUNT() < 3 + *!* This.oCollection = toCollection + *!* ENDIF + + lcMemberProperty = IIF(TYPE("tcMemberProperty") = [C], tcMemberProperty,[Name]) + lnItemNo = 0 + *!* FOR EACH loItem IN toCollection FOXOBJECT + FOR lnI = 1 TO toCollection.Count + loItem = toCollection.Item(lnI) + + lnItemNo = lnItemNo+1 + This.oFlatcollection.Add(loItem) + *!* loItem2 = This.oFlatcollection.Item(This.oFlatcollection.Count) + loNode = This.oleTree.Nodes.Add() + IF PCOUNT() = 3 + loNode.Parent = toParent + ENDIF + + + IF PEMSTATUS(loItem,lcMemberProperty,5) + loNode.Text = EVALUATE([loItem.]+lcMemberProperty) + ELSE + loNode.Text = [Item]+TRANSFORM(lnItemNo) + ENDIF + *!* FOR lnJ = 1 TO AMEMBERS(laMembers,loItem,2) + FOR lnJ = 1 TO AMEMBERS(laMembers,loItem,1) + + + DO CASE + CASE TYPE([loItem.]+laMembers[lnJ,1]) = [O] + loMemberNode = This.oleTree.Nodes.Add() + loMemberNode.Parent = loNode + loObject = EVALUATE([loItem.]+laMembers[lnJ,1]) + loMemberNode.Text = laMembers[lnJ,1] + *!* IF PEMSTATUS(loObject,lcMemberProperty,5) + *!* loMemberNode.Text = EVALUATE([loObject.]+lcMemberProperty) + *!* ELSE + *!* loMemberNode.Text = [Item]+TRANSFORM(lnItemNo) + *!* ENDIF + This.oFlatcollection.Add(loObject) + IF PEMSTATUS(loObject,[Item],5) + This.LoadCollection(loObject, lcMemberProperty, loMemberNode) + ENDIF + loMemberNode.Expanded = .F. + IF PEMSTATUS(loItem,[Item],5) + This.LoadCollection(loItem, lcMemberProperty, loNode) + ENDIF + CASE TYPE([loItem.]+laMembers[lnJ,1],1) = [A] + loMemberNode = This.oleTree.Nodes.Add() + loMemberNode.Parent = loNode + loMemberNode.Text = laMembers[lnJ,1] + This.oFlatcollection.Add(EVALUATE([loItem.]+laMembers[lnJ,1])) + + ENDCASE + NEXT + + + loNode.Expanded = .F. + + NEXT + IF ISNULL(This.oleTree.SelectedItem) AND This.oleTree.Nodes.Count>0 + This.oleTree.SelectedItem = This.oleTree.Nodes.Item(1) + This.oleTree.NodeClick(This.oleTree.Nodes.Item(1)) + ENDIF + + ENDPROC + + PROCEDURE loaditems && Loads the items in a collection into the treeview. + LPARAMETERS ; + toObject, ; + toParentNode + + LOCAL ; + loNode, ; + lnI, ; + lvItem + + IF This.lShowItems AND TYPE([toObject.Count]) = [N] + TRY + FOR lnI = 1 TO toObject.Count + lvItem = toObject.Item(lnI) + IF TYPE([lvItem]) = [O] + This.LoadObject(lvItem, toParentNode) + ELSE + loNode = This.NewNode() + loNode.Parent = toParentNode + loNode.Text = TRANSFORM(lvItem) + ENDIF + NEXT + CATCH TO foo + ENDTRY + ENDIF + + + ENDPROC + + PROCEDURE loadmembers && Loads the member objects of an object into the tree view. + LPARAMETERS ; + toObject, ; + toParentNode + + LOCAL ; + loObject, ; + lnI + + LOCAL ARRAY laMembers[1] + IF This.lShowMemberobjects AND TYPE([toObject])= [O] + FOR lnI = 1 TO AMEMBERS(laMembers,toObject,2) + loObject = EVALUATE([toObject.] + laMembers[lnI]) + This.LoadObject(loObject, toParentNode, laMembers[lnI]) + NEXT + ENDIF + + ENDPROC + + PROCEDURE loadobject && Loads an object into the TreeView. + LPARAMETERS ; + toObject, ; + toParentNode, ; + tcName + + LOCAL ; + lcName, ; + loNode, ; + loDummyNode, ; + lcKey + + WITH This + IF ISNULL(.oFirstObject) + .oFirstObject = toObject + .oleTree.Nodes.Clear() + ENDIF + + lcName = SYS(1272,toObject) + loNode = .oleTree.Nodes.Add() + lcKey = This.Newkey(.t.) + loNode.Tag = lcKey + + IF TYPE([toParentNode.Text]) = T_CHARACTER + loNode.Parent = toParentNode + ENDIF + + DO CASE + CASE NOT EMPTY(tcName) AND TYPE([tcName]) = T_CHARACTER + loNode.Text = tcName + CASE NOT EMPTY(lcName) AND lcName <> [unknown type] + loNode.Text = lcName + CASE PEMSTATUS(toObject,[Name],5) + loNode.Text = toObject.Name + CASE PEMSTATUS(toObject,[Class],5) + loNode.Text = toObject.Class + OTHERWISE + loNode.Text = [Object] + ENDCASE + + .oFlatCollection.Add(toObject,lcKey) + + *!* .LoadItems(toObject, loNode) + *!* .LoadMembers(toObject, loNode) + *!* .LoadProperties(toObject, loNode) + loDummyNode = This.oleTree.Nodes.Add() + loDummyNode.Text = [(Loading...)] + loDummyNode.Parent=loNode + + loNode.Expanded = .F. + ENDWITH + RETURN + + ENDPROC + + PROCEDURE loadproperties && Loads the properties of an object into the treeview. + LPARAMETERS ; + toObject, ; + toParentNode + + LOCAL ; + lvProperty, ; + lnI, ; + loObject, ; + lnJ, ; + loCollectionNode + + IF TYPE([toObject]) <> [O] + RETURN + ENDIF + + LOCAL ARRAY laMembers[1] + FOR lnI = 1 TO AMEMBERS(laMembers,toObject) + TRY + lvProperty = EVALUATE([toObject.] + laMembers[lnI]) + CATCH + lvProperty = NULL + ENDTRY + DO CASE + CASE TYPE([lvProperty]) = [O] AND NOT ISNULL(lvProperty) + This.LoadObject(lvProperty, toParentNode, laMembers[lnI]) + CASE TYPE([toObject.] + laMembers[lnI],1) = [A] + *!* WAIT WINDOW laMembers[lnI] + CASE TYPE([toObject.] + laMembers[lnI],1) = [C] + *!* This.LoadCollection(EVALUATE([toObject.] + laMembers[lnI]), toParentNode, laMembers[lnI]) + + loCollectionNode = Null + TRY + FOR lnJ = 1 TO EVALUATE([toObject.] + laMembers[lnI] + [.Count]) + *!* loObject = EVALUATE([toObject.] + laMembers[lnI] + [.Item(] + TRANSFORM(lnJ) + [)]) + loObject = EVALUATE([toObject.] + laMembers[lnI] + [(] + TRANSFORM(lnJ) + [)]) + IF ISNULL(loCollectionNode) + loCollectionNode = This.oleTree.Nodes.Add() + loCollectionNode.Parent = toParentNode + loCollectionNode.Text = laMembers[lnI] + ENDIF + This.LoadObject(loObject, loCollectionNode) + NEXT + CATCH TO Foo + *!* WAIT WINDOW MESSAGE() + CHR(13) + laMembers[lnI] + ENDTRY + loCollectionNode = NULL + ENDCASE + NEXT + + + ENDPROC + + PROCEDURE newkey && Creates a new key for a node added to the tree. + * Code from http://fox.wikis.com/wc.dll?Wiki~GUID~VFP + *== F9GUID + *== Create a new GUID character string, + *== optionally retaining the declared Windows functions + LPARAMETERS tlNoClear + LOCAL lcBuffer, ; + lcReturnValue, ; + llNoClear, ; + lnFuncVal + + *-- Define local variables + lcBuffer = REPLICATE( CHR( 0 ), 256 ) + lcReturnValue = [] + llNoClear = IIF( PCOUNT() > 0 AND VARTYPE( tlNoClear ) = "L", ; + tlNoClear, ; + .f. ; + ) + lnFuncVal = 0 + + *-- Declare DLL functions + DECLARE INTEGER CoCreateGuid ; + IN Ole32.DLL ; + STRING @pGuid + DECLARE INTEGER StringFromGUID2 ; + IN Ole32.DLL ; + STRING rguid, STRING @lpsz, INTEGER cchMax + + *-- Initialize a buffer to hold the GUID value + pGuid = REPLICATE( CHR( 0 ), 17 ) + + *-- Call the CoCreateGuid function + lnFuncVal = CoCreateGuid( @pGuid ) + + *-- If the DLL function returned zero, + *-- the function was successful, + *-- so build a string of the GUID data + IF lnFuncVal = 0 + = StringFromGUID2( pGuid, @lcBuffer, 128 ) + + *-- Truncate the GUID string to the desired length + lcBuffer = SUBSTR( lcBuffer, ; + 1, ; + AT( CHR( 0 ) + CHR( 0 ), lcBuffer ) ; + ) + + *-- Convert the string + lcReturnValue = STRCONV( lcBuffer, 6 ) + + ENDIF && lnFuncVal = 0 + + *-- Unless the calling module chose not to, + *-- clear the instantiated DLLs from memory + IF !llNoClear + CLEAR DLLS "StringFromGUID2" + CLEAR DLLS "CoCreateGuid" + + ENDIF && !tlNoClear + + *-- Clean up and return + RETURN ( lcReturnValue ) + + *== End module F9GUID + + ENDPROC + + PROCEDURE newnode && Adds an empty node to the treeview. + LOCAL ; + loNode + + loNode = This.oleTree.Nodes.Add() + RETURN loNode + + ENDPROC + + PROCEDURE showproperties && Displays the properties for the passed node. + LPARAMETERS ; + toNode + + LOCAL ; + loItem, ; + lcPropVal, ; + lnI, ; + loRow + + LOCAL ARRAY laPems[1] + This.olePropList.ListItems.Clear() + loItem = Thisform.GetObjectReference(toNode) + IF NOT ISNULL(loItem) + FOR lnI = 1 TO AMEMBERS(laPems,loItem) + loRow = This.olePropList.ListItems.Add() + loRow.Text = laPems[lnI] + TRY + lcPropVal = TRANSFORM(EVALUATE([loItem.]+laPems[lnI])) + CATCH + * This occurs when a property that would normally reference an object, + * such as parent, does not return an object reference. + lcPropVal = [(none)] + ENDTRY + loRow.SubItems(1)=lcPropVal + NEXT + ENDIF + Thisform.txtFullPath.Value = toNode.fullpath + + ENDPROC + + PROCEDURE olePropList.Init + loColumn = This.ColumnHeaders.Add() + loColumn.Width = This.Width/2 + loColumn.Text = [Property] + + loColumn = This.ColumnHeaders.Add() + loColumn.Width = This.Width/2 + loColumn.Text = [Value] + + ENDPROC + + PROCEDURE oleTree.Expand + *** ActiveX Control Event *** + LPARAMETERS toNode + LOCAL ; + loObject, ; + loNode, ; + lnI + + + loObject = Thisform.GetObjectReference(toNode) + FOR lnI = 1 TO toNode.Children + IF NOT EMPTY(toNode.Child.Tag) + Thisform.oFlatcollection.Remove(toNode.Child.Tag) + ENDIF + This.Nodes.Remove(toNode.Child.Index) + NEXT + loObject = Thisform.GetObjectReference(toNode) + + WITH Thisform + .LoadItems(loObject, toNode) + .LoadMembers(loObject, toNode) + .LoadProperties(loObject, toNode) + ENDWITH + ENDPROC + + PROCEDURE oleTree.NodeClick + *** ActiveX Control Event *** + LPARAMETERS node + Thisform.ShowProperties(Node) + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gf_collection_explorer.sc2 b/Source/Forms/gf_collection_explorer.sc2 index fc6943f..e530ad8 100644 --- a/Source/Forms/gf_collection_explorer.sc2 +++ b/Source/Forms/gf_collection_explorer.sc2 @@ -4,548 +4,10 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gf_collection_explorer.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="frmcollectionexplorer" Baseclass="form" /> +*< EXTERNAL_CLASS: Name="gf_collectionexplorer" Baseclass="form" /> + * #INCLUDE "..\lib\foxpro.h" - -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS frmcollectionexplorer AS form - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="oleTree" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="txtFullPath" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="olePropList" UniqueID="" Timestamp="" /> - - * - *m: getobjectreference && Returns the object reference to the item represented by a node. - *m: loadcollection && Loads a collection object into the treeview. - *m: loaditems && Loads the items in a collection into the treeview. - *m: loadmembers && Loads the member objects of an object into the tree view. - *m: loadobject && Loads an object into the TreeView. - *m: loadproperties && Loads the properties of an object into the treeview. - *m: newkey && Creates a new key for a node added to the tree. - *m: newnode && Adds an empty node to the treeview. - *m: showproperties && Displays the properties for the passed node. - *p: lshowarrays && Indicates that arrays should be displayed in the treeview. - *p: lshowitems && Indicates the items in a collection should be displayed in the tree. - *p: lshowmemberobjects && Indicates that member objects should be displayed in the treeview. - *p: lshowobjectreferences && Indicates that properties that hold object references should be added to the treeview. - *p: lshowproperties && Indicates that all properties should be displayed in the list view. - *p: ocollection && Contains an object reference to the top level collection in the treeview. - *p: ofirstobject && Stores an object reference to the top most object in the treeview. - *p: oflatcollection && Contains references to all of the items in all collections, without regard for hierarchy. - *a: apems[1,0] - * - - Caption = "Collection Explorer" - DoCreate = .T. - Height = 407 - Left = 1 - lshowarrays = .T. && Indicates that arrays should be displayed in the treeview. - lshowitems = .T. && Indicates the items in a collection should be displayed in the tree. - lshowmemberobjects = .T. && Indicates that member objects should be displayed in the treeview. - lshowobjectreferences = .T. && Indicates that properties that hold object references should be added to the treeview. - lshowproperties = .T. && Indicates that all properties should be displayed in the list view. - Name = "frmCollectionExplorer" - ocollection = NULL && Contains an object reference to the top level collection in the treeview. - ofirstobject = .NULL. && Stores an object reference to the top most object in the treeview. - oflatcollection = .NULL. && Contains references to all of the items in all collections, without regard for hierarchy. - Top = 0 - Width = 468 - WindowType = 1 - - ADD OBJECT 'olePropList' AS olecontrol WITH ; - Anchor = 45, ; - Height = 331, ; - Left = 168, ; - Name = "olePropList", ; - Top = 0, ; - Width = 290 - *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBJJ//1Zc0BAwAAAAACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcgAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAMUAAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9L8NG9i4XREbFqAMDwKDYoIUM0EggAAAD5HQAANiIAAE4IfesBAAYAHAAAAAAAAAAAAAAAIxIAAPkdAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAACgAAAExhYmVsRWRpdAAJAAAASQoAAAABAAAADQAAAE1vAAAFAEhKjgQDAAAACAAAgAUAAIA4uFkLAAAAAAAAAAAAAAAAH97svQEABQCwt1kLAAA3ADgAQgB9ACAAQwA6AHVzZVBvaW50ZXIACQAAAEkKAAAAAAAAAAUAAABWaWV3AAkAAABJCgAAAAMAAAALAAAAQXBwZWFyYW5jZQAJAAAASQoAAAAAAAAAEwAAAEFsbG93Q29sdW1uUmVvcmRlcgAFAAAATAEAAAAOAAAARmxhdFNjcm9sbEJhcgAFAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==" /> - - ADD OBJECT 'oleTree' AS olecontrol WITH ; - Anchor = 135, ; - Height = 328, ; - Left = 4, ; - Name = "oleTree", ; - Top = 0, ; - Width = 157 - *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\syswow64\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiJ//1Zc0BAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAFcBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAAA6EAAA5iEAALE8wWoBAAYAIgAAAHkATQDcAQAASgBvAAEAAAAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTF5AHMAdABlAG0AMwAyAFwAaQBuAGUAdABzAHIAdgBcAGMAbgABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAKiDXAsCAGUAAAAAAAUAAIBA6hgAAQAAAFwAH97svQEABQCI6hgARgBCADYANgA3ADgAQgB9ACAAQwA6AAAAMkAKAAAATGFiZWxFZGl0AAkAAABJCgAAAAEAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAYAAABTdHlsZQAJAAAASQoAAAAGAAAADAAAAE9MRURyYWdNb2RlAAkAAABJCgAAAAAAAAAMAAAAT0xFRHJvcE1vZGUACQAAAEkKAAAAAAAAAAsAAABBcHBlYXJhbmNlAAkAAABJCgAAAAAAAAAOAAAARnVsbFJvd1NlbGVjdAAFAAAATAEAAAAKAAAAU2luZ2xlU2VsAAUAAABMAAAAAH//f/9//38AAAAAAAAYIB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAkAkQEPAFdIQVRTVEhJU0hFTFBJRABwBRYAcAUWAC4AVgGVAQgAwCFYJ/whHgBIIh4AcCxYJwAAAAABAAAAAABzACg0WCcYNFgn+DNYJ7gjHgAYIB4AAAAAAG4AcwAAAGUAYwB0AG8AcgAuAHMAAAAAADYAAADQ2x0AlNwdAFAWXCdAFlwnAAAAAADAWEQAAABAaQBvAAAAcwBcAGMAbwBsAGwAZQAAAHQAaQBvAG4AaQBuAHMAwCFYJ4wiHgDYIh4AcCxYJwEAAAAeAAAAAAAAACg0WCcYNFgn+DNYJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ2x0AAAAAAFgYXCdIGFwnAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAADAIVgnDCMeAEgjHgBwLFgnAQAAAB8AAAAAAAAAQCJYJyAiWCcAAAAAAAAAAAAAAAAAAAAAAAAAAEgiHgAAAAAA" /> - - ADD OBJECT 'txtFullPath' AS textbox WITH ; - Anchor = 14, ; - DisabledForeColor = 0,0,0, ; - Enabled = .F., ; - Height = 72, ; - Left = 3, ; - Name = "txtFullPath", ; - NullDisplay = "", ; - Top = 333, ; - Width = 456 - *< END OBJECT: BaseClass="textbox" /> - - PROCEDURE Destroy - This.oFirstObject = NULL - This.oCollection = NULL - This.oFlatCollection.Remove(-1) - This.oFlatCollection = NULL - - ENDPROC - - PROCEDURE getobjectreference && Returns the object reference to the item represented by a node. - LPARAMETERS ; - toNode - - LOCAL ; - loReturn, ; - loItem, ; - lnIndex, ; - loTemp - - lnIndex = 0 - loReturn = NULL - TRY - loTemp = This.oFlatcollection.Item(toNode.Tag) - CATCH - loTemp = NULL - ENDTRY - - * We have to iterate the collection to find the object in order - * to get a Fox reference vs. a COM reference. - IF NOT ISNULL(loTemp) - FOR EACH loItem IN This.oFlatcollection FOXOBJECT - IF COMPOBJ(loTemp,loItem) - *!* IF loItem == loTemp - *!* lnIndex = lnIndex + 1 - *!* IF loItem.Tag == toNode.Tag - loReturn = loItem - EXIT - ENDIF - NEXT - ENDIF - *!* loReturn = Thisform.oFlatCollection.Item(toNode.Index) - RETURN loReturn - ENDPROC - - PROCEDURE Init - LPARAMETERS ; - toObject - - This.oFlatcollection = CREATEOBJECT([Collection]) - IF PCOUNT() = 1 - This.LoadObject(toObject) - ELSE - MESSAGEBOX([You must pass an object to start exploring from to this form.]) - ENDIF - - ENDPROC - - PROCEDURE loadcollection && Loads a collection object into the treeview. - LPARAMETERS ; - toCollection AS Collection , ; - tcMemberProperty, ; - toParent - - LOCAL ; - loItem AS Object, ; - lcMemberProperty, ; - loNode, ; - lnI, ; - lnItemNo, ; - loObject, ; - loMemberNode, ; - lnJ, ; - lvPropVal, ; - loE - - IF TYPE([toCollection]) <> [O] - RETURN - ENDIF - - - - LOCAL ARRAY laMembers[1] - *!* IF PCOUNT() < 3 - *!* This.oCollection = toCollection - *!* ENDIF - - lcMemberProperty = IIF(TYPE("tcMemberProperty") = [C], tcMemberProperty,[Name]) - lnItemNo = 0 - *!* FOR EACH loItem IN toCollection FOXOBJECT - FOR lnI = 1 TO toCollection.Count - loItem = toCollection.Item(lnI) - - lnItemNo = lnItemNo+1 - This.oFlatcollection.Add(loItem) - *!* loItem2 = This.oFlatcollection.Item(This.oFlatcollection.Count) - loNode = This.oleTree.Nodes.Add() - IF PCOUNT() = 3 - loNode.Parent = toParent - ENDIF - - - IF PEMSTATUS(loItem,lcMemberProperty,5) - loNode.Text = EVALUATE([loItem.]+lcMemberProperty) - ELSE - loNode.Text = [Item]+TRANSFORM(lnItemNo) - ENDIF - *!* FOR lnJ = 1 TO AMEMBERS(laMembers,loItem,2) - FOR lnJ = 1 TO AMEMBERS(laMembers,loItem,1) - - - DO CASE - CASE TYPE([loItem.]+laMembers[lnJ,1]) = [O] - loMemberNode = This.oleTree.Nodes.Add() - loMemberNode.Parent = loNode - loObject = EVALUATE([loItem.]+laMembers[lnJ,1]) - loMemberNode.Text = laMembers[lnJ,1] - *!* IF PEMSTATUS(loObject,lcMemberProperty,5) - *!* loMemberNode.Text = EVALUATE([loObject.]+lcMemberProperty) - *!* ELSE - *!* loMemberNode.Text = [Item]+TRANSFORM(lnItemNo) - *!* ENDIF - This.oFlatcollection.Add(loObject) - IF PEMSTATUS(loObject,[Item],5) - This.LoadCollection(loObject, lcMemberProperty, loMemberNode) - ENDIF - loMemberNode.Expanded = .F. - IF PEMSTATUS(loItem,[Item],5) - This.LoadCollection(loItem, lcMemberProperty, loNode) - ENDIF - CASE TYPE([loItem.]+laMembers[lnJ,1],1) = [A] - loMemberNode = This.oleTree.Nodes.Add() - loMemberNode.Parent = loNode - loMemberNode.Text = laMembers[lnJ,1] - This.oFlatcollection.Add(EVALUATE([loItem.]+laMembers[lnJ,1])) - - ENDCASE - NEXT - - - loNode.Expanded = .F. - - NEXT - IF ISNULL(This.oleTree.SelectedItem) AND This.oleTree.Nodes.Count>0 - This.oleTree.SelectedItem = This.oleTree.Nodes.Item(1) - This.oleTree.NodeClick(This.oleTree.Nodes.Item(1)) - ENDIF - - ENDPROC - - PROCEDURE loaditems && Loads the items in a collection into the treeview. - LPARAMETERS ; - toObject, ; - toParentNode - - LOCAL ; - loNode, ; - lnI, ; - lvItem - - IF This.lShowItems AND TYPE([toObject.Count]) = [N] - TRY - FOR lnI = 1 TO toObject.Count - lvItem = toObject.Item(lnI) - IF TYPE([lvItem]) = [O] - This.LoadObject(lvItem, toParentNode) - ELSE - loNode = This.NewNode() - loNode.Parent = toParentNode - loNode.Text = TRANSFORM(lvItem) - ENDIF - NEXT - CATCH TO foo - ENDTRY - ENDIF - - - ENDPROC - - PROCEDURE loadmembers && Loads the member objects of an object into the tree view. - LPARAMETERS ; - toObject, ; - toParentNode - - LOCAL ; - loObject, ; - lnI - - LOCAL ARRAY laMembers[1] - IF This.lShowMemberobjects AND TYPE([toObject])= [O] - FOR lnI = 1 TO AMEMBERS(laMembers,toObject,2) - loObject = EVALUATE([toObject.] + laMembers[lnI]) - This.LoadObject(loObject, toParentNode, laMembers[lnI]) - NEXT - ENDIF - - ENDPROC - - PROCEDURE loadobject && Loads an object into the TreeView. - LPARAMETERS ; - toObject, ; - toParentNode, ; - tcName - - LOCAL ; - lcName, ; - loNode, ; - loDummyNode, ; - lcKey - - WITH This - IF ISNULL(.oFirstObject) - .oFirstObject = toObject - .oleTree.Nodes.Clear() - ENDIF - - lcName = SYS(1272,toObject) - loNode = .oleTree.Nodes.Add() - lcKey = This.Newkey(.t.) - loNode.Tag = lcKey - - IF TYPE([toParentNode.Text]) = T_CHARACTER - loNode.Parent = toParentNode - ENDIF - - DO CASE - CASE NOT EMPTY(tcName) AND TYPE([tcName]) = T_CHARACTER - loNode.Text = tcName - CASE NOT EMPTY(lcName) AND lcName <> [unknown type] - loNode.Text = lcName - CASE PEMSTATUS(toObject,[Name],5) - loNode.Text = toObject.Name - CASE PEMSTATUS(toObject,[Class],5) - loNode.Text = toObject.Class - OTHERWISE - loNode.Text = [Object] - ENDCASE - - .oFlatCollection.Add(toObject,lcKey) - - *!* .LoadItems(toObject, loNode) - *!* .LoadMembers(toObject, loNode) - *!* .LoadProperties(toObject, loNode) - loDummyNode = This.oleTree.Nodes.Add() - loDummyNode.Text = [(Loading...)] - loDummyNode.Parent=loNode - - loNode.Expanded = .F. - ENDWITH - RETURN - - ENDPROC - - PROCEDURE loadproperties && Loads the properties of an object into the treeview. - LPARAMETERS ; - toObject, ; - toParentNode - - LOCAL ; - lvProperty, ; - lnI, ; - loObject, ; - lnJ, ; - loCollectionNode - - IF TYPE([toObject]) <> [O] - RETURN - ENDIF - - LOCAL ARRAY laMembers[1] - FOR lnI = 1 TO AMEMBERS(laMembers,toObject) - TRY - lvProperty = EVALUATE([toObject.] + laMembers[lnI]) - CATCH - lvProperty = NULL - ENDTRY - DO CASE - CASE TYPE([lvProperty]) = [O] AND NOT ISNULL(lvProperty) - This.LoadObject(lvProperty, toParentNode, laMembers[lnI]) - CASE TYPE([toObject.] + laMembers[lnI],1) = [A] - *!* WAIT WINDOW laMembers[lnI] - CASE TYPE([toObject.] + laMembers[lnI],1) = [C] - *!* This.LoadCollection(EVALUATE([toObject.] + laMembers[lnI]), toParentNode, laMembers[lnI]) - - loCollectionNode = Null - TRY - FOR lnJ = 1 TO EVALUATE([toObject.] + laMembers[lnI] + [.Count]) - *!* loObject = EVALUATE([toObject.] + laMembers[lnI] + [.Item(] + TRANSFORM(lnJ) + [)]) - loObject = EVALUATE([toObject.] + laMembers[lnI] + [(] + TRANSFORM(lnJ) + [)]) - IF ISNULL(loCollectionNode) - loCollectionNode = This.oleTree.Nodes.Add() - loCollectionNode.Parent = toParentNode - loCollectionNode.Text = laMembers[lnI] - ENDIF - This.LoadObject(loObject, loCollectionNode) - NEXT - CATCH TO Foo - *!* WAIT WINDOW MESSAGE() + CHR(13) + laMembers[lnI] - ENDTRY - loCollectionNode = NULL - ENDCASE - NEXT - - - ENDPROC - - PROCEDURE newkey && Creates a new key for a node added to the tree. - * Code from http://fox.wikis.com/wc.dll?Wiki~GUID~VFP - *== F9GUID - *== Create a new GUID character string, - *== optionally retaining the declared Windows functions - LPARAMETERS tlNoClear - LOCAL lcBuffer, ; - lcReturnValue, ; - llNoClear, ; - lnFuncVal - - *-- Define local variables - lcBuffer = REPLICATE( CHR( 0 ), 256 ) - lcReturnValue = [] - llNoClear = IIF( PCOUNT() > 0 AND VARTYPE( tlNoClear ) = "L", ; - tlNoClear, ; - .f. ; - ) - lnFuncVal = 0 - - *-- Declare DLL functions - DECLARE INTEGER CoCreateGuid ; - IN Ole32.DLL ; - STRING @pGuid - DECLARE INTEGER StringFromGUID2 ; - IN Ole32.DLL ; - STRING rguid, STRING @lpsz, INTEGER cchMax - - *-- Initialize a buffer to hold the GUID value - pGuid = REPLICATE( CHR( 0 ), 17 ) - - *-- Call the CoCreateGuid function - lnFuncVal = CoCreateGuid( @pGuid ) - - *-- If the DLL function returned zero, - *-- the function was successful, - *-- so build a string of the GUID data - IF lnFuncVal = 0 - = StringFromGUID2( pGuid, @lcBuffer, 128 ) - - *-- Truncate the GUID string to the desired length - lcBuffer = SUBSTR( lcBuffer, ; - 1, ; - AT( CHR( 0 ) + CHR( 0 ), lcBuffer ) ; - ) - - *-- Convert the string - lcReturnValue = STRCONV( lcBuffer, 6 ) - - ENDIF && lnFuncVal = 0 - - *-- Unless the calling module chose not to, - *-- clear the instantiated DLLs from memory - IF !llNoClear - CLEAR DLLS "StringFromGUID2" - CLEAR DLLS "CoCreateGuid" - - ENDIF && !tlNoClear - - *-- Clean up and return - RETURN ( lcReturnValue ) - - *== End module F9GUID - - ENDPROC - - PROCEDURE newnode && Adds an empty node to the treeview. - LOCAL ; - loNode - - loNode = This.oleTree.Nodes.Add() - RETURN loNode - - ENDPROC - - PROCEDURE showproperties && Displays the properties for the passed node. - LPARAMETERS ; - toNode - - LOCAL ; - loItem, ; - lcPropVal, ; - lnI, ; - loRow - - LOCAL ARRAY laPems[1] - This.olePropList.ListItems.Clear() - loItem = Thisform.GetObjectReference(toNode) - IF NOT ISNULL(loItem) - FOR lnI = 1 TO AMEMBERS(laPems,loItem) - loRow = This.olePropList.ListItems.Add() - loRow.Text = laPems[lnI] - TRY - lcPropVal = TRANSFORM(EVALUATE([loItem.]+laPems[lnI])) - CATCH - * This occurs when a property that would normally reference an object, - * such as parent, does not return an object reference. - lcPropVal = [(none)] - ENDTRY - loRow.SubItems(1)=lcPropVal - NEXT - ENDIF - Thisform.txtFullPath.Value = toNode.fullpath - - ENDPROC - - PROCEDURE olePropList.Init - loColumn = This.ColumnHeaders.Add() - loColumn.Width = This.Width/2 - loColumn.Text = [Property] - - loColumn = This.ColumnHeaders.Add() - loColumn.Width = This.Width/2 - loColumn.Text = [Value] - - ENDPROC - - PROCEDURE oleTree.Expand - *** ActiveX Control Event *** - LPARAMETERS toNode - LOCAL ; - loObject, ; - loNode, ; - lnI - - - loObject = Thisform.GetObjectReference(toNode) - FOR lnI = 1 TO toNode.Children - IF NOT EMPTY(toNode.Child.Tag) - Thisform.oFlatcollection.Remove(toNode.Child.Tag) - ENDIF - This.Nodes.Remove(toNode.Child.Index) - NEXT - loObject = Thisform.GetObjectReference(toNode) - - WITH Thisform - .LoadItems(loObject, toNode) - .LoadMembers(loObject, toNode) - .LoadProperties(loObject, toNode) - ENDWITH - ENDPROC - - PROCEDURE oleTree.NodeClick - *** ActiveX Control Event *** - LPARAMETERS node - Thisform.ShowProperties(Node) - - ENDPROC - -ENDDEFINE diff --git a/Source/Forms/gf_collection_explorer.scx b/Source/Forms/gf_collection_explorer.scx index 5139222..cca75ea 100644 Binary files a/Source/Forms/gf_collection_explorer.scx and b/Source/Forms/gf_collection_explorer.scx differ diff --git a/Source/Forms/gofish_about.SCT b/Source/Forms/gofish_about.SCT index e859892..3135eff 100644 Binary files a/Source/Forms/gofish_about.SCT and b/Source/Forms/gofish_about.SCT differ diff --git a/Source/Forms/gofish_about.dataenvironment.sc2 b/Source/Forms/gofish_about.dataenvironment.sc2 new file mode 100644 index 0000000..d8e4196 --- /dev/null +++ b/Source/Forms/gofish_about.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_about.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_about.gf_help.sc2 b/Source/Forms/gofish_about.gf_help.sc2 new file mode 100644 index 0000000..8c0e1ca --- /dev/null +++ b/Source/Forms/gofish_about.gf_help.sc2 @@ -0,0 +1,280 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_about.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_help AS gf_baseform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="lblGoFishOnVFPx" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblEmail" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblWeb" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Image1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblCredits" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblCredits1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblCredits2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Gf_versionlabel1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Image2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + + BorderStyle = 0 + Caption = "GoFish - Help" + Closable = .T. + cuisettingsfile = GF_Help_Form_Settings.xml + DoCreate = .T. + Height = 270 + Left = -1 + MaxButton = .F. + MinButton = .F. + MinHeight = 270 + MinWidth = 450 + Name = "GF_Help" + Top = 0 + Visible = .T. + Width = 450 + WindowType = 1 + _memberdata = + + + + + ADD OBJECT 'Gf_versionlabel1' AS gf_versionlabel WITH ; + Height = 13, ; + Left = 216, ; + Name = "Gf_versionlabel1", ; + TabIndex = 6, ; + Top = 10, ; + Width = 225 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="label" /> + + ADD OBJECT 'Image1' AS image WITH ; + Height = 36, ; + Left = 17, ; + Name = "Image1", ; + Picture = ..\images\transpvfpxlogosmall.gif, ; + Stretch = 1, ; + Top = 37, ; + Width = 134 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'Image2' AS image WITH ; + Height = 77, ; + Left = 347, ; + Name = "Image2", ; + Picture = ..\images\gofish_logo_transparent.gif, ; + Top = 26, ; + Width = 95 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'Label1' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "GoFish issues on github", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 15, ; + Left = 21, ; + MousePointer = 15, ; + Name = "Label1", ; + TabIndex = 3, ; + Top = 91, ; + Width = 114 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label3' AS label WITH ; + BackStyle = 0, ; + Caption = "See Init() method for string", ; + Height = 55, ; + Left = 21, ; + Name = "Label3", ; + TabIndex = 1, ; + Top = 216, ; + Width = 385, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "GoFish Discussions on Google Groups", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 15, ; + Left = 21, ; + MousePointer = 15, ; + Name = "Label4", ; + TabIndex = 4, ; + Top = 134, ; + Width = 179 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + BackStyle = 0, ; + Caption = "Community / Discussions (deprecated, use github) :", ; + FontBold = .T., ; + Height = 19, ; + Left = 15, ; + Name = "Label5", ; + TabIndex = 12, ; + Top = 116, ; + Width = 304, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + Alignment = 1, ; + BackStyle = 0, ; + Caption = ('Build date will go here. See Init() method.'), ; + FontSize = 8, ; + Height = 19, ; + Left = 212, ; + Name = "Label6", ; + TabIndex = 11, ; + Top = 250, ; + Width = 229, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblCredits' AS label WITH ; + BackStyle = 0, ; + Caption = "Credits:", ; + FontBold = .T., ; + Height = 19, ; + Left = 15, ; + Name = "lblCredits", ; + TabIndex = 8, ; + Top = 154, ; + Width = 121, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblCredits1' AS label WITH ; + BackStyle = 0, ; + Caption = ('Matt Slay (GoFish 4 author), Peter Diotte (GoFish original author)'), ; + FontBold = .T., ; + Height = 19, ; + Left = 21, ; + Name = "lblCredits1", ; + TabIndex = 9, ; + Top = 173, ; + Width = 411, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblCredits2' AS label WITH ; + BackStyle = 0, ; + Caption = "See Init() method for string", ; + Height = 55, ; + Left = 21, ; + Name = "lblCredits2", ; + TabIndex = 10, ; + Top = 194, ; + Width = 385, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblEmail' AS label WITH ; + BackStyle = 0, ; + Caption = "Issues and Requests:", ; + FontBold = .T., ; + Height = 19, ; + Left = 15, ; + Name = "lblEmail", ; + TabIndex = 5, ; + Top = 76, ; + Width = 304, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblGoFishOnVFPx' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Visit the GoFish home page on VFPx", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 15, ; + Left = 34, ; + MousePointer = 15, ; + Name = "lblGoFishOnVFPx", ; + TabIndex = 2, ; + Top = 17, ; + Width = 173 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblWeb' AS label WITH ; + BackStyle = 0, ; + Caption = "Web:", ; + FontBold = .T., ; + Height = 19, ; + Left = 21, ; + Name = "lblWeb", ; + TabIndex = 7, ; + Top = 2, ; + Width = 121, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Init + Lparameters toForm + + DoDefault() + ENDPROC + + PROCEDURE Resize + Return .f. + ENDPROC + + PROCEDURE Image1.Click + this.Parent.lblGoFishOnVFPx.Click() + ENDPROC + + PROCEDURE Label1.Click + GF_Shell('https://github.com/VFPX/GoFish/issues') + + ENDPROC + + PROCEDURE Label3.Init + This.caption = 'Mike Potjer and Lutz Scheffler. Thanks to all the testers, too!!' + ENDPROC + + PROCEDURE Label4.Click + GF_Shell('http://groups.google.com/group/foxprogofish') + + ENDPROC + + PROCEDURE Label6.Init + This.caption = _screen._gofish.cbuilddate + ENDPROC + + PROCEDURE lblCredits1.Init + This.caption = 'Matt Slay (GoFish 4 author), Peter Diotte (GoFish original author)' + ENDPROC + + PROCEDURE lblCredits2.Init + This.caption = 'Michael Helland, Jim Nelson, Rick Schummer, Doug Hennig,' + ENDPROC + + PROCEDURE lblGoFishOnVFPx.Click + GF_Shell('https://github.com/VFPX/GoFish') + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_about.sc2 b/Source/Forms/gofish_about.sc2 index 42c3084..94f1201 100644 --- a/Source/Forms/gofish_about.sc2 +++ b/Source/Forms/gofish_about.sc2 @@ -4,241 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_about.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_help AS gf_baseform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="lblGoFishOnVFPx" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="lblEmail" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="lblWeb" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Image1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="lblCredits" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="lblCredits1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="lblCredits2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Gf_versionlabel1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Image2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> - - BorderStyle = 2 - Caption = "GoFish - Help" - Closable = .T. - cuisettingsfile = GF_Help_Form_Settings.xml - DoCreate = .T. - Height = 238 - Left = 0 - MaxButton = .F. - MinButton = .F. - Name = "GF_Help" - Top = 1 - Visible = .T. - Width = 417 - WindowType = 1 - _memberdata = - - - - - ADD OBJECT 'Gf_versionlabel1' AS gf_versionlabel WITH ; - Height = 13, ; - Left = 184, ; - Name = "Gf_versionlabel1", ; - Top = 7, ; - Width = 225 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="label" /> - - ADD OBJECT 'Image1' AS image WITH ; - Height = 36, ; - Left = 12, ; - Name = "Image1", ; - Picture = ..\images\transpvfpxlogosmall.gif, ; - Stretch = 1, ; - Top = 91, ; - Width = 134 - *< END OBJECT: BaseClass="image" /> - - ADD OBJECT 'Image2' AS image WITH ; - Height = 77, ; - Left = 315, ; - Name = "Image2", ; - Picture = ..\images\gofish_logo_transparent.gif, ; - Top = 26, ; - Width = 95 - *< END OBJECT: BaseClass="image" /> - - ADD OBJECT 'Label1' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "GoFish Discussions on Google Groups", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 15, ; - Left = 31, ; - MousePointer = 15, ; - Name = "Label1", ; - TabIndex = 11, ; - Top = 28, ; - Width = 179 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label3' AS label WITH ; - BackStyle = 0, ; - Caption = "See Init() method for string", ; - Height = 55, ; - Left = 21, ; - Name = "Label3", ; - Top = 198, ; - Width = 385, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label6' AS label WITH ; - Alignment = 1, ; - BackStyle = 0, ; - Caption = ('Build date will go here. See Init() method.'), ; - FontSize = 8, ; - Height = 19, ; - Left = 180, ; - Name = "Label6", ; - Top = 220, ; - Width = 229, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblCredits' AS label WITH ; - BackStyle = 0, ; - Caption = "Credits:", ; - FontBold = .T., ; - Height = 19, ; - Left = 15, ; - Name = "lblCredits", ; - Top = 136, ; - Width = 121, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblCredits1' AS label WITH ; - BackStyle = 0, ; - Caption = ('Matt Slay (GoFish 4 author), Peter Diotte (GoFish original author)'), ; - FontBold = .T., ; - Height = 19, ; - Left = 21, ; - Name = "lblCredits1", ; - Top = 155, ; - Width = 411, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblCredits2' AS label WITH ; - BackStyle = 0, ; - Caption = "See Init() method for string", ; - Height = 55, ; - Left = 21, ; - Name = "lblCredits2", ; - Top = 176, ; - Width = 385, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblEmail' AS label WITH ; - BackStyle = 0, ; - Caption = "Community / Discussions:", ; - FontBold = .T., ; - Height = 19, ; - Left = 20, ; - Name = "lblEmail", ; - Top = 8, ; - Width = 304, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblGoFishOnVFPx' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Visit the GoFish home page on VFPx", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 15, ; - Left = 29, ; - MousePointer = 15, ; - Name = "lblGoFishOnVFPx", ; - TabIndex = 11, ; - Top = 73, ; - Width = 173 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblWeb' AS label WITH ; - BackStyle = 0, ; - Caption = "Web:", ; - FontBold = .T., ; - Height = 19, ; - Left = 18, ; - Name = "lblWeb", ; - Top = 56, ; - Width = 121, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - PROCEDURE Init - Lparameters toForm - - DoDefault() - ENDPROC - - PROCEDURE Resize - Return .f. - ENDPROC - - PROCEDURE Image1.Click - this.Parent.lblGoFishOnVFPx.Click() - ENDPROC - - PROCEDURE Label1.Click - GF_Shell('http://groups.google.com/group/foxprogofish') - - ENDPROC - - PROCEDURE Label3.Init - This.caption = 'and Mike Potjer. Thanks to all the testers, too!!' - ENDPROC - - PROCEDURE Label6.Init - This.caption = _screen._gofish.cbuilddate - ENDPROC - - PROCEDURE lblCredits1.Init - This.caption = 'Matt Slay (GoFish 4 author), Peter Diotte (GoFish original author)' - ENDPROC - - PROCEDURE lblCredits2.Init - This.caption = 'Michael Helland, Jim Nelson, Rick Schummer, Doug Hennig,' - ENDPROC - - PROCEDURE lblGoFishOnVFPx.Click - GF_Shell('https://github.com/VFPX/GoFish') - - ENDPROC +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_help" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_about.scx b/Source/Forms/gofish_about.scx index 7bac766..89feea9 100644 Binary files a/Source/Forms/gofish_about.scx and b/Source/Forms/gofish_about.scx differ diff --git a/Source/Forms/gofish_advaccedreplacehelp.SCT b/Source/Forms/gofish_advaccedreplacehelp.SCT index 648441b..a88c3e1 100644 Binary files a/Source/Forms/gofish_advaccedreplacehelp.SCT and b/Source/Forms/gofish_advaccedreplacehelp.SCT differ diff --git a/Source/Forms/gofish_advaccedreplacehelp.dataenvironment.sc2 b/Source/Forms/gofish_advaccedreplacehelp.dataenvironment.sc2 new file mode 100644 index 0000000..3081441 --- /dev/null +++ b/Source/Forms/gofish_advaccedreplacehelp.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_advaccedreplacehelp.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_advaccedreplacehelp.gf_baseform1.sc2 b/Source/Forms/gofish_advaccedreplacehelp.gf_baseform1.sc2 new file mode 100644 index 0000000..15cd524 --- /dev/null +++ b/Source/Forms/gofish_advaccedreplacehelp.gf_baseform1.sc2 @@ -0,0 +1,137 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_advaccedreplacehelp.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_baseform1 AS gf_baseform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Edit1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblGoFishOnVFPx" UniqueID="" Timestamp="" /> + + BorderStyle = 2 + Caption = "GoFish - Advanced Replace" + cuisettingsfile = GF_Advanced_Repl_Form_Settings.xml + DoCreate = .T. + Height = 300 + Left = 0 + MaxButton = .F. + MinButton = .F. + Name = "GF_BaseForm1" + SizeBox = .F. + Top = 0 + Width = 600 + WindowType = 1 + ZoomBox = .F. + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Caption = "Ok", ; + Height = 26, ; + Left = 250, ; + Name = "Command1", ; + Top = 257, ; + Width = 95, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Edit1' AS editbox WITH ; + BorderStyle = 0, ; + DisabledForeColor = 0,0,0, ; + Enabled = .F., ; + Height = 144, ; + Left = 15, ; + Margin = 5, ; + Name = "Edit1", ; + ScrollBars = 0, ; + Top = 40, ; + Width = 570, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="editbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Caption = "Advanced Replace", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 30, ; + Left = 18, ; + Name = "Label1", ; + Top = 16, ; + Width = 225, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Caption = "For more help:", ; + FontBold = .T., ; + FontSize = 10, ; + Height = 30, ; + Left = 21, ; + Name = "Label2", ; + Top = 214, ; + Width = 122, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'lblGoFishOnVFPx' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Visit GoFish Replace Help on VFPx", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 15, ; + Left = 129, ; + MousePointer = 15, ; + Name = "lblGoFishOnVFPx", ; + TabIndex = 11, ; + Top = 216, ; + Width = 163, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Init + Lparameters toForm + + DoDefault() + + Thisform.Width = 600 + Thisform.Height = 300 + + + ENDPROC + + PROCEDURE Command1.Click + Thisform.Release + ENDPROC + + PROCEDURE Edit1.Init + Text to lcText Pretext 3 noshow + + With Advanced Replace, you select a UDF prg which processes the replacement text. + + For each checked row, the matched line will be passed into the selected UDF where it can be modified using any FoxPro code that you write in the prg. + + The return value from the UDF should be a string containing the new line that you wish to replace the old line. + + *YOU* are in total control of what the replaced line contains. + + EndText + + This.Value = lcText + ENDPROC + + PROCEDURE lblGoFishOnVFPx.Click + messagebox('No help available at this time.', 0, 'GoFish') + *** TODO: Shell('URL for replace help') + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_advaccedreplacehelp.sc2 b/Source/Forms/gofish_advaccedreplacehelp.sc2 index c9622c2..d9b429a 100644 --- a/Source/Forms/gofish_advaccedreplacehelp.sc2 +++ b/Source/Forms/gofish_advaccedreplacehelp.sc2 @@ -4,147 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_advaccedreplacehelp.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_baseform1 AS gf_baseform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Edit1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="lblGoFishOnVFPx" UniqueID="" Timestamp="" /> - - BorderStyle = 2 - Caption = "GoFish - Advanced Replace" - cuisettingsfile = GF_Advanced_Repl_Form_Settings.xml - DoCreate = .T. - Height = 300 - Left = 0 - MaxButton = .F. - MinButton = .F. - Name = "GF_BaseForm1" - SizeBox = .F. - Top = 0 - Width = 600 - WindowType = 1 - ZoomBox = .F. - - ADD OBJECT 'Command1' AS commandbutton WITH ; - Caption = "Ok", ; - Height = 26, ; - Left = 250, ; - Name = "Command1", ; - Top = 257, ; - Width = 95, ; - ZOrderSet = 3 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'Edit1' AS editbox WITH ; - BorderStyle = 0, ; - DisabledForeColor = 0,0,0, ; - Enabled = .F., ; - Height = 144, ; - Left = 15, ; - Margin = 5, ; - Name = "Edit1", ; - ScrollBars = 0, ; - Top = 40, ; - Width = 570, ; - ZOrderSet = 0 - *< END OBJECT: BaseClass="editbox" /> - - ADD OBJECT 'Label1' AS label WITH ; - Caption = "Advanced Replace", ; - FontBold = .T., ; - FontSize = 10, ; - Height = 30, ; - Left = 18, ; - Name = "Label1", ; - Top = 16, ; - Width = 225, ; - ZOrderSet = 2 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label2' AS label WITH ; - Caption = "For more help:", ; - FontBold = .T., ; - FontSize = 10, ; - Height = 30, ; - Left = 21, ; - Name = "Label2", ; - Top = 214, ; - Width = 122, ; - ZOrderSet = 1 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'lblGoFishOnVFPx' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Visit GoFish Replace Help on VFPx", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 15, ; - Left = 129, ; - MousePointer = 15, ; - Name = "lblGoFishOnVFPx", ; - TabIndex = 11, ; - Top = 216, ; - Width = 163, ; - ZOrderSet = 4 - *< END OBJECT: BaseClass="label" /> - - PROCEDURE Init - Lparameters toForm - - DoDefault() - - Thisform.Width = 600 - Thisform.Height = 300 - - - ENDPROC - - PROCEDURE Command1.Click - Thisform.Release - ENDPROC - - PROCEDURE Edit1.Init - Text to lcText Pretext 3 noshow - - With Advanced Replace, you select a UDF prg which processes the replacement text. - - For each checked row, the matched line will be passed into the selected UDF where it can be modified using any FoxPro code that you write in the prg. - - The return value from the UDF should be a string containing the new line that you wish to replace the old line. - - *YOU* are in total control of what the replaced line contains. - - EndText - - This.Value = lcText - ENDPROC - - PROCEDURE lblGoFishOnVFPx.Click - messagebox('No help available at this time.', 0, 'GoFish') - *** TODO: GF_Shell('URL for replace help') - - ENDPROC +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_baseform1" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_advaccedreplacehelp.scx b/Source/Forms/gofish_advaccedreplacehelp.scx index 859833e..b30ccd4 100644 Binary files a/Source/Forms/gofish_advaccedreplacehelp.scx and b/Source/Forms/gofish_advaccedreplacehelp.scx differ diff --git a/Source/Forms/gofish_advanced.SCT b/Source/Forms/gofish_advanced.SCT index dd5fa35..a6c7784 100644 Binary files a/Source/Forms/gofish_advanced.SCT and b/Source/Forms/gofish_advanced.SCT differ diff --git a/Source/Forms/gofish_advanced.dataenvironment.sc2 b/Source/Forms/gofish_advanced.dataenvironment.sc2 new file mode 100644 index 0000000..9e0275c --- /dev/null +++ b/Source/Forms/gofish_advanced.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_advanced.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="2" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_advanced.gf_advanced.sc2 b/Source/Forms/gofish_advanced.gf_advanced.sc2 new file mode 100644 index 0000000..9b47dae --- /dev/null +++ b/Source/Forms/gofish_advanced.gf_advanced.sc2 @@ -0,0 +1,1896 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_advanced.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_advanced AS gf_baseform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="comboSearchExpressionHistory" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkXML" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkTXT" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkASP" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.ChkHTML" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkH" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkMNX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkSCX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkVCX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkDBC" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkLBX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkFRX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkPJX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkPRG" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkSPR" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkMPR" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.Line1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.Line2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkini" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.txtyourchoice" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkJava" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="containerFileTypes.chkJSP" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="chkcomment" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="chkMatchWholeWord" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="chkMatchCase" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="chkTimeStamp" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page1.Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page1.txtPath" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page1.chkLimitToProjectFolder" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page2.CboProject" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page2.Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page2.CmdDir" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page2.chkLimitToProjectFolder" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page3.chkSubdirectories" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page3.txtPath" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page3.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page4.chkSubdirectories" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page4.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page4.CmdDir" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page4.Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page4.editPath" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page5.comboSearchScropeHistory" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page5.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pageframeScope.Page5.imgScopeIcon" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="editFileTemplate" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="CmdGoFish" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdCancel" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtTimeStampFrom" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtTimeStampTo" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="editSearch" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="comboSearchExpressionHistoryDropDownArrow" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdHelp" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Check3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Optiongroup1" UniqueID="" Timestamp="" /> + + * + *m: getcurrentscope + *m: loadoptions + *m: saveoptions + *m: setscope + *m: updatesearchscopevariables + *m: validateinputs + *p: cactiveproject + *p: ccurrentdir + *p: lreturn + *p: z_lincludesubdirectoriesbrowsed + *p: z_lincludesubdirectoriescurrent + * + + BindControls = .F. + cactiveproject = + Caption = "GoFish - Advanced Search" + ccurrentdir = + cuisettingsfile = GF_Advanced_Form_Settings.xml + DataSession = 2 + DoCreate = .T. + HalfHeightCaption = .T. + Height = 430 + Left = 0 + lreturn = .F. + MaxButton = .F. + MinButton = .F. + MinHeight = 350 + MinWidth = 520 + Name = "GF_Advanced" + ShowTips = .T. + Top = 0 + Visible = .T. + Width = 520 + WindowType = 1 + z_lincludesubdirectoriesbrowsed = .F. + z_lincludesubdirectoriescurrent = .F. + _memberdata = + + + + + + + + + + + + + + + + + + + ADD OBJECT 'Check1' AS checkbox WITH ; + Alignment = 0, ; + Anchor = 8, ; + Caption = "Skip Files", ; + ControlSource = "Thisform.oSearchOptions.lSKipFiles", ; + Height = 25, ; + Left = 421, ; + Name = "Check1", ; + Top = 151, ; + Width = 85, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'Check2' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Ignore field RESERVED3 in SCXs / VCXs", ; + ControlSource = "thisform.oSearchOptions.lIgnorePropertiesField", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 212, ; + Name = "Check2", ; + TabIndex = 6, ; + ToolTipText = "Ignoring this field eliminates match types <>, <>, <>, and <>.", ; + Top = 380, ; + Value = .T., ; + Width = 205, ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'Check3' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Ignore values in MemberData", ; + ControlSource = "thisform.oSearchOptions.lIgnoreMemberData", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 212, ; + Name = "Check3", ; + TabIndex = 6, ; + Top = 401, ; + Value = .T., ; + Width = 159, ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'chkcomment' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + Caption = "Search in comments", ; + ControlSource = "Thisform.oSearchOptions.lSearchInComments", ; + FontSize = 8, ; + Height = 16, ; + Left = 29, ; + Name = "chkcomment", ; + TabIndex = 9, ; + Top = 378, ; + Value = .F., ; + Width = 116, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'chkMatchCase' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Match \ + + ADD OBJECT 'chkMatchWholeWord' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Match \ + + ADD OBJECT 'chkTimeStamp' AS checkbox WITH ; + Alignment = 0, ; + Anchor = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "TimeStamp Filter", ; + ControlSource = "Thisform.oSearchOptions.lTimeStamp", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 212, ; + Name = "chkTimeStamp", ; + TabIndex = 10, ; + Top = 336, ; + Value = .T., ; + Width = 97, ; + ZOrderSet = 12 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'cmdCancel' AS commandbutton WITH ; + Anchor = 8, ; + Caption = "Save", ; + FontBold = .T., ; + Height = 34, ; + Left = 441, ; + Name = "cmdCancel", ; + TabIndex = 14, ; + ToolTipText = "Saves changes but does not search", ; + Top = 6, ; + Width = 66, ; + ZOrderSet = 21 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'CmdGoFish' AS commandbutton WITH ; + Anchor = 8, ; + Caption = "Go Fish", ; + Default = .T., ; + FontBold = .T., ; + FontName = "Tahoma", ; + Height = 34, ; + Left = 346, ; + Name = "CmdGoFish", ; + Picture = ..\images\fish13.ico, ; + PicturePosition = 1, ; + TabIndex = 13, ; + Top = 6, ; + Width = 84, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'cmdHelp' AS commandbutton WITH ; + Anchor = 8, ; + Caption = "", ; + FontName = "Tahoma", ; + Height = 22, ; + Left = 343, ; + Name = "cmdHelp", ; + Picture = ('images\refhelp.bmp'), ; + PicturePosition = 1, ; + SpecialEffect = 2, ; + TabIndex = 16, ; + Top = 166, ; + Width = 24, ; + ZOrderSet = 29 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'comboSearchExpressionHistory' AS gf_combosearchexpressionhistory WITH ; + Height = 26, ; + Left = 47, ; + Name = "comboSearchExpressionHistory", ; + Top = 8, ; + Width = 284, ; + ZOrderSet = 3 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="combobox" /> + + ADD OBJECT 'comboSearchExpressionHistoryDropDownArrow' AS combobox WITH ; + Anchor = 8, ; + Height = 26, ; + Left = 310, ; + Name = "comboSearchExpressionHistoryDropDownArrow", ; + TabStop = .F., ; + Top = 12, ; + Width = 21, ; + ZOrderSet = 27 + *< END OBJECT: BaseClass="combobox" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Anchor = 8, ; + Caption = "Edit list", ; + Height = 20, ; + Left = 418, ; + Name = "Command1", ; + Top = 176, ; + Width = 79, ; + ZOrderSet = 28 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'containerFileTypes' AS container WITH ; + Anchor = 10, ; + BorderWidth = 0, ; + Height = 84, ; + Left = 11, ; + Name = "containerFileTypes", ; + TabIndex = 5, ; + Top = 206, ; + Width = 493, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'containerFileTypes.Check1' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + ControlSource = "", ; + Height = 16, ; + Left = 152, ; + Name = "Check1", ; + TabIndex = 3, ; + Top = 7, ; + Value = .T., ; + Width = 14, ; + ZOrderSet = 27 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.Check2' AS checkbox WITH ; + Alignment = 0, ; + Caption = "", ; + ControlSource = "", ; + Height = 16, ; + Left = 388, ; + Name = "Check2", ; + TabIndex = 4, ; + Top = 7, ; + Value = .T., ; + Width = 14, ; + ZOrderSet = 29 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkASP' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "ASP", ; + ControlSource = "Thisform.oSearchOptions.lIncludeASP", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 332, ; + Name = "chkASP", ; + TabIndex = 20, ; + Top = 36, ; + Value = .T., ; + Width = 43, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkDBC' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "DBC", ; + ControlSource = "Thisform.oSearchOptions.lIncludeDBC", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 16, ; + Left = 80, ; + Name = "chkDBC", ; + TabIndex = 12, ; + Top = 36, ; + Value = .T., ; + Width = 40, ; + ZOrderSet = 9 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkFRX' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "FRX", ; + ControlSource = "Thisform.oSearchOptions.lIncludeFRX", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 16, ; + Left = 122, ; + Name = "chkFRX", ; + TabIndex = 13, ; + Top = 36, ; + Value = .T., ; + Width = 37, ; + ZOrderSet = 11 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkH' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = ".h", ; + ControlSource = "Thisform.oSearchOptions.lIncludeH", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 16, ; + Left = 243, ; + Name = "chkH", ; + TabIndex = 16, ; + Top = 36, ; + Value = .T., ; + Width = 37, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.ChkHTML' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "HTM?", ; + ControlSource = "Thisform.oSearchOptions.lIncludeHTML", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 332, ; + Name = "ChkHTML", ; + TabIndex = 17, ; + Top = 22, ; + Value = .T., ; + Width = 43, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkini' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "INI", ; + ControlSource = "Thisform.oSearchOptions.lIncludeINI", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 16, ; + Left = 243, ; + Name = "chkini", ; + TabIndex = 10, ; + Top = 22, ; + Value = .T., ; + Width = 44, ; + ZOrderSet = 19 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkJava' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "JAVA", ; + ControlSource = "Thisform.oSearchOptions.lIncludeJAVA", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 378, ; + Name = "chkJava", ; + TabIndex = 18, ; + Top = 22, ; + Value = .T., ; + Width = 43, ; + ZOrderSet = 24 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkJSP' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "JSP", ; + ControlSource = "Thisform.oSearchOptions.lIncludeJSP", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 378, ; + Name = "chkJSP", ; + TabIndex = 21, ; + Top = 36, ; + Value = .T., ; + Width = 43, ; + ZOrderSet = 23 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkLBX' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "LBX", ; + ControlSource = "Thisform.oSearchOptions.lIncludeLBX", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 16, ; + Left = 122, ; + Name = "chkLBX", ; + TabIndex = 7, ; + Top = 22, ; + Value = .T., ; + Width = 37, ; + ZOrderSet = 10 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkMNX' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "MNX", ; + ControlSource = "Thisform.oSearchOptions.lIncludeMNX", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 80, ; + Name = "chkMNX", ; + TabIndex = 6, ; + Top = 22, ; + Value = .T., ; + Width = 40, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkMPR' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "MPR", ; + ControlSource = "Thisform.oSearchOptions.lIncludeMPR", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 204, ; + Name = "chkMPR", ; + TabIndex = 15, ; + Top = 36, ; + Value = .T., ; + Width = 40, ; + ZOrderSet = 15 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkPJX' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "PJX", ; + ControlSource = "Thisform.oSearchOptions.lIncludePJX", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 162, ; + Name = "chkPJX", ; + TabIndex = 8, ; + Top = 22, ; + Value = .T., ; + Width = 39, ; + ZOrderSet = 12 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkPRG' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "PRG", ; + ControlSource = "Thisform.oSearchOptions.lIncludePRG", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 162, ; + Name = "chkPRG", ; + TabIndex = 14, ; + Top = 36, ; + Value = .T., ; + Width = 39, ; + ZOrderSet = 13 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkSCX' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "SCX", ; + ControlSource = "Thisform.oSearchOptions.lIncludeSCX", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 41, ; + Name = "chkSCX", ; + TabIndex = 5, ; + Top = 22, ; + Value = .T., ; + Width = 37, ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkSPR' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "SPR", ; + ControlSource = "Thisform.oSearchOptions.lIncludeSPR", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 204, ; + Name = "chkSPR", ; + TabIndex = 9, ; + Top = 22, ; + Value = .T., ; + Width = 40, ; + ZOrderSet = 14 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkTXT' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "TXT", ; + ControlSource = "Thisform.oSearchOptions.lIncludeTXT", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 426, ; + Name = "chkTXT", ; + TabIndex = 22, ; + Top = 36, ; + Value = .T., ; + Width = 43, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkVCX' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "VCX", ; + ControlSource = "Thisform.oSearchOptions.lIncludeVCX", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 41, ; + Name = "chkVCX", ; + TabIndex = 11, ; + Top = 36, ; + Value = .T., ; + Width = 37, ; + ZOrderSet = 8 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.chkXML' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "XML", ; + ControlSource = "Thisform.oSearchOptions.lIncludeXML", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 17, ; + Left = 426, ; + Name = "chkXML", ; + TabIndex = 19, ; + Top = 22, ; + Value = .T., ; + Width = 43, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'containerFileTypes.Label6' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Other:", ; + FontBold = .F., ; + FontItalic = .F., ; + FontSize = 8, ; + Height = 16, ; + Left = 41, ; + Name = "Label6", ; + TabIndex = 39, ; + Top = 63, ; + Visible = .T., ; + Width = 30, ; + WordWrap = .T., ; + ZOrderSet = 21 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'containerFileTypes.Line1' AS line WITH ; + Height = 0, ; + Left = 43, ; + Name = "Line1", ; + Top = 14, ; + Width = 237, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="line" /> + + ADD OBJECT 'containerFileTypes.Line2' AS line WITH ; + Height = 0, ; + Left = 334, ; + Name = "Line2", ; + Top = 14, ; + Width = 123, ; + ZOrderSet = 28 + *< END OBJECT: BaseClass="line" /> + + ADD OBJECT 'containerFileTypes.txtyourchoice' AS textbox WITH ; + Anchor = 0, ; + ControlSource = "Thisform.oSearchOptions.cOtherIncludes", ; + FontBold = .T., ; + FontName = "Courier New", ; + FontSize = 9, ; + Height = 24, ; + Left = 74, ; + Name = "txtyourchoice", ; + TabIndex = 23, ; + ToolTipText = "Enter custom file extensions, separated by a space.", ; + Top = 59, ; + Width = 386, ; + ZOrderSet = 20 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'editFileTemplate' AS editbox WITH ; + Anchor = 10, ; + ControlSource = "Thisform.oSearchOptions.cFileTemplate", ; + Height = 23, ; + Left = 47, ; + Name = "editFileTemplate", ; + TabIndex = 4, ; + ToolTipText = "(Ex: cust*.* or *edit.prg or jobs.*)", ; + Top = 166, ; + Width = 290, ; + ZOrderSet = 17 + *< END OBJECT: BaseClass="editbox" /> + + ADD OBJECT 'editSearch' AS editbox WITH ; + Anchor = 10, ; + ControlSource = "thisform.oSearchOptions.cSearchExpression", ; + FontName = "Tahoma", ; + FontSize = 9, ; + Height = 26, ; + Left = 47, ; + Name = "editSearch", ; + SelectOnEntry = .T., ; + TabIndex = 1, ; + Top = 8, ; + Width = 264, ; + ZOrderSet = 24 + *< END OBJECT: BaseClass="editbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 1, ; + Caption = " File template", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 15, ; + Left = 24, ; + Name = "Label1", ; + TabIndex = 18, ; + Top = 147, ; + Width = 66, ; + ZOrderSet = 26 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label11' AS label WITH ; + Anchor = 0, ; + AutoSize = .T., ; + BackColor = 0,128,0, ; + BackStyle = 0, ; + Caption = "From", ; + FontBold = .F., ; + FontItalic = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 15, ; + Left = 232, ; + Name = "Label11", ; + TabIndex = 22, ; + Top = 359, ; + Width = 26, ; + ZOrderSet = 13 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label12' AS label WITH ; + Anchor = 0, ; + AutoSize = .T., ; + BackColor = 0,128,0, ; + BackStyle = 0, ; + Caption = "To", ; + FontBold = .F., ; + FontItalic = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 15, ; + Left = 367, ; + Name = "Label12", ; + TabIndex = 21, ; + Top = 359, ; + Width = 14, ; + ZOrderSet = 14 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label2' AS label WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "\ + + ADD OBJECT 'Label3' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 15, ; + Left = 301, ; + Name = "Label3", ; + TabIndex = 17, ; + Top = 171, ; + Width = 2, ; + ZOrderSet = 25 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label4' AS label WITH ; + Alignment = 2, ; + BackStyle = 1, ; + Caption = "Options", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 21, ; + Name = "Label4", ; + TabIndex = 15, ; + Top = 293, ; + Width = 49, ; + ZOrderSet = 16 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label5' AS label WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "Scope:", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 5, ; + Name = "Label5", ; + TabIndex = 19, ; + Top = 42, ; + Width = 51, ; + ZOrderSet = 18 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label6' AS label WITH ; + Alignment = 2, ; + BackStyle = 1, ; + Caption = "Search mode", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 18, ; + Name = "Label6", ; + TabIndex = 15, ; + Top = 312, ; + Width = 90, ; + ZOrderSet = 1 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Label7' AS label WITH ; + Alignment = 0, ; + BackStyle = 1, ; + Caption = " Filetypes ", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 21, ; + Name = "Label7", ; + TabIndex = 16, ; + Top = 199, ; + Width = 51, ; + ZOrderSet = 19 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Optiongroup1' AS optiongroup WITH ; + ButtonCount = 3, ; + ControlSource = "thisform.oSearchOptions.nSearchMode", ; + Height = 27, ; + Left = 100, ; + Name = "Optiongroup1", ; + Top = 306, ; + Value = 1, ; + Width = 393, ; + ZOrderSet = 30, ; + Option1.Caption = "Plain Search", ; + Option1.FontSize = 8, ; + Option1.Height = 17, ; + Option1.Left = 5, ; + Option1.Name = "Option1", ; + Option1.Top = 5, ; + Option1.Value = 1, ; + Option1.Width = 100, ; + Option2.Caption = " Wildcards (* and ?)", ; + Option2.FontSize = 8, ; + Option2.Height = 17, ; + Option2.Left = 115, ; + Option2.Name = "Option2", ; + Option2.ToolTipText = "Uses the LIKE() function to perform wildcard matches.", ; + Option2.Top = 5, ; + Option2.Width = 118, ; + Option3.Caption = "Regular Expression", ; + Option3.FontSize = 8, ; + Option3.Height = 18, ; + Option3.Left = 267, ; + Option3.Name = "Option3", ; + Option3.Top = 5, ; + Option3.Width = 115 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'pageframeScope' AS pageframe WITH ; + Anchor = 10, ; + ErasePage = .T., ; + Height = 102, ; + HelpContextID = 0, ; + Left = 47, ; + Name = "pageframeScope", ; + PageCount = 5, ; + TabIndex = 3, ; + TabStyle = 1, ; + Top = 44, ; + Width = 462, ; + ZOrderSet = 15, ; + Page1.Caption = "Active Project", ; + Page1.Name = "Page1", ; + Page2.Caption = "Browse Project", ; + Page2.Name = "Page2", ; + Page3.Caption = "Current Dir", ; + Page3.FontSize = 9, ; + Page3.Name = "Page3", ; + Page4.Caption = "Browse Dir", ; + Page4.Name = "Page4", ; + Page5.Caption = "Recent", ; + Page5.Name = "Page5" + *< END OBJECT: BaseClass="pageframe" /> + + ADD OBJECT 'pageframeScope.Page1.chkLimitToProjectFolder' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Limit search to project home directory and sub-folders", ; + ControlSource = "thisform.oSearchOptions.lLimitToProjectFolder", ; + FontSize = 8, ; + Height = 16, ; + Left = 8, ; + Name = "chkLimitToProjectFolder", ; + Top = 46, ; + Width = 279 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pageframeScope.Page1.Label10' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Project", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 9, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 8, ; + Name = "Label10", ; + TabIndex = 27, ; + Top = 3, ; + Width = 41 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pageframeScope.Page1.txtPath' AS textbox WITH ; + Anchor = 10, ; + ControlSource = "Thisform.cActiveProject", ; + DisabledForeColor = 0,0,0, ; + Enabled = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 21, ; + Left = 8, ; + Name = "txtPath", ; + ReadOnly = .F., ; + TabIndex = 3, ; + Top = 21, ; + Value = (""), ; + Width = 416 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'pageframeScope.Page2.CboProject' AS combobox WITH ; + Anchor = 10, ; + ControlSource = "Thisform.oSearchOptions.cProject", ; + DisplayCount = 40, ; + FontName = "Tahoma", ; + Height = 23, ; + Left = 8, ; + Name = "CboProject", ; + RowSource = "Thisform.oSearchEngine.oProjects", ; + RowSourceType = 10, ; + Style = 2, ; + TabIndex = 4, ; + Top = 21, ; + Width = 389 + *< END OBJECT: BaseClass="combobox" /> + + ADD OBJECT 'pageframeScope.Page2.chkLimitToProjectFolder' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Limit search to project home directory and sub-folders", ; + ControlSource = "thisform.oSearchOptions.lLimitToProjectFolder", ; + FontSize = 8, ; + Height = 16, ; + Left = 8, ; + Name = "chkLimitToProjectFolder", ; + Top = 46, ; + Width = 279 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pageframeScope.Page2.CmdDir' AS commandbutton WITH ; + Anchor = 8, ; + Caption = "...", ; + FontName = "Tahoma", ; + FontSize = 12, ; + Height = 21, ; + Left = 402, ; + Name = "CmdDir", ; + TabIndex = 35, ; + Top = 22, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pageframeScope.Page2.Label10' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Project", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 9, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 8, ; + Name = "Label10", ; + TabIndex = 27, ; + Top = 3, ; + Width = 41 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pageframeScope.Page3.chkSubdirectories' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Include Subdirectories", ; + ControlSource = "Thisform.oSearchOptions.lIncludeSubDirectories", ; + FontSize = 8, ; + Height = 16, ; + Left = 8, ; + Name = "chkSubdirectories", ; + TabIndex = 1, ; + Top = 46, ; + Width = 125 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pageframeScope.Page3.Label1' AS label WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "Directory", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 9, ; + ForeColor = 0,0,0, ; + Height = 17, ; + Left = 8, ; + Name = "Label1", ; + TabIndex = 27, ; + Top = 4, ; + Width = 74 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pageframeScope.Page3.txtPath' AS textbox WITH ; + Anchor = 10, ; + ControlSource = "Thisform.cCurrentDir", ; + DisabledForeColor = 0,0,0, ; + Enabled = .F., ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 21, ; + Left = 8, ; + Name = "txtPath", ; + ReadOnly = .F., ; + TabIndex = 3, ; + Top = 23, ; + Value = (""), ; + Width = 417 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'pageframeScope.Page4.chkSubdirectories' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Include Subdirectories", ; + ControlSource = "Thisform.oSearchOptions.lIncludeSubDirectories", ; + FontSize = 8, ; + Height = 16, ; + Left = 8, ; + Name = "chkSubdirectories", ; + TabIndex = 1, ; + Top = 46, ; + Width = 125 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pageframeScope.Page4.CmdDir' AS commandbutton WITH ; + Anchor = 8, ; + Caption = "...", ; + FontName = "Tahoma", ; + FontSize = 12, ; + Height = 21, ; + Left = 402, ; + Name = "CmdDir", ; + TabIndex = 35, ; + Top = 22, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pageframeScope.Page4.Command1' AS commandbutton WITH ; + Anchor = 8, ; + AutoSize = .T., ; + Caption = "Set to Current Dir", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 23, ; + Left = 298, ; + Name = "Command1", ; + TabIndex = 35, ; + Top = 46, ; + Width = 101 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pageframeScope.Page4.editPath' AS editbox WITH ; + Anchor = 10, ; + ControlSource = "Thisform.oSearchOptions.cPath", ; + Height = 23, ; + Left = 8, ; + Name = "editPath", ; + Top = 20, ; + Width = 391 + *< END OBJECT: BaseClass="editbox" /> + + ADD OBJECT 'pageframeScope.Page4.Label1' AS label WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "Directory", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 9, ; + ForeColor = 0,0,0, ; + Height = 17, ; + Left = 8, ; + Name = "Label1", ; + TabIndex = 27, ; + Top = 4, ; + Width = 74 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pageframeScope.Page5.comboSearchScropeHistory' AS gf_combosearchscope WITH ; + BoundTo = .T., ; + ControlSource = "Thisform.oSearchOptions.cRecentScope", ; + DisplayCount = 40, ; + Height = 24, ; + Left = 33, ; + Name = "comboSearchScropeHistory", ; + Top = 24, ; + Visible = .T., ; + Width = 394 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="combobox" /> + + ADD OBJECT 'pageframeScope.Page5.imgScopeIcon' AS image WITH ; + Height = 16, ; + Left = 11, ; + Name = "imgScopeIcon", ; + Top = 27, ; + Width = 16 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'pageframeScope.Page5.Label1' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Recently used", ; + FontBold = .F., ; + FontName = "Tahoma", ; + FontSize = 9, ; + ForeColor = 0,0,0, ; + Height = 16, ; + Left = 8, ; + Name = "Label1", ; + TabIndex = 27, ; + Top = 4, ; + Width = 79 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Shape1' AS shape WITH ; + Anchor = 10, ; + BorderColor = 128,128,128, ; + Curvature = 2, ; + Height = 89, ; + Left = 9, ; + Name = "Shape1", ; + SpecialEffect = 0, ; + Style = 3, ; + Top = 204, ; + Width = 483, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Shape2' AS shape WITH ; + Anchor = 10, ; + BorderColor = 128,128,128, ; + Curvature = 2, ; + Height = 44, ; + Left = 12, ; + Name = "Shape2", ; + SpecialEffect = 0, ; + Style = 3, ; + Top = 152, ; + Width = 363, ; + ZOrderSet = 4 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'Shape4' AS shape WITH ; + Anchor = 10, ; + BorderColor = 128,128,128, ; + Curvature = 2, ; + Height = 123, ; + Left = 8, ; + Name = "Shape4", ; + SpecialEffect = 0, ; + Style = 3, ; + Top = 299, ; + Width = 496, ; + ZOrderSet = 0 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'txtTimeStampFrom' AS textbox WITH ; + Alignment = 3, ; + Anchor = 0, ; + ControlSource = "thisform.oSearchOptions.dTimeStampFrom", ; + FontName = "Tahoma", ; + FontSize = 9, ; + Height = 23, ; + Left = 263, ; + Name = "txtTimeStampFrom", ; + SelectOnEntry = .T., ; + TabIndex = 11, ; + Top = 354, ; + Value = {}, ; + Width = 95, ; + ZOrderSet = 22 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'txtTimeStampTo' AS textbox WITH ; + Alignment = 3, ; + Anchor = 0, ; + ControlSource = "thisform.oSearchOptions.dTimeStampTo", ; + FontName = "Tahoma", ; + FontSize = 9, ; + Height = 23, ; + Left = 388, ; + Name = "txtTimeStampTo", ; + SelectOnEntry = .T., ; + TabIndex = 12, ; + Top = 354, ; + Value = {}, ; + Width = 95, ; + ZOrderSet = 23 + *< END OBJECT: BaseClass="textbox" /> + + PROCEDURE Activate + + If IsNull(This.oForm) && If Results form was closed down while this form was open + Thisform.Release() + Else + Thisform.UpdateSearchScopeVariables() + Thisform.Refresh() + Endif + + + ENDPROC + + PROCEDURE Destroy + DoDefault() + + If This.lReturn + Thisform.SaveOptions() + Thisform.oForm.comboSearchScopeHistory.SaveSearchScope(This.GetCurrentScope()) + Thisform.oForm.comboSearchScopeHistory.Value = This.GetCurrentScope() + Thisform.Top = -2000 && Move form out of view... + Thisform.oForm.Refresh() + Thisform.oForm.DoSearch() + Thisform.oForm.oGrid.SetFocus() + Endif + + Try + Thisform.oForm.lSearchFormVisible = .F. + Catch + Endtry + + Thisform.oForm = .Null. + Thisform.oSearchEngine = .Null. + Thisform.oSearchOptions = .Null. + Thisform.oMy = .Null. + + + ENDPROC + + PROCEDURE getcurrentscope + Local lcScope, lnScope + + lnScope = Thisform.oSearchOptions.nSearchScope + + Do Case + + Case lnScope = 1 + lcScope = Lower(Thisform.cActiveProject) + + Case lnScope = 2 + lcScope = Lower(Thisform.oSearchOptions.cProject) + + Case lnScope = 3 + lcScope = Lower(Thisform.cCurrentDir) + + Case lnScope = 4 + lcScope = Lower(Thisform.oSearchOptions.cPath) + + Case lnScope = 5 + lcScope = Lower(Thisform.oSearchOptions.cRecentScope) + + Endcase + + lcScope = Rtrim(Alltrim(lcScope), 0, '\') + + Return lcScope + + ENDPROC + + PROCEDURE Init + Lparameters toGoFishForm + + Local lnHeight + + lnHeight = This.Height && Force form the designer height + DoDefault(toGoFishForm) + This.Height = lnHeight + + Thisform.oSearchEngine = Createobject('GoFishSearchEngine',,THIS.cCR_StoreLocal) + Thisform.oSearchEngine.oProjects = Thisform.oForm.oSearchEngine.oProjects + + ThisForm.LoadOptions() + + Thisform.BindControls = .t. + + Thisform.Refresh() + + + ENDPROC + + PROCEDURE KeyPress + LPARAMETERS nKeyCode, nShiftAltCtrl + + If nKeyCode = 27 + Thisform.Release() + Endif + + + ENDPROC + + PROCEDURE Load + DoDefault() + + this.MaxHeight = this.Height + ENDPROC + + PROCEDURE loadoptions + *-- Make a copy of the oSearchOption object from the Results form as our starting state. + Local lnPage + + Thisform.oSearchOptions = This.CopyObjectProperties(Thisform.oForm.oSearchEngine.oSearchOptions, CreateObject('Empty')) + + lnPage = Evl(Thisform.oSearchOptions.nSearchScope, 3) + + Thisform.pageframeScope.ActivePage = lnPage + + With Thisform + .cActiveProject = Thisform.oForm.cActiveProject + .cCurrentDir = Lower(Rtrim(Thisform.oForm.cCurrentDir, 0, '\')) + *.lIncludeSubDirectoriesBrowsed = Thisform.oForm.lIncludeSubDirectoriesBrowsed + *.lIncludeSubDirectoriesCurrent = Thisform.oForm.lIncludeSubDirectoriesCurrent + Endwith + + ENDPROC + + PROCEDURE saveoptions + If IsNull(this.oForm) + Return + Endif + + This.CopyObjectProperties(Thisform.oSearchOptions, Thisform.oForm.oSearchEngine.oSearchOptions) + + With Thisform.oForm + .cActiveProject = Lower(Thisform.cActiveProject) + .cCurrentDir = Lower(Rtrim(Thisform.cCurrentDir, 0, '\')) + *.lIncludeSubDirectoriesBrowsed = Thisform.lIncludeSubDirectoriesBrowsed + *.lIncludeSubDirectoriesCurrent = Thisform.lIncludeSubDirectoriesCurrent + Endwith + + + + + + ENDPROC + + PROCEDURE setscope + Lparameters tnPage + + Thisform.oSearchOptions.nSearchScope = Thisform.pageframeScope.ActivePage + + Thisform.Refresh() + + + ENDPROC + + PROCEDURE updatesearchscopevariables + With Thisform + .cActiveProject = Lower(Alltrim(Thisform.oSearchEngine.GetActiveProject())) + .cCurrentDir = Lower(Rtrim(Thisform.oSearchEngine.GetCurrentDirectory(), 0, '\')) + .oSearchEngine.AddProject(.cActiveProject) + Endwith + + + + + + ENDPROC + + PROCEDURE validateinputs + Local loGrid, loSearchEngine, loSearchOptions, loTimeStampToControl, lcPath + + loSearchOptions = Thisform.oSearchOptions + lcScope = Alltrim(Thisform.GetCurrentScope()) + lnReturn = 1 + + *-- Validate Directory (for Curr Dir or Browsed Dir) + If InList(loSearchOptions.nSearchScope, 3, 4) + lcPath = Addbs(lcScope) + If !Directory(lcPath, 1) + lcMessage = 'Invalid Directory [ ' + lcScope + ' ].' + lnReturn = loSearchOptions.nSearchScope * -1 + Endif + Endif + + *-- Validate Project file can be found (for Active Project and Browsed Project) + If InList(loSearchOptions.nSearchScope, 1, 2) + If !File(lcScope) + lcMessage = 'Cannot find project file [ ' + lcScope + ' ].' + lnReturn = loSearchOptions.nSearchScope * -1 + Endif + Endif + + *-- Make sure at least one date is supplied if timestamp box is checked. + If loSearchOptions.lTimeStamp and Empty(loSearchOptions.dTimeStampFrom) and Empty(loSearchOptions.dTimeStampTo) + lcMessage = 'At least one TimeStamp date must be entered, or else clear checkbox.' + lnReturn = -5 + EndIf + + *-- Must Specify a search expression, unless you are searching by TimeStamps + If Empty(loSearchOptions.cSearchExpression) and !loSearchOptions.lTimeStamp + lcMessage = 'Please specify a search string.' + lnReturn = -6 + Endif + + *-- Make sure at least on box if check if FileTypes container is enabled. + If Thisform.containerFileTypes.Enabled + llAtLeastOneBoxChecked = .f. + For each loControl in This.containerFileTypes.Controls + If Upper(loControl.baseclass) = 'CHECKBOX' + If loControl.Value and !InList(Upper(loControl.Name), 'CHECK1', 'CHECK2') + llAtLeastOneBoxChecked = .t. + Endif + Endif + Endfor + If !llAtLeastOneBoxChecked and Empty(Thisform.oSearchOptions.cOtherIncludes) + lcMessage = 'You must specify file extension(s) to search.' + lnReturn = -7 + Endif + Endif + + If lnReturn < 0 + MessageBox(lcMessage + ' Please fix.', 16, 'GoFish') + Endif + + Return lnReturn + + ENDPROC + + PROCEDURE Check2.Click + Thisform.oSearchEngine.ClearReplaceSettings() + ENDPROC + + PROCEDURE Check3.Click + Thisform.oSearchEngine.ClearReplaceSettings() + ENDPROC + + PROCEDURE chkcomment.Click + *-- GF$ needs work to support the "Comments" feature... + + Thisform.oSearchEngine.ClearReplaceSettings() + ENDPROC + + PROCEDURE chkMatchCase.Click + Thisform.oSearchEngine.ClearReplaceSettings() + ENDPROC + + PROCEDURE chkMatchWholeWord.Click + Thisform.oSearchEngine.ClearReplaceSettings() + ENDPROC + + PROCEDURE chkTimeStamp.Click + DoDefault() + Thisform.Refresh() + + Thisform.txtTimeStampFrom.SetFocus() + ENDPROC + + PROCEDURE cmdCancel.Click + Thisform.lReturn = .f. + + Thisform.SaveOptions() + + Thisform.Release() + ENDPROC + + PROCEDURE CmdGoFish.Click + Local lnValidate + + lnValidate = Thisform.ValidateInputs() + + If lnValidate < 0 + + Do Case + Case lnValidate = -4 + Thisform.pageframeScope.Page4.editPath.SetFocus() + + Case lnValidate = -5 + Thisform.txtTimeStampFrom.SetFocus() + + Otherwise + Thisform.editSearch.SetFocus() + Endcase + + Return .f. + EndIf + + Thisform.lReturn = .t. + + Thisform.Release() + + + + + + + ENDPROC + + PROCEDURE CmdGoFish.Refresh + Local llEnabled + + llEnabled = !Empty(Thisform.GetCurrentScope()) + + This.Enabled = llEnabled + + ENDPROC + + PROCEDURE cmdHelp.Click + + Text to lcText PreText 3 NoSHow + The File Template is a filename/extension filter that will run along with the selections in the Filetypes region. The format is: + + [*]filename[*] (dot) [*]ext[*] + + Meaning, the filename pattern comes first and can use the wildcard character (*) at the beginning or end. + + The extension pattern, if used, must be preceded by a dot (.), and can use the wildcard character at the beginning or the end. + + If an extension is included, it will override the extensions in the FileTypes region. + EndText + + + MessageBox(lcText, 0, 'File Template Help') + ENDPROC + + PROCEDURE comboSearchExpressionHistoryDropDownArrow.GotFocus + Local loCombo + + *-- Store current value of editbox. I the user presses ESCAPE in the actual combobox, + *-- the oringal value can be recovered from here. + This.Tag = This.Parent.editSearch.Value + + loCombo = This.Parent.comboSearchExpressionHistory + + loCombo.OpenTable() + + Thisform.comboSearchExpressionHistory.Requery() + + With loCombo + .ListIndex = 1 + .Visible = .T. + .SetFocus() + Endwith + + Keyboard '{ALT+DNARROW}' && To expand the actual dropdown listbox that holds all the values + ENDPROC + + PROCEDURE comboSearchExpressionHistoryDropDownArrow.Init + this.Top = this.Parent.editSearch.top + ENDPROC + + PROCEDURE Command1.Click + Local lcFilename, lcText + + lcFilename = Thisform.oSearchEngine.cFilesToSkipFile + + If !File(lcFilename) + + Text to lcText PRETEXT 3 noshow + ** Contains names of files and folders to be skipped: one per line, case insensitive, wildcards allowed + ** -- File name (no path) + ** Main.PRG + ** FOO*.TXT + ** -- Folders (with leading and trailing backslash) + ** \Purchased\WestWind\ + ** \Temp*\ + ** -- Or combined + ** \Temp*\*.txt + + ** These files and folders will be skipped if the "Skip Files option" is checked on the Advanced form. + ** The default name and location for this file is: (Home(7) + 'GoFish_\GF_Files_To_Skip.txt') + ** Might be set to a local directory + + ** Blank lines and lines beginning with ** are not processed. + + EndText + + StrToFile(lcText, lcFilename) + Endif + + Modify File (lcFilename) + + ENDPROC + + PROCEDURE containerFileTypes.Check1.InteractiveChange + DODEFAULT() + + WITH this.parent + .chkscx.value = this.value + .chkvcx.value = this.value + .chkmnx.value = this.value + .chkdbc.value = this.value + .chklbx.value = this.value + .chkfrx.value = this.value + .chkpjx.value = this.value + .chkprg.value = this.value + .chkspr.value = this.value + .chkmpr.value = this.value + .chkini.value = this.value + .chkh.value = this.value + ENDWITH + ENDPROC + + PROCEDURE containerFileTypes.Check2.InteractiveChange + DODEFAULT() + + WITH This.parent + .chkhtml.value = this.value + .chkasp.value = this.value + .chkjava.value = this.value + .chkjsp.value = this.value + .chkxml.value = this.value + .chktxt.value = this.value + ENDWITH + ENDPROC + + PROCEDURE containerFileTypes.Refresh + Local llEnabled, loControl + + llEnabled = Empty(JustExt(Thisform.oSearchOptions.cFileTemplate)) + + For each loControl in this.Controls + Try + loControl.Enabled = llEnabled + Catch + EndTry + Endfor + + This.Enabled = llEnabled + ENDPROC + + PROCEDURE editFileTemplate.InteractiveChange + This.Value = This.value + Thisform.containerFileTypes.Refresh() + ENDPROC + + PROCEDURE editSearch.GotFocus + this.Tag = this.Value + + ENDPROC + + PROCEDURE pageframeScope.Page1.Activate + Thisform.SetScope(1) + ENDPROC + + PROCEDURE pageframeScope.Page1.txtPath.GotFocus + This.Tag = Upper(Alltrim(this.Value)) + ENDPROC + + PROCEDURE pageframeScope.Page1.txtPath.InteractiveChange + DODEFAULT() + + Thisform.oSearchEngine.ClearReplaceSettings() + + ENDPROC + + PROCEDURE pageframeScope.Page2.Activate + Thisform.SetScope(2) + This.cboProject.SetFocus() + ENDPROC + + PROCEDURE pageframeScope.Page2.CboProject.Valid + Thisform.Refresh() + ENDPROC + + PROCEDURE pageframeScope.Page2.CmdDir.Click + Local lcProject, lcSelectedProject + + lcSelectedProject = GetFile('PJX', 'Select Project:', 'Select') + + If Empty(lcSelectedProject) + return + Endif + + ThisForm.oSearchEngine.SetProject(lcSelectedProject) + + This.Parent.cboProject.Requery() + + This.Parent.cboProject.Value = Thisform.oSearchEngine.oSearchOptions.cProject + + Thisform.Refresh() + + ENDPROC + + PROCEDURE pageframeScope.Page3.Activate + Thisform.SetScope(3) + ENDPROC + + PROCEDURE pageframeScope.Page4.Activate + Thisform.SetScope(4) + This.editPath.SetFocus() + This.editPath.SelStart = 0 + This.editPath.SelLength = 1000 + + ENDPROC + + PROCEDURE pageframeScope.Page4.CmdDir.Click + Local lcGetDir, lcSomeDir + + lcNewPath = GetDir(Thisform.oSearchOptions.cPath, '', '', 16 + 32 + 64) + + If !Empty(lcNewPath) + Thisform.oSearchOptions.cPath = Lower(Alltrim(lcNewPath, '\')) + Endif + + Thisform.Refresh() + + + + ENDPROC + + PROCEDURE pageframeScope.Page4.Command1.Click + Thisform.oSearchOptions.cPath = Alltrim(Lower(Thisform.cCurrentDir), '\') + + Thisform.Refresh() + + With This.Parent.editPath + .SetFocus() + .SelStart = Len(Alltrim(Thisform.cCurrentDir, '\')) + Endwith + + + + ENDPROC + + PROCEDURE pageframeScope.Page4.editPath.InteractiveChange + This.Value = This.value + Thisform.cmdGoFish.Refresh() + ENDPROC + + PROCEDURE pageframeScope.Page5.Activate + + Thisform.SetScope(5) + + With This.comboSearchScropeHistory + .SetFocus() + .SelStart = 0 + .SelLength = 1000 + Endwith + + + ENDPROC + + PROCEDURE txtTimeStampFrom.Refresh + This.Enabled = Thisform.oSearchOptions.lTimeStamp + ENDPROC + + PROCEDURE txtTimeStampTo.Refresh + This.Enabled = Thisform.oSearchOptions.lTimeStamp + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_advanced.sc2 b/Source/Forms/gofish_advanced.sc2 index 36e9527..4e4a055 100644 --- a/Source/Forms/gofish_advanced.sc2 +++ b/Source/Forms/gofish_advanced.sc2 @@ -4,1906 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_advanced.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="2" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_advanced AS gf_baseform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Shape4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="comboSearchExpressionHistory" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Shape2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkXML" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkTXT" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkASP" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.ChkHTML" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkH" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkMNX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkSCX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkVCX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkDBC" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkLBX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkFRX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkPJX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkPRG" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkSPR" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkMPR" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.Line1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.Line2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkini" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.txtyourchoice" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.Label6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.Check2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkJava" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="containerFileTypes.chkJSP" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="chkcomment" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="chkMatchWholeWord" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="chkMatchCase" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Check2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="chkTimeStamp" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label11" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label12" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page1.Label10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page1.txtPath" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page1.chkLimitToProjectFolder" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page2.CboProject" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page2.Label10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page2.CmdDir" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page2.chkLimitToProjectFolder" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page3.chkSubdirectories" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page3.txtPath" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page3.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page4.chkSubdirectories" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page4.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page4.CmdDir" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page4.Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page4.editPath" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page5.comboSearchScropeHistory" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page5.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pageframeScope.Page5.imgScopeIcon" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="editFileTemplate" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="CmdGoFish" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdCancel" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="txtTimeStampFrom" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="txtTimeStampTo" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="editSearch" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="comboSearchExpressionHistoryDropDownArrow" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdHelp" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Check3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Optiongroup1" UniqueID="" Timestamp="" /> - - * - *m: getcurrentscope - *m: loadoptions - *m: saveoptions - *m: setscope - *m: updatesearchscopevariables - *m: validateinputs - *p: cactiveproject - *p: ccurrentdir - *p: lreturn - *p: z_lincludesubdirectoriesbrowsed - *p: z_lincludesubdirectoriescurrent - * - - BindControls = .F. - cactiveproject = - Caption = "GoFish - Advanced Search" - ccurrentdir = - cuisettingsfile = GF_Advanced_Form_Settings.xml - DataSession = 2 - DoCreate = .T. - HalfHeightCaption = .T. - Height = 430 - Left = 0 - lreturn = .F. - MaxButton = .F. - MinButton = .F. - MinHeight = 350 - MinWidth = 520 - Name = "GF_Advanced" - ShowTips = .T. - Top = 0 - Visible = .T. - Width = 520 - WindowType = 1 - z_lincludesubdirectoriesbrowsed = .F. - z_lincludesubdirectoriescurrent = .F. - _memberdata = - - - - - - - - - - - - - - - - - - - ADD OBJECT 'Check1' AS checkbox WITH ; - Alignment = 0, ; - Anchor = 8, ; - Caption = "Skip Files", ; - ControlSource = "Thisform.oSearchOptions.lSKipFiles", ; - Height = 25, ; - Left = 421, ; - Name = "Check1", ; - Top = 151, ; - Width = 85, ; - ZOrderSet = 2 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'Check2' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Ignore field RESERVED3 in SCXs / VCXs", ; - ControlSource = "thisform.oSearchOptions.lIgnorePropertiesField", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 212, ; - Name = "Check2", ; - TabIndex = 6, ; - ToolTipText = "Ignoring this field eliminates match types <>, <>, <>, and <>.", ; - Top = 380, ; - Value = .T., ; - Width = 205, ; - ZOrderSet = 10 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'Check3' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Ignore values in MemberData", ; - ControlSource = "thisform.oSearchOptions.lIgnoreMemberData", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 212, ; - Name = "Check3", ; - TabIndex = 6, ; - Top = 401, ; - Value = .T., ; - Width = 159, ; - ZOrderSet = 10 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'chkcomment' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - Caption = "Search in comments", ; - ControlSource = "Thisform.oSearchOptions.lSearchInComments", ; - FontSize = 8, ; - Height = 16, ; - Left = 29, ; - Name = "chkcomment", ; - TabIndex = 9, ; - Top = 378, ; - Value = .F., ; - Width = 116, ; - ZOrderSet = 8 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'chkMatchCase' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Match \ - - ADD OBJECT 'chkMatchWholeWord' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Match \ - - ADD OBJECT 'chkTimeStamp' AS checkbox WITH ; - Alignment = 0, ; - Anchor = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "TimeStamp Filter", ; - ControlSource = "Thisform.oSearchOptions.lTimeStamp", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 212, ; - Name = "chkTimeStamp", ; - TabIndex = 10, ; - Top = 336, ; - Value = .T., ; - Width = 97, ; - ZOrderSet = 12 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'cmdCancel' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "Save", ; - FontBold = .T., ; - Height = 34, ; - Left = 441, ; - Name = "cmdCancel", ; - TabIndex = 14, ; - ToolTipText = "Saves changes but does not search", ; - Top = 6, ; - Width = 66, ; - ZOrderSet = 21 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'CmdGoFish' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "Go Fish", ; - Default = .T., ; - FontBold = .T., ; - FontName = "Tahoma", ; - Height = 34, ; - Left = 346, ; - Name = "CmdGoFish", ; - Picture = ..\images\fish13.ico, ; - PicturePosition = 1, ; - TabIndex = 13, ; - Top = 6, ; - Width = 84, ; - ZOrderSet = 20 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'cmdHelp' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "", ; - FontName = "Tahoma", ; - Height = 22, ; - Left = 343, ; - Name = "cmdHelp", ; - Picture = ('images\refhelp.bmp'), ; - PicturePosition = 1, ; - SpecialEffect = 2, ; - TabIndex = 16, ; - Top = 166, ; - Width = 24, ; - ZOrderSet = 29 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'comboSearchExpressionHistory' AS gf_combosearchexpressionhistory WITH ; - Height = 26, ; - Left = 47, ; - Name = "comboSearchExpressionHistory", ; - Top = 8, ; - Width = 284, ; - ZOrderSet = 3 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="combobox" /> - - ADD OBJECT 'comboSearchExpressionHistoryDropDownArrow' AS combobox WITH ; - Anchor = 8, ; - Height = 26, ; - Left = 310, ; - Name = "comboSearchExpressionHistoryDropDownArrow", ; - TabStop = .F., ; - Top = 12, ; - Width = 21, ; - ZOrderSet = 27 - *< END OBJECT: BaseClass="combobox" /> - - ADD OBJECT 'Command1' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "Edit list", ; - Height = 20, ; - Left = 418, ; - Name = "Command1", ; - Top = 176, ; - Width = 79, ; - ZOrderSet = 28 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'containerFileTypes' AS container WITH ; - Anchor = 10, ; - BorderWidth = 0, ; - Height = 84, ; - Left = 11, ; - Name = "containerFileTypes", ; - TabIndex = 5, ; - Top = 206, ; - Width = 493, ; - ZOrderSet = 6 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'containerFileTypes.Check1' AS checkbox WITH ; - Alignment = 0, ; - Caption = "", ; - ControlSource = "", ; - Height = 16, ; - Left = 152, ; - Name = "Check1", ; - TabIndex = 3, ; - Top = 7, ; - Value = .T., ; - Width = 14, ; - ZOrderSet = 27 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.Check2' AS checkbox WITH ; - Alignment = 0, ; - Caption = "", ; - ControlSource = "", ; - Height = 16, ; - Left = 388, ; - Name = "Check2", ; - TabIndex = 4, ; - Top = 7, ; - Value = .T., ; - Width = 14, ; - ZOrderSet = 29 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkASP' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "ASP", ; - ControlSource = "Thisform.oSearchOptions.lIncludeASP", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 332, ; - Name = "chkASP", ; - TabIndex = 20, ; - Top = 36, ; - Value = .T., ; - Width = 43, ; - ZOrderSet = 3 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkDBC' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "DBC", ; - ControlSource = "Thisform.oSearchOptions.lIncludeDBC", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 16, ; - Left = 80, ; - Name = "chkDBC", ; - TabIndex = 12, ; - Top = 36, ; - Value = .T., ; - Width = 40, ; - ZOrderSet = 9 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkFRX' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "FRX", ; - ControlSource = "Thisform.oSearchOptions.lIncludeFRX", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 16, ; - Left = 122, ; - Name = "chkFRX", ; - TabIndex = 13, ; - Top = 36, ; - Value = .T., ; - Width = 37, ; - ZOrderSet = 11 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkH' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = ".h", ; - ControlSource = "Thisform.oSearchOptions.lIncludeH", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 16, ; - Left = 243, ; - Name = "chkH", ; - TabIndex = 16, ; - Top = 36, ; - Value = .T., ; - Width = 37, ; - ZOrderSet = 5 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.ChkHTML' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "HTM?", ; - ControlSource = "Thisform.oSearchOptions.lIncludeHTML", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 332, ; - Name = "ChkHTML", ; - TabIndex = 17, ; - Top = 22, ; - Value = .T., ; - Width = 43, ; - ZOrderSet = 4 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkini' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "INI", ; - ControlSource = "Thisform.oSearchOptions.lIncludeINI", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 16, ; - Left = 243, ; - Name = "chkini", ; - TabIndex = 10, ; - Top = 22, ; - Value = .T., ; - Width = 44, ; - ZOrderSet = 19 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkJava' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "JAVA", ; - ControlSource = "Thisform.oSearchOptions.lIncludeJAVA", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 378, ; - Name = "chkJava", ; - TabIndex = 18, ; - Top = 22, ; - Value = .T., ; - Width = 43, ; - ZOrderSet = 24 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkJSP' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "JSP", ; - ControlSource = "Thisform.oSearchOptions.lIncludeJSP", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 378, ; - Name = "chkJSP", ; - TabIndex = 21, ; - Top = 36, ; - Value = .T., ; - Width = 43, ; - ZOrderSet = 23 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkLBX' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "LBX", ; - ControlSource = "Thisform.oSearchOptions.lIncludeLBX", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 16, ; - Left = 122, ; - Name = "chkLBX", ; - TabIndex = 7, ; - Top = 22, ; - Value = .T., ; - Width = 37, ; - ZOrderSet = 10 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkMNX' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "MNX", ; - ControlSource = "Thisform.oSearchOptions.lIncludeMNX", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 80, ; - Name = "chkMNX", ; - TabIndex = 6, ; - Top = 22, ; - Value = .T., ; - Width = 40, ; - ZOrderSet = 6 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkMPR' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "MPR", ; - ControlSource = "Thisform.oSearchOptions.lIncludeMPR", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 204, ; - Name = "chkMPR", ; - TabIndex = 15, ; - Top = 36, ; - Value = .T., ; - Width = 40, ; - ZOrderSet = 15 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkPJX' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "PJX", ; - ControlSource = "Thisform.oSearchOptions.lIncludePJX", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 162, ; - Name = "chkPJX", ; - TabIndex = 8, ; - Top = 22, ; - Value = .T., ; - Width = 39, ; - ZOrderSet = 12 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkPRG' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "PRG", ; - ControlSource = "Thisform.oSearchOptions.lIncludePRG", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 162, ; - Name = "chkPRG", ; - TabIndex = 14, ; - Top = 36, ; - Value = .T., ; - Width = 39, ; - ZOrderSet = 13 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkSCX' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "SCX", ; - ControlSource = "Thisform.oSearchOptions.lIncludeSCX", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 41, ; - Name = "chkSCX", ; - TabIndex = 5, ; - Top = 22, ; - Value = .T., ; - Width = 37, ; - ZOrderSet = 7 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkSPR' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "SPR", ; - ControlSource = "Thisform.oSearchOptions.lIncludeSPR", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 204, ; - Name = "chkSPR", ; - TabIndex = 9, ; - Top = 22, ; - Value = .T., ; - Width = 40, ; - ZOrderSet = 14 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkTXT' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "TXT", ; - ControlSource = "Thisform.oSearchOptions.lIncludeTXT", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 426, ; - Name = "chkTXT", ; - TabIndex = 22, ; - Top = 36, ; - Value = .T., ; - Width = 43, ; - ZOrderSet = 2 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkVCX' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "VCX", ; - ControlSource = "Thisform.oSearchOptions.lIncludeVCX", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 41, ; - Name = "chkVCX", ; - TabIndex = 11, ; - Top = 36, ; - Value = .T., ; - Width = 37, ; - ZOrderSet = 8 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.chkXML' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "XML", ; - ControlSource = "Thisform.oSearchOptions.lIncludeXML", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 17, ; - Left = 426, ; - Name = "chkXML", ; - TabIndex = 19, ; - Top = 22, ; - Value = .T., ; - Width = 43, ; - ZOrderSet = 25 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'containerFileTypes.Label6' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Other:", ; - FontBold = .F., ; - FontItalic = .F., ; - FontSize = 8, ; - Height = 16, ; - Left = 41, ; - Name = "Label6", ; - TabIndex = 39, ; - Top = 63, ; - Visible = .T., ; - Width = 30, ; - WordWrap = .T., ; - ZOrderSet = 21 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'containerFileTypes.Line1' AS line WITH ; - Height = 0, ; - Left = 43, ; - Name = "Line1", ; - Top = 14, ; - Width = 237, ; - ZOrderSet = 26 - *< END OBJECT: BaseClass="line" /> - - ADD OBJECT 'containerFileTypes.Line2' AS line WITH ; - Height = 0, ; - Left = 334, ; - Name = "Line2", ; - Top = 14, ; - Width = 123, ; - ZOrderSet = 28 - *< END OBJECT: BaseClass="line" /> - - ADD OBJECT 'containerFileTypes.txtyourchoice' AS textbox WITH ; - Anchor = 0, ; - ControlSource = "Thisform.oSearchOptions.cOtherIncludes", ; - FontBold = .T., ; - FontName = "Courier New", ; - FontSize = 9, ; - Height = 24, ; - Left = 74, ; - Name = "txtyourchoice", ; - TabIndex = 23, ; - ToolTipText = "Enter custom file extensions, separated by a space.", ; - Top = 59, ; - Width = 386, ; - ZOrderSet = 20 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'editFileTemplate' AS editbox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.oSearchOptions.cFileTemplate", ; - Height = 23, ; - Left = 47, ; - Name = "editFileTemplate", ; - TabIndex = 4, ; - ToolTipText = "(Ex: cust*.* or *edit.prg or jobs.*)", ; - Top = 166, ; - Width = 290, ; - ZOrderSet = 17 - *< END OBJECT: BaseClass="editbox" /> - - ADD OBJECT 'editSearch' AS editbox WITH ; - Anchor = 10, ; - ControlSource = "thisform.oSearchOptions.cSearchExpression", ; - FontName = "Tahoma", ; - FontSize = 9, ; - Height = 26, ; - Left = 47, ; - Name = "editSearch", ; - SelectOnEntry = .T., ; - TabIndex = 1, ; - Top = 8, ; - Width = 264, ; - ZOrderSet = 24 - *< END OBJECT: BaseClass="editbox" /> - - ADD OBJECT 'Label1' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 1, ; - Caption = " File template", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 15, ; - Left = 24, ; - Name = "Label1", ; - TabIndex = 18, ; - Top = 147, ; - Width = 66, ; - ZOrderSet = 26 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label11' AS label WITH ; - Anchor = 0, ; - AutoSize = .T., ; - BackColor = 0,128,0, ; - BackStyle = 0, ; - Caption = "From", ; - FontBold = .F., ; - FontItalic = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 15, ; - Left = 232, ; - Name = "Label11", ; - TabIndex = 22, ; - Top = 359, ; - Width = 26, ; - ZOrderSet = 13 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label12' AS label WITH ; - Anchor = 0, ; - AutoSize = .T., ; - BackColor = 0,128,0, ; - BackStyle = 0, ; - Caption = "To", ; - FontBold = .F., ; - FontItalic = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 15, ; - Left = 367, ; - Name = "Label12", ; - TabIndex = 21, ; - Top = 359, ; - Width = 14, ; - ZOrderSet = 14 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label2' AS label WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "\ - - ADD OBJECT 'Label3' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 15, ; - Left = 301, ; - Name = "Label3", ; - TabIndex = 17, ; - Top = 171, ; - Width = 2, ; - ZOrderSet = 25 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label4' AS label WITH ; - Alignment = 2, ; - BackStyle = 1, ; - Caption = "Options", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 21, ; - Name = "Label4", ; - TabIndex = 15, ; - Top = 293, ; - Width = 49, ; - ZOrderSet = 16 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label5' AS label WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "Scope:", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 5, ; - Name = "Label5", ; - TabIndex = 19, ; - Top = 42, ; - Width = 51, ; - ZOrderSet = 18 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label6' AS label WITH ; - Alignment = 2, ; - BackStyle = 1, ; - Caption = "Search mode", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 18, ; - Name = "Label6", ; - TabIndex = 15, ; - Top = 312, ; - Width = 90, ; - ZOrderSet = 1 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Label7' AS label WITH ; - Alignment = 0, ; - BackStyle = 1, ; - Caption = " Filetypes ", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 21, ; - Name = "Label7", ; - TabIndex = 16, ; - Top = 199, ; - Width = 51, ; - ZOrderSet = 19 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Optiongroup1' AS optiongroup WITH ; - ButtonCount = 3, ; - ControlSource = "thisform.oSearchOptions.nSearchMode", ; - Height = 27, ; - Left = 100, ; - Name = "Optiongroup1", ; - Top = 306, ; - Value = 1, ; - Width = 393, ; - ZOrderSet = 30, ; - Option1.Caption = "Plain Search", ; - Option1.FontSize = 8, ; - Option1.Height = 17, ; - Option1.Left = 5, ; - Option1.Name = "Option1", ; - Option1.Top = 5, ; - Option1.Value = 1, ; - Option1.Width = 100, ; - Option2.Caption = " Wildcards (* and ?)", ; - Option2.FontSize = 8, ; - Option2.Height = 17, ; - Option2.Left = 115, ; - Option2.Name = "Option2", ; - Option2.ToolTipText = "Uses the LIKE() function to perform wildcard matches.", ; - Option2.Top = 5, ; - Option2.Width = 118, ; - Option3.Caption = "Regular Expression", ; - Option3.FontSize = 8, ; - Option3.Height = 18, ; - Option3.Left = 267, ; - Option3.Name = "Option3", ; - Option3.Top = 5, ; - Option3.Width = 115 - *< END OBJECT: BaseClass="optiongroup" /> - - ADD OBJECT 'pageframeScope' AS pageframe WITH ; - Anchor = 10, ; - ErasePage = .T., ; - Height = 102, ; - HelpContextID = 0, ; - Left = 47, ; - Name = "pageframeScope", ; - PageCount = 5, ; - TabIndex = 3, ; - TabStyle = 1, ; - Top = 44, ; - Width = 462, ; - ZOrderSet = 15, ; - Page1.Caption = "Active Project", ; - Page1.Name = "Page1", ; - Page2.Caption = "Browse Project", ; - Page2.Name = "Page2", ; - Page3.Caption = "Current Dir", ; - Page3.FontSize = 9, ; - Page3.Name = "Page3", ; - Page4.Caption = "Browse Dir", ; - Page4.Name = "Page4", ; - Page5.Caption = "Recent", ; - Page5.Name = "Page5" - *< END OBJECT: BaseClass="pageframe" /> - - ADD OBJECT 'pageframeScope.Page1.chkLimitToProjectFolder' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Limit search to project home directory and sub-folders", ; - ControlSource = "thisform.oSearchOptions.lLimitToProjectFolder", ; - FontSize = 8, ; - Height = 16, ; - Left = 8, ; - Name = "chkLimitToProjectFolder", ; - Top = 46, ; - Width = 279 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pageframeScope.Page1.Label10' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Project", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 9, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 8, ; - Name = "Label10", ; - TabIndex = 27, ; - Top = 3, ; - Width = 41 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pageframeScope.Page1.txtPath' AS textbox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.cActiveProject", ; - DisabledForeColor = 0,0,0, ; - Enabled = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 21, ; - Left = 8, ; - Name = "txtPath", ; - ReadOnly = .F., ; - TabIndex = 3, ; - Top = 21, ; - Value = (""), ; - Width = 416 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'pageframeScope.Page2.CboProject' AS combobox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.oSearchOptions.cProject", ; - DisplayCount = 40, ; - FontName = "Tahoma", ; - Height = 23, ; - Left = 8, ; - Name = "CboProject", ; - RowSource = "Thisform.oSearchEngine.oProjects", ; - RowSourceType = 10, ; - Style = 2, ; - TabIndex = 4, ; - Top = 21, ; - Width = 389 - *< END OBJECT: BaseClass="combobox" /> - - ADD OBJECT 'pageframeScope.Page2.chkLimitToProjectFolder' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Limit search to project home directory and sub-folders", ; - ControlSource = "thisform.oSearchOptions.lLimitToProjectFolder", ; - FontSize = 8, ; - Height = 16, ; - Left = 8, ; - Name = "chkLimitToProjectFolder", ; - Top = 46, ; - Width = 279 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pageframeScope.Page2.CmdDir' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "...", ; - FontName = "Tahoma", ; - FontSize = 12, ; - Height = 21, ; - Left = 402, ; - Name = "CmdDir", ; - TabIndex = 35, ; - Top = 22, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pageframeScope.Page2.Label10' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Project", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 9, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 8, ; - Name = "Label10", ; - TabIndex = 27, ; - Top = 3, ; - Width = 41 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pageframeScope.Page3.chkSubdirectories' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Include Subdirectories", ; - ControlSource = "Thisform.oSearchOptions.lIncludeSubDirectories", ; - FontSize = 8, ; - Height = 16, ; - Left = 8, ; - Name = "chkSubdirectories", ; - TabIndex = 1, ; - Top = 46, ; - Width = 125 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pageframeScope.Page3.Label1' AS label WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "Directory", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 9, ; - ForeColor = 0,0,0, ; - Height = 17, ; - Left = 8, ; - Name = "Label1", ; - TabIndex = 27, ; - Top = 4, ; - Width = 74 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pageframeScope.Page3.txtPath' AS textbox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.cCurrentDir", ; - DisabledForeColor = 0,0,0, ; - Enabled = .F., ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 21, ; - Left = 8, ; - Name = "txtPath", ; - ReadOnly = .F., ; - TabIndex = 3, ; - Top = 23, ; - Value = (""), ; - Width = 417 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'pageframeScope.Page4.chkSubdirectories' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Include Subdirectories", ; - ControlSource = "Thisform.oSearchOptions.lIncludeSubDirectories", ; - FontSize = 8, ; - Height = 16, ; - Left = 8, ; - Name = "chkSubdirectories", ; - TabIndex = 1, ; - Top = 46, ; - Width = 125 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pageframeScope.Page4.CmdDir' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "...", ; - FontName = "Tahoma", ; - FontSize = 12, ; - Height = 21, ; - Left = 402, ; - Name = "CmdDir", ; - TabIndex = 35, ; - Top = 22, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pageframeScope.Page4.Command1' AS commandbutton WITH ; - Anchor = 8, ; - AutoSize = .T., ; - Caption = "Set to Current Dir", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 23, ; - Left = 298, ; - Name = "Command1", ; - TabIndex = 35, ; - Top = 46, ; - Width = 101 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pageframeScope.Page4.editPath' AS editbox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.oSearchOptions.cPath", ; - Height = 23, ; - Left = 8, ; - Name = "editPath", ; - Top = 20, ; - Width = 391 - *< END OBJECT: BaseClass="editbox" /> - - ADD OBJECT 'pageframeScope.Page4.Label1' AS label WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "Directory", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 9, ; - ForeColor = 0,0,0, ; - Height = 17, ; - Left = 8, ; - Name = "Label1", ; - TabIndex = 27, ; - Top = 4, ; - Width = 74 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pageframeScope.Page5.comboSearchScropeHistory' AS gf_combosearchscope WITH ; - BoundTo = .T., ; - ControlSource = "Thisform.oSearchOptions.cRecentScope", ; - DisplayCount = 40, ; - Height = 24, ; - Left = 33, ; - Name = "comboSearchScropeHistory", ; - Top = 24, ; - Visible = .T., ; - Width = 394 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="combobox" /> - - ADD OBJECT 'pageframeScope.Page5.imgScopeIcon' AS image WITH ; - Height = 16, ; - Left = 11, ; - Name = "imgScopeIcon", ; - Top = 27, ; - Width = 16 - *< END OBJECT: BaseClass="image" /> - - ADD OBJECT 'pageframeScope.Page5.Label1' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Recently used", ; - FontBold = .F., ; - FontName = "Tahoma", ; - FontSize = 9, ; - ForeColor = 0,0,0, ; - Height = 16, ; - Left = 8, ; - Name = "Label1", ; - TabIndex = 27, ; - Top = 4, ; - Width = 79 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Shape1' AS shape WITH ; - Anchor = 10, ; - BorderColor = 128,128,128, ; - Curvature = 2, ; - Height = 89, ; - Left = 9, ; - Name = "Shape1", ; - SpecialEffect = 0, ; - Style = 3, ; - Top = 204, ; - Width = 483, ; - ZOrderSet = 5 - *< END OBJECT: BaseClass="shape" /> - - ADD OBJECT 'Shape2' AS shape WITH ; - Anchor = 10, ; - BorderColor = 128,128,128, ; - Curvature = 2, ; - Height = 44, ; - Left = 12, ; - Name = "Shape2", ; - SpecialEffect = 0, ; - Style = 3, ; - Top = 152, ; - Width = 363, ; - ZOrderSet = 4 - *< END OBJECT: BaseClass="shape" /> - - ADD OBJECT 'Shape4' AS shape WITH ; - Anchor = 10, ; - BorderColor = 128,128,128, ; - Curvature = 2, ; - Height = 123, ; - Left = 8, ; - Name = "Shape4", ; - SpecialEffect = 0, ; - Style = 3, ; - Top = 299, ; - Width = 496, ; - ZOrderSet = 0 - *< END OBJECT: BaseClass="shape" /> - - ADD OBJECT 'txtTimeStampFrom' AS textbox WITH ; - Alignment = 3, ; - Anchor = 0, ; - ControlSource = "thisform.oSearchOptions.dTimeStampFrom", ; - FontName = "Tahoma", ; - FontSize = 9, ; - Height = 23, ; - Left = 263, ; - Name = "txtTimeStampFrom", ; - SelectOnEntry = .T., ; - TabIndex = 11, ; - Top = 354, ; - Value = {}, ; - Width = 95, ; - ZOrderSet = 22 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'txtTimeStampTo' AS textbox WITH ; - Alignment = 3, ; - Anchor = 0, ; - ControlSource = "thisform.oSearchOptions.dTimeStampTo", ; - FontName = "Tahoma", ; - FontSize = 9, ; - Height = 23, ; - Left = 388, ; - Name = "txtTimeStampTo", ; - SelectOnEntry = .T., ; - TabIndex = 12, ; - Top = 354, ; - Value = {}, ; - Width = 95, ; - ZOrderSet = 23 - *< END OBJECT: BaseClass="textbox" /> - - PROCEDURE Activate - - If IsNull(This.oForm) && If Results form was closed down while this form was open - Thisform.Release() - Else - Thisform.UpdateSearchScopeVariables() - Thisform.Refresh() - Endif - - - ENDPROC - - PROCEDURE Destroy - DoDefault() - - If This.lReturn = .T. - Thisform.SaveOptions() - Thisform.oForm.comboSearchScopeHistory.SaveSearchScope(This.GetCurrentScope()) - Thisform.oForm.comboSearchScopeHistory.Value = This.GetCurrentScope() - Thisform.Top = -2000 && Move form out of view... - Thisform.oForm.Refresh() - Thisform.oForm.DoSearch() - Thisform.oForm.oGrid.SetFocus() - Endif - - Try - Thisform.oForm.lSearchFormVisible = .F. - Catch - Endtry - - Thisform.oForm = .Null. - Thisform.oSearchEngine = .Null. - Thisform.oSearchOptions = .Null. - Thisform.oMy = .Null. - - - ENDPROC - - PROCEDURE getcurrentscope - Local lcScope, lnScope - - lnScope = Thisform.oSearchOptions.nSearchScope - - Do Case - - Case lnScope = 1 - lcScope = Lower(Thisform.cActiveProject) - - Case lnScope = 2 - lcScope = Lower(Thisform.oSearchOptions.cProject) - - Case lnScope = 3 - lcScope = Lower(Thisform.cCurrentDir) - - Case lnScope = 4 - lcScope = Lower(Thisform.oSearchOptions.cPath) - - Case lnScope = 5 - lcScope = Lower(Thisform.oSearchOptions.cRecentScope) - - Endcase - - lcScope = Rtrim(Alltrim(lcScope), 0, '\') - - Return lcScope - - ENDPROC - - PROCEDURE Init - Lparameters toGoFishForm - - Local lnHeight - - lnHeight = This.Height && Force form the designer height - DoDefault(toGoFishForm) - This.Height = lnHeight - - Thisform.oSearchEngine = Createobject('GoFishSearchEngine',,THIS.cCR_StoreLocal) - Thisform.oSearchEngine.oProjects = Thisform.oForm.oSearchEngine.oProjects - - ThisForm.LoadOptions() - - Thisform.BindControls = .t. - - Thisform.Refresh() - - - ENDPROC - - PROCEDURE KeyPress - LPARAMETERS nKeyCode, nShiftAltCtrl - - If nKeyCode = 27 - Thisform.Release() - Endif - - - ENDPROC - - PROCEDURE Load - DoDefault() - - this.MaxHeight = this.Height - ENDPROC - - PROCEDURE loadoptions - *-- Make a copy of the oSearchOption object from the Results form as our starting state. - Local lnPage - - Thisform.oSearchOptions = This.CopyObjectProperties(Thisform.oForm.oSearchEngine.oSearchOptions, CreateObject('Empty')) - - lnPage = Evl(Thisform.oSearchOptions.nSearchScope, 3) - - Thisform.pageframeScope.ActivePage = lnPage - - With Thisform - .cActiveProject = Thisform.oForm.cActiveProject - .cCurrentDir = Lower(Rtrim(Thisform.oForm.cCurrentDir, 0, '\')) - *.lIncludeSubDirectoriesBrowsed = Thisform.oForm.lIncludeSubDirectoriesBrowsed - *.lIncludeSubDirectoriesCurrent = Thisform.oForm.lIncludeSubDirectoriesCurrent - Endwith - - ENDPROC - - PROCEDURE saveoptions - If IsNull(this.oForm) - Return - Endif - - This.CopyObjectProperties(Thisform.oSearchOptions, Thisform.oForm.oSearchEngine.oSearchOptions) - - With Thisform.oForm - .cActiveProject = Lower(Thisform.cActiveProject) - .cCurrentDir = Lower(Rtrim(Thisform.cCurrentDir, 0, '\')) - *.lIncludeSubDirectoriesBrowsed = Thisform.lIncludeSubDirectoriesBrowsed - *.lIncludeSubDirectoriesCurrent = Thisform.lIncludeSubDirectoriesCurrent - Endwith - - - - - - ENDPROC - - PROCEDURE setscope - Lparameters tnPage - - Thisform.oSearchOptions.nSearchScope = Thisform.pageframeScope.ActivePage - - Thisform.Refresh() - - - ENDPROC - - PROCEDURE updatesearchscopevariables - With Thisform - .cActiveProject = Lower(Alltrim(Thisform.oSearchEngine.GetActiveProject())) - .cCurrentDir = Lower(Rtrim(Thisform.oSearchEngine.GetCurrentDirectory(), 0, '\')) - .oSearchEngine.AddProject(.cActiveProject) - Endwith - - - - - - ENDPROC - - PROCEDURE validateinputs - Local loGrid, loSearchEngine, loSearchOptions, loTimeStampToControl, lcPath - - loSearchOptions = Thisform.oSearchOptions - lcScope = Alltrim(Thisform.GetCurrentScope()) - lnReturn = 1 - - *-- Validate Directory (for Curr Dir or Browsed Dir) - If InList(loSearchOptions.nSearchScope, 3, 4) - lcPath = Addbs(lcScope) - If !Directory(lcPath, 1) - lcMessage = 'Invalid Directory [ ' + lcScope + ' ].' - lnReturn = loSearchOptions.nSearchScope * -1 - Endif - Endif - - *-- Validate Project file can be found (for Active Project and Browsed Project) - If InList(loSearchOptions.nSearchScope, 1, 2) - If !File(lcScope) - lcMessage = 'Cannot find project file [ ' + lcScope + ' ].' - lnReturn = loSearchOptions.nSearchScope * -1 - Endif - Endif - - *-- Make sure at least one date is supplied if timestamp box is checked. - If loSearchOptions.lTimeStamp = .t. and Empty(loSearchOptions.dTimeStampFrom) and Empty(loSearchOptions.dTimeStampTo) - lcMessage = 'At least one TimeStamp date must be entered, or else clear checkbox.' - lnReturn = -5 - EndIf - - *-- Must Specify a search expression, unless you are searching by TimeStamps - If Empty(loSearchOptions.cSearchExpression) and !loSearchOptions.lTimeStamp - lcMessage = 'Please specify a search string.' - lnReturn = -6 - Endif - - *-- Make sure at least on box if check if FileTypes container is enabled. - If Thisform.containerFileTypes.Enabled = .t. - llAtLeastOneBoxChecked = .f. - For each loControl in This.containerFileTypes.Controls - If Upper(loControl.baseclass) = 'CHECKBOX' - If loControl.Value = .t. and !InList(Upper(loControl.Name), 'CHECK1', 'CHECK2') - llAtLeastOneBoxChecked = .t. - Endif - Endif - Endfor - If !llAtLeastOneBoxChecked and Empty(Thisform.oSearchOptions.cOtherIncludes) - lcMessage = 'You must specify file extension(s) to search.' - lnReturn = -7 - Endif - Endif - - If lnReturn < 0 - MessageBox(lcMessage + ' Please fix.', 16, 'GoFish') - Endif - - Return lnReturn - - ENDPROC - - PROCEDURE Check2.Click - Thisform.oSearchEngine.ClearReplaceSettings() - ENDPROC - - PROCEDURE Check3.Click - Thisform.oSearchEngine.ClearReplaceSettings() - ENDPROC - - PROCEDURE chkcomment.Click - *-- GF$ needs work to support the "Comments" feature... - - Thisform.oSearchEngine.ClearReplaceSettings() - ENDPROC - - PROCEDURE chkMatchCase.Click - Thisform.oSearchEngine.ClearReplaceSettings() - ENDPROC - - PROCEDURE chkMatchWholeWord.Click - Thisform.oSearchEngine.ClearReplaceSettings() - ENDPROC - - PROCEDURE chkTimeStamp.Click - DoDefault() - Thisform.Refresh() - - Thisform.txtTimeStampFrom.SetFocus() - ENDPROC - - PROCEDURE cmdCancel.Click - Thisform.lReturn = .f. - - Thisform.SaveOptions() - - Thisform.Release() - ENDPROC - - PROCEDURE CmdGoFish.Click - Local lnValidate - - lnValidate = Thisform.ValidateInputs() - - If lnValidate < 0 - - Do Case - Case lnValidate = -4 - Thisform.pageframeScope.Page4.editPath.SetFocus() - - Case lnValidate = -5 - Thisform.txtTimeStampFrom.SetFocus() - - Otherwise - Thisform.editSearch.SetFocus() - Endcase - - Return .f. - EndIf - - Thisform.lReturn = .t. - - Thisform.Release() - - - - - - - ENDPROC - - PROCEDURE CmdGoFish.Refresh - Local llEnabled - - llEnabled = !Empty(Thisform.GetCurrentScope()) - - This.Enabled = llEnabled - - ENDPROC - - PROCEDURE cmdHelp.Click - - Text to lcText PreText 3 NoSHow - The File Template is a filename/extension filter that will run along with the selections in the Filetypes region. The format is: - - [*]filename[*] (dot) [*]ext[*] - - Meaning, the filename pattern comes first and can use the wildcard character (*) at the beginning or end. - - The extension pattern, if used, must be preceded by a dot (.), and can use the wildcard character at the beginning or the end. - - If an extension is included, it will override the extensions in the FileTypes region. - EndText - - - MessageBox(lcText, 0, 'File Template Help') - ENDPROC - - PROCEDURE comboSearchExpressionHistoryDropDownArrow.GotFocus - Local loCombo - - *-- Store current value of editbox. I the user presses ESCAPE in the actual combobox, - *-- the oringal value can be recovered from here. - This.Tag = This.Parent.editSearch.Value - - loCombo = This.Parent.comboSearchExpressionHistory - - loCombo.OpenTable() - - Thisform.comboSearchExpressionHistory.Requery() - - With loCombo - .ListIndex = 1 - .Visible = .T. - .SetFocus() - Endwith - - Keyboard '{ALT+DNARROW}' && To expand the actual dropdown listbox that holds all the values - ENDPROC - - PROCEDURE comboSearchExpressionHistoryDropDownArrow.Init - this.Top = this.Parent.editSearch.top - ENDPROC - - PROCEDURE Command1.Click - Local lcFilename, lcText - - lcFilename = Thisform.oSearchEngine.cFilesToSkipFile - - If !File(lcFilename) - - Text to lcText PRETEXT 3 noshow - ** Contains names of files and folders to be skipped: one per line, case insensitive, wildcards allowed - ** -- File name (no path) - ** Main.PRG - ** FOO*.TXT - ** -- Folders (with leading and trailing backslash) - ** \Purchased\WestWind\ - ** \Temp*\ - ** -- Or combined - ** \Temp*\*.txt - - ** These files and folders will be skipped if the "Skip Files option" is checked on the Advanced form. - ** The default name and location for this file is: (Home(7) + '\GF_Files_To_Skip.txt') - ** Might be set to a local directory - - ** Blank lines and lines beginning with ** are not processed. - - EndText - - StrToFile(lcText, lcFilename) - Endif - - Modify File (lcFilename) - - ENDPROC - - PROCEDURE containerFileTypes.Check1.InteractiveChange - DODEFAULT() - - WITH this.parent - .chkscx.value = this.value - .chkvcx.value = this.value - .chkmnx.value = this.value - .chkdbc.value = this.value - .chklbx.value = this.value - .chkfrx.value = this.value - .chkpjx.value = this.value - .chkprg.value = this.value - .chkspr.value = this.value - .chkmpr.value = this.value - .chkini.value = this.value - .chkh.value = this.value - ENDWITH - ENDPROC - - PROCEDURE containerFileTypes.Check2.InteractiveChange - DODEFAULT() - - WITH This.parent - .chkhtml.value = this.value - .chkasp.value = this.value - .chkjava.value = this.value - .chkjsp.value = this.value - .chkxml.value = this.value - .chktxt.value = this.value - ENDWITH - ENDPROC - - PROCEDURE containerFileTypes.Refresh - Local llEnabled, loControl - - llEnabled = Empty(JustExt(Thisform.oSearchOptions.cFileTemplate)) - - For each loControl in this.Controls - Try - loControl.Enabled = llEnabled - Catch - EndTry - Endfor - - This.Enabled = llEnabled - ENDPROC - - PROCEDURE editFileTemplate.InteractiveChange - This.Value = This.value - Thisform.containerFileTypes.Refresh() - ENDPROC - - PROCEDURE editSearch.GotFocus - this.Tag = this.Value - - ENDPROC - - PROCEDURE pageframeScope.Page1.Activate - Thisform.SetScope(1) - ENDPROC - - PROCEDURE pageframeScope.Page1.txtPath.GotFocus - This.Tag = Upper(Alltrim(this.Value)) - ENDPROC - - PROCEDURE pageframeScope.Page1.txtPath.InteractiveChange - DODEFAULT() - - Thisform.oSearchEngine.ClearReplaceSettings() - - ENDPROC - - PROCEDURE pageframeScope.Page2.Activate - Thisform.SetScope(2) - This.cboProject.SetFocus() - ENDPROC - - PROCEDURE pageframeScope.Page2.CboProject.Valid - Thisform.Refresh() - ENDPROC - - PROCEDURE pageframeScope.Page2.CmdDir.Click - Local lcProject, lcSelectedProject - - lcSelectedProject = GetFile('PJX', 'Select Project:', 'Select') - - If Empty(lcSelectedProject) - return - Endif - - ThisForm.oSearchEngine.SetProject(lcSelectedProject) - - This.Parent.cboProject.Requery() - - This.Parent.cboProject.Value = Thisform.oSearchEngine.oSearchOptions.cProject - - Thisform.Refresh() - - ENDPROC - - PROCEDURE pageframeScope.Page3.Activate - Thisform.SetScope(3) - ENDPROC - - PROCEDURE pageframeScope.Page4.Activate - Thisform.SetScope(4) - This.editPath.SetFocus() - This.editPath.SelStart = 0 - This.editPath.SelLength = 1000 - - ENDPROC - - PROCEDURE pageframeScope.Page4.CmdDir.Click - Local lcGetDir, lcSomeDir - - lcNewPath = GetDir(Thisform.oSearchOptions.cPath, '', '', 16 + 32 + 64) - - If !Empty(lcNewPath) - Thisform.oSearchOptions.cPath = Lower(Alltrim(lcNewPath, '\')) - Endif - - Thisform.Refresh() - - - - ENDPROC - - PROCEDURE pageframeScope.Page4.Command1.Click - Thisform.oSearchOptions.cPath = Alltrim(Lower(Thisform.cCurrentDir), '\') - - Thisform.Refresh() - - With This.Parent.editPath - .SetFocus() - .SelStart = Len(Alltrim(Thisform.cCurrentDir, '\')) - Endwith - - - - ENDPROC - - PROCEDURE pageframeScope.Page4.editPath.InteractiveChange - This.Value = This.value - Thisform.cmdGoFish.Refresh() - ENDPROC - - PROCEDURE pageframeScope.Page5.Activate - - Thisform.SetScope(5) - - With This.comboSearchScropeHistory - .SetFocus() - .SelStart = 0 - .SelLength = 1000 - Endwith - - - ENDPROC - - PROCEDURE txtTimeStampFrom.Refresh - This.Enabled = Thisform.oSearchOptions.lTimeStamp - ENDPROC - - PROCEDURE txtTimeStampTo.Refresh - This.Enabled = Thisform.oSearchOptions.lTimeStamp - ENDPROC +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_advanced" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_advanced.scx b/Source/Forms/gofish_advanced.scx index a21ff3b..9fbbe1a 100644 Binary files a/Source/Forms/gofish_advanced.scx and b/Source/Forms/gofish_advanced.scx differ diff --git a/Source/Forms/gofish_extendsearch.SCT b/Source/Forms/gofish_extendsearch.SCT index 3b02b0c..f491c6c 100644 Binary files a/Source/Forms/gofish_extendsearch.SCT and b/Source/Forms/gofish_extendsearch.SCT differ diff --git a/Source/Forms/gofish_extendsearch.dataenvironment.sc2 b/Source/Forms/gofish_extendsearch.dataenvironment.sc2 new file mode 100644 index 0000000..98ab737 --- /dev/null +++ b/Source/Forms/gofish_extendsearch.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_extendsearch.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_extendsearch.gf_filter_extendsearch.sc2 b/Source/Forms/gofish_extendsearch.gf_filter_extendsearch.sc2 new file mode 100644 index 0000000..17bb246 --- /dev/null +++ b/Source/Forms/gofish_extendsearch.gf_filter_extendsearch.sc2 @@ -0,0 +1,325 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_extendsearch.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_filter_extendsearch AS gf_filterform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + + * + *p: lhascurrentfilter + * + + BorderStyle = 3 + Caption = "GoFish Extend Search" + cuisettingsfile = GF_Filter_ExtendSearch_Form_Settings.xml + DoCreate = .T. + Height = 184 + Left = 0 + lhascurrentfilter = .F. + Name = "GF_Filter_ExtendSearch" + Top = 0 + Width = 280 + _memberdata = + + + + Container1.containerClassName.Command1.Name = "Command1" + Container1.containerClassName.Command2.Name = "Command2" + Container1.containerClassName.Label1.Name = "Label1" + Container1.containerClassName.Left = 1087 + Container1.containerClassName.Line1.Name = "Line1" + Container1.containerClassName.Line2.Name = "Line2" + Container1.containerClassName.Name = "containerClassName" + Container1.containerClassName.Top = 94 + Container1.containerClassName.txt1.Name = "txt1" + Container1.containerFilename.Command1.Name = "Command1" + Container1.containerFilename.Command2.Name = "Command2" + Container1.containerFilename.Label1.Name = "Label1" + Container1.containerFilename.Left = 705 + Container1.containerFilename.Line1.Name = "Line1" + Container1.containerFilename.Line2.Name = "Line2" + Container1.containerFilename.Name = "containerFilename" + Container1.containerFilename.Top = 190 + Container1.containerFilename.txt1.Name = "txt1" + Container1.containerFilePath.Command1.Name = "Command1" + Container1.containerFilePath.Command2.Name = "Command2" + Container1.containerFilePath.Label1.Name = "Label1" + Container1.containerFilePath.Left = 833 + Container1.containerFilePath.Line1.Name = "Line1" + Container1.containerFilePath.Line2.Name = "Line2" + Container1.containerFilePath.Name = "containerFilePath" + Container1.containerFilePath.Top = 190 + Container1.containerFilePath.txt1.Name = "txt1" + Container1.containerFileType.chkASP.Alignment = 0 + Container1.containerFileType.chkASP.Name = "chkASP" + Container1.containerFileType.chkDBC.Alignment = 0 + Container1.containerFileType.chkDBC.Name = "chkDBC" + Container1.containerFileType.chkFRX.Alignment = 0 + Container1.containerFileType.chkFRX.Name = "chkFRX" + Container1.containerFileType.chkH.Alignment = 0 + Container1.containerFileType.chkH.Name = "chkH" + Container1.containerFileType.ChkHTML.Alignment = 0 + Container1.containerFileType.ChkHTML.Name = "ChkHTML" + Container1.containerFileType.chkini.Alignment = 0 + Container1.containerFileType.chkini.Name = "chkini" + Container1.containerFileType.chkJava.Alignment = 0 + Container1.containerFileType.chkJava.Name = "chkJava" + Container1.containerFileType.chkJSP.Alignment = 0 + Container1.containerFileType.chkJSP.Name = "chkJSP" + Container1.containerFileType.chkLBX.Alignment = 0 + Container1.containerFileType.chkLBX.Name = "chkLBX" + Container1.containerFileType.chkMNX.Alignment = 0 + Container1.containerFileType.chkMNX.Name = "chkMNX" + Container1.containerFileType.chkMPR.Alignment = 0 + Container1.containerFileType.chkMPR.Name = "chkMPR" + Container1.containerFileType.chkPJX.Alignment = 0 + Container1.containerFileType.chkPJX.Name = "chkPJX" + Container1.containerFileType.chkPRG.Alignment = 0 + Container1.containerFileType.chkPRG.Name = "chkPRG" + Container1.containerFileType.chkSCX.Alignment = 0 + Container1.containerFileType.chkSCX.Name = "chkSCX" + Container1.containerFileType.chkSPR.Alignment = 0 + Container1.containerFileType.chkSPR.Name = "chkSPR" + Container1.containerFileType.chkTXT.Alignment = 0 + Container1.containerFileType.chkTXT.Name = "chkTXT" + Container1.containerFileType.chkVCX.Alignment = 0 + Container1.containerFileType.chkVCX.Name = "chkVCX" + Container1.containerFileType.chkXML.Alignment = 0 + Container1.containerFileType.chkXML.Name = "chkXML" + Container1.containerFileType.Command1.Name = "Command1" + Container1.containerFileType.Command2.Name = "Command2" + Container1.containerFileType.Label1.Name = "Label1" + Container1.containerFileType.Left = 338 + Container1.containerFileType.Line1.Name = "Line1" + Container1.containerFileType.Line2.Name = "Line2" + Container1.containerFileType.Name = "containerFileType" + Container1.containerFileType.Top = 8 + Container1.containerMatchedLine.Command1.Name = "Command1" + Container1.containerMatchedLine.Command2.Name = "Command2" + Container1.containerMatchedLine.Label1.Name = "Label1" + Container1.containerMatchedLine.Left = 705 + Container1.containerMatchedLine.Line1.Name = "Line1" + Container1.containerMatchedLine.Line2.Name = "Line2" + Container1.containerMatchedLine.Name = "containerMatchedLine" + Container1.containerMatchedLine.Top = 9 + Container1.containerMatchedLine.txt1.Name = "txt1" + Container1.containerMatchType.Check1.Alignment = 0 + Container1.containerMatchType.Check1.Name = "Check1" + Container1.containerMatchType.Check10.Alignment = 0 + Container1.containerMatchType.Check10.Name = "Check10" + Container1.containerMatchType.Check11.Alignment = 0 + Container1.containerMatchType.Check11.Name = "Check11" + Container1.containerMatchType.Check12.Alignment = 0 + Container1.containerMatchType.Check12.Name = "Check12" + Container1.containerMatchType.Check14.Alignment = 0 + Container1.containerMatchType.Check14.Name = "Check14" + Container1.containerMatchType.Check16.Alignment = 0 + Container1.containerMatchType.Check16.Name = "Check16" + Container1.containerMatchType.Check17.Alignment = 0 + Container1.containerMatchType.Check17.Name = "Check17" + Container1.containerMatchType.Check18.Alignment = 0 + Container1.containerMatchType.Check18.Name = "Check18" + Container1.containerMatchType.Check19.Alignment = 0 + Container1.containerMatchType.Check19.Name = "Check19" + Container1.containerMatchType.Check2.Alignment = 0 + Container1.containerMatchType.Check2.Name = "Check2" + Container1.containerMatchType.Check20.Alignment = 0 + Container1.containerMatchType.Check20.Name = "Check20" + Container1.containerMatchType.Check21.Alignment = 0 + Container1.containerMatchType.Check21.Name = "Check21" + Container1.containerMatchType.Check22.Alignment = 0 + Container1.containerMatchType.Check22.Name = "Check22" + Container1.containerMatchType.Check23.Alignment = 0 + Container1.containerMatchType.Check23.Name = "Check23" + Container1.containerMatchType.Check24.Alignment = 0 + Container1.containerMatchType.Check24.Name = "Check24" + Container1.containerMatchType.Check3.Alignment = 0 + Container1.containerMatchType.Check3.Name = "Check3" + Container1.containerMatchType.Check4.Alignment = 0 + Container1.containerMatchType.Check4.Name = "Check4" + Container1.containerMatchType.Check5.Alignment = 0 + Container1.containerMatchType.Check5.Name = "Check5" + Container1.containerMatchType.Check7.Alignment = 0 + Container1.containerMatchType.Check7.Name = "Check7" + Container1.containerMatchType.Check8.Alignment = 0 + Container1.containerMatchType.Check8.Name = "Check8" + Container1.containerMatchType.Check9.Alignment = 0 + Container1.containerMatchType.Check9.Name = "Check9" + Container1.containerMatchType.Command1.Name = "Command1" + Container1.containerMatchType.Command2.Name = "Command2" + Container1.containerMatchType.Gf_filtercheckbox1.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox1.Name = "Gf_filtercheckbox1" + Container1.containerMatchType.Gf_filtercheckbox2.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox2.Name = "Gf_filtercheckbox2" + Container1.containerMatchType.Gf_filtercheckbox3.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox3.Name = "Gf_filtercheckbox3" + Container1.containerMatchType.Gf_filtercheckbox4.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox4.Name = "Gf_filtercheckbox4" + Container1.containerMatchType.Gf_filtercheckbox5.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox5.Name = "Gf_filtercheckbox5" + Container1.containerMatchType.Gf_filtercheckbox6.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox6.Name = "Gf_filtercheckbox6" + Container1.containerMatchType.Gf_filtercheckbox7.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox7.Name = "Gf_filtercheckbox7" + Container1.containerMatchType.Label1.Name = "Label1" + Container1.containerMatchType.Label2.Name = "Label2" + Container1.containerMatchType.Left = 449 + Container1.containerMatchType.Line1.Name = "Line1" + Container1.containerMatchType.Line2.Name = "Line2" + Container1.containerMatchType.Line3.Name = "Line3" + Container1.containerMatchType.Name = "containerMatchType" + Container1.containerMatchType.Top = 8 + Container1.containerMethodName.Command1.Name = "Command1" + Container1.containerMethodName.Command2.Name = "Command2" + Container1.containerMethodName.Label1.Name = "Label1" + Container1.containerMethodName.Left = 706 + Container1.containerMethodName.Line1.Name = "Line1" + Container1.containerMethodName.Line2.Name = "Line2" + Container1.containerMethodName.Name = "containerMethodName" + Container1.containerMethodName.Top = 94 + Container1.containerMethodName.txt1.Name = "txt1" + Container1.containerObjectName.Command1.Name = "Command1" + Container1.containerObjectName.Command2.Name = "Command2" + Container1.containerObjectName.Label1.Name = "Label1" + Container1.containerObjectName.Left = 704 + Container1.containerObjectName.Line1.Name = "Line1" + Container1.containerObjectName.Line2.Name = "Line2" + Container1.containerObjectName.Name = "containerObjectName" + Container1.containerObjectName.Top = 277 + Container1.containerObjectName.txt1.Name = "txt1" + Container1.containerTimestamp.chkTimeStamp.Alignment = 0 + Container1.containerTimestamp.chkTimeStamp.Name = "chkTimeStamp" + Container1.containerTimestamp.Command1.Name = "Command1" + Container1.containerTimestamp.Command2.Name = "Command2" + Container1.containerTimestamp.Label1.Name = "Label1" + Container1.containerTimestamp.Label11.Name = "Label11" + Container1.containerTimestamp.Label12.Name = "Label12" + Container1.containerTimestamp.Left = 961 + Container1.containerTimestamp.Line1.Name = "Line1" + Container1.containerTimestamp.Line2.Name = "Line2" + Container1.containerTimestamp.Name = "containerTimestamp" + Container1.containerTimestamp.Top = 193 + Container1.containerTimestamp.txtTimeStampFrom.Name = "txtTimeStampFrom" + Container1.containerTimestamp.txtTimeStampTo.Name = "txtTimeStampTo" + Container1.Gf_textboxcontainer1.Command1.Name = "Command1" + Container1.Gf_textboxcontainer1.Command2.Name = "Command2" + Container1.Gf_textboxcontainer1.Label1.Name = "Label1" + Container1.Gf_textboxcontainer1.Left = 8 + Container1.Gf_textboxcontainer1.Line1.Name = "Line1" + Container1.Gf_textboxcontainer1.Line2.Name = "Line2" + Container1.Gf_textboxcontainer1.Name = "Gf_textboxcontainer1" + Container1.Gf_textboxcontainer1.Top = 8 + Container1.Gf_textboxcontainer1.txt1.Name = "txt1" + Container1.Height = 102 + Container1.Left = 4 + Container1.Name = "Container1" + Container1.Textboxcontainer1.Command1.Name = "Command1" + Container1.Textboxcontainer1.Command2.Name = "Command2" + Container1.Textboxcontainer1.Label1.Name = "Label1" + Container1.Textboxcontainer1.Left = 961 + Container1.Textboxcontainer1.Line1.Name = "Line1" + Container1.Textboxcontainer1.Line2.Name = "Line2" + Container1.Textboxcontainer1.Name = "Textboxcontainer1" + Container1.Textboxcontainer1.Top = 94 + Container1.Textboxcontainer1.txt1.Name = "txt1" + Container1.Textboxcontainer2.Command1.Name = "Command1" + Container1.Textboxcontainer2.Command2.Name = "Command2" + Container1.Textboxcontainer2.Label1.Name = "Label1" + Container1.Textboxcontainer2.Left = 834 + Container1.Textboxcontainer2.Line1.Name = "Line1" + Container1.Textboxcontainer2.Line2.Name = "Line2" + Container1.Textboxcontainer2.Name = "Textboxcontainer2" + Container1.Textboxcontainer2.Top = 94 + Container1.Textboxcontainer2.txt1.Name = "txt1" + Container1.Textboxcontainer3.Command1.Name = "Command1" + Container1.Textboxcontainer3.Command2.Name = "Command2" + Container1.Textboxcontainer3.Label1.Name = "Label1" + Container1.Textboxcontainer3.Left = 834 + Container1.Textboxcontainer3.Line1.Name = "Line1" + Container1.Textboxcontainer3.Line2.Name = "Line2" + Container1.Textboxcontainer3.Name = "Textboxcontainer3" + Container1.Textboxcontainer3.Top = 276 + Container1.Textboxcontainer3.txt1.Name = "txt1" + Container1.Top = -2 + Container1.Width = 1712 + Shape1.Anchor = 0 + Shape1.Name = "Shape1" + cmdOK.Anchor = 0 + cmdOK.Left = 30 + cmdOK.Name = "cmdOK" + cmdOK.Top = 102 + Command2.Anchor = 0 + Command2.Left = 1275 + Command2.Name = "Command2" + Command3.Anchor = 0 + Command3.Left = 186 + Command3.Name = "Command3" + Command3.Top = 102 + Check1.Alignment = 0 + Check1.Anchor = 0 + Check1.Name = "Check1" + Check2.Alignment = 0 + Check2.Anchor = 0 + Check2.Name = "Check2" + Label4.Anchor = 0 + Label4.Name = "Label4" + Line1.Left = 0 + Line1.Name = "Line1" + Line1.Top = 90 + + ADD OBJECT 'Label1' AS label WITH ; + Caption = "Label1", ; + ForeColor = 255,0,0, ; + Height = 41, ; + Left = 12, ; + Name = "Label1", ; + Top = 138, ; + Width = 256, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Init + Lparameters toForm, toFilter + + Local lcProcCodeValue + DoDefault(m.toForm, m.toFilter) + + If m.toForm.lApplyFilter + Thisform.lHasCurrentFilter = .F. + Else + lcProcCodeValue = Thisform.oFilter.ProcCode_Filter + Thisform.oFilter.ProcCode_Filter = '' + + Thisform.Buildfilterstring() + Thisform.lHasCurrentFilter = Not Empty(Thisform.cFilter ) + + Thisform.oFilter.ProcCode_Filter = m.lcProcCodeValue + Endif + + Thisform.Refresh() + + + ENDPROC + + PROCEDURE Command3.Click + DoDefault() + + Thisform.lHasCurrentFilter = .F. + thisform.Refresh() + ENDPROC + + PROCEDURE Label1.Refresh + If Thisform.lHasCurrentFilter + This.Visible = .T. + This.Caption = 'Caution: There are other filters that will take effect if you click "Apply". See the filter form.' + Else + This.Visible = .F. + Endif + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_extendsearch.sc2 b/Source/Forms/gofish_extendsearch.sc2 index 27956ef..208d573 100644 --- a/Source/Forms/gofish_extendsearch.sc2 +++ b/Source/Forms/gofish_extendsearch.sc2 @@ -4,335 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_extendsearch.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_filter_extendsearch AS gf_filterform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> - - * - *p: lhascurrentfilter - * - - BorderStyle = 3 - Caption = "GoFish Extend Search" - cuisettingsfile = GF_Filter_ExtendSearch_Form_Settings.xml - DoCreate = .T. - Height = 184 - Left = 0 - lhascurrentfilter = .F. - Name = "GF_Filter_ExtendSearch" - Top = 0 - Width = 280 - _memberdata = - - - - Container1.containerClassName.Command1.Name = "Command1" - Container1.containerClassName.Command2.Name = "Command2" - Container1.containerClassName.Label1.Name = "Label1" - Container1.containerClassName.Left = 1087 - Container1.containerClassName.Line1.Name = "Line1" - Container1.containerClassName.Line2.Name = "Line2" - Container1.containerClassName.Name = "containerClassName" - Container1.containerClassName.Top = 94 - Container1.containerClassName.txt1.Name = "txt1" - Container1.containerFilename.Command1.Name = "Command1" - Container1.containerFilename.Command2.Name = "Command2" - Container1.containerFilename.Label1.Name = "Label1" - Container1.containerFilename.Left = 705 - Container1.containerFilename.Line1.Name = "Line1" - Container1.containerFilename.Line2.Name = "Line2" - Container1.containerFilename.Name = "containerFilename" - Container1.containerFilename.Top = 190 - Container1.containerFilename.txt1.Name = "txt1" - Container1.containerFilePath.Command1.Name = "Command1" - Container1.containerFilePath.Command2.Name = "Command2" - Container1.containerFilePath.Label1.Name = "Label1" - Container1.containerFilePath.Left = 833 - Container1.containerFilePath.Line1.Name = "Line1" - Container1.containerFilePath.Line2.Name = "Line2" - Container1.containerFilePath.Name = "containerFilePath" - Container1.containerFilePath.Top = 190 - Container1.containerFilePath.txt1.Name = "txt1" - Container1.containerFileType.chkASP.Alignment = 0 - Container1.containerFileType.chkASP.Name = "chkASP" - Container1.containerFileType.chkDBC.Alignment = 0 - Container1.containerFileType.chkDBC.Name = "chkDBC" - Container1.containerFileType.chkFRX.Alignment = 0 - Container1.containerFileType.chkFRX.Name = "chkFRX" - Container1.containerFileType.chkH.Alignment = 0 - Container1.containerFileType.chkH.Name = "chkH" - Container1.containerFileType.ChkHTML.Alignment = 0 - Container1.containerFileType.ChkHTML.Name = "ChkHTML" - Container1.containerFileType.chkini.Alignment = 0 - Container1.containerFileType.chkini.Name = "chkini" - Container1.containerFileType.chkJava.Alignment = 0 - Container1.containerFileType.chkJava.Name = "chkJava" - Container1.containerFileType.chkJSP.Alignment = 0 - Container1.containerFileType.chkJSP.Name = "chkJSP" - Container1.containerFileType.chkLBX.Alignment = 0 - Container1.containerFileType.chkLBX.Name = "chkLBX" - Container1.containerFileType.chkMNX.Alignment = 0 - Container1.containerFileType.chkMNX.Name = "chkMNX" - Container1.containerFileType.chkMPR.Alignment = 0 - Container1.containerFileType.chkMPR.Name = "chkMPR" - Container1.containerFileType.chkPJX.Alignment = 0 - Container1.containerFileType.chkPJX.Name = "chkPJX" - Container1.containerFileType.chkPRG.Alignment = 0 - Container1.containerFileType.chkPRG.Name = "chkPRG" - Container1.containerFileType.chkSCX.Alignment = 0 - Container1.containerFileType.chkSCX.Name = "chkSCX" - Container1.containerFileType.chkSPR.Alignment = 0 - Container1.containerFileType.chkSPR.Name = "chkSPR" - Container1.containerFileType.chkTXT.Alignment = 0 - Container1.containerFileType.chkTXT.Name = "chkTXT" - Container1.containerFileType.chkVCX.Alignment = 0 - Container1.containerFileType.chkVCX.Name = "chkVCX" - Container1.containerFileType.chkXML.Alignment = 0 - Container1.containerFileType.chkXML.Name = "chkXML" - Container1.containerFileType.Command1.Name = "Command1" - Container1.containerFileType.Command2.Name = "Command2" - Container1.containerFileType.Label1.Name = "Label1" - Container1.containerFileType.Left = 338 - Container1.containerFileType.Line1.Name = "Line1" - Container1.containerFileType.Line2.Name = "Line2" - Container1.containerFileType.Name = "containerFileType" - Container1.containerFileType.Top = 8 - Container1.containerMatchedLine.Command1.Name = "Command1" - Container1.containerMatchedLine.Command2.Name = "Command2" - Container1.containerMatchedLine.Label1.Name = "Label1" - Container1.containerMatchedLine.Left = 705 - Container1.containerMatchedLine.Line1.Name = "Line1" - Container1.containerMatchedLine.Line2.Name = "Line2" - Container1.containerMatchedLine.Name = "containerMatchedLine" - Container1.containerMatchedLine.Top = 9 - Container1.containerMatchedLine.txt1.Name = "txt1" - Container1.containerMatchType.Check1.Alignment = 0 - Container1.containerMatchType.Check1.Name = "Check1" - Container1.containerMatchType.Check10.Alignment = 0 - Container1.containerMatchType.Check10.Name = "Check10" - Container1.containerMatchType.Check11.Alignment = 0 - Container1.containerMatchType.Check11.Name = "Check11" - Container1.containerMatchType.Check12.Alignment = 0 - Container1.containerMatchType.Check12.Name = "Check12" - Container1.containerMatchType.Check14.Alignment = 0 - Container1.containerMatchType.Check14.Name = "Check14" - Container1.containerMatchType.Check16.Alignment = 0 - Container1.containerMatchType.Check16.Name = "Check16" - Container1.containerMatchType.Check17.Alignment = 0 - Container1.containerMatchType.Check17.Name = "Check17" - Container1.containerMatchType.Check18.Alignment = 0 - Container1.containerMatchType.Check18.Name = "Check18" - Container1.containerMatchType.Check19.Alignment = 0 - Container1.containerMatchType.Check19.Name = "Check19" - Container1.containerMatchType.Check2.Alignment = 0 - Container1.containerMatchType.Check2.Name = "Check2" - Container1.containerMatchType.Check20.Alignment = 0 - Container1.containerMatchType.Check20.Name = "Check20" - Container1.containerMatchType.Check21.Alignment = 0 - Container1.containerMatchType.Check21.Name = "Check21" - Container1.containerMatchType.Check22.Alignment = 0 - Container1.containerMatchType.Check22.Name = "Check22" - Container1.containerMatchType.Check23.Alignment = 0 - Container1.containerMatchType.Check23.Name = "Check23" - Container1.containerMatchType.Check24.Alignment = 0 - Container1.containerMatchType.Check24.Name = "Check24" - Container1.containerMatchType.Check3.Alignment = 0 - Container1.containerMatchType.Check3.Name = "Check3" - Container1.containerMatchType.Check4.Alignment = 0 - Container1.containerMatchType.Check4.Name = "Check4" - Container1.containerMatchType.Check5.Alignment = 0 - Container1.containerMatchType.Check5.Name = "Check5" - Container1.containerMatchType.Check7.Alignment = 0 - Container1.containerMatchType.Check7.Name = "Check7" - Container1.containerMatchType.Check8.Alignment = 0 - Container1.containerMatchType.Check8.Name = "Check8" - Container1.containerMatchType.Check9.Alignment = 0 - Container1.containerMatchType.Check9.Name = "Check9" - Container1.containerMatchType.Command1.Name = "Command1" - Container1.containerMatchType.Command2.Name = "Command2" - Container1.containerMatchType.Gf_filtercheckbox1.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox1.Name = "Gf_filtercheckbox1" - Container1.containerMatchType.Gf_filtercheckbox2.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox2.Name = "Gf_filtercheckbox2" - Container1.containerMatchType.Gf_filtercheckbox3.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox3.Name = "Gf_filtercheckbox3" - Container1.containerMatchType.Gf_filtercheckbox4.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox4.Name = "Gf_filtercheckbox4" - Container1.containerMatchType.Gf_filtercheckbox5.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox5.Name = "Gf_filtercheckbox5" - Container1.containerMatchType.Gf_filtercheckbox6.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox6.Name = "Gf_filtercheckbox6" - Container1.containerMatchType.Gf_filtercheckbox7.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox7.Name = "Gf_filtercheckbox7" - Container1.containerMatchType.Label1.Name = "Label1" - Container1.containerMatchType.Label2.Name = "Label2" - Container1.containerMatchType.Left = 449 - Container1.containerMatchType.Line1.Name = "Line1" - Container1.containerMatchType.Line2.Name = "Line2" - Container1.containerMatchType.Line3.Name = "Line3" - Container1.containerMatchType.Name = "containerMatchType" - Container1.containerMatchType.Top = 8 - Container1.containerMethodName.Command1.Name = "Command1" - Container1.containerMethodName.Command2.Name = "Command2" - Container1.containerMethodName.Label1.Name = "Label1" - Container1.containerMethodName.Left = 706 - Container1.containerMethodName.Line1.Name = "Line1" - Container1.containerMethodName.Line2.Name = "Line2" - Container1.containerMethodName.Name = "containerMethodName" - Container1.containerMethodName.Top = 94 - Container1.containerMethodName.txt1.Name = "txt1" - Container1.containerObjectName.Command1.Name = "Command1" - Container1.containerObjectName.Command2.Name = "Command2" - Container1.containerObjectName.Label1.Name = "Label1" - Container1.containerObjectName.Left = 704 - Container1.containerObjectName.Line1.Name = "Line1" - Container1.containerObjectName.Line2.Name = "Line2" - Container1.containerObjectName.Name = "containerObjectName" - Container1.containerObjectName.Top = 277 - Container1.containerObjectName.txt1.Name = "txt1" - Container1.containerTimestamp.chkTimeStamp.Alignment = 0 - Container1.containerTimestamp.chkTimeStamp.Name = "chkTimeStamp" - Container1.containerTimestamp.Command1.Name = "Command1" - Container1.containerTimestamp.Command2.Name = "Command2" - Container1.containerTimestamp.Label1.Name = "Label1" - Container1.containerTimestamp.Label11.Name = "Label11" - Container1.containerTimestamp.Label12.Name = "Label12" - Container1.containerTimestamp.Left = 961 - Container1.containerTimestamp.Line1.Name = "Line1" - Container1.containerTimestamp.Line2.Name = "Line2" - Container1.containerTimestamp.Name = "containerTimestamp" - Container1.containerTimestamp.Top = 193 - Container1.containerTimestamp.txtTimeStampFrom.Name = "txtTimeStampFrom" - Container1.containerTimestamp.txtTimeStampTo.Name = "txtTimeStampTo" - Container1.Gf_textboxcontainer1.Command1.Name = "Command1" - Container1.Gf_textboxcontainer1.Command2.Name = "Command2" - Container1.Gf_textboxcontainer1.Label1.Name = "Label1" - Container1.Gf_textboxcontainer1.Left = 8 - Container1.Gf_textboxcontainer1.Line1.Name = "Line1" - Container1.Gf_textboxcontainer1.Line2.Name = "Line2" - Container1.Gf_textboxcontainer1.Name = "Gf_textboxcontainer1" - Container1.Gf_textboxcontainer1.Top = 8 - Container1.Gf_textboxcontainer1.txt1.Name = "txt1" - Container1.Height = 102 - Container1.Left = 4 - Container1.Name = "Container1" - Container1.Textboxcontainer1.Command1.Name = "Command1" - Container1.Textboxcontainer1.Command2.Name = "Command2" - Container1.Textboxcontainer1.Label1.Name = "Label1" - Container1.Textboxcontainer1.Left = 961 - Container1.Textboxcontainer1.Line1.Name = "Line1" - Container1.Textboxcontainer1.Line2.Name = "Line2" - Container1.Textboxcontainer1.Name = "Textboxcontainer1" - Container1.Textboxcontainer1.Top = 94 - Container1.Textboxcontainer1.txt1.Name = "txt1" - Container1.Textboxcontainer2.Command1.Name = "Command1" - Container1.Textboxcontainer2.Command2.Name = "Command2" - Container1.Textboxcontainer2.Label1.Name = "Label1" - Container1.Textboxcontainer2.Left = 834 - Container1.Textboxcontainer2.Line1.Name = "Line1" - Container1.Textboxcontainer2.Line2.Name = "Line2" - Container1.Textboxcontainer2.Name = "Textboxcontainer2" - Container1.Textboxcontainer2.Top = 94 - Container1.Textboxcontainer2.txt1.Name = "txt1" - Container1.Textboxcontainer3.Command1.Name = "Command1" - Container1.Textboxcontainer3.Command2.Name = "Command2" - Container1.Textboxcontainer3.Label1.Name = "Label1" - Container1.Textboxcontainer3.Left = 834 - Container1.Textboxcontainer3.Line1.Name = "Line1" - Container1.Textboxcontainer3.Line2.Name = "Line2" - Container1.Textboxcontainer3.Name = "Textboxcontainer3" - Container1.Textboxcontainer3.Top = 276 - Container1.Textboxcontainer3.txt1.Name = "txt1" - Container1.Top = -2 - Container1.Width = 1712 - Shape1.Anchor = 0 - Shape1.Name = "Shape1" - cmdOK.Anchor = 0 - cmdOK.Left = 30 - cmdOK.Name = "cmdOK" - cmdOK.Top = 102 - Command2.Anchor = 0 - Command2.Left = 1275 - Command2.Name = "Command2" - Command3.Anchor = 0 - Command3.Left = 186 - Command3.Name = "Command3" - Command3.Top = 102 - Check1.Alignment = 0 - Check1.Anchor = 0 - Check1.Name = "Check1" - Check2.Alignment = 0 - Check2.Anchor = 0 - Check2.Name = "Check2" - Label4.Anchor = 0 - Label4.Name = "Label4" - Line1.Left = 0 - Line1.Name = "Line1" - Line1.Top = 90 - - ADD OBJECT 'Label1' AS label WITH ; - Caption = "Label1", ; - ForeColor = 255,0,0, ; - Height = 41, ; - Left = 12, ; - Name = "Label1", ; - Top = 138, ; - Width = 256, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - PROCEDURE Init - Lparameters toForm, toFilter - - Local lcProcCodeValue - DoDefault(m.toForm, m.toFilter) - - If m.toForm.lApplyFilter - Thisform.lHasCurrentFilter = .F. - Else - lcProcCodeValue = Thisform.oFilter.ProcCode_Filter - Thisform.oFilter.ProcCode_Filter = '' - - Thisform.Buildfilterstring() - Thisform.lHasCurrentFilter = Not Empty(Thisform.cFilter ) - - Thisform.oFilter.ProcCode_Filter = m.lcProcCodeValue - Endif - - Thisform.Refresh() - - - ENDPROC - - PROCEDURE Command3.Click - DoDefault() - - Thisform.lHasCurrentFilter = .F. - thisform.Refresh() - ENDPROC - - PROCEDURE Label1.Refresh - If Thisform.lHasCurrentFilter - This.Visible = .T. - This.Caption = 'Caution: There are other filters that will take effect if you click "Apply". See the filter form.' - Else - This.Visible = .F. - Endif - ENDPROC +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_filter_extendsearch" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_extendsearch.scx b/Source/Forms/gofish_extendsearch.scx index 1d7fc97..ad1a974 100644 Binary files a/Source/Forms/gofish_extendsearch.scx and b/Source/Forms/gofish_extendsearch.scx differ diff --git a/Source/Forms/gofish_filter.SCT b/Source/Forms/gofish_filter.SCT index 6417df9..2b0d449 100644 Binary files a/Source/Forms/gofish_filter.SCT and b/Source/Forms/gofish_filter.SCT differ diff --git a/Source/Forms/gofish_filter.dataenvironment.sc2 b/Source/Forms/gofish_filter.dataenvironment.sc2 new file mode 100644 index 0000000..50e1da1 --- /dev/null +++ b/Source/Forms/gofish_filter.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_filter.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_filter.gf_filterform1.sc2 b/Source/Forms/gofish_filter.gf_filterform1.sc2 new file mode 100644 index 0000000..5160112 --- /dev/null +++ b/Source/Forms/gofish_filter.gf_filterform1.sc2 @@ -0,0 +1,213 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_filter.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_filterform1 AS gf_filterform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + cuisettingsfile = GF_Filter_Form_Settings.xml + DoCreate = .T. + Name = "GF_FilterForm1" + Container1.containerClassName.Command1.Name = "Command1" + Container1.containerClassName.Command2.Name = "Command2" + Container1.containerClassName.Label1.Name = "Label1" + Container1.containerClassName.Line1.Name = "Line1" + Container1.containerClassName.Line2.Name = "Line2" + Container1.containerClassName.Name = "containerClassName" + Container1.containerClassName.txt1.Name = "txt1" + Container1.containerFilename.Command1.Name = "Command1" + Container1.containerFilename.Command2.Name = "Command2" + Container1.containerFilename.Label1.Name = "Label1" + Container1.containerFilename.Line1.Name = "Line1" + Container1.containerFilename.Line2.Name = "Line2" + Container1.containerFilename.Name = "containerFilename" + Container1.containerFilename.txt1.Name = "txt1" + Container1.containerFilePath.Command1.Name = "Command1" + Container1.containerFilePath.Command2.Name = "Command2" + Container1.containerFilePath.Label1.Name = "Label1" + Container1.containerFilePath.Line1.Name = "Line1" + Container1.containerFilePath.Line2.Name = "Line2" + Container1.containerFilePath.Name = "containerFilePath" + Container1.containerFilePath.txt1.Name = "txt1" + Container1.containerFileType.chkASP.Alignment = 0 + Container1.containerFileType.chkASP.Name = "chkASP" + Container1.containerFileType.chkDBC.Alignment = 0 + Container1.containerFileType.chkDBC.Name = "chkDBC" + Container1.containerFileType.chkFRX.Alignment = 0 + Container1.containerFileType.chkFRX.Name = "chkFRX" + Container1.containerFileType.chkH.Alignment = 0 + Container1.containerFileType.chkH.Name = "chkH" + Container1.containerFileType.ChkHTML.Alignment = 0 + Container1.containerFileType.ChkHTML.Name = "ChkHTML" + Container1.containerFileType.chkini.Alignment = 0 + Container1.containerFileType.chkini.Name = "chkini" + Container1.containerFileType.chkJava.Alignment = 0 + Container1.containerFileType.chkJava.Name = "chkJava" + Container1.containerFileType.chkJSP.Alignment = 0 + Container1.containerFileType.chkJSP.Name = "chkJSP" + Container1.containerFileType.chkLBX.Alignment = 0 + Container1.containerFileType.chkLBX.Name = "chkLBX" + Container1.containerFileType.chkMNX.Alignment = 0 + Container1.containerFileType.chkMNX.Name = "chkMNX" + Container1.containerFileType.chkMPR.Alignment = 0 + Container1.containerFileType.chkMPR.Name = "chkMPR" + Container1.containerFileType.chkPJX.Alignment = 0 + Container1.containerFileType.chkPJX.Name = "chkPJX" + Container1.containerFileType.chkPRG.Alignment = 0 + Container1.containerFileType.chkPRG.Name = "chkPRG" + Container1.containerFileType.chkSCX.Alignment = 0 + Container1.containerFileType.chkSCX.Name = "chkSCX" + Container1.containerFileType.chkSPR.Alignment = 0 + Container1.containerFileType.chkSPR.Name = "chkSPR" + Container1.containerFileType.chkTXT.Alignment = 0 + Container1.containerFileType.chkTXT.Name = "chkTXT" + Container1.containerFileType.chkVCX.Alignment = 0 + Container1.containerFileType.chkVCX.Name = "chkVCX" + Container1.containerFileType.chkXML.Alignment = 0 + Container1.containerFileType.chkXML.Name = "chkXML" + Container1.containerFileType.Command1.Name = "Command1" + Container1.containerFileType.Command2.Name = "Command2" + Container1.containerFileType.Label1.Name = "Label1" + Container1.containerFileType.Line1.Name = "Line1" + Container1.containerFileType.Line2.Name = "Line2" + Container1.containerFileType.Name = "containerFileType" + Container1.containerMatchedLine.Command1.Name = "Command1" + Container1.containerMatchedLine.Command2.Name = "Command2" + Container1.containerMatchedLine.Label1.Name = "Label1" + Container1.containerMatchedLine.Line1.Name = "Line1" + Container1.containerMatchedLine.Line2.Name = "Line2" + Container1.containerMatchedLine.Name = "containerMatchedLine" + Container1.containerMatchedLine.txt1.Name = "txt1" + Container1.containerMatchType.Check1.Alignment = 0 + Container1.containerMatchType.Check1.Name = "Check1" + Container1.containerMatchType.Check10.Alignment = 0 + Container1.containerMatchType.Check10.Name = "Check10" + Container1.containerMatchType.Check11.Alignment = 0 + Container1.containerMatchType.Check11.Name = "Check11" + Container1.containerMatchType.Check12.Alignment = 0 + Container1.containerMatchType.Check12.Name = "Check12" + Container1.containerMatchType.Check14.Alignment = 0 + Container1.containerMatchType.Check14.Name = "Check14" + Container1.containerMatchType.Check16.Alignment = 0 + Container1.containerMatchType.Check16.Name = "Check16" + Container1.containerMatchType.Check17.Alignment = 0 + Container1.containerMatchType.Check17.Name = "Check17" + Container1.containerMatchType.Check18.Alignment = 0 + Container1.containerMatchType.Check18.Name = "Check18" + Container1.containerMatchType.Check19.Alignment = 0 + Container1.containerMatchType.Check19.Name = "Check19" + Container1.containerMatchType.Check2.Alignment = 0 + Container1.containerMatchType.Check2.Name = "Check2" + Container1.containerMatchType.Check20.Alignment = 0 + Container1.containerMatchType.Check20.Name = "Check20" + Container1.containerMatchType.Check21.Alignment = 0 + Container1.containerMatchType.Check21.Name = "Check21" + Container1.containerMatchType.Check22.Alignment = 0 + Container1.containerMatchType.Check22.Name = "Check22" + Container1.containerMatchType.Check23.Alignment = 0 + Container1.containerMatchType.Check23.Name = "Check23" + Container1.containerMatchType.Check24.Alignment = 0 + Container1.containerMatchType.Check24.Name = "Check24" + Container1.containerMatchType.Check3.Alignment = 0 + Container1.containerMatchType.Check3.Name = "Check3" + Container1.containerMatchType.Check4.Alignment = 0 + Container1.containerMatchType.Check4.Name = "Check4" + Container1.containerMatchType.Check5.Alignment = 0 + Container1.containerMatchType.Check5.Name = "Check5" + Container1.containerMatchType.Check7.Alignment = 0 + Container1.containerMatchType.Check7.Name = "Check7" + Container1.containerMatchType.Check8.Alignment = 0 + Container1.containerMatchType.Check8.Name = "Check8" + Container1.containerMatchType.Check9.Alignment = 0 + Container1.containerMatchType.Check9.Name = "Check9" + Container1.containerMatchType.Command1.Name = "Command1" + Container1.containerMatchType.Command2.Name = "Command2" + Container1.containerMatchType.Gf_filtercheckbox1.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox1.Name = "Gf_filtercheckbox1" + Container1.containerMatchType.Gf_filtercheckbox2.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox2.Name = "Gf_filtercheckbox2" + Container1.containerMatchType.Gf_filtercheckbox3.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox3.Name = "Gf_filtercheckbox3" + Container1.containerMatchType.Gf_filtercheckbox4.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox4.Name = "Gf_filtercheckbox4" + Container1.containerMatchType.Gf_filtercheckbox5.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox5.Name = "Gf_filtercheckbox5" + Container1.containerMatchType.Gf_filtercheckbox6.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox6.Name = "Gf_filtercheckbox6" + Container1.containerMatchType.Gf_filtercheckbox7.Alignment = 0 + Container1.containerMatchType.Gf_filtercheckbox7.Name = "Gf_filtercheckbox7" + Container1.containerMatchType.Label1.Name = "Label1" + Container1.containerMatchType.Label2.Name = "Label2" + Container1.containerMatchType.Line1.Name = "Line1" + Container1.containerMatchType.Line2.Name = "Line2" + Container1.containerMatchType.Line3.Name = "Line3" + Container1.containerMatchType.Name = "containerMatchType" + Container1.containerMethodName.Command1.Name = "Command1" + Container1.containerMethodName.Command2.Name = "Command2" + Container1.containerMethodName.Label1.Name = "Label1" + Container1.containerMethodName.Line1.Name = "Line1" + Container1.containerMethodName.Line2.Name = "Line2" + Container1.containerMethodName.Name = "containerMethodName" + Container1.containerMethodName.txt1.Name = "txt1" + Container1.containerObjectName.Command1.Name = "Command1" + Container1.containerObjectName.Command2.Name = "Command2" + Container1.containerObjectName.Label1.Name = "Label1" + Container1.containerObjectName.Line1.Name = "Line1" + Container1.containerObjectName.Line2.Name = "Line2" + Container1.containerObjectName.Name = "containerObjectName" + Container1.containerObjectName.txt1.Name = "txt1" + Container1.containerTimestamp.chkTimeStamp.Alignment = 0 + Container1.containerTimestamp.chkTimeStamp.Name = "chkTimeStamp" + Container1.containerTimestamp.Command1.Name = "Command1" + Container1.containerTimestamp.Command2.Name = "Command2" + Container1.containerTimestamp.Label1.Name = "Label1" + Container1.containerTimestamp.Label11.Name = "Label11" + Container1.containerTimestamp.Label12.Name = "Label12" + Container1.containerTimestamp.Line1.Name = "Line1" + Container1.containerTimestamp.Line2.Name = "Line2" + Container1.containerTimestamp.Name = "containerTimestamp" + Container1.containerTimestamp.txtTimeStampFrom.Name = "txtTimeStampFrom" + Container1.containerTimestamp.txtTimeStampTo.Name = "txtTimeStampTo" + Container1.Gf_textboxcontainer1.Command1.Name = "Command1" + Container1.Gf_textboxcontainer1.Command2.Name = "Command2" + Container1.Gf_textboxcontainer1.Label1.Name = "Label1" + Container1.Gf_textboxcontainer1.Line1.Name = "Line1" + Container1.Gf_textboxcontainer1.Line2.Name = "Line2" + Container1.Gf_textboxcontainer1.Name = "Gf_textboxcontainer1" + Container1.Gf_textboxcontainer1.txt1.Name = "txt1" + Container1.Name = "Container1" + Container1.Textboxcontainer1.Command1.Name = "Command1" + Container1.Textboxcontainer1.Command2.Name = "Command2" + Container1.Textboxcontainer1.Label1.Name = "Label1" + Container1.Textboxcontainer1.Line1.Name = "Line1" + Container1.Textboxcontainer1.Line2.Name = "Line2" + Container1.Textboxcontainer1.Name = "Textboxcontainer1" + Container1.Textboxcontainer1.txt1.Name = "txt1" + Container1.Textboxcontainer2.Command1.Name = "Command1" + Container1.Textboxcontainer2.Command2.Name = "Command2" + Container1.Textboxcontainer2.Label1.Name = "Label1" + Container1.Textboxcontainer2.Line1.Name = "Line1" + Container1.Textboxcontainer2.Line2.Name = "Line2" + Container1.Textboxcontainer2.Name = "Textboxcontainer2" + Container1.Textboxcontainer2.txt1.Name = "txt1" + Container1.Textboxcontainer3.Command1.Name = "Command1" + Container1.Textboxcontainer3.Command2.Name = "Command2" + Container1.Textboxcontainer3.Label1.Name = "Label1" + Container1.Textboxcontainer3.Line1.Name = "Line1" + Container1.Textboxcontainer3.Line2.Name = "Line2" + Container1.Textboxcontainer3.Name = "Textboxcontainer3" + Container1.Textboxcontainer3.txt1.Name = "txt1" + Shape1.Name = "Shape1" + cmdOK.Name = "cmdOK" + Command2.Name = "Command2" + Command3.Name = "Command3" + Check1.Alignment = 0 + Check1.Name = "Check1" + Check2.Alignment = 0 + Check2.Name = "Check2" + Label4.Name = "Label4" + Line1.Name = "Line1" + +ENDDEFINE diff --git a/Source/Forms/gofish_filter.sc2 b/Source/Forms/gofish_filter.sc2 index 53039f1..4b95b0f 100644 --- a/Source/Forms/gofish_filter.sc2 +++ b/Source/Forms/gofish_filter.sc2 @@ -4,223 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_filter.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_filterform1 AS gf_filterform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - cuisettingsfile = GF_Filter_Form_Settings.xml - DoCreate = .T. - Name = "GF_FilterForm1" - Container1.containerClassName.Command1.Name = "Command1" - Container1.containerClassName.Command2.Name = "Command2" - Container1.containerClassName.Label1.Name = "Label1" - Container1.containerClassName.Line1.Name = "Line1" - Container1.containerClassName.Line2.Name = "Line2" - Container1.containerClassName.Name = "containerClassName" - Container1.containerClassName.txt1.Name = "txt1" - Container1.containerFilename.Command1.Name = "Command1" - Container1.containerFilename.Command2.Name = "Command2" - Container1.containerFilename.Label1.Name = "Label1" - Container1.containerFilename.Line1.Name = "Line1" - Container1.containerFilename.Line2.Name = "Line2" - Container1.containerFilename.Name = "containerFilename" - Container1.containerFilename.txt1.Name = "txt1" - Container1.containerFilePath.Command1.Name = "Command1" - Container1.containerFilePath.Command2.Name = "Command2" - Container1.containerFilePath.Label1.Name = "Label1" - Container1.containerFilePath.Line1.Name = "Line1" - Container1.containerFilePath.Line2.Name = "Line2" - Container1.containerFilePath.Name = "containerFilePath" - Container1.containerFilePath.txt1.Name = "txt1" - Container1.containerFileType.chkASP.Alignment = 0 - Container1.containerFileType.chkASP.Name = "chkASP" - Container1.containerFileType.chkDBC.Alignment = 0 - Container1.containerFileType.chkDBC.Name = "chkDBC" - Container1.containerFileType.chkFRX.Alignment = 0 - Container1.containerFileType.chkFRX.Name = "chkFRX" - Container1.containerFileType.chkH.Alignment = 0 - Container1.containerFileType.chkH.Name = "chkH" - Container1.containerFileType.ChkHTML.Alignment = 0 - Container1.containerFileType.ChkHTML.Name = "ChkHTML" - Container1.containerFileType.chkini.Alignment = 0 - Container1.containerFileType.chkini.Name = "chkini" - Container1.containerFileType.chkJava.Alignment = 0 - Container1.containerFileType.chkJava.Name = "chkJava" - Container1.containerFileType.chkJSP.Alignment = 0 - Container1.containerFileType.chkJSP.Name = "chkJSP" - Container1.containerFileType.chkLBX.Alignment = 0 - Container1.containerFileType.chkLBX.Name = "chkLBX" - Container1.containerFileType.chkMNX.Alignment = 0 - Container1.containerFileType.chkMNX.Name = "chkMNX" - Container1.containerFileType.chkMPR.Alignment = 0 - Container1.containerFileType.chkMPR.Name = "chkMPR" - Container1.containerFileType.chkPJX.Alignment = 0 - Container1.containerFileType.chkPJX.Name = "chkPJX" - Container1.containerFileType.chkPRG.Alignment = 0 - Container1.containerFileType.chkPRG.Name = "chkPRG" - Container1.containerFileType.chkSCX.Alignment = 0 - Container1.containerFileType.chkSCX.Name = "chkSCX" - Container1.containerFileType.chkSPR.Alignment = 0 - Container1.containerFileType.chkSPR.Name = "chkSPR" - Container1.containerFileType.chkTXT.Alignment = 0 - Container1.containerFileType.chkTXT.Name = "chkTXT" - Container1.containerFileType.chkVCX.Alignment = 0 - Container1.containerFileType.chkVCX.Name = "chkVCX" - Container1.containerFileType.chkXML.Alignment = 0 - Container1.containerFileType.chkXML.Name = "chkXML" - Container1.containerFileType.Command1.Name = "Command1" - Container1.containerFileType.Command2.Name = "Command2" - Container1.containerFileType.Label1.Name = "Label1" - Container1.containerFileType.Line1.Name = "Line1" - Container1.containerFileType.Line2.Name = "Line2" - Container1.containerFileType.Name = "containerFileType" - Container1.containerMatchedLine.Command1.Name = "Command1" - Container1.containerMatchedLine.Command2.Name = "Command2" - Container1.containerMatchedLine.Label1.Name = "Label1" - Container1.containerMatchedLine.Line1.Name = "Line1" - Container1.containerMatchedLine.Line2.Name = "Line2" - Container1.containerMatchedLine.Name = "containerMatchedLine" - Container1.containerMatchedLine.txt1.Name = "txt1" - Container1.containerMatchType.Check1.Alignment = 0 - Container1.containerMatchType.Check1.Name = "Check1" - Container1.containerMatchType.Check10.Alignment = 0 - Container1.containerMatchType.Check10.Name = "Check10" - Container1.containerMatchType.Check11.Alignment = 0 - Container1.containerMatchType.Check11.Name = "Check11" - Container1.containerMatchType.Check12.Alignment = 0 - Container1.containerMatchType.Check12.Name = "Check12" - Container1.containerMatchType.Check14.Alignment = 0 - Container1.containerMatchType.Check14.Name = "Check14" - Container1.containerMatchType.Check16.Alignment = 0 - Container1.containerMatchType.Check16.Name = "Check16" - Container1.containerMatchType.Check17.Alignment = 0 - Container1.containerMatchType.Check17.Name = "Check17" - Container1.containerMatchType.Check18.Alignment = 0 - Container1.containerMatchType.Check18.Name = "Check18" - Container1.containerMatchType.Check19.Alignment = 0 - Container1.containerMatchType.Check19.Name = "Check19" - Container1.containerMatchType.Check2.Alignment = 0 - Container1.containerMatchType.Check2.Name = "Check2" - Container1.containerMatchType.Check20.Alignment = 0 - Container1.containerMatchType.Check20.Name = "Check20" - Container1.containerMatchType.Check21.Alignment = 0 - Container1.containerMatchType.Check21.Name = "Check21" - Container1.containerMatchType.Check22.Alignment = 0 - Container1.containerMatchType.Check22.Name = "Check22" - Container1.containerMatchType.Check23.Alignment = 0 - Container1.containerMatchType.Check23.Name = "Check23" - Container1.containerMatchType.Check24.Alignment = 0 - Container1.containerMatchType.Check24.Name = "Check24" - Container1.containerMatchType.Check3.Alignment = 0 - Container1.containerMatchType.Check3.Name = "Check3" - Container1.containerMatchType.Check4.Alignment = 0 - Container1.containerMatchType.Check4.Name = "Check4" - Container1.containerMatchType.Check5.Alignment = 0 - Container1.containerMatchType.Check5.Name = "Check5" - Container1.containerMatchType.Check7.Alignment = 0 - Container1.containerMatchType.Check7.Name = "Check7" - Container1.containerMatchType.Check8.Alignment = 0 - Container1.containerMatchType.Check8.Name = "Check8" - Container1.containerMatchType.Check9.Alignment = 0 - Container1.containerMatchType.Check9.Name = "Check9" - Container1.containerMatchType.Command1.Name = "Command1" - Container1.containerMatchType.Command2.Name = "Command2" - Container1.containerMatchType.Gf_filtercheckbox1.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox1.Name = "Gf_filtercheckbox1" - Container1.containerMatchType.Gf_filtercheckbox2.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox2.Name = "Gf_filtercheckbox2" - Container1.containerMatchType.Gf_filtercheckbox3.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox3.Name = "Gf_filtercheckbox3" - Container1.containerMatchType.Gf_filtercheckbox4.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox4.Name = "Gf_filtercheckbox4" - Container1.containerMatchType.Gf_filtercheckbox5.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox5.Name = "Gf_filtercheckbox5" - Container1.containerMatchType.Gf_filtercheckbox6.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox6.Name = "Gf_filtercheckbox6" - Container1.containerMatchType.Gf_filtercheckbox7.Alignment = 0 - Container1.containerMatchType.Gf_filtercheckbox7.Name = "Gf_filtercheckbox7" - Container1.containerMatchType.Label1.Name = "Label1" - Container1.containerMatchType.Label2.Name = "Label2" - Container1.containerMatchType.Line1.Name = "Line1" - Container1.containerMatchType.Line2.Name = "Line2" - Container1.containerMatchType.Line3.Name = "Line3" - Container1.containerMatchType.Name = "containerMatchType" - Container1.containerMethodName.Command1.Name = "Command1" - Container1.containerMethodName.Command2.Name = "Command2" - Container1.containerMethodName.Label1.Name = "Label1" - Container1.containerMethodName.Line1.Name = "Line1" - Container1.containerMethodName.Line2.Name = "Line2" - Container1.containerMethodName.Name = "containerMethodName" - Container1.containerMethodName.txt1.Name = "txt1" - Container1.containerObjectName.Command1.Name = "Command1" - Container1.containerObjectName.Command2.Name = "Command2" - Container1.containerObjectName.Label1.Name = "Label1" - Container1.containerObjectName.Line1.Name = "Line1" - Container1.containerObjectName.Line2.Name = "Line2" - Container1.containerObjectName.Name = "containerObjectName" - Container1.containerObjectName.txt1.Name = "txt1" - Container1.containerTimestamp.chkTimeStamp.Alignment = 0 - Container1.containerTimestamp.chkTimeStamp.Name = "chkTimeStamp" - Container1.containerTimestamp.Command1.Name = "Command1" - Container1.containerTimestamp.Command2.Name = "Command2" - Container1.containerTimestamp.Label1.Name = "Label1" - Container1.containerTimestamp.Label11.Name = "Label11" - Container1.containerTimestamp.Label12.Name = "Label12" - Container1.containerTimestamp.Line1.Name = "Line1" - Container1.containerTimestamp.Line2.Name = "Line2" - Container1.containerTimestamp.Name = "containerTimestamp" - Container1.containerTimestamp.txtTimeStampFrom.Name = "txtTimeStampFrom" - Container1.containerTimestamp.txtTimeStampTo.Name = "txtTimeStampTo" - Container1.Gf_textboxcontainer1.Command1.Name = "Command1" - Container1.Gf_textboxcontainer1.Command2.Name = "Command2" - Container1.Gf_textboxcontainer1.Label1.Name = "Label1" - Container1.Gf_textboxcontainer1.Line1.Name = "Line1" - Container1.Gf_textboxcontainer1.Line2.Name = "Line2" - Container1.Gf_textboxcontainer1.Name = "Gf_textboxcontainer1" - Container1.Gf_textboxcontainer1.txt1.Name = "txt1" - Container1.Name = "Container1" - Container1.Textboxcontainer1.Command1.Name = "Command1" - Container1.Textboxcontainer1.Command2.Name = "Command2" - Container1.Textboxcontainer1.Label1.Name = "Label1" - Container1.Textboxcontainer1.Line1.Name = "Line1" - Container1.Textboxcontainer1.Line2.Name = "Line2" - Container1.Textboxcontainer1.Name = "Textboxcontainer1" - Container1.Textboxcontainer1.txt1.Name = "txt1" - Container1.Textboxcontainer2.Command1.Name = "Command1" - Container1.Textboxcontainer2.Command2.Name = "Command2" - Container1.Textboxcontainer2.Label1.Name = "Label1" - Container1.Textboxcontainer2.Line1.Name = "Line1" - Container1.Textboxcontainer2.Line2.Name = "Line2" - Container1.Textboxcontainer2.Name = "Textboxcontainer2" - Container1.Textboxcontainer2.txt1.Name = "txt1" - Container1.Textboxcontainer3.Command1.Name = "Command1" - Container1.Textboxcontainer3.Command2.Name = "Command2" - Container1.Textboxcontainer3.Label1.Name = "Label1" - Container1.Textboxcontainer3.Line1.Name = "Line1" - Container1.Textboxcontainer3.Line2.Name = "Line2" - Container1.Textboxcontainer3.Name = "Textboxcontainer3" - Container1.Textboxcontainer3.txt1.Name = "txt1" - Shape1.Name = "Shape1" - cmdOK.Name = "cmdOK" - Command2.Name = "Command2" - Command3.Name = "Command3" - Check1.Alignment = 0 - Check1.Name = "Check1" - Check2.Alignment = 0 - Check2.Name = "Check2" - Label4.Name = "Label4" - Line1.Name = "Line1" +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_filterform1" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_filter.scx b/Source/Forms/gofish_filter.scx index 5dece8f..7dcf248 100644 Binary files a/Source/Forms/gofish_filter.scx and b/Source/Forms/gofish_filter.scx differ diff --git a/Source/Forms/gofish_filterpf.SCT b/Source/Forms/gofish_filterpf.SCT index 1b22a7c..a8358b8 100644 Binary files a/Source/Forms/gofish_filterpf.SCT and b/Source/Forms/gofish_filterpf.SCT differ diff --git a/Source/Forms/gofish_filterpf.dataenvironment.sc2 b/Source/Forms/gofish_filterpf.dataenvironment.sc2 new file mode 100644 index 0000000..0f65945 --- /dev/null +++ b/Source/Forms/gofish_filterpf.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_filterpf.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_filterpf.gf_filter.sc2 b/Source/Forms/gofish_filterpf.gf_filter.sc2 new file mode 100644 index 0000000..562d1e6 --- /dev/null +++ b/Source/Forms/gofish_filterpf.gf_filter.sc2 @@ -0,0 +1,2220 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_filterpf.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_filter AS gf_baseform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="PageFrame" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page1.containerMatchedLine" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page1.Gf_textboxcontainer1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page1.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page1.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page1.Gf_filtersinglecheckboxcontainer1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page1.Gf_filtersinglecheckboxcontainer2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page2.containerFilename" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page2.containerFilePath" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page2.containerTimestamp" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page3.containerClassName" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page3.containerMethodName" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page3.Textboxcontainer1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page3.Textboxcontainer2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page4.containerObjectName" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page4.Textboxcontainer3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check21" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check18" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check14" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check17" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check16" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check19" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check20" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check22" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check23" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check24" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkTXT" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkASP" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.ChkHTML" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkH" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkMNX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkSCX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkVCX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkDBC" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkLBX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkFRX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkPJX" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkPRG" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkSPR" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkMPR" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkini" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkJSP" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkJava" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkXML" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cntTextBoxOptions" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cntTextBoxOptions.Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cntTextBoxOptions.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cntTextBoxOptions.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cntTextBoxOptions.chkFilterExactMatch" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command3" UniqueID="" Timestamp="" /> + + * + *m: applychanges + *m: bind + *m: bindeachpage + *m: buildcheckboxfilter + *m: buildcontainerfilters + *m: buildfilterstring + *m: buildtextboxfilter + *m: clearallfilters + *m: decoratepage + *m: enablecontrol + *m: loadfiltersettings && Loads saved settings from XML file. + *m: refreshpagecaptions + *m: refreshtextboxoptions + *m: savefiltersettings + *p: ccodetypefilter + *p: cfilenamefilter + *p: cfiletypefilter + *p: cfilter + *p: cfilteroptionsclass + *p: cfilteroptionsxmlfile + *p: csearchresults + *p: llreturn + *p: ofilter + * + + BorderStyle = 3 + Caption = "GoFish Filter Builder" + ccodetypefilter = + cfilenamefilter = + cfiletypefilter = + cfilter = + cfilteroptionsclass = GF_SearchResultsFilter + cfilteroptionsxmlfile = GF_Filter_Settings.xml + csearchresults = + cuisettingsfile = GF_Filter_PF_Form_Settings.xml + DoCreate = .T. + Height = 332 + Left = 0 + llreturn = .F. + Name = "GF_Filter" + ofilter = .NULL. + ShowTips = .T. + Top = 0 + Visible = .T. + Width = 510 + WindowType = 1 + _memberdata = + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ADD OBJECT 'cntTextBoxOptions' AS container WITH ; + Height = 52, ; + Left = 6, ; + Name = "cntTextBoxOptions", ; + Top = 239, ; + Width = 499 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'cntTextBoxOptions.Check1' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + Caption = "Use leading ! (for NOT)", ; + ControlSource = "Thisform.oFilter.FilterNot", ; + Height = 17, ; + Left = 321, ; + Name = "Check1", ; + Top = 26, ; + Width = 144, ; + ZOrderSet = 5 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'cntTextBoxOptions.Check2' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + Caption = "Use wildcards (* and ?)", ; + ControlSource = "Thisform.oFilter.FilterLike", ; + Height = 17, ; + Left = 146, ; + Name = "Check2", ; + Top = 26, ; + Width = 147, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'cntTextBoxOptions.chkFilterExactMatch' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + Caption = "Match anywhere", ; + ControlSource = "", ; + Height = 17, ; + Left = 12, ; + Name = "chkFilterExactMatch", ; + ToolTipText = "If not selected, only exact matches are found, although you can over-ride this by selecting to use wildcards.", ; + Top = 26, ; + Width = 106, ; + ZOrderSet = 6 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'cntTextBoxOptions.Label1' AS label WITH ; + Alignment = 0, ; + AutoSize = .T., ; + Caption = 'Filters are case-insensitive. Enter multiple filters using "|AND|" or "|OR|" as delimiters.', ; + Height = 17, ; + Left = 10, ; + Name = "Label1", ; + TabIndex = 4, ; + Top = 6, ; + Width = 468, ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Anchor = 0, ; + AutoSize = .F., ; + Caption = "Apply", ; + Default = .T., ; + FontSize = 10, ; + Height = 29, ; + Left = 36, ; + Name = "Command1", ; + Top = 296, ; + Width = 65, ; + ZOrderSet = 2 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Command3' AS commandbutton WITH ; + Anchor = 0, ; + AutoSize = .F., ; + Caption = "\ + + ADD OBJECT 'Command4' AS commandbutton WITH ; + Anchor = 0, ; + AutoSize = .F., ; + Cancel = .T., ; + Caption = "Cancel", ; + FontSize = 9, ; + Height = 29, ; + Left = 412, ; + Name = "Command4", ; + Top = 296, ; + Width = 65, ; + ZOrderSet = 3 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'PageFrame' AS pageframe WITH ; + Anchor = 15, ; + ErasePage = .T., ; + Height = 240, ; + Left = 6, ; + Name = "PageFrame", ; + PageCount = 6, ; + Top = 0, ; + Width = 500, ; + Page1.Caption = "Code", ; + Page1.Name = "Page1", ; + Page1.PageOrder = 1, ; + Page2.Caption = "Files", ; + Page2.Name = "Page2", ; + Page2.PageOrder = 4, ; + Page3.Caption = "Classes", ; + Page3.Name = "Page3", ; + Page3.PageOrder = 2, ; + Page4.Caption = "Names", ; + Page4.Name = "Page4", ; + Page4.PageOrder = 3, ; + Page5.Caption = "Match Types", ; + Page5.Name = "Page5", ; + Page5.PageOrder = 6, ; + Page6.Caption = "File Types", ; + Page6.Name = "Page6", ; + Page6.PageOrder = 5 + *< END OBJECT: BaseClass="pageframe" /> + + ADD OBJECT 'PageFrame.Page1.containerMatchedLine' AS gf_textboxcontainer WITH ; + Anchor = 10, ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 11, ; + Name = "containerMatchedLine", ; + TabIndex = 1, ; + Top = 0, ; + Visible = .T., ; + Width = 247, ; + Label1.Caption = "Within Same Statement", ; + Label1.Name = "Label1", ; + Label1.Tag = "Statement", ; + Label1.Width = 206, ; + Command1.Name = "Command1", ; + Command1.Top = 53, ; + Command2.Name = "Command2", ; + Command2.Top = 53, ; + Line1.Name = "Line1", ; + Line1.Width = 206, ; + Line2.Name = "Line2", ; + Line2.Top = 49, ; + Line2.Width = 205, ; + txt1.Height = 23, ; + txt1.Left = 7, ; + txt1.Name = "txt1", ; + txt1.Top = 26, ; + txt1.Width = 230 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page1.Gf_filtersinglecheckboxcontainer1' AS gf_filtersinglecheckboxcontainer WITH ; + Height = 25, ; + Left = 47, ; + Name = "Gf_filtersinglecheckboxcontainer1", ; + Top = 161, ; + Width = 280, ; + chkApplyFilter.Alignment = 0, ; + chkApplyFilter.Caption = "Only show first match in each STATEMENT", ; + chkApplyFilter.ControlSource = "OnlyFirstMatchInStatement", ; + chkApplyFilter.Name = "chkApplyFilter" + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page1.Gf_filtersinglecheckboxcontainer2' AS gf_filtersinglecheckboxcontainer WITH ; + Height = 25, ; + Left = 47, ; + Name = "Gf_filtersinglecheckboxcontainer2", ; + Top = 185, ; + Width = 280, ; + chkApplyFilter.Alignment = 0, ; + chkApplyFilter.Caption = "Only show first match in each PROCEDURE", ; + chkApplyFilter.ControlSource = "OnlyFirstMatchInProcedure", ; + chkApplyFilter.Name = "chkApplyFilter" + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page1.Gf_textboxcontainer1' AS gf_textboxcontainer WITH ; + Anchor = 10, ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 11, ; + Name = "Gf_textboxcontainer1", ; + TabIndex = 2, ; + Top = 80, ; + Visible = .T., ; + Width = 247, ; + Label1.Caption = "Within Same Procedure", ; + Label1.Height = 17, ; + Label1.Left = 7, ; + Label1.Name = "Label1", ; + Label1.Tag = "ProcCode", ; + Label1.Top = 4, ; + Label1.Width = 205, ; + Command1.Name = "Command1", ; + Command1.Top = 53, ; + Command2.Name = "Command2", ; + Command2.Top = 53, ; + Line1.Name = "Line1", ; + Line1.Width = 242, ; + Line2.Name = "Line2", ; + Line2.Top = 49, ; + Line2.Width = 241, ; + txt1.Height = 23, ; + txt1.Left = 7, ; + txt1.Name = "txt1", ; + txt1.Top = 26, ; + txt1.Width = 229 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page1.Label1' AS label WITH ; + Anchor = 8, ; + AutoSize = .F., ; + BackStyle = 0, ; + Caption = "Within textboxes:", ; + Height = 47, ; + Left = 269, ; + Name = "Label1", ; + TabIndex = 4, ; + Top = 86, ; + Width = 213, ; + WordWrap = .T., ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'PageFrame.Page1.Label4' AS label WITH ; + Anchor = 8, ; + AutoSize = .F., ; + BackStyle = 0, ; + Caption = "Within textboxes:", ; + Height = 71, ; + Left = 269, ; + Name = "Label4", ; + TabIndex = 3, ; + Top = 5, ; + Width = 213, ; + WordWrap = .T., ; + ZOrderSet = 7 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'PageFrame.Page2.containerFilename' AS gf_textboxcontainer WITH ; + Anchor = 130, ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 9, ; + Name = "containerFilename", ; + TabIndex = 1, ; + Top = 14, ; + Visible = .T., ; + Width = 228, ; + Label1.Caption = "File Name", ; + Label1.Name = "Label1", ; + Label1.Width = 217, ; + Command1.Name = "Command1", ; + Command1.Top = 54, ; + Command2.Name = "Command2", ; + Command2.Top = 54, ; + Line1.Name = "Line1", ; + Line1.Width = 217, ; + Line2.Name = "Line2", ; + Line2.Top = 50, ; + Line2.Width = 216, ; + txt1.Name = "txt1", ; + txt1.Width = 216 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page2.containerFilePath' AS gf_textboxcontainer WITH ; + Anchor = 40, ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 251, ; + Name = "containerFilePath", ; + TabIndex = 2, ; + Top = 14, ; + Visible = .T., ; + Width = 228, ; + Label1.Caption = "File Path", ; + Label1.Name = "Label1", ; + Label1.Width = 217, ; + Command1.Left = 10, ; + Command1.Name = "Command1", ; + Command1.Top = 54, ; + Command2.Left = 65, ; + Command2.Name = "Command2", ; + Command2.Top = 54, ; + Line1.Name = "Line1", ; + Line1.Width = 217, ; + Line2.Left = 5, ; + Line2.Name = "Line2", ; + Line2.Top = 51, ; + Line2.Width = 216, ; + txt1.Name = "txt1", ; + txt1.Width = 216 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page2.containerTimestamp' AS gf_timestampcontainer WITH ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 124, ; + Name = "containerTimestamp", ; + TabIndex = 3, ; + Top = 110, ; + Visible = .T., ; + Width = 263, ; + Label1.Caption = "TimeStamp", ; + Label1.Left = 138, ; + Label1.Name = "Label1", ; + Label1.Top = -66, ; + Label1.Width = 216, ; + Command1.Left = 160, ; + Command1.Name = "Command1", ; + Command1.Top = -44, ; + Command2.Left = 143, ; + Command2.Name = "Command2", ; + Command2.Top = 6, ; + Command2.Visible = .T., ; + Line1.Left = 6, ; + Line1.Name = "Line1", ; + Line1.Top = 22, ; + Line1.Width = 351, ; + Line2.Left = 5, ; + Line2.Name = "Line2", ; + Line2.Top = 74, ; + Line2.Width = 350, ; + chkTimeStamp.Alignment = 0, ; + chkTimeStamp.Caption = "TimeStamp", ; + chkTimeStamp.ControlSource = "Filter", ; + chkTimeStamp.Height = 17, ; + chkTimeStamp.Left = 48, ; + chkTimeStamp.Name = "chkTimeStamp", ; + chkTimeStamp.Tag = "Filter", ; + chkTimeStamp.Top = 8, ; + chkTimeStamp.Width = 71, ; + Label11.Left = 6, ; + Label11.Name = "Label11", ; + Label11.Top = 41, ; + Label12.Left = 132, ; + Label12.Name = "Label12", ; + Label12.Top = 40, ; + txtTimeStampFrom.ControlSource = "Timestamp_FilterFrom", ; + txtTimeStampFrom.Height = 23, ; + txtTimeStampFrom.Left = 31, ; + txtTimeStampFrom.Name = "txtTimeStampFrom", ; + txtTimeStampFrom.Top = 36, ; + txtTimeStampFrom.Width = 88, ; + txtTimeStampTo.ControlSource = "Timestamp_FilterTo", ; + txtTimeStampTo.Height = 23, ; + txtTimeStampTo.Left = 156, ; + txtTimeStampTo.Name = "txtTimeStampTo", ; + txtTimeStampTo.Top = 36, ; + txtTimeStampTo.Width = 88 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page3.containerClassName' AS gf_textboxcontainer WITH ; + Anchor = 40, ; + BorderColor = 200,200,200, ; + Height = 80, ; + Left = 249, ; + Name = "containerClassName", ; + TabIndex = 4, ; + Tag = "_Class", ; + Top = 110, ; + Visible = .T., ; + Width = 230, ; + Label1.Caption = "Containing Class", ; + Label1.Name = "Label1", ; + Label1.Width = 176, ; + Command1.Name = "Command1", ; + Command1.Top = 55, ; + Command2.Name = "Command2", ; + Command2.Top = 55, ; + Line1.Name = "Line1", ; + Line1.Width = 176, ; + Line2.Name = "Line2", ; + Line2.Top = 51, ; + Line2.Width = 175, ; + txt1.Height = 23, ; + txt1.Left = 7, ; + txt1.Name = "txt1", ; + txt1.Top = 26, ; + txt1.Width = 218 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page3.containerMethodName' AS gf_textboxcontainer WITH ; + Anchor = 130, ; + BorderColor = 200,200,200, ; + Height = 80, ; + Left = 9, ; + Name = "containerMethodName", ; + TabIndex = 1, ; + Top = 14, ; + Visible = .T., ; + Width = 230, ; + Label1.Caption = "Class", ; + Label1.Name = "Label1", ; + Label1.Width = 219, ; + Command1.Name = "Command1", ; + Command1.Top = 56, ; + Command2.Name = "Command2", ; + Command2.Top = 56, ; + Line1.Name = "Line1", ; + Line1.Width = 219, ; + Line2.Name = "Line2", ; + Line2.Top = 52, ; + Line2.Width = 218, ; + txt1.Name = "txt1", ; + txt1.Width = 218 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page3.Textboxcontainer1' AS gf_textboxcontainer WITH ; + Anchor = 40, ; + BorderColor = 200,200,200, ; + Height = 80, ; + Left = 249, ; + Name = "Textboxcontainer1", ; + TabIndex = 2, ; + Top = 14, ; + Visible = .T., ; + Width = 230, ; + Label1.Caption = "Base Class", ; + Label1.Height = 17, ; + Label1.Left = 7, ; + Label1.Name = "Label1", ; + Label1.Top = 4, ; + Label1.Width = 200, ; + Command1.Name = "Command1", ; + Command1.Top = 55, ; + Command2.Name = "Command2", ; + Command2.Top = 55, ; + Line1.Height = 0, ; + Line1.Left = 6, ; + Line1.Name = "Line1", ; + Line1.Top = 20, ; + Line1.Width = 199, ; + Line2.Height = 0, ; + Line2.Left = 5, ; + Line2.Name = "Line2", ; + Line2.Top = 51, ; + Line2.Width = 200, ; + txt1.Height = 23, ; + txt1.Left = 7, ; + txt1.Name = "txt1", ; + txt1.Top = 26, ; + txt1.Width = 218 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page3.Textboxcontainer2' AS gf_textboxcontainer WITH ; + Anchor = 130, ; + BorderColor = 200,200,200, ; + Height = 80, ; + Left = 9, ; + Name = "Textboxcontainer2", ; + TabIndex = 3, ; + Top = 110, ; + Width = 230, ; + Label1.Caption = "Parent Class", ; + Label1.Name = "Label1", ; + Label1.Width = 153, ; + Command1.Name = "Command1", ; + Command1.Top = 56, ; + Command2.Name = "Command2", ; + Command2.Top = 56, ; + Line1.Name = "Line1", ; + Line1.Width = 153, ; + Line2.Name = "Line2", ; + Line2.Top = 52, ; + Line2.Width = 152, ; + txt1.Height = 23, ; + txt1.Left = 7, ; + txt1.Name = "txt1", ; + txt1.Top = 26, ; + txt1.Width = 218 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page4.containerObjectName' AS gf_textboxcontainer WITH ; + Anchor = 10, ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 12, ; + Name = "containerObjectName", ; + TabIndex = 1, ; + Top = 14, ; + Visible = .T., ; + Width = 473, ; + Label1.Caption = "Object/Property Name", ; + Label1.Name = "Label1", ; + Label1.Tag = "Name", ; + Label1.Width = 462, ; + Command1.Name = "Command1", ; + Command1.Top = 52, ; + Command2.Name = "Command2", ; + Command2.Top = 52, ; + Line1.Name = "Line1", ; + Line1.Width = 462, ; + Line2.Name = "Line2", ; + Line2.Top = 48, ; + Line2.Width = 461, ; + txt1.Name = "txt1", ; + txt1.Width = 461 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page4.Textboxcontainer3' AS gf_textboxcontainer WITH ; + Anchor = 10, ; + BorderColor = 200,200,200, ; + Height = 77, ; + Left = 12, ; + Name = "Textboxcontainer3", ; + TabIndex = 2, ; + Top = 104, ; + Visible = .T., ; + Width = 473, ; + Label1.Caption = "Method Name", ; + Label1.Name = "Label1", ; + Label1.Width = 462, ; + Command1.Name = "Command1", ; + Command1.Top = 53, ; + Command2.Name = "Command2", ; + Command2.Top = 53, ; + Line1.Name = "Line1", ; + Line1.Width = 462, ; + Line2.Name = "Line2", ; + Line2.Top = 49, ; + Line2.Width = 461, ; + txt1.Name = "txt1", ; + txt1.Width = 461 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType' AS gf_filtercheckboxcontainer WITH ; + BorderColor = 200,200,200, ; + Height = 205, ; + Left = 5, ; + Name = "containerMatchType", ; + TabIndex = 2, ; + Top = 2, ; + Visible = .T., ; + Width = 484, ; + Label1.Caption = "MatchType", ; + Label1.Left = 69, ; + Label1.Name = "Label1", ; + Label1.TabIndex = 31, ; + Label1.Top = 4, ; + Label1.Width = 369, ; + Command1.Left = 10, ; + Command1.Name = "Command1", ; + Command1.TabIndex = 29, ; + Command1.Top = 180, ; + Command2.Left = 46, ; + Command2.Name = "Command2", ; + Command2.TabIndex = 30, ; + Command2.Top = 180, ; + Line1.Name = "Line1", ; + Line1.Width = 496, ; + Line2.Height = 6, ; + Line2.Left = 6, ; + Line2.Name = "Line2", ; + Line2.Top = -78, ; + Line2.Width = 496 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check1' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check1", ; + TabIndex = 11, ; + Top = 24, ; + Value = .T., ; + Width = 61 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check10' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Check10", ; + TabIndex = 1, ; + Top = 24, ; + Value = .T., ; + Width = 76 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check11' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check11", ; + TabIndex = 2, ; + Top = 78, ; + Value = .T., ; + Width = 79 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check12' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 252, ; + Name = "Check12", ; + TabIndex = 3, ; + Top = 24, ; + Value = .T., ; + Width = 90 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check14' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 8, ; + Name = "Check14", ; + TabIndex = 5, ; + Top = 78, ; + Value = .T., ; + Width = 75 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check16' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 8, ; + Name = "Check16", ; + TabIndex = 6, ; + Top = 96, ; + Value = .T., ; + Width = 70 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check17' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check17", ; + TabIndex = 8, ; + Top = 96, ; + Value = .T., ; + Width = 85 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check18' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check18", ; + TabIndex = 9, ; + Top = 60, ; + Value = .T., ; + Width = 59 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check19' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check19", ; + TabIndex = 13, ; + Top = 42, ; + Value = .T., ; + Width = 66 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check2' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 8, ; + Name = "Check2", ; + TabIndex = 21, ; + Top = 42, ; + Value = .T., ; + Width = 79 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check20' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check20", ; + TabIndex = 10, ; + Top = 114, ; + Value = .T., ; + Width = 94 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check21' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 8, ; + Name = "Check21", ; + TabIndex = 14, ; + Top = 60, ; + Value = .T., ; + Width = 83 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check22' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 252, ; + Name = "Check22", ; + TabIndex = 15, ; + Top = 78, ; + Value = .T., ; + Width = 102 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check23' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Check23", ; + TabIndex = 18, ; + Top = 42, ; + Value = .T., ; + Width = 73 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check24' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check24", ; + TabIndex = 19, ; + Top = 150, ; + Value = .T., ; + Width = 86 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check3' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 252, ; + Name = "Check3", ; + TabIndex = 4, ; + Top = 60, ; + Value = .T., ; + Width = 96 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check4' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 252, ; + Name = "Check4", ; + TabIndex = 16, ; + Top = 96, ; + Value = .T., ; + Width = 106 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check5' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 113, ; + Name = "Check5", ; + TabIndex = 12, ; + Top = 132, ; + Value = .T., ; + Width = 113 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check7' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 252, ; + Name = "Check7", ; + TabIndex = 17, ; + Top = 114, ; + Value = .T., ; + Width = 105 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check8' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 252, ; + Name = "Check8", ; + TabIndex = 7, ; + Top = 42, ; + Value = .T., ; + Width = 96 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Check9' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 8, ; + Name = "Check9", ; + TabIndex = 20, ; + Top = 114, ; + Value = .T., ; + Width = 78 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox1' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Code", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 8, ; + Name = "Gf_filtercheckbox1", ; + TabIndex = 22, ; + Top = 24, ; + Value = .T., ; + Width = 43 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox2' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Gf_filtercheckbox2", ; + TabIndex = 23, ; + Top = 84, ; + Value = .T., ; + Width = 56 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox3' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Gf_filtercheckbox3", ; + TabIndex = 28, ; + Top = 174, ; + Value = .T., ; + Width = 74 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox4' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Gf_filtercheckbox4", ; + TabIndex = 26, ; + Top = 102, ; + Value = .T., ; + Width = 61 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox5' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Gf_filtercheckbox5", ; + TabIndex = 24, ; + Top = 120, ; + Value = .T., ; + Width = 52 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox6' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Gf_filtercheckbox6", ; + TabIndex = 27, ; + Top = 138, ; + Value = .T., ; + Width = 58 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox7' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 390, ; + Name = "Gf_filtercheckbox7", ; + TabIndex = 25, ; + Top = 156, ; + Value = .T., ; + Width = 67 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page5.containerMatchType.Label2' AS label WITH ; + Caption = "Reports", ; + Height = 15, ; + Left = 390, ; + Name = "Label2", ; + TabIndex = 32, ; + Top = 66, ; + Width = 51 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType' AS gf_filtercheckboxcontainer WITH ; + BorderColor = 200,200,200, ; + Height = 188, ; + Left = 128, ; + Name = "containerFileType", ; + TabIndex = 1, ; + Top = 8, ; + Width = 244, ; + Label1.Caption = "FileType", ; + Label1.Name = "Label1", ; + Label1.TabIndex = 19, ; + Label1.Width = 233, ; + Command1.Name = "Command1", ; + Command1.TabIndex = 20, ; + Command1.Top = 165, ; + Command2.Name = "Command2", ; + Command2.TabIndex = 21, ; + Command2.Top = 165, ; + Line1.Name = "Line1", ; + Line1.Width = 233, ; + Line2.Height = 0, ; + Line2.Left = 5, ; + Line2.Name = "Line2", ; + Line2.Top = 160, ; + Line2.Width = 233 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkASP' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "ASP", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 173, ; + Name = "chkASP", ; + TabIndex = 16, ; + Top = 84, ; + Value = .T., ; + Width = 37 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkDBC' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "DBC", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkDBC", ; + TabIndex = 7, ; + Top = 139, ; + Value = .T., ; + Width = 38 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkFRX' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "FRX", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkFRX", ; + TabIndex = 3, ; + Top = 65, ; + Value = .T., ; + Width = 37 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkH' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = ".h", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 102, ; + Name = "chkH", ; + TabIndex = 12, ; + Tag = "h", ; + Top = 102, ; + Value = .T., ; + Width = 28 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.ChkHTML' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "HTML", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 173, ; + Name = "ChkHTML", ; + TabIndex = 13, ; + Top = 27, ; + Value = .T., ; + Width = 44 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkini' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "INI", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 102, ; + Name = "chkini", ; + TabIndex = 11, ; + Top = 84, ; + Value = .T., ; + Width = 33 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkJava' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "JAVA", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 173, ; + Name = "chkJava", ; + TabIndex = 17, ; + Top = 103, ; + Value = .T., ; + Width = 43 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkJSP' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "JSP", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 173, ; + Name = "chkJSP", ; + TabIndex = 18, ; + Top = 122, ; + Value = .T., ; + Width = 35 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkLBX' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "LBX", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkLBX", ; + TabIndex = 4, ; + Top = 83, ; + Value = .T., ; + Width = 35 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkMNX' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "MNX", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkMNX", ; + TabIndex = 5, ; + Top = 101, ; + Value = .T., ; + Width = 39 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkMPR' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "MPR", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 102, ; + Name = "chkMPR", ; + TabIndex = 9, ; + Top = 46, ; + Value = .T., ; + Width = 39 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkPJX' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "PJX", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkPJX", ; + TabIndex = 6, ; + Top = 120, ; + Value = .T., ; + Width = 35 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkPRG' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "PRG", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 102, ; + Name = "chkPRG", ; + TabIndex = 8, ; + Top = 27, ; + Value = .T., ; + Width = 38 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkSCX' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "SCX", ; + ControlSource = "", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkSCX", ; + TabIndex = 1, ; + Top = 27, ; + Value = .T., ; + Width = 37 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkSPR' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "SPR", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 102, ; + Name = "chkSPR", ; + TabIndex = 10, ; + Top = 65, ; + Value = .T., ; + Width = 37 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkTXT' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "TXT", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 173, ; + Name = "chkTXT", ; + TabIndex = 15, ; + Top = 65, ; + Value = .T., ; + Width = 36 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkVCX' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "VCX", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 29, ; + Name = "chkVCX", ; + TabIndex = 2, ; + Top = 46, ; + Value = .T., ; + Width = 37 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + ADD OBJECT 'PageFrame.Page6.containerFileType.chkXML' AS gf_filtercheckbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "XML", ; + FontName = "Tahoma", ; + FontSize = 8, ; + Height = 15, ; + Left = 173, ; + Name = "chkXML", ; + TabIndex = 14, ; + Top = 46, ; + Value = .T., ; + Width = 37 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> + + PROCEDURE applychanges + This.SaveFilterSettings(This.cFilterOptionsXMLFile) + + + ENDPROC + + PROCEDURE bind + Lparameters toContainer + + lcControlSourceRoot = 'Thisform.oFilter.' + + For each control in toContainer.Controls + If PemStatus(control, 'ControlSource', 5) and !Empty(control.ControlSource) + control.ControlSource = lcControlSourceRoot + control.ControlSource + EndIf + EndFor + + ENDPROC + + PROCEDURE bindeachpage + *-- Bind up controls to an empty class instance so form can set up + Local loControl, loPage + For Each m.loPage In This.PageFrame.Objects FoxObject + For Each m.loControl In m.loPage.Controls + If Upper(m.loControl.BaseClass) = 'CONTAINER' + This.Bind(m.loControl) + Endif + Endfor + Endfor + + + ENDPROC + + PROCEDURE buildcheckboxfilter + Lparameters toContainer, tcFilterObjectProperty, tcSeparator + + Local lcCondition, lcExistingString, lcField, lcFilter, lcFilterObjectProperty, lcNewString, lcValue + + lnSelect = Select() + Select (Thisform.oForm.cSearchResultsAlias) + + lcField = Getwordnum(tcFilterObjectProperty, 1, '_') + lcValue = Getwordnum(tcFilterObjectProperty, 2, '_') + + lcFilterObjectProperty = 'Thisform.oFilter.' + tcFilterObjectProperty + lcFilterObjectProperty = Strtran(lcFilterObjectProperty, '<', '') + lcFilterObjectProperty = Strtran(lcFilterObjectProperty, '>', '') + lcFilterObjectProperty = Strtran(lcFilterObjectProperty, ' ', '') + + lcNewString = '' + + If Empty(tcSeparator) + tcSeparator = 'or' + Endif + + lcExistingString = toContainer.cFilter + + If !Empty(lcExistingString) + lcNewString = lcExistingString + ' ' + tcSeparator + ' ' + Endif + + *lcCondition = 'Alltrim(Upper(' + lcField + ')) == [' + Alltrim(Upper(lcValue)) + ']' + + lcCondition = 'Alltrim(' + lcField + ')==[' + Alltrim(lcValue) + ']' + + *-- Determine if passed value is present in column of search resutls. + *-- If not, then disable control since, well, there are none, + Locate For &lcCondition + + If !Found() + This.EnableControl(toContainer, lcValue, .F.) + Else + This.EnableControl(toContainer, lcValue, .T.) + Endif + + + *-- Add this filter to the filter string if the property is selected, and the value exists + Try && Could fail if we matched on the (alternate) Tag value, which is fine. + If Eval(lcFilterObjectProperty)&& And Found() + lcFilter = lcNewString + lcCondition + toContainer.cFilter = lcFilter + Endif + Catch + Endtry + + Select (lnSelect) + + ENDPROC + + PROCEDURE buildcontainerfilters + Lparameters toContainer + + Local lcField, lcFilterObjectProperty, lcValue, loControl + + Do Case + + Case Upper(toContainer.Class) = 'GF_FILTERCHECKBOXCONTAINER' + For Each loControl in toContainer.Controls + + *==== CHECKBOXES ================================================= + If Upper(loControl.baseclass) = 'CHECKBOX' + lcFilterObjectProperty = GetWordNum(loControl.ControlSource, 3, '.') + + If Upper(toContainer.name) <> 'CONTAINERMATCHTYPE' + This.BuildCheckBoxFilter(toContainer, lcFilterObjectProperty) + Endif + + *-- Optionally work with Tag value if ControlSource did not match up with any values in the table + *If (loControl.Enabled = .f. or '<' $ loControl.tag) and !Empty(loControl.Tag) && Tag could hold an alternate match in the column + If !Empty(loControl.Tag) && Tag could hold an alternate match in the column + lcField = GetWordNum(lcFilterObjectProperty, 1, '_') + lcValue = '_' + loControl.tag + This.BuildCheckBoxFilter(toContainer, lcField + lcValue) + Endif + + EndIf + EndFor + + Case Upper(toContainer.Class) = 'GF_TEXTBOXCONTAINER' + loControl = toContainer.txt1 + lcFilterObjectProperty = GetWordNum(loControl.ControlSource, 3, '.') + lcFieldInTable = GetWordNum(lcFilterObjectProperty, 1, '_')&& Need to chop off the '_Filter' part of the ControlSource + lcValue = Alltrim(loControl.Value) + This.BuildTextboxFilter(toContainer, lcFieldInTable, lcValue) + + Case Upper(toContainer.Class) = 'GF_TIMESTAMPCONTAINER' + lcFilter = '' + ldFromDate = Thisform.oFilter.Timestamp_FilterFrom + ldToDate = Thisform.oFilter.Timestamp_FilterTo + + If !Empty(toContainer.chkTimeStamp.value) + lcFromDate = Transform(dtos(ldFromDate), '@R {^####/##/##') + '}' + lcToDate = Transform(dtos(ldToDate), '@R {^####/##/##') + '}' + + Do Case + Case Empty(ldFromDate) and Empty(ldToDate) + *-- Do Nothing + Case Empty(ldFromDate) + lcFilter = 'TimeStamp <= ' + lcToDate + Case Empty(ldToDate) + lcFilter = 'TimeStamp >= ' + lcFromDate + Otherwise + lcFilter = 'TimeStamp >= ' + lcFromDate + ' and TimeStamp <= ' + lcToDate + Endcase + + toContainer.cFilter = lcFilter + + EndIf + + Endcase + + + + + + + + ENDPROC + + PROCEDURE buildfilterstring + Local lcAnd, lcFilter, loControl, loPage + + lcFilter = '' + lcAnd = '' + + For Each m.loPage In This.PageFrame.Objects FoxObject + For Each m.loControl In m.loPage.Controls + If Upper(m.loControl.BaseClass) = 'CONTAINER' + loControl.cFilter = '' + This.BuildContainerFilters(m.loControl) + If Not Empty(m.loControl.cFilter) + lcFilter = m.lcFilter + m.lcAnd + '(' + m.loControl.cFilter + ')' + lcAnd = ' and ' + Endif + Endif + Endfor + Endfor + + Do Case + Case This.oFilter.OnlyFirstMatchInProcedure = .F. and This.oFilter.OnlyFirstMatchInStatement = .F. + + Case Empty(lcFilter) and This.oFilter.OnlyFirstMatchInProcedure + lcFilter = [(FirstMatchInProcedure or MatchType # 'Code ')] + + Case Empty(lcFilter) and This.oFilter.OnlyFirstMatchInStatement + lcFilter = [(FirstMatchInStatement or MatchType # 'Code ')] + + Case This.oFilter.OnlyFirstMatchInProcedure + lcFilter = [(FirstMatchInProcedure or MatchType # 'Code ') and (] + m.lcFilter + ')' + + Otherwise + lcFilter = [(FirstMatchInStatement or MatchType # 'Code ') and (] + m.lcFilter + ')' + + Endcase + + This.cFilter = m.lcFilter + + ENDPROC + + PROCEDURE buildtextboxfilter + Lparameters toContainer, tcField, tcValue + + #Define VISIBLE_AND '|and|' + #Define VISIBLE_OR '|or|' + + #Define AND_DELIMITER Chr[255] + #Define OR_DELIMITER Chr[254] + + Local laValues[1], lcField, lcFilter, lcNewFilter, lcSearchField, lcSearchValue, lcText, lcValue + Local llAnd, llLike, llNextAnd, llNot, lnCount, lnI + + lcValue = Alltrim(Upper(m.tcValue)) + lcValue = Strtran(m.lcValue, VISIBLE_AND, AND_DELIMITER, 1, 100, 1) + lcValue = Strtran(m.lcValue, VISIBLE_OR, OR_DELIMITER, 1, 100, 1) + lcValue = Strtran(m.lcValue, '|', OR_DELIMITER, 1, 100, 1) + lnCount = Alines(laValues, m.lcValue, 16, OR_DELIMITER, AND_DELIMITER) + + lcNewFilter = '' + For lnI = 1 To m.lnCount + lcSearchValue = m.laValues[m.lnI] + Do Case + Case AND_DELIMITER = Right(m.lcSearchValue, 1) + llNextAnd = .T. + lcSearchValue = Left(m.lcSearchValue, Len(m.lcSearchValue) - 1) + Case OR_DELIMITER = Right(m.lcSearchValue, 1) + llNextAnd = .F. + lcSearchValue = Left(m.lcSearchValue, Len(m.lcSearchValue) - 1) + Otherwise + llNextAnd = .T. + Endcase + + lcSearchValue = Upper(m.lcSearchValue) + + If Not Empty(m.lcSearchValue) + + If Left(m.lcSearchValue, 1) = '!' And Thisform.oFilter.FilterNot + lcSearchValue = Substr(m.lcSearchValue, 2) + llNot = .T. + Endif + + lcField = m.tcField + If Thisform.oFilter.FilterLike + If Thisform.oFilter.FilterExactMatch + lcField = 'Alltrim(' + m.tcField + ', chr[9], chr[10], chr[13], " ")' + Else + lcSearchValue = '*' + m.lcSearchValue + '*' + Endif + llLike = .T. + Endif + + lcText = ["] + Strtran(m.lcSearchValue, '"', '" + ["] + "') + ["] + + If ' ' $ m.lcSearchValue + lcSearchField = 'Upper(Chrtran(' + m.lcField + ', chr[9] + chr[10] + chr[13], " "))' + Else + lcSearchField = 'Upper(' + m.lcField + ')' + Endif + + Do Case + Case m.llLike = .T. + lcFilter = 'Like(' + m.lcText + ', ' + m.lcSearchField + ')' + Case Thisform.oFilter.FilterExactMatch + lcFilter = m.lcText + ' = ' + m.lcSearchField + Otherwise + lcFilter = m.lcText + ' $ ' + m.lcSearchField + Endcase + + If m.llNot + lcFilter = '!(' + m.lcFilter + ')' + Endif + + If Empty(m.lcNewFilter) + lcNewFilter = m.lcFilter + Else + lcNewFilter = m.lcNewFilter + Iif(m.llAnd, ' and ', ' or ') + m.lcFilter + Endif + llAnd = m.llNextAnd + + Else + lcFilter = '' + Endif + + Endfor + + If Empty(m.lcNewFilter) + toContainer.cFilter = m.lcNewFilter + Else + toContainer.cFilter = '(' + m.lcNewFilter + ')' + Endif + + ENDPROC + + PROCEDURE clearallfilters + Local loControl, loPage + For Each m.loPage In This.PageFrame.Objects FoxObject + For Each m.loControl In m.loPage.Controls + If Upper(m.loControl.BaseClass) = 'CONTAINER' + loControl.Clear() + Endif + Endfor + Endfor + + Thisform.RefreshPageCaptions() + + ENDPROC + + PROCEDURE decoratepage + Lparameters loPage, tlDecorated + + Local llDecorated, loControl + + If Pcount() = 2 + llDecorated = m.tlDecorated + Else + llDecorated = .F. + For Each m.loControl In m.loPage.Controls + If Upper(m.loControl.BaseClass) = 'CONTAINER' + llDecorated = m.llDecorated Or m.loControl.lDecorated + Endif + Endfor + Endif + + With m.loPage + If m.llDecorated + .ForeColor = Rgb(255, 0, 0) + .FontBold = .T. + Else + .ForeColor = Rgb(0, 0, 0) + .FontBold = .F. + Endif + Endwith + ENDPROC + + PROCEDURE Destroy + DoDefault() + + This.BuildFilterString() + + This.oFilter = .null. + + + ENDPROC + + PROCEDURE enablecontrol + Lparameters toContainer, tcCaption, tlEnabled + + *-- Looks for a Checkbox within the passed Container, based on the the Caption. + *-- If found, sets Enabled status to tlEnabed. + + Local lcContainer, loControl + + For each loControl in toContainer.Controls + If Upper(loControl.baseclass) = 'CHECKBOX' + lcTag = Alltrim(Upper(loControl.Tag)) + lcCaption = Alltrim(Upper(Strtran(loControl.caption, '.', ''))) && To handle .h caption on FileType container + tcCaption = Alltrim(Upper(tcCaption)) + + If tcCaption = lcCaption or (lcTag = tcCaption and !Empty(lcTag)) + *loControl.Enabled = tlEnabled + + If tlEnabled = .t. + loControl.Forecolor = Rgb(0,0,0) + *loControl.FontBold = .t. + Else + loControl.Forecolor = Rgb(180,180,180) + *loControl.FontBold = .f. + Endif + + EndIf + + If !loControl.Enabled + *loControl.Value = 0 + EndIf + + EndIf + EndFor + + + + + + + + ENDPROC + + PROCEDURE Init + Lparameters toForm, toFilter + + Local loControl, loPage + + This.MaxHeight = This.Height + This.MinHeight = This.Height + * This.MaxWidth = This.Width + This.MinWidth = This.Width + + DoDefault(m.toForm) + + *SF 20221123 -> local storage + This.cFilterOptionsXMLFile = This.cCR_StoreLocal + This.cFilterOptionsXMLFile + */SF 20221123 -> local storage + + If Vartype(m.toFilter) = 'O' + *-- oFilter should already loaded up with values. + Thisform.oFilter = m.toFilter + Else + This.oFilter = Createobject(This.cFilterOptionsClass) + This.oFilter.LoadFromFile(This.cFilterOptionsXMLFile) + *Thisform.LoadFilterSettings(this.cFilterOptionsXMLFile) + Endif + + *-- XML file stores DateTime, so need to convert to just Date + With Thisform.oFilter + If Vartype(.Timestamp_FilterFrom) = 'T' + .Timestamp_FilterFrom = Ttod(.Timestamp_FilterFrom) + Endif + If Vartype(.Timestamp_FilterTo) = 'T' + .Timestamp_FilterTo = Ttod(.Timestamp_FilterTo) + Endif + Endwith + + ThisForm.BindEachPage() + Thisform.RefreshPageCaptions() + + Thisform.Buildfilterstring() && Call this to handle disabling of checkboxes + + Thisform.Refresh() + + + ENDPROC + + PROCEDURE loadfiltersettings && Loads saved settings from XML file. + Lparameters tcFile + + Local loMy as 'My' OF 'My.vcx' + Local laProperties[1], lcProperty + + If !File(tcFile) + Return + EndIf + + loMy = Newobject('My', 'My.vcx') + AMembers(laProperties, This.oFilter, 0, 'U') + loMy.Settings.Load(tcFile) + + With loMy.Settings + + For x = 1 to Alen(laProperties) + lcProperty = laProperties[x] + Try + Store Evaluate('.' + lcProperty) to ('This.oFilter.' + lcProperty) + Catch + EndTry + Endfor + + Endwith + + + + ENDPROC + + PROCEDURE QueryUnload + thisform.llReturn = .f. + ENDPROC + + PROCEDURE refreshpagecaptions + Local llDecorated, loControl, loPage + For Each m.loPage In This.PageFrame.Objects FoxObject + llDecorated = .F. + For Each m.loControl In m.loPage.Controls + If Upper(m.loControl.BaseClass) = 'CONTAINER' + llDecorated = m.llDecorated Or m.loControl.ShouldBeDecorated() + Endif + Endfor + This.DecoratePage(m.loPage, m.llDecorated) + Endfor + + + ENDPROC + + PROCEDURE refreshtextboxoptions + Lparameters llVisible + this.cntTextBoxOptions.Visible = llVisible + ENDPROC + + PROCEDURE savefiltersettings + Lparameters tcFile + + Local loMy as 'My' OF 'My.vcx' + Local laProperties[1], lcProperty + + loMy = Newobject('My', 'My.vcx') + + AMembers(laProperties, This.oFilter, 0, 'U') + + With loMy.Settings + + For x = 1 to Alen(laProperties) + lcProperty = laProperties[x] + If !lcProperty = '_MEMBERDATA' + .Add(lcProperty, Evaluate('This.oFilter.' + lcProperty)) + EndIf + Endfor + + .Save(tcFile) + + Endwith + + ENDPROC + + PROCEDURE Unload + If Thisform.llReturn + Return Thisform.cFilter + Else + Return .null. + Endif + + + ENDPROC + + PROCEDURE cntTextBoxOptions.Check2.Valid + Thisform.cntTextBoxOptions.chkFilterExactMatch.Refresh() + + ENDPROC + + PROCEDURE cntTextBoxOptions.chkFilterExactMatch.Refresh + This.Value = Not Thisform.oFilter.FilterExactMatch + ENDPROC + + PROCEDURE cntTextBoxOptions.chkFilterExactMatch.Valid + Thisform.oFilter.FilterExactMatch = Not This.Value + ENDPROC + + PROCEDURE Command1.Click + Thisform.llReturn = .t. + + ThisForm.ApplyChanges() + + Thisform.Release() + + + ENDPROC + + PROCEDURE Command3.Click + ThisForm.ClearAllFilters() + + ENDPROC + + PROCEDURE Command4.Click + Thisform.Release() + + + ENDPROC + + PROCEDURE PageFrame.Page1.Activate + DoDefault() + This.Refresh() + ThisForm.RefreshTextBoxOptions(.t.) + + + ENDPROC + + PROCEDURE PageFrame.Page1.Gf_filtersinglecheckboxcontainer1.chkApplyFilter.Valid + This.Parent.Refresh() + ENDPROC + + PROCEDURE PageFrame.Page1.Gf_filtersinglecheckboxcontainer2.chkApplyFilter.Valid + This.Parent.Refresh() + ENDPROC + + PROCEDURE PageFrame.Page1.Label1.Init + Text To This.Caption Noshow Textmerge + Finds matches to the entered text within the same PROCEDURE as the original match. + Endtext + ENDPROC + + PROCEDURE PageFrame.Page1.Label4.Init + Text To This.Caption Noshow Textmerge + Finds matches to the entered text within the same STATEMENT (including continuation lines) as the original match. + Endtext + ENDPROC + + PROCEDURE PageFrame.Page2.Activate + DoDefault() + This.Refresh() + ThisForm.RefreshTextBoxOptions(.t.) + + ENDPROC + + PROCEDURE PageFrame.Page3.Activate + DoDefault() + This.Refresh() + ThisForm.RefreshTextBoxOptions(.t.) + + ENDPROC + + PROCEDURE PageFrame.Page4.Activate + DoDefault() + This.Refresh() + ThisForm.RefreshTextBoxOptions(.t.) + + ENDPROC + + PROCEDURE PageFrame.Page5.Activate + DoDefault() + This.Refresh() + ThisForm.RefreshTextBoxOptions(.F.) + + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check1.Init + This.Caption = MATCHTYPE_NAME + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check10.Init + This.Caption = MATCHTYPE_FILENAME + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check11.Init + This.Caption = MATCHTYPE_CLASS_DEF + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check12.Init + This.Caption = MATCHTYPE_METHOD_DEF + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check16.Init + This.Caption = MATCHTYPE_METHOD + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check17.Init + This.Caption = MATCHTYPE_BASECLASS + + + + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check18.Init + This.Caption = MATCHTYPE_CLASS + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check2.Init + This.Caption = MATCHTYPE_COMMENT + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check20.Init + This.Caption = MATCHTYPE_PARENTCLASS + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check22.Init + This.Caption = MATCHTYPE_PROPERTY_DESC + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check23.Init + This.Caption = MATCHTYPE_FILEDATE + + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check24.Init + This.Caption = MATCHTYPE_TIMESTAMP + + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check3.Init + This.Caption = MATCHTYPE_PROPERTY_DEF + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check4.Init + This.Caption = MATCHTYPE_PROPERTY_NAME + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check5.Init + This.Caption = MATCHTYPE_CONTAINING_CLASS + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check7.Init + This.Caption = MATCHTYPE_PROPERTY_VALUE + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check8.Init + This.Caption = MATCHTYPE_METHOD_DESC + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Check9.Init + This.Caption = MATCHTYPE_CONSTANT + + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox1.Init + This.Caption = MATCHTYPE_CODE + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox2.Init + This.Caption = MATCHTYPE_FRX_EXPR + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox3.Init + This.Caption = MATCHTYPE_FRX_SUPEXPR + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox4.Init + This.Caption = MATCHTYPE_FRX_NAME + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox5.Init + This.Caption = MATCHTYPE_FRX_TAG + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox6.Init + This.Caption = MATCHTYPE_FRX_TAG2 + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox7.Init + This.Caption = MATCHTYPE_FRX_PICTURE + ENDPROC + + PROCEDURE PageFrame.Page5.containerMatchType.Init + + DoDefault() + + For Each loControl in This.Controls + If Upper(loControl.baseclass) = 'CHECKBOX' + loControl.Tag = loControl.Caption + Endif + EndFor + + + ENDPROC + + PROCEDURE PageFrame.Page6.Activate + DoDefault() + This.Refresh() + ThisForm.RefreshTextBoxOptions(.F.) + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_filterpf.sc2 b/Source/Forms/gofish_filterpf.sc2 index c24583b..4f3419c 100644 --- a/Source/Forms/gofish_filterpf.sc2 +++ b/Source/Forms/gofish_filterpf.sc2 @@ -4,2232 +4,9 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_filterpf.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_filter" Baseclass="form" /> + * #INCLUDE "..\lib\gofish.h" - -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_filter AS gf_baseform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="PageFrame" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page1.containerMatchedLine" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page1.Gf_textboxcontainer1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page1.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page1.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page1.Gf_filtersinglecheckboxcontainer1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page1.Gf_filtersinglecheckboxcontainer2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page2.containerFilename" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page2.containerFilePath" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page2.containerTimestamp" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page3.containerClassName" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page3.containerMethodName" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page3.Textboxcontainer1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page3.Textboxcontainer2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page4.containerObjectName" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page4.Textboxcontainer3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check21" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check11" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check18" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check12" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check14" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check17" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check16" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check19" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check20" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check22" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check23" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Check24" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page5.containerMatchType.Gf_filtercheckbox7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkTXT" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkASP" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.ChkHTML" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkH" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkMNX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkSCX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkVCX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkDBC" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkLBX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkFRX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkPJX" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkPRG" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkSPR" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkMPR" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkini" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkJSP" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkJava" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="PageFrame.Page6.containerFileType.chkXML" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Command4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cntTextBoxOptions" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cntTextBoxOptions.Check2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cntTextBoxOptions.Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cntTextBoxOptions.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cntTextBoxOptions.chkFilterExactMatch" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Command3" UniqueID="" Timestamp="" /> - - * - *m: applychanges - *m: bind - *m: bindeachpage - *m: buildcheckboxfilter - *m: buildcontainerfilters - *m: buildfilterstring - *m: buildtextboxfilter - *m: clearallfilters - *m: decoratepage - *m: enablecontrol - *m: loadfiltersettings && Loads saved settings from XML file. - *m: refreshpagecaptions - *m: refreshtextboxoptions - *m: savefiltersettings - *p: ccodetypefilter - *p: cfilenamefilter - *p: cfiletypefilter - *p: cfilter - *p: cfilteroptionsclass - *p: cfilteroptionsxmlfile - *p: csearchresults - *p: llreturn - *p: ofilter - * - - BorderStyle = 3 - Caption = "GoFish Filter Builder" - ccodetypefilter = - cfilenamefilter = - cfiletypefilter = - cfilter = - cfilteroptionsclass = GF_SearchResultsFilter - cfilteroptionsxmlfile = GF_Filter_Settings.xml - csearchresults = - cuisettingsfile = GF_Filter_PF_Form_Settings.xml - DoCreate = .T. - Height = 332 - Left = 0 - llreturn = .F. - Name = "GF_Filter" - ofilter = .NULL. - ShowTips = .T. - Top = 0 - Visible = .T. - Width = 510 - WindowType = 1 - _memberdata = - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ADD OBJECT 'cntTextBoxOptions' AS container WITH ; - Height = 52, ; - Left = 6, ; - Name = "cntTextBoxOptions", ; - Top = 239, ; - Width = 499 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'cntTextBoxOptions.Check1' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - Caption = "Use leading ! (for NOT)", ; - ControlSource = "Thisform.oFilter.FilterNot", ; - Height = 17, ; - Left = 321, ; - Name = "Check1", ; - Top = 26, ; - Width = 144, ; - ZOrderSet = 5 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'cntTextBoxOptions.Check2' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - Caption = "Use wildcards (* and ?)", ; - ControlSource = "Thisform.oFilter.FilterLike", ; - Height = 17, ; - Left = 146, ; - Name = "Check2", ; - Top = 26, ; - Width = 147, ; - ZOrderSet = 6 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'cntTextBoxOptions.chkFilterExactMatch' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - Caption = "Match anywhere", ; - ControlSource = "", ; - Height = 17, ; - Left = 12, ; - Name = "chkFilterExactMatch", ; - ToolTipText = "If not selected, only exact matches are found, although you can over-ride this by selecting to use wildcards.", ; - Top = 26, ; - Width = 106, ; - ZOrderSet = 6 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'cntTextBoxOptions.Label1' AS label WITH ; - Alignment = 0, ; - AutoSize = .T., ; - Caption = 'Filters are case-insensitive. Enter multiple filters using "|AND|" or "|OR|" as delimiters.', ; - Height = 17, ; - Left = 10, ; - Name = "Label1", ; - TabIndex = 4, ; - Top = 6, ; - Width = 468, ; - ZOrderSet = 7 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'Command1' AS commandbutton WITH ; - Anchor = 0, ; - AutoSize = .F., ; - Caption = "Apply", ; - Default = .T., ; - FontSize = 10, ; - Height = 29, ; - Left = 36, ; - Name = "Command1", ; - Top = 296, ; - Width = 65, ; - ZOrderSet = 2 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'Command3' AS commandbutton WITH ; - Anchor = 0, ; - AutoSize = .F., ; - Caption = "\ - - ADD OBJECT 'Command4' AS commandbutton WITH ; - Anchor = 0, ; - AutoSize = .F., ; - Cancel = .T., ; - Caption = "Cancel", ; - FontSize = 9, ; - Height = 29, ; - Left = 412, ; - Name = "Command4", ; - Top = 296, ; - Width = 65, ; - ZOrderSet = 3 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'PageFrame' AS pageframe WITH ; - Anchor = 15, ; - ErasePage = .T., ; - Height = 240, ; - Left = 6, ; - Name = "PageFrame", ; - PageCount = 6, ; - Top = 0, ; - Width = 500, ; - Page1.Caption = "Code", ; - Page1.Name = "Page1", ; - Page1.PageOrder = 1, ; - Page2.Caption = "Files", ; - Page2.Name = "Page2", ; - Page2.PageOrder = 4, ; - Page3.Caption = "Classes", ; - Page3.Name = "Page3", ; - Page3.PageOrder = 2, ; - Page4.Caption = "Names", ; - Page4.Name = "Page4", ; - Page4.PageOrder = 3, ; - Page5.Caption = "Match Types", ; - Page5.Name = "Page5", ; - Page5.PageOrder = 6, ; - Page6.Caption = "File Types", ; - Page6.Name = "Page6", ; - Page6.PageOrder = 5 - *< END OBJECT: BaseClass="pageframe" /> - - ADD OBJECT 'PageFrame.Page1.containerMatchedLine' AS gf_textboxcontainer WITH ; - Anchor = 10, ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 11, ; - Name = "containerMatchedLine", ; - TabIndex = 1, ; - Top = 0, ; - Visible = .T., ; - Width = 247, ; - Label1.Caption = "Within Same Statement", ; - Label1.Name = "Label1", ; - Label1.Tag = "Statement", ; - Label1.Width = 206, ; - Command1.Name = "Command1", ; - Command1.Top = 53, ; - Command2.Name = "Command2", ; - Command2.Top = 53, ; - Line1.Name = "Line1", ; - Line1.Width = 206, ; - Line2.Name = "Line2", ; - Line2.Top = 49, ; - Line2.Width = 205, ; - txt1.Height = 23, ; - txt1.Left = 7, ; - txt1.Name = "txt1", ; - txt1.Top = 26, ; - txt1.Width = 230 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page1.Gf_filtersinglecheckboxcontainer1' AS gf_filtersinglecheckboxcontainer WITH ; - Height = 25, ; - Left = 47, ; - Name = "Gf_filtersinglecheckboxcontainer1", ; - Top = 161, ; - Width = 280, ; - chkApplyFilter.Alignment = 0, ; - chkApplyFilter.Caption = "Only show first match in each STATEMENT", ; - chkApplyFilter.ControlSource = "OnlyFirstMatchInStatement", ; - chkApplyFilter.Name = "chkApplyFilter" - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page1.Gf_filtersinglecheckboxcontainer2' AS gf_filtersinglecheckboxcontainer WITH ; - Height = 25, ; - Left = 47, ; - Name = "Gf_filtersinglecheckboxcontainer2", ; - Top = 185, ; - Width = 280, ; - chkApplyFilter.Alignment = 0, ; - chkApplyFilter.Caption = "Only show first match in each PROCEDURE", ; - chkApplyFilter.ControlSource = "OnlyFirstMatchInProcedure", ; - chkApplyFilter.Name = "chkApplyFilter" - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page1.Gf_textboxcontainer1' AS gf_textboxcontainer WITH ; - Anchor = 10, ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 11, ; - Name = "Gf_textboxcontainer1", ; - TabIndex = 2, ; - Top = 80, ; - Visible = .T., ; - Width = 247, ; - Label1.Caption = "Within Same Procedure", ; - Label1.Height = 17, ; - Label1.Left = 7, ; - Label1.Name = "Label1", ; - Label1.Tag = "ProcCode", ; - Label1.Top = 4, ; - Label1.Width = 205, ; - Command1.Name = "Command1", ; - Command1.Top = 53, ; - Command2.Name = "Command2", ; - Command2.Top = 53, ; - Line1.Name = "Line1", ; - Line1.Width = 242, ; - Line2.Name = "Line2", ; - Line2.Top = 49, ; - Line2.Width = 241, ; - txt1.Height = 23, ; - txt1.Left = 7, ; - txt1.Name = "txt1", ; - txt1.Top = 26, ; - txt1.Width = 229 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page1.Label1' AS label WITH ; - Anchor = 8, ; - AutoSize = .F., ; - BackStyle = 0, ; - Caption = "Within textboxes:", ; - Height = 47, ; - Left = 269, ; - Name = "Label1", ; - TabIndex = 4, ; - Top = 86, ; - Width = 213, ; - WordWrap = .T., ; - ZOrderSet = 7 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'PageFrame.Page1.Label4' AS label WITH ; - Anchor = 8, ; - AutoSize = .F., ; - BackStyle = 0, ; - Caption = "Within textboxes:", ; - Height = 71, ; - Left = 269, ; - Name = "Label4", ; - TabIndex = 3, ; - Top = 5, ; - Width = 213, ; - WordWrap = .T., ; - ZOrderSet = 7 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'PageFrame.Page2.containerFilename' AS gf_textboxcontainer WITH ; - Anchor = 130, ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 9, ; - Name = "containerFilename", ; - TabIndex = 1, ; - Top = 14, ; - Visible = .T., ; - Width = 228, ; - Label1.Caption = "File Name", ; - Label1.Name = "Label1", ; - Label1.Width = 217, ; - Command1.Name = "Command1", ; - Command1.Top = 54, ; - Command2.Name = "Command2", ; - Command2.Top = 54, ; - Line1.Name = "Line1", ; - Line1.Width = 217, ; - Line2.Name = "Line2", ; - Line2.Top = 50, ; - Line2.Width = 216, ; - txt1.Name = "txt1", ; - txt1.Width = 216 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page2.containerFilePath' AS gf_textboxcontainer WITH ; - Anchor = 40, ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 251, ; - Name = "containerFilePath", ; - TabIndex = 2, ; - Top = 14, ; - Visible = .T., ; - Width = 228, ; - Label1.Caption = "File Path", ; - Label1.Name = "Label1", ; - Label1.Width = 217, ; - Command1.Left = 10, ; - Command1.Name = "Command1", ; - Command1.Top = 54, ; - Command2.Left = 65, ; - Command2.Name = "Command2", ; - Command2.Top = 54, ; - Line1.Name = "Line1", ; - Line1.Width = 217, ; - Line2.Left = 5, ; - Line2.Name = "Line2", ; - Line2.Top = 51, ; - Line2.Width = 216, ; - txt1.Name = "txt1", ; - txt1.Width = 216 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page2.containerTimestamp' AS gf_timestampcontainer WITH ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 124, ; - Name = "containerTimestamp", ; - TabIndex = 3, ; - Top = 110, ; - Visible = .T., ; - Width = 263, ; - Label1.Caption = "TimeStamp", ; - Label1.Left = 138, ; - Label1.Name = "Label1", ; - Label1.Top = -66, ; - Label1.Width = 216, ; - Command1.Left = 160, ; - Command1.Name = "Command1", ; - Command1.Top = -44, ; - Command2.Left = 143, ; - Command2.Name = "Command2", ; - Command2.Top = 6, ; - Command2.Visible = .T., ; - Line1.Left = 6, ; - Line1.Name = "Line1", ; - Line1.Top = 22, ; - Line1.Width = 351, ; - Line2.Left = 5, ; - Line2.Name = "Line2", ; - Line2.Top = 74, ; - Line2.Width = 350, ; - chkTimeStamp.Alignment = 0, ; - chkTimeStamp.Caption = "TimeStamp", ; - chkTimeStamp.ControlSource = "Filter", ; - chkTimeStamp.Height = 17, ; - chkTimeStamp.Left = 48, ; - chkTimeStamp.Name = "chkTimeStamp", ; - chkTimeStamp.Tag = "Filter", ; - chkTimeStamp.Top = 8, ; - chkTimeStamp.Width = 71, ; - Label11.Left = 6, ; - Label11.Name = "Label11", ; - Label11.Top = 41, ; - Label12.Left = 132, ; - Label12.Name = "Label12", ; - Label12.Top = 40, ; - txtTimeStampFrom.ControlSource = "Timestamp_FilterFrom", ; - txtTimeStampFrom.Height = 23, ; - txtTimeStampFrom.Left = 31, ; - txtTimeStampFrom.Name = "txtTimeStampFrom", ; - txtTimeStampFrom.Top = 36, ; - txtTimeStampFrom.Width = 88, ; - txtTimeStampTo.ControlSource = "Timestamp_FilterTo", ; - txtTimeStampTo.Height = 23, ; - txtTimeStampTo.Left = 156, ; - txtTimeStampTo.Name = "txtTimeStampTo", ; - txtTimeStampTo.Top = 36, ; - txtTimeStampTo.Width = 88 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page3.containerClassName' AS gf_textboxcontainer WITH ; - Anchor = 40, ; - BorderColor = 200,200,200, ; - Height = 80, ; - Left = 249, ; - Name = "containerClassName", ; - TabIndex = 4, ; - Tag = "_Class", ; - Top = 110, ; - Visible = .T., ; - Width = 230, ; - Label1.Caption = "Containing Class", ; - Label1.Name = "Label1", ; - Label1.Width = 176, ; - Command1.Name = "Command1", ; - Command1.Top = 55, ; - Command2.Name = "Command2", ; - Command2.Top = 55, ; - Line1.Name = "Line1", ; - Line1.Width = 176, ; - Line2.Name = "Line2", ; - Line2.Top = 51, ; - Line2.Width = 175, ; - txt1.Height = 23, ; - txt1.Left = 7, ; - txt1.Name = "txt1", ; - txt1.Top = 26, ; - txt1.Width = 218 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page3.containerMethodName' AS gf_textboxcontainer WITH ; - Anchor = 130, ; - BorderColor = 200,200,200, ; - Height = 80, ; - Left = 9, ; - Name = "containerMethodName", ; - TabIndex = 1, ; - Top = 14, ; - Visible = .T., ; - Width = 230, ; - Label1.Caption = "Class", ; - Label1.Name = "Label1", ; - Label1.Width = 219, ; - Command1.Name = "Command1", ; - Command1.Top = 56, ; - Command2.Name = "Command2", ; - Command2.Top = 56, ; - Line1.Name = "Line1", ; - Line1.Width = 219, ; - Line2.Name = "Line2", ; - Line2.Top = 52, ; - Line2.Width = 218, ; - txt1.Name = "txt1", ; - txt1.Width = 218 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page3.Textboxcontainer1' AS gf_textboxcontainer WITH ; - Anchor = 40, ; - BorderColor = 200,200,200, ; - Height = 80, ; - Left = 249, ; - Name = "Textboxcontainer1", ; - TabIndex = 2, ; - Top = 14, ; - Visible = .T., ; - Width = 230, ; - Label1.Caption = "Base Class", ; - Label1.Height = 17, ; - Label1.Left = 7, ; - Label1.Name = "Label1", ; - Label1.Top = 4, ; - Label1.Width = 200, ; - Command1.Name = "Command1", ; - Command1.Top = 55, ; - Command2.Name = "Command2", ; - Command2.Top = 55, ; - Line1.Height = 0, ; - Line1.Left = 6, ; - Line1.Name = "Line1", ; - Line1.Top = 20, ; - Line1.Width = 199, ; - Line2.Height = 0, ; - Line2.Left = 5, ; - Line2.Name = "Line2", ; - Line2.Top = 51, ; - Line2.Width = 200, ; - txt1.Height = 23, ; - txt1.Left = 7, ; - txt1.Name = "txt1", ; - txt1.Top = 26, ; - txt1.Width = 218 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page3.Textboxcontainer2' AS gf_textboxcontainer WITH ; - Anchor = 130, ; - BorderColor = 200,200,200, ; - Height = 80, ; - Left = 9, ; - Name = "Textboxcontainer2", ; - TabIndex = 3, ; - Top = 110, ; - Width = 230, ; - Label1.Caption = "Parent Class", ; - Label1.Name = "Label1", ; - Label1.Width = 153, ; - Command1.Name = "Command1", ; - Command1.Top = 56, ; - Command2.Name = "Command2", ; - Command2.Top = 56, ; - Line1.Name = "Line1", ; - Line1.Width = 153, ; - Line2.Name = "Line2", ; - Line2.Top = 52, ; - Line2.Width = 152, ; - txt1.Height = 23, ; - txt1.Left = 7, ; - txt1.Name = "txt1", ; - txt1.Top = 26, ; - txt1.Width = 218 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page4.containerObjectName' AS gf_textboxcontainer WITH ; - Anchor = 10, ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 12, ; - Name = "containerObjectName", ; - TabIndex = 1, ; - Top = 14, ; - Visible = .T., ; - Width = 473, ; - Label1.Caption = "Object/Property Name", ; - Label1.Name = "Label1", ; - Label1.Tag = "Name", ; - Label1.Width = 462, ; - Command1.Name = "Command1", ; - Command1.Top = 52, ; - Command2.Name = "Command2", ; - Command2.Top = 52, ; - Line1.Name = "Line1", ; - Line1.Width = 462, ; - Line2.Name = "Line2", ; - Line2.Top = 48, ; - Line2.Width = 461, ; - txt1.Name = "txt1", ; - txt1.Width = 461 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page4.Textboxcontainer3' AS gf_textboxcontainer WITH ; - Anchor = 10, ; - BorderColor = 200,200,200, ; - Height = 77, ; - Left = 12, ; - Name = "Textboxcontainer3", ; - TabIndex = 2, ; - Top = 104, ; - Visible = .T., ; - Width = 473, ; - Label1.Caption = "Method Name", ; - Label1.Name = "Label1", ; - Label1.Width = 462, ; - Command1.Name = "Command1", ; - Command1.Top = 53, ; - Command2.Name = "Command2", ; - Command2.Top = 53, ; - Line1.Name = "Line1", ; - Line1.Width = 462, ; - Line2.Name = "Line2", ; - Line2.Top = 49, ; - Line2.Width = 461, ; - txt1.Name = "txt1", ; - txt1.Width = 461 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType' AS gf_filtercheckboxcontainer WITH ; - BorderColor = 200,200,200, ; - Height = 205, ; - Left = 5, ; - Name = "containerMatchType", ; - TabIndex = 2, ; - Top = 2, ; - Visible = .T., ; - Width = 484, ; - Label1.Caption = "MatchType", ; - Label1.Left = 69, ; - Label1.Name = "Label1", ; - Label1.TabIndex = 31, ; - Label1.Top = 4, ; - Label1.Width = 369, ; - Command1.Left = 10, ; - Command1.Name = "Command1", ; - Command1.TabIndex = 29, ; - Command1.Top = 180, ; - Command2.Left = 46, ; - Command2.Name = "Command2", ; - Command2.TabIndex = 30, ; - Command2.Top = 180, ; - Line1.Name = "Line1", ; - Line1.Width = 496, ; - Line2.Height = 6, ; - Line2.Left = 6, ; - Line2.Name = "Line2", ; - Line2.Top = -78, ; - Line2.Width = 496 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check1' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check1", ; - TabIndex = 11, ; - Top = 24, ; - Value = .T., ; - Width = 61 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check10' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Check10", ; - TabIndex = 1, ; - Top = 24, ; - Value = .T., ; - Width = 76 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check11' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check11", ; - TabIndex = 2, ; - Top = 78, ; - Value = .T., ; - Width = 79 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check12' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 252, ; - Name = "Check12", ; - TabIndex = 3, ; - Top = 24, ; - Value = .T., ; - Width = 90 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check14' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 8, ; - Name = "Check14", ; - TabIndex = 5, ; - Top = 78, ; - Value = .T., ; - Width = 75 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check16' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 8, ; - Name = "Check16", ; - TabIndex = 6, ; - Top = 96, ; - Value = .T., ; - Width = 70 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check17' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check17", ; - TabIndex = 8, ; - Top = 96, ; - Value = .T., ; - Width = 85 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check18' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check18", ; - TabIndex = 9, ; - Top = 60, ; - Value = .T., ; - Width = 59 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check19' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check19", ; - TabIndex = 13, ; - Top = 42, ; - Value = .T., ; - Width = 66 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check2' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 8, ; - Name = "Check2", ; - TabIndex = 21, ; - Top = 42, ; - Value = .T., ; - Width = 79 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check20' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check20", ; - TabIndex = 10, ; - Top = 114, ; - Value = .T., ; - Width = 94 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check21' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 8, ; - Name = "Check21", ; - TabIndex = 14, ; - Top = 60, ; - Value = .T., ; - Width = 83 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check22' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 252, ; - Name = "Check22", ; - TabIndex = 15, ; - Top = 78, ; - Value = .T., ; - Width = 102 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check23' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Check23", ; - TabIndex = 18, ; - Top = 42, ; - Value = .T., ; - Width = 73 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check24' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check24", ; - TabIndex = 19, ; - Top = 150, ; - Value = .T., ; - Width = 86 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check3' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 252, ; - Name = "Check3", ; - TabIndex = 4, ; - Top = 60, ; - Value = .T., ; - Width = 96 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check4' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 252, ; - Name = "Check4", ; - TabIndex = 16, ; - Top = 96, ; - Value = .T., ; - Width = 106 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check5' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 113, ; - Name = "Check5", ; - TabIndex = 12, ; - Top = 132, ; - Value = .T., ; - Width = 113 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check7' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 252, ; - Name = "Check7", ; - TabIndex = 17, ; - Top = 114, ; - Value = .T., ; - Width = 105 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check8' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 252, ; - Name = "Check8", ; - TabIndex = 7, ; - Top = 42, ; - Value = .T., ; - Width = 96 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Check9' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 8, ; - Name = "Check9", ; - TabIndex = 20, ; - Top = 114, ; - Value = .T., ; - Width = 78 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox1' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Code", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 8, ; - Name = "Gf_filtercheckbox1", ; - TabIndex = 22, ; - Top = 24, ; - Value = .T., ; - Width = 43 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox2' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Gf_filtercheckbox2", ; - TabIndex = 23, ; - Top = 84, ; - Value = .T., ; - Width = 56 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox3' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Gf_filtercheckbox3", ; - TabIndex = 28, ; - Top = 174, ; - Value = .T., ; - Width = 74 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox4' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Gf_filtercheckbox4", ; - TabIndex = 26, ; - Top = 102, ; - Value = .T., ; - Width = 61 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox5' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Gf_filtercheckbox5", ; - TabIndex = 24, ; - Top = 120, ; - Value = .T., ; - Width = 52 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox6' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Gf_filtercheckbox6", ; - TabIndex = 27, ; - Top = 138, ; - Value = .T., ; - Width = 58 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Gf_filtercheckbox7' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 390, ; - Name = "Gf_filtercheckbox7", ; - TabIndex = 25, ; - Top = 156, ; - Value = .T., ; - Width = 67 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page5.containerMatchType.Label2' AS label WITH ; - Caption = "Reports", ; - Height = 15, ; - Left = 390, ; - Name = "Label2", ; - TabIndex = 32, ; - Top = 66, ; - Width = 51 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType' AS gf_filtercheckboxcontainer WITH ; - BorderColor = 200,200,200, ; - Height = 188, ; - Left = 128, ; - Name = "containerFileType", ; - TabIndex = 1, ; - Top = 8, ; - Width = 244, ; - Label1.Caption = "FileType", ; - Label1.Name = "Label1", ; - Label1.TabIndex = 19, ; - Label1.Width = 233, ; - Command1.Name = "Command1", ; - Command1.TabIndex = 20, ; - Command1.Top = 165, ; - Command2.Name = "Command2", ; - Command2.TabIndex = 21, ; - Command2.Top = 165, ; - Line1.Name = "Line1", ; - Line1.Width = 233, ; - Line2.Height = 0, ; - Line2.Left = 5, ; - Line2.Name = "Line2", ; - Line2.Top = 160, ; - Line2.Width = 233 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="container" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkASP' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "ASP", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 173, ; - Name = "chkASP", ; - TabIndex = 16, ; - Top = 84, ; - Value = .T., ; - Width = 37 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkDBC' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "DBC", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkDBC", ; - TabIndex = 7, ; - Top = 139, ; - Value = .T., ; - Width = 38 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkFRX' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "FRX", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkFRX", ; - TabIndex = 3, ; - Top = 65, ; - Value = .T., ; - Width = 37 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkH' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = ".h", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 102, ; - Name = "chkH", ; - TabIndex = 12, ; - Tag = "h", ; - Top = 102, ; - Value = .T., ; - Width = 28 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.ChkHTML' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "HTML", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 173, ; - Name = "ChkHTML", ; - TabIndex = 13, ; - Top = 27, ; - Value = .T., ; - Width = 44 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkini' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "INI", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 102, ; - Name = "chkini", ; - TabIndex = 11, ; - Top = 84, ; - Value = .T., ; - Width = 33 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkJava' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "JAVA", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 173, ; - Name = "chkJava", ; - TabIndex = 17, ; - Top = 103, ; - Value = .T., ; - Width = 43 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkJSP' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "JSP", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 173, ; - Name = "chkJSP", ; - TabIndex = 18, ; - Top = 122, ; - Value = .T., ; - Width = 35 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkLBX' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "LBX", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkLBX", ; - TabIndex = 4, ; - Top = 83, ; - Value = .T., ; - Width = 35 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkMNX' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "MNX", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkMNX", ; - TabIndex = 5, ; - Top = 101, ; - Value = .T., ; - Width = 39 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkMPR' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "MPR", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 102, ; - Name = "chkMPR", ; - TabIndex = 9, ; - Top = 46, ; - Value = .T., ; - Width = 39 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkPJX' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "PJX", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkPJX", ; - TabIndex = 6, ; - Top = 120, ; - Value = .T., ; - Width = 35 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkPRG' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "PRG", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 102, ; - Name = "chkPRG", ; - TabIndex = 8, ; - Top = 27, ; - Value = .T., ; - Width = 38 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkSCX' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "SCX", ; - ControlSource = "", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkSCX", ; - TabIndex = 1, ; - Top = 27, ; - Value = .T., ; - Width = 37 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkSPR' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "SPR", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 102, ; - Name = "chkSPR", ; - TabIndex = 10, ; - Top = 65, ; - Value = .T., ; - Width = 37 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkTXT' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "TXT", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 173, ; - Name = "chkTXT", ; - TabIndex = 15, ; - Top = 65, ; - Value = .T., ; - Width = 36 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkVCX' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "VCX", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 29, ; - Name = "chkVCX", ; - TabIndex = 2, ; - Top = 46, ; - Value = .T., ; - Width = 37 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - ADD OBJECT 'PageFrame.Page6.containerFileType.chkXML' AS gf_filtercheckbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "XML", ; - FontName = "Tahoma", ; - FontSize = 8, ; - Height = 15, ; - Left = 173, ; - Name = "chkXML", ; - TabIndex = 14, ; - Top = 46, ; - Value = .T., ; - Width = 37 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="checkbox" /> - - PROCEDURE applychanges - This.SaveFilterSettings(This.cFilterOptionsXMLFile) - - - ENDPROC - - PROCEDURE bind - Lparameters toContainer - - lcControlSourceRoot = 'Thisform.oFilter.' - - For each control in toContainer.Controls - If PemStatus(control, 'ControlSource', 5) and !Empty(control.ControlSource) - control.ControlSource = lcControlSourceRoot + control.ControlSource - EndIf - EndFor - - ENDPROC - - PROCEDURE bindeachpage - *-- Bind up controls to an empty class instance so form can set up - Local loControl, loPage - For Each m.loPage In This.PageFrame.Objects FoxObject - For Each m.loControl In m.loPage.Controls - If Upper(m.loControl.BaseClass) = 'CONTAINER' - This.Bind(m.loControl) - Endif - Endfor - Endfor - - - ENDPROC - - PROCEDURE buildcheckboxfilter - Lparameters toContainer, tcFilterObjectProperty, tcSeparator - - Local lcCondition, lcExistingString, lcField, lcFilter, lcFilterObjectProperty, lcNewString, lcValue - - lnSelect = Select() - Select (Thisform.oForm.cSearchResultsAlias) - - lcField = Getwordnum(tcFilterObjectProperty, 1, '_') - lcValue = Getwordnum(tcFilterObjectProperty, 2, '_') - - lcFilterObjectProperty = 'Thisform.oFilter.' + tcFilterObjectProperty - lcFilterObjectProperty = Strtran(lcFilterObjectProperty, '<', '') - lcFilterObjectProperty = Strtran(lcFilterObjectProperty, '>', '') - lcFilterObjectProperty = Strtran(lcFilterObjectProperty, ' ', '') - - lcNewString = '' - - If Empty(tcSeparator) - tcSeparator = 'or' - Endif - - lcExistingString = toContainer.cFilter - - If !Empty(lcExistingString) - lcNewString = lcExistingString + ' ' + tcSeparator + ' ' - Endif - - *lcCondition = 'Alltrim(Upper(' + lcField + ')) == [' + Alltrim(Upper(lcValue)) + ']' - - lcCondition = 'Alltrim(' + lcField + ')==[' + Alltrim(lcValue) + ']' - - *-- Determine if passed value is present in column of search resutls. - *-- If not, then disable control since, well, there are none, - Locate For &lcCondition - - If !Found() - This.EnableControl(toContainer, lcValue, .F.) - Else - This.EnableControl(toContainer, lcValue, .T.) - Endif - - - *-- Add this filter to the filter string if the property is selected, and the value exists - Try && Could fail if we matched on the (alternate) Tag value, which is fine. - If Eval(lcFilterObjectProperty)&& And Found() - lcFilter = lcNewString + lcCondition - toContainer.cFilter = lcFilter - Endif - Catch - Endtry - - Select (lnSelect) - - ENDPROC - - PROCEDURE buildcontainerfilters - Lparameters toContainer - - Local lcField, lcFilterObjectProperty, lcValue, loControl - - Do Case - - Case Upper(toContainer.Class) = 'GF_FILTERCHECKBOXCONTAINER' - For Each loControl in toContainer.Controls - - *==== CHECKBOXES ================================================= - If Upper(loControl.baseclass) = 'CHECKBOX' - lcFilterObjectProperty = GetWordNum(loControl.ControlSource, 3, '.') - - If Upper(toContainer.name) <> 'CONTAINERMATCHTYPE' - This.BuildCheckBoxFilter(toContainer, lcFilterObjectProperty) - Endif - - *-- Optionally work with Tag value if ControlSource did not match up with any values in the table - *If (loControl.Enabled = .f. or '<' $ loControl.tag) and !Empty(loControl.Tag) && Tag could hold an alternate match in the column - If !Empty(loControl.Tag) && Tag could hold an alternate match in the column - lcField = GetWordNum(lcFilterObjectProperty, 1, '_') - lcValue = '_' + loControl.tag - This.BuildCheckBoxFilter(toContainer, lcField + lcValue) - Endif - - EndIf - EndFor - - Case Upper(toContainer.Class) = 'GF_TEXTBOXCONTAINER' - loControl = toContainer.txt1 - lcFilterObjectProperty = GetWordNum(loControl.ControlSource, 3, '.') - lcFieldInTable = GetWordNum(lcFilterObjectProperty, 1, '_')&& Need to chop off the '_Filter' part of the ControlSource - lcValue = Alltrim(loControl.Value) - This.BuildTextboxFilter(toContainer, lcFieldInTable, lcValue) - - Case Upper(toContainer.Class) = 'GF_TIMESTAMPCONTAINER' - lcFilter = '' - ldFromDate = Thisform.oFilter.Timestamp_FilterFrom - ldToDate = Thisform.oFilter.Timestamp_FilterTo - - If !Empty(toContainer.chkTimeStamp.value) - lcFromDate = Transform(dtos(ldFromDate), '@R {^####/##/##') + '}' - lcToDate = Transform(dtos(ldToDate), '@R {^####/##/##') + '}' - - Do Case - Case Empty(ldFromDate) and Empty(ldToDate) - *-- Do Nothing - Case Empty(ldFromDate) - lcFilter = 'TimeStamp <= ' + lcToDate - Case Empty(ldToDate) - lcFilter = 'TimeStamp >= ' + lcFromDate - Otherwise - lcFilter = 'TimeStamp >= ' + lcFromDate + ' and TimeStamp <= ' + lcToDate - Endcase - - toContainer.cFilter = lcFilter - - EndIf - - Endcase - - - - - - - - ENDPROC - - PROCEDURE buildfilterstring - Local lcAnd, lcFilter, loControl, loPage - - lcFilter = '' - lcAnd = '' - - For Each m.loPage In This.PageFrame.Objects FoxObject - For Each m.loControl In m.loPage.Controls - If Upper(m.loControl.BaseClass) = 'CONTAINER' - loControl.cFilter = '' - This.BuildContainerFilters(m.loControl) - If Not Empty(m.loControl.cFilter) - lcFilter = m.lcFilter + m.lcAnd + '(' + m.loControl.cFilter + ')' - lcAnd = ' and ' - Endif - Endif - Endfor - Endfor - - Do Case - Case This.oFilter.OnlyFirstMatchInProcedure = .F. and This.oFilter.OnlyFirstMatchInStatement = .F. - - Case Empty(lcFilter) and This.oFilter.OnlyFirstMatchInProcedure = .T. - lcFilter = [(FirstMatchInProcedure or MatchType # 'Code ')] - - Case Empty(lcFilter) and This.oFilter.OnlyFirstMatchInStatement = .T. - lcFilter = [(FirstMatchInStatement or MatchType # 'Code ')] - - Case This.oFilter.OnlyFirstMatchInProcedure = .T. - lcFilter = [(FirstMatchInProcedure or MatchType # 'Code ') and (] + m.lcFilter + ')' - - Otherwise - lcFilter = [(FirstMatchInStatement or MatchType # 'Code ') and (] + m.lcFilter + ')' - - Endcase - - This.cFilter = m.lcFilter - - ENDPROC - - PROCEDURE buildtextboxfilter - Lparameters toContainer, tcField, tcValue - - #Define VISIBLE_AND '|and|' - #Define VISIBLE_OR '|or|' - - #Define AND_DELIMITER Chr[255] - #Define OR_DELIMITER Chr[254] - - Local laValues[1], lcField, lcFilter, lcNewFilter, lcSearchField, lcSearchValue, lcText, lcValue - Local llAnd, llLike, llNextAnd, llNot, lnCount, lnI - - lcValue = Alltrim(Upper(m.tcValue)) - lcValue = Strtran(m.lcValue, VISIBLE_AND, AND_DELIMITER, 1, 100, 1) - lcValue = Strtran(m.lcValue, VISIBLE_OR, OR_DELIMITER, 1, 100, 1) - lcValue = Strtran(m.lcValue, '|', OR_DELIMITER, 1, 100, 1) - lnCount = Alines(laValues, m.lcValue, 16, OR_DELIMITER, AND_DELIMITER) - - lcNewFilter = '' - For lnI = 1 To m.lnCount - lcSearchValue = m.laValues[m.lnI] - Do Case - Case AND_DELIMITER = Right(m.lcSearchValue, 1) - llNextAnd = .T. - lcSearchValue = Left(m.lcSearchValue, Len(m.lcSearchValue) - 1) - Case OR_DELIMITER = Right(m.lcSearchValue, 1) - llNextAnd = .F. - lcSearchValue = Left(m.lcSearchValue, Len(m.lcSearchValue) - 1) - Otherwise - llNextAnd = .T. - Endcase - - lcSearchValue = Upper(m.lcSearchValue) - - If Not Empty(m.lcSearchValue) - - If Left(m.lcSearchValue, 1) = '!' And Thisform.oFilter.FilterNot - lcSearchValue = Substr(m.lcSearchValue, 2) - llNot = .T. - Endif - - lcField = m.tcField - If Thisform.oFilter.FilterLike - If Thisform.oFilter.FilterExactMatch - lcField = 'Alltrim(' + m.tcField + ', chr[9], chr[10], chr[13], " ")' - Else - lcSearchValue = '*' + m.lcSearchValue + '*' - Endif - llLike = .T. - Endif - - lcText = ["] + Strtran(m.lcSearchValue, '"', '" + ["] + "') + ["] - - If ' ' $ m.lcSearchValue - lcSearchField = 'Upper(Chrtran(' + m.lcField + ', chr[9] + chr[10] + chr[13], " "))' - Else - lcSearchField = 'Upper(' + m.lcField + ')' - Endif - - Do Case - Case m.llLike = .T. - lcFilter = 'Like(' + m.lcText + ', ' + m.lcSearchField + ')' - Case Thisform.oFilter.FilterExactMatch - lcFilter = m.lcText + ' = ' + m.lcSearchField - Otherwise - lcFilter = m.lcText + ' $ ' + m.lcSearchField - Endcase - - If m.llNot - lcFilter = '!(' + m.lcFilter + ')' - Endif - - If Empty(m.lcNewFilter) - lcNewFilter = m.lcFilter - Else - lcNewFilter = m.lcNewFilter + Iif(m.llAnd, ' and ', ' or ') + m.lcFilter - Endif - llAnd = m.llNextAnd - - Else - lcFilter = '' - Endif - - Endfor - - If Empty(m.lcNewFilter) - toContainer.cFilter = m.lcNewFilter - Else - toContainer.cFilter = '(' + m.lcNewFilter + ')' - Endif - - ENDPROC - - PROCEDURE clearallfilters - Local loControl, loPage - For Each m.loPage In This.PageFrame.Objects FoxObject - For Each m.loControl In m.loPage.Controls - If Upper(m.loControl.BaseClass) = 'CONTAINER' - loControl.Clear() - Endif - Endfor - Endfor - - Thisform.RefreshPageCaptions() - - ENDPROC - - PROCEDURE decoratepage - Lparameters loPage, tlDecorated - - Local llDecorated, loControl - - If Pcount() = 2 - llDecorated = m.tlDecorated - Else - llDecorated = .F. - For Each m.loControl In m.loPage.Controls - If Upper(m.loControl.BaseClass) = 'CONTAINER' - llDecorated = m.llDecorated Or m.loControl.lDecorated - Endif - Endfor - Endif - - With m.loPage - If m.llDecorated - .ForeColor = Rgb(255, 0, 0) - .FontBold = .T. - Else - .ForeColor = Rgb(0, 0, 0) - .FontBold = .F. - Endif - Endwith - ENDPROC - - PROCEDURE Destroy - DoDefault() - - This.BuildFilterString() - - This.oFilter = .null. - - - ENDPROC - - PROCEDURE enablecontrol - Lparameters toContainer, tcCaption, tlEnabled - - *-- Looks for a Checkbox within the passed Container, based on the the Caption. - *-- If found, sets Enabled status to tlEnabed. - - Local lcContainer, loControl - - For each loControl in toContainer.Controls - If Upper(loControl.baseclass) = 'CHECKBOX' - lcTag = Alltrim(Upper(loControl.Tag)) - lcCaption = Alltrim(Upper(Strtran(loControl.caption, '.', ''))) && To handle .h caption on FileType container - tcCaption = Alltrim(Upper(tcCaption)) - - If tcCaption = lcCaption or (lcTag = tcCaption and !Empty(lcTag)) - *loControl.Enabled = tlEnabled - - If tlEnabled = .t. - loControl.Forecolor = Rgb(0,0,0) - *loControl.FontBold = .t. - Else - loControl.Forecolor = Rgb(180,180,180) - *loControl.FontBold = .f. - Endif - - EndIf - - If !loControl.Enabled - *loControl.Value = 0 - EndIf - - EndIf - EndFor - - - - - - - - ENDPROC - - PROCEDURE Init - Lparameters toForm, toFilter - - Local loControl, loPage - - This.MaxHeight = This.Height - This.MinHeight = This.Height - * This.MaxWidth = This.Width - This.MinWidth = This.Width - - DoDefault(m.toForm) - - *SF 20221123 -> local storage - This.cFilterOptionsXMLFile = This.cCR_StoreLocal + This.cFilterOptionsXMLFile - */SF 20221123 -> local storage - - If Vartype(m.toFilter) = 'O' - *-- oFilter should already loaded up with values. - Thisform.oFilter = m.toFilter - Else - This.oFilter = Createobject(This.cFilterOptionsClass) - This.oFilter.LoadFromFile(This.cFilterOptionsXMLFile) - *Thisform.LoadFilterSettings(this.cFilterOptionsXMLFile) - Endif - - *-- XML file stores DateTime, so need to convert to just Date - With Thisform.oFilter - If Vartype(.Timestamp_FilterFrom) = 'T' - .Timestamp_FilterFrom = Ttod(.Timestamp_FilterFrom) - Endif - If Vartype(.Timestamp_FilterTo) = 'T' - .Timestamp_FilterTo = Ttod(.Timestamp_FilterTo) - Endif - Endwith - - ThisForm.BindEachPage() - Thisform.RefreshPageCaptions() - - Thisform.Buildfilterstring() && Call this to handle disabling of checkboxes - - Thisform.Refresh() - - - ENDPROC - - PROCEDURE loadfiltersettings && Loads saved settings from XML file. - Lparameters tcFile - - Local loMy as 'My' OF 'My.vcx' - Local laProperties[1], lcProperty - - If !File(tcFile) - Return - EndIf - - loMy = Newobject('My', 'My.vcx') - AMembers(laProperties, This.oFilter, 0, 'U') - loMy.Settings.Load(tcFile) - - With loMy.Settings - - For x = 1 to Alen(laProperties) - lcProperty = laProperties[x] - Try - Store Evaluate('.' + lcProperty) to ('This.oFilter.' + lcProperty) - Catch - EndTry - Endfor - - Endwith - - - - ENDPROC - - PROCEDURE QueryUnload - thisform.llReturn = .f. - ENDPROC - - PROCEDURE refreshpagecaptions - Local llDecorated, loControl, loPage - For Each m.loPage In This.PageFrame.Objects FoxObject - llDecorated = .F. - For Each m.loControl In m.loPage.Controls - If Upper(m.loControl.BaseClass) = 'CONTAINER' - llDecorated = m.llDecorated Or m.loControl.ShouldBeDecorated() - Endif - Endfor - This.DecoratePage(m.loPage, m.llDecorated) - Endfor - - - ENDPROC - - PROCEDURE refreshtextboxoptions - Lparameters llVisible - this.cntTextBoxOptions.Visible = llVisible - ENDPROC - - PROCEDURE savefiltersettings - Lparameters tcFile - - Local loMy as 'My' OF 'My.vcx' - Local laProperties[1], lcProperty - - loMy = Newobject('My', 'My.vcx') - - AMembers(laProperties, This.oFilter, 0, 'U') - - With loMy.Settings - - For x = 1 to Alen(laProperties) - lcProperty = laProperties[x] - If !lcProperty = '_MEMBERDATA' - .Add(lcProperty, Evaluate('This.oFilter.' + lcProperty)) - EndIf - Endfor - - .Save(tcFile) - - Endwith - - ENDPROC - - PROCEDURE Unload - If Thisform.llReturn = .t. - Return Thisform.cFilter - Else - Return .null. - Endif - - - ENDPROC - - PROCEDURE cntTextBoxOptions.Check2.Valid - Thisform.cntTextBoxOptions.chkFilterExactMatch.Refresh() - - ENDPROC - - PROCEDURE cntTextBoxOptions.chkFilterExactMatch.Refresh - This.Value = Not Thisform.oFilter.FilterExactMatch - ENDPROC - - PROCEDURE cntTextBoxOptions.chkFilterExactMatch.Valid - Thisform.oFilter.FilterExactMatch = Not This.Value - ENDPROC - - PROCEDURE Command1.Click - Thisform.llReturn = .t. - - ThisForm.ApplyChanges() - - Thisform.Release() - - - ENDPROC - - PROCEDURE Command3.Click - ThisForm.ClearAllFilters() - - ENDPROC - - PROCEDURE Command4.Click - Thisform.Release() - - - ENDPROC - - PROCEDURE PageFrame.Page1.Activate - DoDefault() - This.Refresh() - ThisForm.RefreshTextBoxOptions(.t.) - - - ENDPROC - - PROCEDURE PageFrame.Page1.Gf_filtersinglecheckboxcontainer1.chkApplyFilter.Valid - This.Parent.Refresh() - ENDPROC - - PROCEDURE PageFrame.Page1.Gf_filtersinglecheckboxcontainer2.chkApplyFilter.Valid - This.Parent.Refresh() - ENDPROC - - PROCEDURE PageFrame.Page1.Label1.Init - Text To This.Caption Noshow Textmerge - Finds matches to the entered text within the same PROCEDURE as the original match. - Endtext - ENDPROC - - PROCEDURE PageFrame.Page1.Label4.Init - Text To This.Caption Noshow Textmerge - Finds matches to the entered text within the same STATEMENT (including continuation lines) as the original match. - Endtext - ENDPROC - - PROCEDURE PageFrame.Page2.Activate - DoDefault() - This.Refresh() - ThisForm.RefreshTextBoxOptions(.t.) - - ENDPROC - - PROCEDURE PageFrame.Page3.Activate - DoDefault() - This.Refresh() - ThisForm.RefreshTextBoxOptions(.t.) - - ENDPROC - - PROCEDURE PageFrame.Page4.Activate - DoDefault() - This.Refresh() - ThisForm.RefreshTextBoxOptions(.t.) - - ENDPROC - - PROCEDURE PageFrame.Page5.Activate - DoDefault() - This.Refresh() - ThisForm.RefreshTextBoxOptions(.F.) - - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check1.Init - This.Caption = MATCHTYPE_NAME - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check10.Init - This.Caption = MATCHTYPE_FILENAME - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check11.Init - This.Caption = MATCHTYPE_CLASS_DEF - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check12.Init - This.Caption = MATCHTYPE_METHOD_DEF - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check16.Init - This.Caption = MATCHTYPE_METHOD - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check17.Init - This.Caption = MATCHTYPE_BASECLASS - - - - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check18.Init - This.Caption = MATCHTYPE_CLASS - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check2.Init - This.Caption = MATCHTYPE_COMMENT - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check20.Init - This.Caption = MATCHTYPE_PARENTCLASS - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check22.Init - This.Caption = MATCHTYPE_PROPERTY_DESC - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check23.Init - This.Caption = MATCHTYPE_FILEDATE - - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check24.Init - This.Caption = MATCHTYPE_TIMESTAMP - - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check3.Init - This.Caption = MATCHTYPE_PROPERTY_DEF - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check4.Init - This.Caption = MATCHTYPE_PROPERTY_NAME - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check5.Init - This.Caption = MATCHTYPE_CONTAINING_CLASS - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check7.Init - This.Caption = MATCHTYPE_PROPERTY_VALUE - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check8.Init - This.Caption = MATCHTYPE_METHOD_DESC - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Check9.Init - This.Caption = MATCHTYPE_CONSTANT - - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox1.Init - This.Caption = MATCHTYPE_CODE - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox2.Init - This.Caption = MATCHTYPE_FRX_EXPR - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox3.Init - This.Caption = MATCHTYPE_FRX_SUPEXPR - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox4.Init - This.Caption = MATCHTYPE_FRX_NAME - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox5.Init - This.Caption = MATCHTYPE_FRX_TAG - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox6.Init - This.Caption = MATCHTYPE_FRX_TAG2 - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Gf_filtercheckbox7.Init - This.Caption = MATCHTYPE_FRX_PICTURE - ENDPROC - - PROCEDURE PageFrame.Page5.containerMatchType.Init - - DoDefault() - - For Each loControl in This.Controls - If Upper(loControl.baseclass) = 'CHECKBOX' - loControl.Tag = loControl.Caption - Endif - EndFor - - - ENDPROC - - PROCEDURE PageFrame.Page6.Activate - DoDefault() - This.Refresh() - ThisForm.RefreshTextBoxOptions(.F.) - - ENDPROC - -ENDDEFINE diff --git a/Source/Forms/gofish_filterpf.scx b/Source/Forms/gofish_filterpf.scx index e5a1673..298afca 100644 Binary files a/Source/Forms/gofish_filterpf.scx and b/Source/Forms/gofish_filterpf.scx differ diff --git a/Source/Forms/gofish_options.SCT b/Source/Forms/gofish_options.SCT index 4ff5693..cd0bf58 100644 Binary files a/Source/Forms/gofish_options.SCT and b/Source/Forms/gofish_options.SCT differ diff --git a/Source/Forms/gofish_options.dataenvironment.sc2 b/Source/Forms/gofish_options.dataenvironment.sc2 new file mode 100644 index 0000000..02bf59f --- /dev/null +++ b/Source/Forms/gofish_options.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_options.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_options.gf_options.sc2 b/Source/Forms/gofish_options.gf_options.sc2 new file mode 100644 index 0000000..77b400c --- /dev/null +++ b/Source/Forms/gofish_options.gf_options.sc2 @@ -0,0 +1,3494 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_options.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_options AS gf_baseform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="pfSettings" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColumns.containerColumnCheckBoxes" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColumns.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColumns.cmdSelectAll" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColumns.cmdClearAll" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColumns.cmdDefault" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.cboDockable" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.cmdZoomDefault" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.chkDesktop" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.List1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.cmdOpenFolder" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.cmdDeleteConfigFiles" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.chk_CRMode" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.chk_CRLocal_Default" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.chk_CRLocal" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.cmdSetFolder" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageThor.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageThor.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageThor.lblNoTHor" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageThor.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.optiongroupReplaceSafetyLevel" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Image1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page1.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page1.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page1.Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page1.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page1.Image1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page1.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page2.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page2.Spinner1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page2.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page2.Spinner2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.Page2.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container1.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container2.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container3.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container4.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container5.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container6.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container7.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container8.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container9" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container9.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container10" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container10.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container11" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container11.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container12" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container12.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label13" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command13" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container13" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container13.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label14" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command14" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container14" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container14.lblExample1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check2" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check3" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check4" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check5" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check6" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check7" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Check8" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdOK" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdCancel" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Gf_versionlabel1" UniqueID="" Timestamp="" /> + + * + *m: applycolumnsettings + *m: buildcolumncheckboxes + *m: loadoptions + *m: loadresultsformproperties + *m: saveoptions + *m: set_localfolder && cCR_StoreLocal_Option activated Check folder + *m: validate + *p: ccr_storelocal_option && Internal storage for new local path, just to display and set. + *p: ccr_storelocal_set && Internal storage for local path, just storage. + *p: dlastjanitorrundate + *p: lcr_historyperscope && Shows search history per scope. + *p: lcr_historytree && Tree with History in it. Follows lCR_HistoryPerScope. + *p: lcr_historytreeauto && Fill all searches with data on startup. (slow) + *p: lcr_local && Use local storage place. + *p: lcr_local_default && Local storage will be created on standard place by default. + *p: lcr_openmode && Open like Code Referenves, Active Project or Folder. + *p: lcr_searchcomboperscope && Show only searches for the recent scape. + *p: lcr_simpletree && Tree without the class nodes. Just search / files. + *p: lcr_sorttreealpha && Sort tree alphanumeric NOT by recent. + *p: lcr_sorttreebyext && Sort Nodes by extension first. Only for Tree without the class nodes. + *p: ldeletestorage && Flag to delete search and replace storage upon exit. + *p: ldesktop && The setting for Desktop. + *p: lmovenewcodetotopleft + *p: lotherhistory && Sort buttons on Histoey form normal + *p: lrestoreprevioussearchresultsonstartup + *p: lreturn + *p: lsavesearchresults + *p: lwarnwholeword + *p: ncontainerframecolour && Frame colour for several containers, in case red is something you do not see. + *p: ncss_tr_even_colour && CSS für tr:even + *p: ncss_tr_odd_colour && CSS für tr:odd + *p: ndockable + *p: nfiledefaultdynamicforecolour && Grid, dynamic fore colour file type Default + *p: nfileprgdynamicforecolour && Grid, dynamic fore colour file type PRG + *p: nfilescxdynamicforecolour && Grid, dynamic fore colour file type SCX + *p: nfilevcxdynamicforecolour && Grid, dynamic fore colour file type VCX + *p: njanitorreplacehistorydays + *p: njanitorsearchhistorydays + *p: nreplaceddynamicbackcolour && Grid, dynamic back colour replaced + *p: nreplacerisk + *p: nrisk1dynamicbackcolour && Grid, dynamic back colour replace risk value 1 + *p: nrisk2dynamicbackcolour && Grid, dynamic back colour replace risk value 2 + *p: nrisk3dynamicbackcolour && Grid, dynamic back colour replace risk value 3 + *p: nriskexceededdynamicbackcolour && Grid, dynamic back colour replace risk exceeds setting + *p: ntabstospaces + *p: ntreesearchcolour && Tree colour while searching? + *p: ntreeupdatecolour && Tree colour while updateing? + *p: ntreeviewfontsize + *p: ooptions && A reference to the oSearchOptions object on GF main form. + * + + AlwaysOnTop = .T. + BindControls = .F. + BorderStyle = 3 + Caption = "GoFish Options" + ccr_storelocal_option = && Internal storage for new local path, just to display and set. + cuisettingsfile = GF_Options_Form_Settings.xml + dlastjanitorrundate = / / + DoCreate = .T. + Height = 600 + KeyPreview = .T. + Left = 0 + lrestoreprevioussearchresultsonstartup = .F. + lreturn = .F. + lsavesearchresults = .T. + lwarnwholeword = .F. + MinHeight = 600 + MinWidth = 650 + Name = "GF_Options" + ncontainerframecolour = 0 && Frame colour for several containers, in case red is something you do not see. + ncss_tr_even_colour = 0 && CSS für tr:even + ncss_tr_odd_colour = 0 && CSS für tr:odd + ndockable = 0 + nfiledefaultdynamicforecolour = 0 && Grid, dynamic fore colour file type Default + nfileprgdynamicforecolour = 0 && Grid, dynamic fore colour file type PRG + nfilescxdynamicforecolour = 0 && Grid, dynamic fore colour file type SCX + nfilevcxdynamicforecolour = 0 && Grid, dynamic fore colour file type VCX + njanitorreplacehistorydays = 0 + njanitorsearchhistorydays = 0 + nreplaceddynamicbackcolour = 0 && Grid, dynamic back colour replaced + nreplacerisk = 0 + nrisk1dynamicbackcolour = 0 && Grid, dynamic back colour replace risk value 1 + nrisk2dynamicbackcolour = 0 && Grid, dynamic back colour replace risk value 2 + nrisk3dynamicbackcolour = 0 && Grid, dynamic back colour replace risk value 3 + nriskexceededdynamicbackcolour = 0 && Grid, dynamic back colour replace risk exceeds setting + ntabstospaces = 0 + ntreesearchcolour = 0 && Tree colour while searching? + ntreeupdatecolour = 0 && Tree colour while updateing? + ntreeviewfontsize = 8 + oform = .NULL. + ooptions = .NULL. && A reference to the oSearchOptions object on GF main form. + Top = -1 + Visible = .T. + Width = 652 + WindowType = 1 + _memberdata = + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ADD OBJECT 'cmdCancel' AS commandbutton WITH ; + Anchor = 12, ; + Caption = "Cancel", ; + Height = 21, ; + Left = 573, ; + Name = "cmdCancel", ; + TabIndex = 3, ; + Top = 576, ; + Width = 70 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'cmdOK' AS commandbutton WITH ; + Anchor = 12, ; + Caption = "OK", ; + Height = 21, ; + Left = 496, ; + Name = "cmdOK", ; + TabIndex = 2, ; + Top = 576, ; + Width = 70 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Gf_versionlabel1' AS gf_versionlabel WITH ; + Left = 415, ; + Name = "Gf_versionlabel1", ; + TabIndex = 4, ; + Top = 1 + *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="label" /> + + ADD OBJECT 'pfSettings' AS pageframe WITH ; + ActivePage = 1, ; + Anchor = 15, ; + ErasePage = .T., ; + Height = 555, ; + Left = 10, ; + Name = "pfSettings", ; + PageCount = 10, ; + TabIndex = 1, ; + TabStretch = 0, ; + TabStyle = 1, ; + Top = 18, ; + Width = 638, ; + Page1.Caption = "Column Selection", ; + Page1.Name = "pageColumns", ; + Page1.PageOrder = 2, ; + Page2.Caption = "Preferences", ; + Page2.Name = "pagePreferences", ; + Page2.PageOrder = 1, ; + Page3.Caption = "Advanced", ; + Page3.Name = "pageAdvanced", ; + Page3.PageOrder = 3, ; + Page4.Caption = "Thor", ; + Page4.Name = "pageThor", ; + Page4.PageOrder = 6, ; + Page5.Caption = "Replace", ; + Page5.Name = "pageReplace", ; + Page5.PageOrder = 4, ; + Page6.Caption = "Backups", ; + Page6.Name = "pageBackups", ; + Page6.PageOrder = 5, ; + Page7.Caption = "Update", ; + Page7.Name = "Page1", ; + Page7.PageOrder = 7, ; + Page8.Caption = "Janitor", ; + Page8.Name = "Page2", ; + Page8.PageOrder = 8, ; + Page9.Caption = "Colours", ; + Page9.Name = "pageColours", ; + Page9.PageOrder = 9, ; + Page10.Caption = "Code References", ; + Page10.Enabled = .F., ; + Page10.Name = "pageReferences", ; + Page10.PageOrder = 10 + *< END OBJECT: BaseClass="pageframe" /> + + ADD OBJECT 'pfSettings.Page1.Image1' AS image WITH ; + Height = 230, ; + Left = 207, ; + Name = "Image1", ; + Picture = ..\images\checkforupdates.jpg, ; + Top = 120, ; + Width = 232 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'pfSettings.Page1.Label1' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "If you are running the Thor Tool Management Framework, you can download and install the latest development builds of GoFish at any time, right from the Thor menu. (Requires Thor 1.10 or higher).", ; + Height = 57, ; + Left = 17, ; + Name = "Label1", ; + Top = 28, ; + Width = 591, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page1.Label2' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "The latest development build may be a pre-release version, allowing you to use and test the latest version.", ; + Height = 57, ; + Left = 17, ; + Name = "Label2", ; + Top = 76, ; + Width = 591, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page1.Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Learn more about Thor", ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 17, ; + Left = 17, ; + MousePointer = 15, ; + Name = "Label3", ; + Top = 93, ; + Width = 128 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page1.Label4' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Note: Public releases of GoFish are available at the VFPx site. However, the release cycle is generally slower on VFPx. If you want the absolute latest build, use the Thor update mechanism shown above.", ; + Height = 56, ; + Left = 20, ; + Name = "Label4", ; + Top = 385, ; + Width = 555, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page1.Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Visit the GoFish project on VFPx", ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 17, ; + Left = 20, ; + MousePointer = 15, ; + Name = "Label5", ; + Top = 422, ; + Width = 175 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page2.Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "# of days of Replace history to keep", ; + Height = 17, ; + Left = 105, ; + Name = "Label1", ; + TabIndex = 19, ; + Top = 97, ; + Width = 195 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page2.Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "# of days of Search history to keep", ; + Height = 17, ; + Left = 105, ; + Name = "Label2", ; + TabIndex = 19, ; + Top = 55, ; + Width = 188 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page2.Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "The janitor shows up once a day to clean up leftover files.", ; + FontSize = 10, ; + Height = 18, ; + Left = 28, ; + Name = "Label3", ; + TabIndex = 19, ; + Top = 20, ; + Width = 332 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.Page2.Spinner1' AS spinner WITH ; + ControlSource = "Thisform.nJanitorSearchHistoryDays", ; + Height = 27, ; + KeyboardHighValue = 999999, ; + KeyboardLowValue = 0, ; + Left = 27, ; + Name = "Spinner1", ; + SpinnerHighValue = 999999.00, ; + SpinnerLowValue = 0.00, ; + TabIndex = 10, ; + Top = 50, ; + Width = 69 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.Page2.Spinner2' AS spinner WITH ; + ControlSource = "Thisform.nJanitorReplaceHistoryDays", ; + Height = 27, ; + KeyboardHighValue = 999999, ; + KeyboardLowValue = 0, ; + Left = 27, ; + Name = "Spinner2", ; + SpinnerHighValue = 999999.00, ; + SpinnerLowValue = 0.00, ; + TabIndex = 10, ; + Top = 92, ; + Width = 69 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Check1' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "Delete Storage", ; + ControlSource = "Thisform.lDeleteStorage", ; + Height = 17, ; + Left = 23, ; + Name = "Check1", ; + TabIndex = 19, ; + Top = 466, ; + Value = .F., ; + Width = 100, ; + WordWrap = .T. + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageAdvanced.chk_CRLocal' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = ("Local settings / storage"+0h0D0A+"All settings not in this box are local to resource file rather then in %App%, if activated."), ; + ControlSource = "Thisform.lCR_Local", ; + Height = 30, ; + Left = 18, ; + Name = "chk_CRLocal", ; + TabIndex = 10, ; + Top = 279, ; + Width = 534, ; + WordWrap = .T. + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageAdvanced.chk_CRLocal_Default' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = [Use Set("Resource",1)+'\GoFish_" as default for new local folder], ; + ControlSource = "Thisform.lCR_Local_Default", ; + Height = 17, ; + Left = 18, ; + Name = "chk_CRLocal_Default", ; + TabIndex = 9, ; + Top = 263, ; + Width = 466, ; + WordWrap = .T. + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageAdvanced.chk_CRMode' AS checkbox WITH ; + Alignment = 0, ; + BackStyle = 0, ; + Caption = "Allow Code References-like work.", ; + ControlSource = "Thisform.lCR_Allow", ; + Left = 19, ; + Name = "chk_CRMode", ; + TabIndex = 8, ; + Top = 243, ; + Width = 466, ; + WordWrap = .T. + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageAdvanced.cmdDeleteConfigFiles' AS commandbutton WITH ; + Caption = "Delete config files!", ; + Height = 21, ; + Left = 23, ; + Name = "cmdDeleteConfigFiles", ; + TabIndex = 17, ; + Top = 436, ; + Width = 114 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageAdvanced.cmdOpenFolder' AS commandbutton WITH ; + Caption = "Open Folder", ; + Height = 21, ; + Left = 25, ; + Name = "cmdOpenFolder", ; + TabIndex = 16, ; + Top = 407, ; + Width = 80 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageAdvanced.cmdSetFolder' AS commandbutton WITH ; + Caption = "Set Folder", ; + Height = 21, ; + Left = 20, ; + Name = "cmdSetFolder", ; + TabIndex = 11, ; + ToolTipText = "Pick a storage for lacal settings. Available after restart.", ; + Top = 314, ; + Visible = .F., ; + Width = 80 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label1' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Configuration settings for GoFish are maintained in these XML files. See GoFish Help for more information.", ; + Height = 32, ; + Left = 255, ; + Name = "Label1", ; + TabIndex = 2, ; + Top = 20, ; + Width = 349, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label10' AS label WITH ; + Anchor = 10, ; + AutoSize = .T., ; + Caption = " Global Settings: ", ; + Height = 17, ; + Left = 45, ; + Name = "Label10", ; + TabIndex = 7, ; + Top = 223, ; + Width = 107 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label11' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Wipes all stored searches and replace backup on exit of the form. ", ; + ForeColor = 255,0,0, ; + Height = 21, ; + Left = 142, ; + Name = "Label11", ; + TabIndex = 20, ; + Top = 467, ; + Width = 596, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label2' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Axtive path to XML files:", ; + Height = 25, ; + Left = 12, ; + Name = "Label2", ; + TabIndex = 14, ; + Top = 366, ; + Width = 318, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label3' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Path to XML files will be shown here. See Init() method of this form", ; + Height = 32, ; + Left = 23, ; + Name = "Label3", ; + TabIndex = 15, ; + Top = 387, ; + Width = 596, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label4' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Double-Click to view or edit any file.", ; + Height = 32, ; + Left = 255, ; + Name = "Label4", ; + TabIndex = 5, ; + Top = 137, ; + Width = 349, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label5' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Close GoFish and delete any file to restore that portion of GoFish to the default state. A new XML file will be built automatically.", ; + Height = 32, ; + Left = 255, ; + Name = "Label5", ; + TabIndex = 6, ; + Top = 176, ; + Width = 349, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label6' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "The files are maintained automatically by GoFish to maintain settings between sessions.", ; + Height = 32, ; + Left = 255, ; + Name = "Label6", ; + TabIndex = 3, ; + Top = 59, ; + Width = 349, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label7' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "If you are curious you may view these files, or if you have special needs you may edit them.", ; + Height = 32, ; + Left = 255, ; + Name = "Label7", ; + TabIndex = 4, ; + Top = 98, ; + Width = 349, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label8' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = ("Immediately reset GoFish by deleting it's config files."+0h0D0A+"New config files will be built upon exit."), ; + ForeColor = 255,0,0, ; + Height = 31, ; + Left = 142, ; + Name = "Label8", ; + TabIndex = 18, ; + Top = 432, ; + Width = 450, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Label9' AS label WITH ; + Alignment = 2, ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "********** Available after Restart of GoFish! Check or additional options after restart **********", ; + FontBold = .T., ; + ForeColor = 255,0,0, ; + Left = 12, ; + Name = "Label9", ; + TabIndex = 13, ; + Top = 340, ; + Visible = .F., ; + Width = 596, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageAdvanced.List1' AS listbox WITH ; + Height = 200, ; + Left = 12, ; + Name = "List1", ; + RowSourceType = 7, ; + TabIndex = 1, ; + Top = 17, ; + Width = 236 + *< END OBJECT: BaseClass="listbox" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Shape1' AS shape WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Height = 131, ; + Left = 11, ; + Name = "Shape1", ; + Top = 230, ; + Width = 611 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'pfSettings.pageAdvanced.Text1' AS textbox WITH ; + BackStyle = 0, ; + BorderStyle = 0, ; + ControlSource = "Thisform.cCR_StoreLocal_Option", ; + Left = 111, ; + Name = "Text1", ; + ReadOnly = .T., ; + TabIndex = 12, ; + Top = 314, ; + Width = 394 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'pfSettings.pageBackups.Check1' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Backup source files when performing Replace operations.", ; + ControlSource = "Thisform.oSearchOptions.lBackup", ; + Height = 17, ; + Left = 18, ; + Name = "Check1", ; + Top = 119, ; + Value = .F., ; + Width = 336 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageBackups.Command2' AS commandbutton WITH ; + Caption = "Open Folder", ; + Height = 21, ; + Left = 132, ; + Name = "Command2", ; + Top = 220, ; + Width = 80 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageBackups.Label1' AS label WITH ; + BackStyle = 0, ; + Caption = "GoFish can create backups of files on which you perform a Replace operation. The backup files are stored in the folder path Home(7) \ GoFishBackps \ \ where is the Replace History Id that is assigned to each replace operation.", ; + Height = 45, ; + Left = 18, ; + Name = "Label1", ; + Top = 18, ; + Width = 600, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageBackups.Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "See the GoFish Backup Help page for more info.", ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 17, ; + Left = 51, ; + MousePointer = 15, ; + Name = "Label2", ; + Top = 152, ; + Width = 266 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageBackups.Label3' AS label WITH ; + BackStyle = 0, ; + Caption = "You can map the folder reference to the Replace History log to view complete details of each replace operation.", ; + Height = 45, ; + Left = 18, ; + Name = "Label3", ; + Top = 73, ; + Width = 600, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageBackups.Label4' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Path to Backup files:", ; + Height = 25, ; + Left = 15, ; + Name = "Label4", ; + Top = 224, ; + Width = 318, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageBackups.Label5' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Path to backup files will be shown here. See Init() method of this label.", ; + Height = 32, ; + Left = 26, ; + Name = "Label5", ; + Top = 248, ; + Width = 596, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Command1' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command1", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 2, ; + ToolTipText = "Pick colour", ; + Top = 30, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command10' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command10", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 29, ; + ToolTipText = "Pick colour", ; + Top = 330, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command11' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command11", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 32, ; + ToolTipText = "Pick colour", ; + Top = 360, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command12' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command12", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 35, ; + ToolTipText = "Pick colour", ; + Top = 390, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command13' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command13", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 38, ; + ToolTipText = "Pick colour", ; + Top = 420, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command14' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command14", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 23, ; + ToolTipText = "Pick colour", ; + Top = 240, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command2' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command2", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 5, ; + ToolTipText = "Pick colour", ; + Top = 60, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command3' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command3", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 8, ; + ToolTipText = "Pick colour", ; + Top = 90, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command4' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command4", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 11, ; + ToolTipText = "Pick colour", ; + Top = 120, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command5' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command5", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 14, ; + ToolTipText = "Pick colour", ; + Top = 150, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command6' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command6", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 17, ; + ToolTipText = "Pick colour", ; + Top = 180, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command7' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command7", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 20, ; + ToolTipText = "Pick colour", ; + Top = 210, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command8' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command8", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 23, ; + ToolTipText = "Pick colour", ; + Top = 270, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Command9' AS commandbutton WITH ; + Caption = ". . .", ; + FontBold = .T., ; + Height = 25, ; + Left = 290, ; + Name = "Command9", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + SpecialEffect = 0, ; + TabIndex = 26, ; + ToolTipText = "Pick colour", ; + Top = 300, ; + Width = 25 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColours.Container1' AS container WITH ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container1", ; + Picture = ..\images\, ; + TabIndex = 3, ; + Top = 30, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container1.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container10' AS container WITH ; + BackColor = 255,255,255, ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container10", ; + Picture = ..\images\, ; + TabIndex = 30, ; + Top = 330, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container10.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container11' AS container WITH ; + BackColor = 255,255,255, ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container11", ; + Picture = ..\images\, ; + TabIndex = 33, ; + Top = 360, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container11.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container12' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container12", ; + Picture = ..\images\, ; + TabIndex = 36, ; + Top = 390, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container12.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container13' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container13", ; + Picture = ..\images\, ; + TabIndex = 39, ; + Top = 420, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container13.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container14' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container14", ; + Picture = ..\images\, ; + TabIndex = 24, ; + Top = 240, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container14.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container2' AS container WITH ; + BackColor = 255,255,255, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container2", ; + Picture = ..\images\, ; + TabIndex = 6, ; + Top = 60, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container2.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container3' AS container WITH ; + BackColor = 255,255,255, ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container3", ; + Picture = ..\images\, ; + TabIndex = 9, ; + Top = 90, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container3.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container4' AS container WITH ; + BackColor = 255,255,255, ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container4", ; + Picture = ..\images\, ; + TabIndex = 12, ; + Top = 120, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container4.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container5' AS container WITH ; + BackColor = 255,255,255, ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container5", ; + Picture = ..\images\, ; + TabIndex = 15, ; + Top = 150, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container5.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container6' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container6", ; + Picture = ..\images\, ; + TabIndex = 18, ; + Top = 180, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container6.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container7' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container7", ; + Picture = ..\images\, ; + TabIndex = 21, ; + Top = 210, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container7.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container8' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container8", ; + Picture = ..\images\, ; + TabIndex = 24, ; + Top = 270, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container8.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Container9' AS container WITH ; + BackStyle = 1, ; + BorderWidth = 2, ; + Height = 27, ; + Left = 346, ; + Name = "Container9", ; + Picture = ..\images\, ; + TabIndex = 27, ; + Top = 300, ; + Width = 129 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColours.Container9.lblExample1' AS label WITH ; + BackStyle = 0, ; + Caption = "Example", ; + Height = 17, ; + Left = 8, ; + Name = "lblExample1", ; + TabIndex = 1, ; + ToolTipText = "Highlighting several frames.", ; + Top = 6, ; + Width = 120 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label1' AS label WITH ; + BackStyle = 0, ; + Caption = "Frame colour", ; + Height = 17, ; + Left = 21, ; + Name = "Label1", ; + TabIndex = 1, ; + Top = 30, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label10' AS label WITH ; + BackStyle = 0, ; + Caption = 'Tree fore colour "Search"', ; + Height = 17, ; + Left = 21, ; + Name = "Label10", ; + TabIndex = 28, ; + Top = 333, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label11' AS label WITH ; + BackStyle = 0, ; + Caption = 'Tree fore colour "Update"', ; + Height = 17, ; + Left = 21, ; + Name = "Label11", ; + TabIndex = 31, ; + Top = 360, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label12' AS label WITH ; + BackStyle = 0, ; + Caption = 'CSS back colour "tr even"', ; + Height = 17, ; + Left = 21, ; + Name = "Label12", ; + TabIndex = 34, ; + Top = 390, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label13' AS label WITH ; + BackStyle = 0, ; + Caption = 'CSS back colour "tr odd"', ; + Height = 17, ; + Left = 21, ; + Name = "Label13", ; + TabIndex = 37, ; + Top = 420, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label14' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid back colour; Replace risk "1 = Pretty Safe"', ; + Height = 17, ; + Left = 21, ; + Name = "Label14", ; + TabIndex = 22, ; + Top = 240, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label2' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid fore colour "SCX"', ; + Height = 17, ; + Left = 21, ; + Name = "Label2", ; + TabIndex = 4, ; + Top = 60, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label3' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid fore colour "VCX"', ; + Height = 17, ; + Left = 21, ; + Name = "Label3", ; + TabIndex = 7, ; + Top = 90, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label4' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid fore colour "PRG"', ; + Height = 17, ; + Left = 21, ; + Name = "Label4", ; + TabIndex = 10, ; + Top = 120, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label5' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid fore colour "other"', ; + Height = 17, ; + Left = 21, ; + Name = "Label5", ; + TabIndex = 13, ; + Top = 150, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label6' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid back colour "Replaced"', ; + Height = 17, ; + Left = 21, ; + Name = "Label6", ; + TabIndex = 16, ; + Top = 181, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label7' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid back colour; Replace risk "Exeeds Limit"', ; + Height = 17, ; + Left = 21, ; + Name = "Label7", ; + TabIndex = 19, ; + Top = 210, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label8' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid back colour; Replace risk "2 = Kinda Safe"', ; + Height = 17, ; + Left = 21, ; + Name = "Label8", ; + TabIndex = 22, ; + Top = 270, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColours.Label9' AS label WITH ; + BackStyle = 0, ; + Caption = 'Grid back colour; Replace risk "3 = Dangerous"', ; + Height = 17, ; + Left = 21, ; + Name = "Label9", ; + TabIndex = 25, ; + Top = 300, ; + Width = 260 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageColumns.cmdClearAll' AS commandbutton WITH ; + Caption = "Clear All", ; + FontSize = 8, ; + Height = 26, ; + Left = 21, ; + Name = "cmdClearAll", ; + TabIndex = 4, ; + Top = 140, ; + Width = 58 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColumns.cmdDefault' AS commandbutton WITH ; + BackColor = 255,255,255, ; + Caption = "Default", ; + FontSize = 8, ; + Height = 26, ; + Left = 21, ; + Name = "cmdDefault", ; + TabIndex = 2, ; + Themes = .F., ; + ToolTipText = "Set all default on; all other off.", ; + Top = 56, ; + Width = 58 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColumns.cmdSelectAll' AS commandbutton WITH ; + Caption = "Select All", ; + FontSize = 8, ; + Height = 26, ; + Left = 21, ; + Name = "cmdSelectAll", ; + TabIndex = 3, ; + Top = 98, ; + Width = 58 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pageColumns.containerColumnCheckBoxes' AS container WITH ; + Anchor = 5, ; + Height = 436, ; + Left = 14, ; + Name = "containerColumnCheckBoxes", ; + TabIndex = 5, ; + Top = 46, ; + Width = 602 + *< END OBJECT: BaseClass="container" /> + + ADD OBJECT 'pfSettings.pageColumns.Label1' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "Choose which columns you want to appear in the search results grid.", ; + FontBold = .T., ; + Height = 28, ; + Left = 15, ; + Name = "Label1", ; + TabIndex = 1, ; + Top = 14, ; + Width = 470, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.cboDockable' AS combobox WITH ; + BoundColumn = 2, ; + BoundTo = .T., ; + ColumnCount = 2, ; + ColumnWidths = "300,0", ; + ControlSource = "Thisform.nDockable", ; + Height = 22, ; + Left = 79, ; + Name = "cboDockable", ; + RowSource = "0 - Does not support docking,0,1 - Supports docking and is dockable,1,2 - Supports docking and is not dockable,2", ; + RowSourceType = 1, ; + Style = 2, ; + TabIndex = 2, ; + Top = 30, ; + Width = 305 + *< END OBJECT: BaseClass="combobox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check1' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Display dialog when files cannot be found or opened during a search or replace", ; + ControlSource = "Thisform.oSearchOptions.lShowErrorMessages", ; + Height = 17, ; + Left = 27, ; + Name = "Check1", ; + TabIndex = 5, ; + Top = 87, ; + Width = 452 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check10' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Alternative interface for search history form", ; + ControlSource = "Thisform.lOtherHistory", ; + Height = 17, ; + Left = 28, ; + Name = "Check10", ; + TabIndex = 15, ; + ToolTipText = "Swap button to have OK Canbcel buttom right", ; + Top = 286, ; + Width = 249 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check2' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Display each filename as it is processed (slows down search)", ; + ControlSource = "Thisform.oSearchOptions.lShowWaitMessages", ; + Height = 17, ; + Left = 27, ; + Name = "Check2", ; + TabIndex = 7, ; + Top = 127, ; + Width = 359 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check3' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Display dialog box if no matches are found during a search.", ; + ControlSource = "Thisform.oSearchOptions.lShowNoMatchesMessage", ; + Height = 17, ; + Left = 27, ; + Name = "Check3", ; + TabIndex = 6, ; + Top = 107, ; + Width = 342 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check4' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Show Advanced Search form on startup", ; + ControlSource = "Thisform.oSearchOptions.lShowAdvancedFormOnStartup", ; + Height = 17, ; + Left = 28, ; + Name = "Check4", ; + TabIndex = 9, ; + Top = 184, ; + Width = 233 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check5' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Clear 'Apply Filter' checkbox with each new search", ; + ControlSource = "Thisform.lClearApplyFilter", ; + Height = 17, ; + Left = 28, ; + Name = "Check5", ; + TabIndex = 10, ; + Top = 204, ; + Width = 290 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check6' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Always confirm use of Whole Word search?", ; + ControlSource = "Thisform.lWarnWholeWord", ; + Height = 17, ; + Left = 27, ; + Name = "Check6", ; + TabIndex = 8, ; + Top = 148, ; + Width = 255 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check7' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Restore previous search results on startup", ; + ControlSource = "Thisform.lRestorePreviousSearchResultsOnStartup", ; + Height = 17, ; + Left = 28, ; + Name = "Check7", ; + TabIndex = 13, ; + Top = 245, ; + Width = 252 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check8' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Save each search results to search history folder.", ; + ControlSource = "Thisform.lSaveSearchResults", ; + Height = 17, ; + Left = 28, ; + Name = "Check8", ; + TabIndex = 11, ; + Top = 224, ; + Width = 287 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.Check9' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Open code windows at top left corner", ; + ControlSource = "Thisform.lMoveNewCodeToTopLeft", ; + Height = 17, ; + Left = 28, ; + Name = "Check9", ; + TabIndex = 14, ; + Top = 266, ; + Width = 220 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.chkDesktop' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Desktop", ; + ControlSource = "Thisform.lDesktop", ; + Height = 17, ; + Left = 401, ; + Name = "chkDesktop", ; + TabIndex = 3, ; + Top = 33, ; + Width = 64 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pagePreferences.cmdZoomDefault' AS commandbutton WITH ; + Caption = "Default 1.0", ; + FontSize = 8, ; + Height = 22, ; + Left = 308, ; + Name = "cmdZoomDefault", ; + TabIndex = 22, ; + Top = 354, ; + Width = 71 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pagePreferences.Command1' AS commandbutton WITH ; + Caption = " Open Folder", ; + Height = 25, ; + Left = 337, ; + Name = "Command1", ; + Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; + PicturePosition = 1, ; + SpecialEffect = 0, ; + TabIndex = 12, ; + ToolTipText = "Open Explorer window to this path.", ; + Top = 220, ; + Width = 118 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label1' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Dockable", ; + Height = 17, ; + Left = 21, ; + Name = "Label1", ; + TabIndex = 1, ; + Top = 33, ; + Width = 54 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label2' AS label WITH ; + BackStyle = 0, ; + Caption = "Grid font size", ; + Height = 18, ; + Left = 88, ; + Name = "Label2", ; + TabIndex = 18, ; + Top = 326, ; + Width = 103 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label3' AS label WITH ; + BackStyle = 0, ; + Caption = "DisplayCount for Search/Scope history dropdowns", ; + Height = 18, ; + Left = 88, ; + Name = "Label3", ; + TabIndex = 26, ; + Top = 388, ; + Width = 311 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label4' AS label WITH ; + AutoSize = .T., ; + BackColor = 255,255,255, ; + BackStyle = 1, ; + Caption = " Messages / Dialogs", ; + Height = 17, ; + Left = 33, ; + Name = "Label4", ; + TabIndex = 4, ; + Top = 65, ; + Width = 115 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label5' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Maximum number of results to find", ; + Height = 17, ; + Left = 84, ; + Name = "Label5", ; + TabIndex = 30, ; + ToolTipText = "Search will automatically stop once this number of mached lines it reached.", ; + Top = 458, ; + Width = 191 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label6' AS label WITH ; + BackStyle = 0, ; + Caption = "Number of items in each MRU list for Search/Scope dropdowns", ; + Height = 18, ; + Left = 88, ; + Name = "Label6", ; + TabIndex = 28, ; + Top = 419, ; + Width = 396 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label7' AS label WITH ; + BackStyle = 0, ; + Caption = "Code Browser zoom factor (0.7 - 2.00)", ; + Height = 18, ; + Left = 88, ; + Name = "Label7", ; + TabIndex = 23, ; + Top = 357, ; + Width = 217 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label8' AS label WITH ; + BackStyle = 0, ; + Caption = "TreeView font size", ; + Height = 18, ; + Left = 290, ; + Name = "Label8", ; + TabIndex = 19, ; + Top = 327, ; + Width = 103 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Label9' AS label WITH ; + BackStyle = 0, ; + Caption = "Tabs to spaces", ; + Height = 18, ; + Left = 482, ; + Name = "Label9", ; + TabIndex = 24, ; + Top = 358, ; + Width = 103 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pagePreferences.Shape1' AS shape WITH ; + BackStyle = 0, ; + Curvature = 3, ; + Height = 102, ; + Left = 17, ; + Name = "Shape1", ; + Top = 73, ; + Width = 534 + *< END OBJECT: BaseClass="shape" /> + + ADD OBJECT 'pfSettings.pagePreferences.Spinner1' AS spinner WITH ; + ControlSource = "Thisform.nGridFontSize", ; + Height = 27, ; + KeyboardHighValue = 24, ; + KeyboardLowValue = 6, ; + Left = 23, ; + Name = "Spinner1", ; + SpinnerHighValue = 24.00, ; + SpinnerLowValue = 6.00, ; + TabIndex = 16, ; + Top = 321, ; + Width = 59 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pagePreferences.Spinner2' AS spinner WITH ; + ControlSource = "Thisform.nDropDownDisplayCount", ; + Height = 27, ; + KeyboardHighValue = 100, ; + KeyboardLowValue = 5, ; + Left = 23, ; + Name = "Spinner2", ; + SpinnerHighValue = 100.00, ; + SpinnerLowValue = 5.00, ; + TabIndex = 25, ; + Top = 383, ; + Width = 59 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pagePreferences.Spinner3' AS spinner WITH ; + ControlSource = "Thisform.nDropDownMaxMRU", ; + Height = 27, ; + KeyboardHighValue = 100, ; + KeyboardLowValue = 1, ; + Left = 23, ; + Name = "Spinner3", ; + SpinnerHighValue = 100.00, ; + SpinnerLowValue = 1.00, ; + TabIndex = 27, ; + Top = 414, ; + Width = 59 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pagePreferences.Spinner4' AS spinner WITH ; + ControlSource = "Thisform.nBrowserZoom", ; + Height = 27, ; + Increment = 0.10, ; + InputMask = "9.99", ; + KeyboardLowValue = 0, ; + Left = 23, ; + Name = "Spinner4", ; + SpinnerHighValue = 2.00, ; + SpinnerLowValue = 0.70, ; + TabIndex = 20, ; + Top = 352, ; + Value = 0.1, ; + Width = 59 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pagePreferences.Spinner5' AS spinner WITH ; + ControlSource = "Thisform.nTreeViewFontSize", ; + Height = 27, ; + KeyboardHighValue = 24, ; + KeyboardLowValue = 6, ; + Left = 225, ; + Name = "Spinner5", ; + SpinnerHighValue = 24.00, ; + SpinnerLowValue = 6.00, ; + TabIndex = 17, ; + Top = 322, ; + Width = 59 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pagePreferences.Spinner6' AS spinner WITH ; + ControlSource = "Thisform.nTabsToSpaces", ; + Height = 27, ; + KeyboardHighValue = 10, ; + KeyboardLowValue = 0, ; + Left = 417, ; + Name = "Spinner6", ; + SpinnerHighValue = 10.00, ; + SpinnerLowValue = 0.00, ; + TabIndex = 21, ; + Top = 353, ; + Width = 59 + *< END OBJECT: BaseClass="spinner" /> + + ADD OBJECT 'pfSettings.pagePreferences.Text1' AS textbox WITH ; + ControlSource = "Thisform.oSearchOptions.nMaxResults", ; + Height = 25, ; + InputMask = "9999999", ; + Left = 22, ; + Name = "Text1", ; + TabIndex = 29, ; + Top = 454, ; + Width = 59 + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check1' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Open GoFish like Code References: Active project / Recent folder", ; + ControlSource = "Thisform.lCR_OpenMode", ; + Height = 17, ; + Left = 21, ; + Name = "Check1", ; + TabIndex = 1, ; + Top = 30, ; + Width = 372 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check2' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Show search history (button) per scope.", ; + ControlSource = "Thisform.lCR_HistoryPerScope", ; + Height = 17, ; + Left = 21, ; + Name = "Check2", ; + TabIndex = 2, ; + Top = 50, ; + Width = 235 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check3' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Show history in search combo per scope.", ; + ControlSource = "Thisform.lCR_SearchComboPerScope", ; + Height = 17, ; + Left = 21, ; + Name = "Check3", ; + TabIndex = 3, ; + Top = 70, ; + Width = 244 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check4' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Show history in tree (Follows Seaerch History button switch)", ; + ControlSource = "Thisform.lCR_HistoryTree", ; + Height = 17, ; + Left = 21, ; + Name = "Check4", ; + TabIndex = 4, ; + Top = 95, ; + Width = 344 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check5' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Simple tree, no subnodes for classes, just plain filenames", ; + ControlSource = "Thisform.lCR_SimpleTree", ; + Height = 17, ; + Left = 21, ; + Name = "Check5", ; + TabIndex = 7, ; + Top = 160, ; + Width = 338 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check6' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Sort tree by extension first", ; + ControlSource = "Thisform.lCR_SortTreeByExt", ; + Height = 17, ; + Left = 37, ; + Name = "Check6", ; + TabIndex = 8, ; + Top = 180, ; + Width = 158 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check7' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Fill all searches with data on startup. (sloow)", ; + ControlSource = "Thisform.lCR_HistoryTreeAuto", ; + Height = 17, ; + Left = 37, ; + Name = "Check7", ; + TabIndex = 5, ; + Top = 115, ; + Width = 262 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReferences.Check8' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Sort alphanumerical", ; + ControlSource = "Thisform.lCR_SortTreeAlpha", ; + Height = 17, ; + Left = 37, ; + Name = "Check8", ; + TabIndex = 6, ; + Top = 135, ; + Width = 129 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReplace.Check1' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Enable Replace Mode", ; + ControlSource = "Thisform.oSearchOptions.lEnableReplaceMode", ; + Height = 17, ; + Left = 10, ; + Name = "Check1", ; + Top = 5, ; + Width = 139 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReplace.Check2' AS checkbox WITH ; + Alignment = 0, ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Do not show replace warning dialog box with each replace", ; + ControlSource = "Thisform.oSearchOptions.lDoNotShowReplaceWarning", ; + Height = 17, ; + Left = 7, ; + Name = "Check2", ; + Top = 472, ; + Width = 336 + *< END OBJECT: BaseClass="checkbox" /> + + ADD OBJECT 'pfSettings.pageReplace.Image1' AS image WITH ; + Height = 338, ; + Left = 4, ; + Name = "Image1", ; + Picture = ..\images\replacelevels.bmp, ; + Stretch = 0, ; + Top = 124, ; + Width = 619 + *< END OBJECT: BaseClass="image" /> + + ADD OBJECT 'pfSettings.pageReplace.Label1' AS label WITH ; + BackStyle = 0, ; + Caption = "Warning: There are many risks associated with tools that replace code on your source files. Please review the GoFish Code Replacement Guide to be sure you understand how to use GoFish to replace code, and what the risks are.", ; + ForeColor = 255,0,0, ; + Height = 45, ; + Left = 8, ; + Name = "Label1", ; + Top = 26, ; + Width = 582, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageReplace.Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "See the GoFish Replace Help page for more info.", ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 17, ; + Left = 126, ; + MousePointer = 15, ; + Name = "Label2", ; + Top = 56, ; + Width = 271 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageReplace.Label3' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Select the maximum Replace Risk level to enable in the results grid:", ; + FontBold = .T., ; + Height = 17, ; + Left = 10, ; + Name = "Label3", ; + Top = 79, ; + Width = 385 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageReplace.optiongroupReplaceSafetyLevel' AS optiongroup WITH ; + ButtonCount = 3, ; + ControlSource = "Thisform.nReplaceRisk", ; + Height = 25, ; + Left = 121, ; + Name = "optiongroupReplaceSafetyLevel", ; + Top = 100, ; + Value = 0, ; + Width = 355, ; + Option1.AutoSize = .T., ; + Option1.BackStyle = 0, ; + Option1.Caption = "1= Pretty Safe", ; + Option1.Height = 17, ; + Option1.Left = 8, ; + Option1.Name = "Option2", ; + Option1.Top = 4, ; + Option1.Width = 93, ; + Option2.AutoSize = .T., ; + Option2.BackStyle = 0, ; + Option2.Caption = "2 = Kinda Safe", ; + Option2.Height = 17, ; + Option2.Left = 121, ; + Option2.Name = "Option3", ; + Option2.Top = 4, ; + Option2.Width = 98, ; + Option3.AutoSize = .T., ; + Option3.BackStyle = 0, ; + Option3.Caption = "3 = Dangerous", ; + Option3.Height = 17, ; + Option3.Left = 246, ; + Option3.Name = "Option4", ; + Option3.Top = 4, ; + Option3.Width = 100 + *< END OBJECT: BaseClass="optiongroup" /> + + ADD OBJECT 'pfSettings.pageThor.Label1' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "GoFish will be automatically registered with Thor if it is present. This will provide a way to assign a hotkey to launch Gofish, as well as expose classes for advanced uses of GoFish.", ; + Height = 32, ; + Left = 38, ; + Name = "Label1", ; + Top = 25, ; + Width = 555, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageThor.Label2' AS label WITH ; + AutoSize = .T., ; + BackStyle = 0, ; + Caption = "Learn more about Thor", ; + FontUnderline = .T., ; + ForeColor = 0,0,255, ; + Height = 17, ; + Left = 412, ; + MousePointer = 15, ; + Name = "Label2", ; + Top = 68, ; + Width = 128 + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageThor.Label4' AS label WITH ; + Anchor = 10, ; + BackStyle = 0, ; + Caption = "You can learn more about Thor at the VFPX.CodePlex.com website.", ; + Height = 32, ; + Left = 38, ; + Name = "Label4", ; + Top = 68, ; + Width = 398, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + ADD OBJECT 'pfSettings.pageThor.lblNoTHor' AS label WITH ; + Alignment = 2, ; + Anchor = 256, ; + BackStyle = 0, ; + Caption = "Thor is not presently running on your system.", ; + ForeColor = 255,0,0, ; + Height = 17, ; + Left = 38, ; + Name = "lblNoTHor", ; + Top = 105, ; + Visible = .F., ; + Width = 245, ; + WordWrap = .T. + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Activate + Thisform.Refresh() + ENDPROC + + PROCEDURE applycolumnsettings + Local lcControlSourceField, loColumn, loControl + + *-- Set .Visible property on the Results form grid columns + For each loControl in Thisform.pfSettings.pageColumns.containerColumnCheckBoxes.Controls + lcControlSourceField = loControl.tag + loColumn = Thisform.oForm.oGrid.FindColumn(lcControlSourceField) + loColumn.Visible = Iif(loControl.value = 1, .t., .f.) + EndFor + ENDPROC + + PROCEDURE buildcolumncheckboxes + Local lcName, llAlreadyAdded, lnContainerHeight, lnCount, lnRow, lnRow1, lnTop, lnMaxWidth, lnCol, lnCount2, lcName2 + Local lnVerticalSpacing, lnX, lnY, loCheckBox, loColumn, loContainerCheckBoxes, loPageframe + + lnY = 12 + lnX = 90 + + lnVerticalSpacing = 24 + llAlreadyAdded = .F. + + loPageframe = Thisform.pfSettings + loContainerCheckBoxes = m.loPageframe.pageColumns.containerColumnCheckBoxes + lnContainerHeight = m.loContainerCheckBoxes.Height + + Local Array; + laFieldNames[This.oForm.oGrid.ColumnCount, 7] + + For Each m.loColumn In This.oForm.oGrid.Columns FoxObject + lnRow = m.loColumn.ColumnOrder + lnRow1 = Ascan(This.oForm.gaFields, Proper(Getwordnum(m.loColumn.ControlSource, 2, ".")), -1, -1, 1, 15) + Do Case + Case Empty(m.lnRow1) + *not found + laFieldNames[lnRow, 5] = m.loContainerCheckBoxes.BackColor + laFieldNames[lnRow, 1] = "G" + Case This.oForm.gaFields(m.lnRow1, 4)=0 + *default + laFieldNames[lnRow, 5] = Rgb(255, 255, 255) + laFieldNames[lnRow, 1] = "A" + laFieldNames[lnRow, 6] = .T. + Case Inlist(This.oForm.gaFields(m.lnRow1, 4), 1, 2) + *alternative + laFieldNames[lnRow, 5] = m.loContainerCheckBoxes.BackColor + laFieldNames[lnRow, 1] = "D" + Case This.oForm.gaFields(m.lnRow1, 4)=3 + *replace (locked) + laFieldNames[lnRow, 5] = Thisform.nReplacedDynamicBackColour + laFieldNames[lnRow, 1] = "B" + laFieldNames[lnRow, 6] = .Null. + laFieldNames[lnRow, 7] = .T. + Case This.oForm.gaFields(m.lnRow1, 4)=4 + *replace + laFieldNames[lnRow, 5] = Thisform.nReplacedDynamicBackColour + laFieldNames[lnRow, 1] = "C" + laFieldNames[lnRow, 7] = .T. + Case This.oForm.gaFields(m.lnRow1, 4)=-1 + + *debug + laFieldNames[lnRow, 5] = Rgb(0, 255, 255) + laFieldNames[lnRow, 1] = "E" + Otherwise + laFieldNames[lnRow, 5] = Rgb(255,128,128) + laFieldNames[lnRow, 1] = "F" + Endcase + + laFieldNames[lnRow, 1] = laFieldNames[lnRow, 1]+Iif(m.loColumn.Visible, 'A' + Str(lnRow, 4, 0), 'B' + Upper(m.loColumn.Header1.Caption)) + laFieldNames[lnRow, 2] = m.loColumn.Visible + laFieldNames[lnRow, 3] = m.loColumn.Header1.Caption + laFieldNames[lnRow, 4] = m.loColumn.Header1.Tag + laFieldNames[lnRow, 4] = m.loColumn.Header1.Tag + Endfor + + Asort(m.laFieldNames, 1, -1) + + lnCol = 1 + lnMaxWidth = 0 + + lnTop = m.lnY + + For lnCount = 1 To Alen(m.laFieldNames, 1) + + lcName = 'CheckBox_' + Alltrim(Str(m.lnCount)) + Try + m.loContainerCheckBoxes.RemoveObject(m.lcName) + Catch + Endtry + m.loContainerCheckBoxes.AddObject(m.lcName, 'CheckBox') + loCheckBox = m.loContainerCheckBoxes.&lcName + + With m.loCheckBox + .Caption = m.laFieldNames[m.lnCount, 3] + .Tag = m.laFieldNames[m.lnCount, 4] && Holds the control source!!! + .Value = Iif(m.laFieldNames[m.lnCount, 2] = .T., 1, 0) + .Visible = .T. + .AutoSize = .T. + .BackColor = m.laFieldNames[m.lnCount, 5] + .Enabled = !Isnull(m.laFieldNames[m.lnCount, 6]) + .AddProperty("glDefault", m.laFieldNames[m.lnCount, 6]) + .AddProperty("glReplace", m.laFieldNames[m.lnCount, 7]) + + If m.lnTop + m.lnVerticalSpacing > m.lnContainerHeight - 12 + lnTop = m.lnY + lnX = m.lnX + 200 + For lnCount2 = lnCol To lnCount-1 + lcName2 = 'CheckBox_' + Alltrim(Str(m.lnCount2)) + loCheckBox = m.loContainerCheckBoxes.&lcName2 + loCheckBox.Width = m.lnMaxWidth + + Endfor &&lnCount2 + lnCol = lnCount + lnMaxWidth = 0 + Endif + + .AutoSize = .F. + lnMaxWidth = Max(m.lnMaxWidth, .Width+3) + .Move(m.lnX, m.lnTop, .Width+3, .Height+6) + .TabIndex = m.lnCount + + lnTop = m.lnTop + m.lnVerticalSpacing + Endwith + + Endfor + + For lnCount2 = lnCol To lnCount-1 + lcName2 = 'CheckBox_' + Alltrim(Str(m.lnCount2)) + loCheckBox = m.loContainerCheckBoxes.&lcName2 + loCheckBox.Width = m.lnMaxWidth + + Endfor &&lnCount2 + + ENDPROC + + PROCEDURE Destroy + DoDefault() + + If this.lReturn + ThisForm.SaveOptions() + Endif + + ENDPROC + + PROCEDURE Init + Lparameters toForm + + If VarType(m.toForm) != 'O' + Messagebox('Must pass a reference to GoFish Results Form when calling this form.', 0, 'GoFish') + Return .F. + Endif + + This.MinHeight = This.Height + This.MaxHeight = Int(This.Height * 1.5) + This.MinWidth = This.Width + This.MaxWidth = Int(This.Width * 1.5) + + DoDefault(m.toForm) + + Thisform.LoadOptions() + + This.BindControls = .T. + + Thisform.pfSettings.pageBackups.Enabled = Thisform.oSearchOptions.lEnableReplaceMode + + *SF 20221018 -> local storage + If Thisform.oForm.nFirstLoad=1 Then + This.pfSettings.pageAdvanced.Label3.Caption = 'Home(7)\GoFish_ = ' + Proper(Addbs(Home(7) + 'GoFish_')) + * This.pfSettings.pageBackups.Label5.Caption = 'Home(7)\GoFish_\GoFishBackups\ = ' + Proper(Addbs(Home(7)) + 'GoFish_\GoFishBackups\' ) + This.pfSettings.pageBackups.Label5.Caption = 'Home(7)\GoFish_\GF_ReplaceBackups\ = ' + Proper(Addbs(Home(7)) + 'GoFish_\GF_ReplaceBackups\' ) + Else &&thisform.oForm.nFirstLoad=1 + This.pfSettings.pageAdvanced.Label3.Caption = 'LOCAL = ' + Proper(Thisform.cCR_StoreLocal) + This.pfSettings.pageBackups.Label1.Caption = STRTRAN(This.pfSettings.pageBackups.Label1.Caption,'HOME(7)','') + * This.pfSettings.pageBackups.Label5.Caption = 'LOCAL\GoFishBackups\ = ' + Proper(Thisform.cCR_StoreLocal + 'GoFishBackups\' ) + This.pfSettings.pageBackups.Label5.Caption = 'LOCAL\GF_ReplaceBackups\ = ' + Proper(Thisform.cCR_StoreLocal + 'GF_ReplaceBackups\' ) + + Endif &&thisform.oForm.nFirstLoad=1 + */SF 20221018 -> local storage + + Thisform.Refresh() + + ENDPROC + + PROCEDURE KeyPress + LPARAMETERS nKeyCode, nShiftAltCtrl + + If nKeyCOde = 27 + Thisform.Release + Endif + + ENDPROC + + PROCEDURE loadformsettings + This.MinHeight = This.Height + This.MinWidth = This.Width + + DoDefault() + ENDPROC + + PROCEDURE loadoptions + This.oSearchOptions = This.CopyObjectProperties(This.oSearchOptions, CreateObject('GoFishSearchOptions')) + + Thisform.LoadResultsFormProperties() + + This.BuildColumnCheckBoxes() + ENDPROC + + PROCEDURE loadresultsformproperties + Local laProperties[1], lcProperty, lcXmlSettingsFile + + lcXmlSettingsFile = Thisform.cUISettingsFile + + *-- Get an array of Custom Form-level properties that are on the Restults form. + *-- Store them in the corresponding local Form properties here, if present. + Amembers(laProperties, Thisform.oForm, 0, 'U') + + *--- Import Custom properties from oForm to ThisForm + For x = 1 To Alen(laProperties) + lcProperty = laProperties[x] + If INLIST(" " + Lower(m.lcProperty) + " ", " oform ", " cuisettingsfile ", " omy ") THEN + Loop + ENDIF &&INLIST(" " + Lower(m.lcProperty) + " ", " oform ", " cuisettingsfile ") + + AddProperty(This, lcProperty) + Try + Store Evaluate('Thisform.oForm.' + lcProperty) To ('Thisform.' + lcProperty) + Catch + Endtry + Endfor + + Thisform.cUISettingsFile = lcXmlSettingsFile && Must restore, since above trick overwrite this important setting + + Thisform.nDockable = Thisform.oForm.Dockable + + Thisform.nReplaceRisk = Evl(Thisform.oForm.nReplaceRisk, 1) + + *SF 20221015 + * --- set colours used for showing informations --- + + *.<<@N>>.BORDERWIDTH = 0 + This.pfSettings.pageColours.Container2.BorderWidth = 0 + This.pfSettings.pageColours.Container3.BorderWidth = 0 + This.pfSettings.pageColours.Container4.BorderWidth = 0 + This.pfSettings.pageColours.Container5.BorderWidth = 0 + This.pfSettings.pageColours.Container6.BorderWidth = 0 + This.pfSettings.pageColours.Container7.BorderWidth = 0 + This.pfSettings.pageColours.Container8.BorderWidth = 0 + This.pfSettings.pageColours.Container9.BorderWidth = 0 + This.pfSettings.pageColours.Container10.BorderWidth = 0 + This.pfSettings.pageColours.Container11.BorderWidth = 0 + This.pfSettings.pageColours.Container12.BorderWidth = 0 + This.pfSettings.pageColours.Container13.BorderWidth = 0 + + This.pfSettings.pageColours.Container1.BorderColor = Thisform.nContainerFrameColour + This.pfSettings.pageColours.Container2.lblExample1.ForeColor = Thisform.nFileSCXDynamicForeColour + This.pfSettings.pageColours.Container3.lblExample1.ForeColor = Thisform.nFileVCXDynamicForeColour + This.pfSettings.pageColours.Container4.lblExample1.ForeColor = Thisform.nFilePRGDynamicForeColour + This.pfSettings.pageColours.Container5.lblExample1.ForeColor = Thisform.nFileDefaultDynamicForeColour + This.pfSettings.pageColours.Container6.BackColor = Thisform.nReplacedDynamicBackColour + This.pfSettings.pageColours.Container7.BackColor = Thisform.nRiskExceededDynamicBackColour + This.pfSettings.pageColours.Container14.BackColor = Thisform.nRisk1DynamicBackColour + This.pfSettings.pageColours.Container8.BackColor = Thisform.nRisk2DynamicBackColour + This.pfSettings.pageColours.Container9.BackColor = Thisform.nRisk3DynamicBackColour + This.pfSettings.pageColours.Container10.lblExample1.ForeColor = Thisform.nTreeSearchColour + This.pfSettings.pageColours.Container11.lblExample1.ForeColor = Thisform.nTreeUpdateColour + This.pfSettings.pageColours.Container12.BackColor = Thisform.nCSS_tr_even_Colour + This.pfSettings.pageColours.Container13.BackColor = Thisform.nCSS_tr_odd_Colour + */SF 20221015 + + *SF 20221017 + Thisform.pfSettings.pageAdvanced.chk_CRLocal_Default.Visible = Thisform.oForm.nFirstLoad=2 + Thisform.pfSettings.pageAdvanced.chk_CRLocal.Visible = Thisform.oForm.nFirstLoad=2 + Thisform.pfSettings.pageAdvanced.cmdSetFolder.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.lCR_Local + Thisform.pfSettings.pageAdvanced.Text1.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.lCR_Local + + Thisform.pfSettings.pageAdvanced.Label9.Visible = Thisform.oForm.lCR_Store_Restart + + Thisform.cCR_StoreLocal_Option = Evl(Thisform.cCR_StoreLocal_Option,; + Iif(Thisform.lCR_Local,Thisform.cCR_StoreLocal,'')) + Thisform.cCR_StoreLocal_Set = Thisform.cCR_StoreLocal_Option + + Thisform.pfSettings.pageReferences.Enabled = Thisform.oForm.nFirstLoad=2 + Thisform.pfSettings.pageReferences.Check6.Enabled = Thisform.lCR_SimpleTree + Thisform.pfSettings.pageReferences.Check7.Enabled = Thisform.lCR_HistoryTree + Thisform.pfSettings.pageReferences.Check8.Enabled = Thisform.lCR_HistoryTree + + */SF 20221017 + + ENDPROC + + PROCEDURE saveoptions + *-- Transfer Search Engine settings back to Results Form Search Engine instance + Local laProperties[1] + + This.CopyObjectProperties(This.oSearchOptions, Thisform.oSearchEngine.oSearchOptions) + + This.ApplyColumnSettings() + + *-- Transfer certain settings from Thisform back to the Search Results Form + With Thisform.oForm + .Dockable = Thisform.nDockable + .nGridFontSize = Thisform.nGridFontSize + .nTreeViewFontSize = Thisform.nTreeViewFontSize + .nTabsToSpaces = Thisform.nTabsToSpaces + .nDropDownDisplayCount = Thisform.nDropDownDisplayCount + .nDropDownMaxMRU = Thisform.nDropDownMaxMRU + .nReplaceRisk = Evl(Thisform.nReplaceRisk, 1) + .lClearApplyFilter = Thisform.lClearApplyFilter + .lWarnWholeWord = Thisform.lWarnWholeWord + .nBrowserZoom = Thisform.nBrowserZoom + * .Containerright.Container2.containerWebControl.nZoom = Thisform.nBrowserZoom + .lRestorePreviousSearchResultsOnStartup = Thisform.lRestorePreviousSearchResultsOnStartup + .lSaveSearchResults = Thisform.lSaveSearchResults + + .nJanitorSearchHistoryDays = Thisform.nJanitorSearchHistoryDays + .nJanitorReplaceHistoryDays = Thisform.nJanitorReplaceHistoryDays + .dLastJanitorRunDate = Thisform.dLastJanitorRunDate + + *SF 20221016 + .lCR_Allow = Thisform.lCR_Allow + .lMoveNewCodeToTopLeft= Thisform.lMoveNewCodeToTopLeft + .lDesktop = Thisform.lDesktop + + .cCR_StoreLocal_Option = Thisform.cCR_StoreLocal_Option + */SF 20221016 + + */SF 20221020 + .lOtherHistory = Thisform.lOtherHistory + */SF 20221020 + + *SF 20221019 5.2.000 + *missing from 206 + .nContainerFrameColour = Thisform.nContainerFrameColour + .nFileSCXDynamicForeColour = Thisform.nFileSCXDynamicForeColour + .nFileVCXDynamicForeColour = Thisform.nFileVCXDynamicForeColour + .nFilePRGDynamicForeColour = Thisform.nFilePRGDynamicForeColour + .nFileDefaultDynamicForeColour = Thisform.nFileDefaultDynamicForeColour + .nReplacedDynamicBackColour = Thisform.nReplacedDynamicBackColour + .nRiskExceededDynamicBackColour = Thisform.nRiskExceededDynamicBackColour + .nRisk1DynamicBackColour = Thisform.nRisk1DynamicBackColour + .nRisk2DynamicBackColour = Thisform.nRisk2DynamicBackColour + .nRisk3DynamicBackColour = Thisform.nRisk3DynamicBackColour + .nTreeSearchColour = Thisform.nTreeSearchColour + .nTreeUpdateColour = Thisform.nTreeUpdateColour + .nCSS_tr_even_Colour = Thisform.nCSS_tr_even_Colour + .nCSS_tr_odd_Colour = Thisform.nCSS_tr_odd_Colour + */missing from 206 + + If .lCR_Allow Then + .lCR_Local_Default = Thisform.lCR_Local_Default + .lCR_Local = Thisform.lCR_Local + + .lCR_OpenMode = Thisform.lCR_OpenMode + .lCR_HistoryPerScope = Thisform.lCR_HistoryPerScope + .lCR_SearchComboPerScope = Thisform.lCR_SearchComboPerScope + + .lCR_RefreshTree = .lCR_HistoryTree # Thisform.lCR_HistoryTree; + OR .lCR_HistoryTreeAuto # Thisform.lCR_HistoryTreeAuto; + OR .lCR_SimpleTree # Thisform.lCR_SimpleTree; + OR .lCR_SortTreeByExt # Thisform.lCR_SortTreeByExt; + OR .lCR_SortTreeAlpha # Thisform.lCR_SortTreeAlpha + + .lCR_HistoryTree = Thisform.lCR_HistoryTree + .lCR_HistoryTreeAuto = Thisform.lCR_HistoryTreeAuto + .lCR_SimpleTree = Thisform.lCR_SimpleTree + .lCR_SortTreeByExt = Thisform.lCR_SortTreeByExt + .lCR_SortTreeAlpha = Thisform.lCR_SortTreeAlpha + + Endif &&.lCR_Allow + */SF 20221019 5.2.000 + + .lDeleteStorage = Thisform.lDeleteStorage + Endwith + + + If !Empty(Thisform.cCR_StoreLocal_Option) And !Thisform.cCR_StoreLocal_Option==Thisform.cCR_StoreLocal_Set Then + Thisform.Set_LocalFolder(Thisform.cCR_StoreLocal_Option) + Endif &&!EMPTY(Thisform.cCR_StoreLocal_Option) AND Thisform.cCR_StoreLocal_Option=Thisform.cCR_StoreLocal_Set + + If Thisform.pfSettings.pageAdvanced.Label9.Visible Then + Thisform.oForm.lCR_Store_Restart = .T. + Messagebox('You will have to restart GoFish for this change to take effect.', 0, 'Notice:') + + Endif &&Thisform.pfSettings.pageAdvanced.Label9.Visible + + + ENDPROC + + PROCEDURE set_localfolder && cCR_StoreLocal_Option activated Check folder + Lparameters; + tcFolder + ASSERT .f. + Local; + lcFolder As String,; + llFound As Boolean,; + llSet As Boolean + + Do Case + Case !Empty(m.tcFolder) + *just store folder given + lcFolder = m.tcFolder + llFound = GF_Create_LocalPath(@lcFolder, .F., .F., .T.) + + GF_Put_LocalPath(m.lcFolder) + + Case Thisform.oForm.nFirstLoad#2 + *nothing to do + Case !Thisform.lCR_Allow + *nothing to do + Case !Thisform.lCR_Local + *nothing to do + Case !Empty(Thisform.cCR_StoreLocal_Option) + *nothing to do, activate + llSet = .T. + + Case GF_Get_LocalPath(@tcFolder) And Directory(m.tcFolder) + *found resource, activate + Thisform.cCR_StoreLocal_Option = m.tcFolder + Thisform.cCR_StoreLocal_Set = m.tcFolder + llSet = .T. + Otherwise + *pick a folder, or use default path + + tcFolder = Iif(Thisform.lCR_Local_Default,'',Justpath(Set("Resource",1))) + llFound = GF_Create_LocalPath(@tcFolder, .F., Thisform.lCR_Local_Default, Thisform.lCR_Local_Default) + + If Directory(m.tcFolder) Then + *folder found, activate + Thisform.cCR_StoreLocal_Option = m.tcFolder + Thisform.cCR_StoreLocal_Set = m.tcFolder + GF_Put_LocalPath (m.tcFolder) + llSet = .T. + Else &&Directory(m.tcFolder) + Thisform.lCR_Local = .F. + + Endif &&Directory(m.tcFolder) + Endcase + + Thisform.pfSettings.pageAdvanced.Text1.Refresh + + Return m.llSet + + ENDPROC + + PROCEDURE validate + Local llAtLeastOneColumnSelected, loControl + + llAtLeastOneColumnSelected = .f. + + For each loControl in thisform.pfSettings.pageColumns.containerColumnCheckBoxes.Controls + If loControl.value = 1 + llAtLeastOneColumnSelected = .t. + Endif + EndFor + + If !llAtLeastOneColumnSelected + MessageBox('Please select at least one column to display in the grid.', 0, 'Notice:') + thisform.pfSettings.ActivePage = 1 + Return .f. + Endif + + + ENDPROC + + PROCEDURE cmdCancel.Click + Thisform.lReturn = .f. + + thisform.Release() + ENDPROC + + PROCEDURE cmdOK.Click + If Thisform.Validate() + Thisform.lReturn = .t. + Thisform.Release() + Endif + + + + + + ENDPROC + + PROCEDURE pfSettings.Page1.Label3.Click + GF_Shell('https://github.com/VFPX/Thor') + + ENDPROC + + PROCEDURE pfSettings.Page1.Label5.Click + GF_Shell('https://github.com/VFPX/GoFish') + + ENDPROC + + PROCEDURE pfSettings.Page2.Spinner1.Valid + Thisform.dLastJanitorRunDate = {} + ENDPROC + + PROCEDURE pfSettings.Page2.Spinner2.Valid + Thisform.dLastJanitorRunDate = {} + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.chk_CRLocal.InteractiveChange + This.SetFocus + + This.Parent.Label9.Visible = .T. + + If This.Value Then + This.Value = Thisform.Set_LocalFolder() + + Endif &&This.Value + + This.Parent.cmdSetFolder.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.lCR_Local + This.Parent.Text1.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.lCR_Local + + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.chk_CRMode.InteractiveChange + This.SetFocus + + This.Parent.Label9.Visible = .T. + This.Parent.chk_CRLocal_Default.Visible = This.Value + This.Parent.chk_CRLocal.Visible = This.Value + This.Parent.Text1.Visible = This.Value + This.Parent.cmdSetFolder.Visible = This.Value And Thisform.lCR_Local + + If This.Value Then + Thisform.Set_LocalFolder() + Endif &&This.Value + + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.cmdDeleteConfigFiles.Click + Local lcFilesToDelete, lcPath, lnResponse + + *SF 20221018 -> local storage + *lcPath = '"' + Addbs(Home(7)) + '"' + lcPath = '"' + Thisform.cCR_StoreLocal + '"' + */SF 20221018 -> local storage + + lcFilesToDelete = Addbs(lcPath) + 'gf_*.xml' + + lnResponse = MessageBox('Are you sure you want to reset GoFish by erasing config files?',3, 'Erase config files?') + + If lnResponse = 6 + Delete File (lcFilesToDelete) + EndIf + + This.Parent.list1.Requery() + + + + + + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.cmdOpenFolder.Click + *SF 20221018 -> local storage + *lcPath = '"' + Addbs(Home(7)) + '"' + lcPath = '"' + Thisform.cCR_StoreLocal + '"' + */SF 20221018 -> local storage + + GF_OpenExplorerWindow(lcPath) + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.cmdSetFolder.Click + Local; + lcFolder As String + + lcFolder = Thisform.cCR_StoreLocal_Option + lcFolder = Getdir(m.lcFolder,'Local GoFish config folder. Please pick one.','',64+1+32+2+8) + If !Empty(m.lcFolder) Then + Thisform.cCR_StoreLocal_Option = m.lcFolder + This.Parent.Label9.Visible = .T. + Endif &&!EMPTY(m.lcFolder) + + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.List1.Click + Local lnIndex + + lnIndex = this.ListIndex + lcValue = This.value + + If !('.XML' $ Upper(This.value)) + This.Init() && Reset RecordSource + This.Requery() + Endif + + This.Value = lcValue + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.List1.DblClick + *SF 20221018 -> local storage + *lcFile = '"' + Addbs(Home(7)) + this.Value + '"' + lcFile = '"' + Thisform.cCR_StoreLocal + this.Value + '"' + */SF 20221018 -> local storage + + If 'GF_' $ Upper(lcFile) and Upper(JustExt(lcFile)) = 'XML' + Run /n "notepad" &lcFile + Else + This.Init() && Reset RecordSource + This.Requery() + Endif + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.List1.Init + *SF 20221018 -> local storage + *This.RowSource = Addbs(Home(7)) + 'GF_*.xml' + This.RowSource = Thisform.cCR_StoreLocal + 'GF_*.xml' + */SF 20221018 -> local storage + + ENDPROC + + PROCEDURE pfSettings.pageAdvanced.Text1.When + RETURN .F. + ENDPROC + + PROCEDURE pfSettings.pageBackups.Check1.Click + DoDefault() + + This.Parent.Refresh() + ENDPROC + + PROCEDURE pfSettings.pageBackups.Command2.Click + *SF 20221018 -> local storage + *lcPath = '"' + Addbs(Home(7) + 'GoFishBackups') + '"' + *lcPath = '"' + Addbs(Thisform.cCR_StoreLocal + 'GoFishBackups') + '"' + lcPath = '"' + Addbs(Thisform.cCR_StoreLocal + 'GF_ReplaceBackups') + '"' + */SF 20221018 -> local storage + + GF_OpenExplorerWindow(lcPath) + + ENDPROC + + PROCEDURE pfSettings.pageBackups.Label2.Click + messagebox('No help available at this time.', 0, 'GoFish') + *** TODO: GF_Shell('URL for backup help') + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command1.Click + Local lnReturn, lnColour + + lnColour = Thisform.nContainerFrameColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nContainerFrameColour = m.lnReturn + This.Parent.Container1.BorderColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command10.Click + Local lnReturn, lnColour + + lnColour = Thisform.nTreeSearchColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nTreeSearchColour = m.lnReturn + This.Parent.Container10.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command11.Click + Local lnReturn, lnColour + + lnColour = Thisform.nTreeUpdateColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nTreeUpdateColour = m.lnReturn + This.Parent.Container11.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command12.Click + Local lnReturn, lnColour + + lnColour = Thisform.nCSS_tr_even_Colour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nCSS_tr_even_Colour = m.lnReturn + This.Parent.Container12.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command13.Click + Local lnReturn, lnColour + + lnColour = Thisform.nCSS_tr_odd_Colour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nCSS_tr_odd_Colour = m.lnReturn + This.Parent.Container13.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command14.Click + Local lnReturn, lnColour + + lnColour = Thisform.nRisk1DynamicBackColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nRisk1DynamicBackColour = m.lnReturn + This.Parent.Container14.BackColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command2.Click + Local lnReturn, lnColour + + lnColour = Thisform.nFileSCXDynamicForeColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nFileSCXDynamicForeColour = m.lnReturn + This.Parent.Container2.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command3.Click + Local lnReturn, lnColour + + lnColour = Thisform.nFileVCXDynamicForeColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nFileVCXDynamicForeColour = m.lnReturn + This.Parent.Container3.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command4.Click + Local lnReturn, lnColour + + lnColour = Thisform.nFilePRGDynamicForeColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nFilePRGDynamicForeColour = m.lnReturn + This.Parent.Container4.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command5.Click + Local lnReturn, lnColour + + lnColour = Thisform.nFileDefaultDynamicForeColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nFileDefaultDynamicForeColour = m.lnReturn + This.Parent.Container5.lblExample1.ForeColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command6.Click + Local lnReturn, lnColour + + lnColour = Thisform.nReplacedDynamicBackColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nReplacedDynamicBackColour = m.lnReturn + This.Parent.Container6.BackColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command7.Click + Local lnReturn, lnColour + + lnColour = Thisform.nRiskExceededDynamicBackColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nRiskExceededDynamicBackColour = m.lnReturn + This.Parent.Container7.BackColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command8.Click + Local lnReturn, lnColour + + lnColour = Thisform.nRisk2DynamicBackColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nRisk2DynamicBackColour = m.lnReturn + This.Parent.Container8.BackColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Command9.Click + Local lnReturn, lnColour + + lnColour = Thisform.nRisk3DynamicBackColour + lnReturn = Getcolor(m.lnColour) + + If m.lnReturn#-1 Then + Thisform.nRisk3DynamicBackColour = m.lnReturn + This.Parent.Container9.BackColor = m.lnReturn + Endif &&m.lnReturn#-1 + + ENDPROC + + PROCEDURE pfSettings.pageColours.Container1.Click + This.Parent.Command1.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container1.lblExample1.Click + This.Parent.Parent.Command1.Click + + ENDPROC + + PROCEDURE pfSettings.pageColours.Container10.Click + This.Parent.Command10.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container10.lblExample1.Click + This.Parent.Parent.Command10.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container11.Click + This.Parent.Command11.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container11.lblExample1.Click + This.Parent.Parent.Command11.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container12.Click + This.Parent.Command12.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container12.lblExample1.Click + This.Parent.Parent.Command12.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container13.Click + This.Parent.Command13.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container13.lblExample1.Click + This.Parent.Parent.Command13.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container14.Click + This.Parent.Command14.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container14.lblExample1.Click + This.Parent.Parent.Command14.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container2.Click + This.Parent.Command2.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container2.lblExample1.Click + This.Parent.Parent.Command2.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container3.Click + This.Parent.Command3.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container3.lblExample1.Click + This.Parent.Parent.Command3.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container4.Click + This.Parent.Command4.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container4.lblExample1.Click + This.Parent.Parent.Command4.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container5.Click + This.Parent.Command5.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container5.lblExample1.Click + This.Parent.Parent.Command5.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container6.Click + This.Parent.Command6.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container6.lblExample1.Click + This.Parent.Parent.Command6.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container7.Click + This.Parent.Command7.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container7.lblExample1.Click + This.Parent.Parent.Command7.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container8.Click + This.Parent.Command8.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container8.lblExample1.Click + This.Parent.Parent.Command8.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container9.Click + This.Parent.Command9.Click + ENDPROC + + PROCEDURE pfSettings.pageColours.Container9.lblExample1.Click + This.Parent.Parent.Command9.Click + ENDPROC + + PROCEDURE pfSettings.pageColumns.cmdClearAll.Click + For Each loControl In This.Parent.containerColumnCheckBoxes.Controls + Do Case + Case Isnull(loControl.glDefault) + *replace column, ignore + Otherwise + *on + loControl.Value = 0 + Endcase + Endfor + + ENDPROC + + PROCEDURE pfSettings.pageColumns.cmdDefault.Click + For Each loControl In This.Parent.containerColumnCheckBoxes.Controls + Do Case + Case Isnull(loControl.glDefault) + *replace column, ignore + Case loControl.glDefault + *default column + loControl.Value = 1 + Otherwise + *non default column + loControl.Value = 0 + Endcase + Endfor + + ENDPROC + + PROCEDURE pfSettings.pageColumns.cmdDefault.UIEnable + Lparameters tlEnable + + Local; + loControl As Object + + If m.tlEnable Then + For Each m.loControl In This.Parent.containerColumnCheckBoxes.Controls FoxObject + If Pemstatus(m.loControl,"glReplace",5) And m.loControl.glReplace Then + loControl.BackColor = Thisform.nReplacedDynamicBackColour + + Endif &&Pemstatus(m.loControl,"glReplace",5) And m.loControl.glReplace + Endfor &&loControl + Endif &&m.tlEnable + + ENDPROC + + PROCEDURE pfSettings.pageColumns.cmdSelectAll.Click + For Each loControl In This.Parent.containerColumnCheckBoxes.Controls + Do Case + Case Isnull(loControl.glDefault) + *replace column, ignore + Otherwise + *on + loControl.Value = 1 + Endcase + Endfor + + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Activate + This.Refresh() + ENDPROC + + PROCEDURE pfSettings.pagePreferences.cboDockable.InteractiveChange + lnCurrentDockable = Thisform.oForm.Dockable + lnNewValue = this.Value + + If lnNewValue = 0 and lnCurrentDockable # 0 + MessageBox('You will have to restart GoFish for this change to take effect.', 0, 'Notice:') + Endif + + Thisform.nDockable = This.Value + ENDPROC + + PROCEDURE pfSettings.pagePreferences.chkDesktop.InteractiveChange + local loMy, ; + loSettings, ; + lcSettingsFile + loMy = newobject('My', 'My.vcx') + loSettings = loMy.Settings + + *SF 20221018 -> local storage + *lcSettingsFile = addbs(home(7)) + Thisform.oForm.cUISettingsFile + lcSettingsFile = Thisform.oForm.cUISettingsFile + */SF 20221018 -> local storage + + m.loSettings.Load(m.lcSettingsFile) + m.loSettings.Add('lDesktop', This.Value) + m.loSettings.Save(m.lcSettingsFile) + messagebox('Note: this change takes effect the next time you run GoFish.', 64, 'GoFish') + + ENDPROC + + PROCEDURE pfSettings.pagePreferences.cmdZoomDefault.Click + Thisform.nBrowserZoom = 1.0 + This.Parent.Refresh() + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Command1.Click + Local lcFolder, lcPath + + lcFolder = "GF_Saved_Search_Results" + + *SF 20221018 -> local storage + *lcPath = '"' + Addbs(Home(7)) + lcFolder + '"' + lcPath = '"' + Thisform.cCR_StoreLocal + lcFolder + '"' + */SF 20221018 -> local storage + + GF_OpenExplorerWindow(lcPath) + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Spinner4.Click + Nodefault + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Spinner4.DownClick + This.Value = This.Value - 0.00 + + Nodefault + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Spinner4.UpClick + This.Value = This.Value + 0.00 + + nodefault + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Spinner4.Valid + If This.Value < This.SpinnerLowValue + This.Value = This.SpinnerLowValue + EndIf + + If This.Value > This.SpinnerHighValue + This.Value = This.SpinnerHighValue + Endif + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Text1.Click + This.SelStart = 0 + This.SelLength = 100 + ENDPROC + + PROCEDURE pfSettings.pagePreferences.Text1.Valid + If this.Value <= 0 + MessageBox('Please enter a value greater than zero.', 64, 'GoFish') + Return .f. + Endif + + + ENDPROC + + PROCEDURE pfSettings.pageReferences.Check4.InteractiveChange + This.SetFocus + + This.Parent.Check7.Enabled = This.Value + This.Parent.Check8.Enabled = This.Value + ENDPROC + + PROCEDURE pfSettings.pageReferences.Check5.InteractiveChange + This.SetFocus + + This.Parent.Check6.Enabled = This.Value + + ENDPROC + + PROCEDURE pfSettings.pageReplace.Activate + This.Refresh() + ENDPROC + + PROCEDURE pfSettings.pageReplace.Check1.Click + DoDefault() + + Thisform.oSearchOptions.lBackup = .t. + + This.Parent.Refresh() + ENDPROC + + PROCEDURE pfSettings.pageReplace.Check2.Click + DoDefault() + + This.Parent.Refresh() + ENDPROC + + PROCEDURE pfSettings.pageReplace.Label2.Click + messagebox('No help available at this time.', 0, 'GoFish') + *** TODO: GF_Shell('URL for replace help') + + ENDPROC + + PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Option2.Click + DoDefault() + + This.Parent.Refresh() + + + ENDPROC + + PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Option3.Click + DoDefault() + + This.Parent.Refresh() + + + ENDPROC + + PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Option4.Click + DoDefault() + + This.Parent.Refresh() + + ENDPROC + + PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Refresh + lnColor = Rgb(240, 240, 240) + + lnRiskLevel = This.Value + + Do Case + Case lnRiskLevel = 1 + lnColor = Thisform.nRisk1DynamicBackColour &&Rgb(0, 176, 80)&& Green + + Case lnRiskLevel = 2 + lnColor = Thisform.nRisk2DynamicBackColour &&Rgb(255, 255, 128) && Yellow + + Case lnRiskLevel = 3 + lnColor = Thisform.nRisk3DynamicBackColour &&Rgb(255, 192, 0)&& Orange + Endcase + + If Thisform.oSearchOptions.lEnableReplaceMode + This.BackColor = lnColor + This.SetAll('Enabled', .t., 'OptionButton') + This.SetAll('Forecolor', Rgb(0,0,0), 'OptionButton') + Else + This.BackColor = Rgb(255,255,255) + This.SetAll('Enabled', .f., 'OptionButton') + This.SetAll('DisabledForecolor', Rgb(210,210,210), 'OptionButton') + Endif + + + DoDefault() + + ENDPROC + + PROCEDURE pfSettings.pageReplace.Refresh + this.Parent.pageBackups.Enabled = Thisform.oSearchOptions.lEnableReplaceMode + + DoDefault() + ENDPROC + + PROCEDURE pfSettings.pageThor.Activate + Local llThorRunning + + Try + ExecScript(_Screen.cThorDispatcher, '?') + llThorRunning = .T. + Catch + llThorRunning = .F. + EndTry + + This.lblNoThor.Visible = !llThorRunning + + ENDPROC + + PROCEDURE pfSettings.pageThor.Label2.Click + GF_Shell('https://github.com/VFPX/Thor') + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_options.sc2 b/Source/Forms/gofish_options.sc2 index 0c26e83..3364779 100644 --- a/Source/Forms/gofish_options.sc2 +++ b/Source/Forms/gofish_options.sc2 @@ -4,3025 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_options.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_options AS gf_baseform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="pfSettings" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColumns.containerColumnCheckBoxes" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColumns.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColumns.cmdSelectAll" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColumns.cmdClearAll" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Shape1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.cboDockable" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.cmdZoomDefault" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Label9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Spinner6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.chkDesktop" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pagePreferences.Check9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Shape1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.List1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.cmdOpenFolder" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.cmdDeleteConfigFiles" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.chk_CRMode" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.chk_CRLocal_Default" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.chk_CRLocal" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.cmdSetFolder" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageAdvanced.Label10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageThor.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageThor.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageThor.lblNoTHor" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageThor.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.optiongroupReplaceSafetyLevel" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Image1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Check2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.Text2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReplace.cmdOpenFolder" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Check1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageBackups.Command2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page1.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page1.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page1.Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page1.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page1.Image1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page1.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page2.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page2.Spinner1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page2.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page2.Spinner2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.Page2.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container1.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container2" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container2.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container3" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container3.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container4" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container4.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container5" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container5.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container6" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container6.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container7" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container7.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container8" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container8.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container9.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container10" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container10.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label11" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command11" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container11" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container11.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label12" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command12" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container12" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container12.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Label13" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Command13" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container13" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageColours.Container13.lblExample1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="pfSettings.pageReferences.Label9" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdOK" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdCancel" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Gf_versionlabel1" UniqueID="" Timestamp="" /> - - * - *m: applycolumnsettings - *m: buildcolumncheckboxes - *m: loadoptions - *m: loadresultsformproperties - *m: saveoptions - *m: set_localfolder && cCR_StoreLocal_Option activated Check folder - *m: validate - *p: ccr_storelocal_option && Internal storage for new local path, just to display and set. - *p: ccr_storelocal_set && Internal storage for local path, just storage. - *p: dlastjanitorrundate - *p: lcr_local && Use local storage place. - *p: lcr_local_default && Local storage will be created on standard place by default. - *p: ldesktop && The setting for Desktop. - *p: lmovenewcodetotopleft - *p: lrestoreprevioussearchresultsonstartup - *p: lreturn - *p: lsavesearchresults - *p: lwarnwholeword - *p: ndockable - *p: njanitorreplacehistorydays - *p: njanitorsearchhistorydays - *p: nreplacerisk - *p: ntabstospaces - *p: ntreeviewfontsize - *p: ooptions && A reference to the oSearchOptions object on GF main form. - * - - AlwaysOnTop = .T. - BindControls = .F. - BorderStyle = 3 - Caption = "GoFish Options" - ccr_storelocal_option = && Internal storage for new local path, just to display and set. - cuisettingsfile = GF_Options_Form_Settings.xml - dlastjanitorrundate = / / - DoCreate = .T. - Height = 600 - KeyPreview = .T. - Left = -1 - lrestoreprevioussearchresultsonstartup = .F. - lreturn = .F. - lsavesearchresults = .T. - lwarnwholeword = .F. - MinHeight = 600 - MinWidth = 650 - Name = "GF_Options" - ndockable = 0 - njanitorreplacehistorydays = 0 - njanitorsearchhistorydays = 0 - nreplacerisk = 0 - ntabstospaces = 0 - ntreeviewfontsize = 8 - oform = .NULL. - ooptions = .NULL. && A reference to the oSearchOptions object on GF main form. - Top = 0 - Visible = .T. - Width = 652 - WindowType = 1 - _memberdata = - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ADD OBJECT 'cmdCancel' AS commandbutton WITH ; - Anchor = 12, ; - Caption = "Cancel", ; - Height = 21, ; - Left = 573, ; - Name = "cmdCancel", ; - Top = 576, ; - Width = 70 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'cmdOK' AS commandbutton WITH ; - Anchor = 12, ; - Caption = "OK", ; - Height = 21, ; - Left = 496, ; - Name = "cmdOK", ; - Top = 576, ; - Width = 70 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'Gf_versionlabel1' AS gf_versionlabel WITH ; - Left = 415, ; - Name = "Gf_versionlabel1", ; - Top = 1 - *< END OBJECT: ClassLib="..\lib\gofishui.vcx" BaseClass="label" /> - - ADD OBJECT 'pfSettings' AS pageframe WITH ; - ActivePage = 1, ; - Anchor = 15, ; - ErasePage = .T., ; - Height = 555, ; - Left = 10, ; - Name = "pfSettings", ; - PageCount = 10, ; - TabStretch = 0, ; - TabStyle = 1, ; - Top = 18, ; - Width = 638, ; - Page1.Caption = "Column Selection", ; - Page1.Name = "pageColumns", ; - Page1.PageOrder = 2, ; - Page2.Caption = "Preferences", ; - Page2.Name = "pagePreferences", ; - Page2.PageOrder = 1, ; - Page3.Caption = "Advanced", ; - Page3.Name = "pageAdvanced", ; - Page3.PageOrder = 3, ; - Page4.Caption = "Thor", ; - Page4.Name = "pageThor", ; - Page4.PageOrder = 6, ; - Page5.Caption = "Replace", ; - Page5.Name = "pageReplace", ; - Page5.PageOrder = 4, ; - Page6.Caption = "Backups", ; - Page6.Name = "pageBackups", ; - Page6.PageOrder = 5, ; - Page7.Caption = "Update", ; - Page7.Name = "Page1", ; - Page7.PageOrder = 7, ; - Page8.Caption = "Janitor", ; - Page8.Name = "Page2", ; - Page8.PageOrder = 8, ; - Page9.Caption = "Colours", ; - Page9.Name = "pageColours", ; - Page9.PageOrder = 9, ; - Page10.Caption = "CodeReferences", ; - Page10.Enabled = .F., ; - Page10.Name = "pageReferences", ; - Page10.PageOrder = 10 - *< END OBJECT: BaseClass="pageframe" /> - - ADD OBJECT 'pfSettings.Page1.Image1' AS image WITH ; - Height = 230, ; - Left = 207, ; - Name = "Image1", ; - Picture = ..\images\checkforupdates.jpg, ; - Top = 120, ; - Width = 232 - *< END OBJECT: BaseClass="image" /> - - ADD OBJECT 'pfSettings.Page1.Label1' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "If you are running the Thor Tool Management Framework, you can download and install the latest development builds of GoFish at any time, right from the Thor menu. (Requires Thor 1.10 or higher).", ; - Height = 57, ; - Left = 17, ; - Name = "Label1", ; - Top = 28, ; - Width = 591, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page1.Label2' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "The latest development build may be a pre-release version, allowing you to use and test the latest version.", ; - Height = 57, ; - Left = 17, ; - Name = "Label2", ; - Top = 76, ; - Width = 591, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page1.Label3' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Learn more about Thor", ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 17, ; - Left = 17, ; - MousePointer = 15, ; - Name = "Label3", ; - Top = 93, ; - Width = 128 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page1.Label4' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Note: Public releases of GoFish are available at the VFPx site. However, the release cycle is generally slower on VFPx. If you want the absolute latest build, use the Thor update mechanism shown above.", ; - Height = 56, ; - Left = 20, ; - Name = "Label4", ; - Top = 385, ; - Width = 555, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page1.Label5' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Visit the GoFish project on VFPx", ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 17, ; - Left = 20, ; - MousePointer = 15, ; - Name = "Label5", ; - Top = 422, ; - Width = 175 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page2.Label1' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "# of days of Replace history to keep", ; - Height = 17, ; - Left = 105, ; - Name = "Label1", ; - TabIndex = 19, ; - Top = 97, ; - Width = 195 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page2.Label2' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "# of days of Search history to keep", ; - Height = 17, ; - Left = 105, ; - Name = "Label2", ; - TabIndex = 19, ; - Top = 55, ; - Width = 188 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page2.Label3' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "The janitor shows up once a day to clean up leftover files.", ; - FontSize = 10, ; - Height = 18, ; - Left = 28, ; - Name = "Label3", ; - TabIndex = 19, ; - Top = 20, ; - Width = 332 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.Page2.Spinner1' AS spinner WITH ; - ControlSource = "Thisform.nJanitorSearchHistoryDays", ; - Height = 27, ; - KeyboardHighValue = 999999, ; - KeyboardLowValue = 0, ; - Left = 27, ; - Name = "Spinner1", ; - SpinnerHighValue = 999999.00, ; - SpinnerLowValue = 0.00, ; - TabIndex = 10, ; - Top = 50, ; - Width = 69 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.Page2.Spinner2' AS spinner WITH ; - ControlSource = "Thisform.nJanitorReplaceHistoryDays", ; - Height = 27, ; - KeyboardHighValue = 999999, ; - KeyboardLowValue = 0, ; - Left = 27, ; - Name = "Spinner2", ; - SpinnerHighValue = 999999.00, ; - SpinnerLowValue = 0.00, ; - TabIndex = 10, ; - Top = 92, ; - Width = 69 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pageAdvanced.chk_CRLocal' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = ("Local settings / storage"+0h0D0A+"All settings not in this box are local to resource file rather then in %App%, if activated."), ; - ControlSource = "Thisform.lCR_Local", ; - Height = 30, ; - Left = 18, ; - Name = "chk_CRLocal", ; - TabIndex = 7, ; - Top = 307, ; - Width = 466, ; - WordWrap = .T. - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pageAdvanced.chk_CRLocal_Default' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = [Use Set("Resource",1)+'\GoFish_" as default for new local folder], ; - ControlSource = "Thisform.lCR_Local_Default", ; - Height = 17, ; - Left = 18, ; - Name = "chk_CRLocal_Default", ; - TabIndex = 7, ; - Top = 291, ; - Width = 466, ; - WordWrap = .T. - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pageAdvanced.chk_CRMode' AS checkbox WITH ; - Alignment = 0, ; - BackStyle = 0, ; - Caption = "Allow CodeReferences-like work.", ; - ControlSource = "Thisform.lCR_Allow", ; - Left = 19, ; - Name = "chk_CRMode", ; - TabIndex = 7, ; - Top = 271, ; - Width = 466, ; - WordWrap = .T. - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pageAdvanced.cmdDeleteConfigFiles' AS commandbutton WITH ; - Caption = "Delete config files!", ; - Height = 19, ; - Left = 23, ; - Name = "cmdDeleteConfigFiles", ; - TabIndex = 12, ; - Top = 466, ; - Width = 114 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageAdvanced.cmdOpenFolder' AS commandbutton WITH ; - Caption = "Open Folder", ; - Height = 21, ; - Left = 25, ; - Name = "cmdOpenFolder", ; - TabIndex = 10, ; - Top = 435, ; - Width = 80 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageAdvanced.cmdSetFolder' AS commandbutton WITH ; - Caption = "Set Folder", ; - Height = 21, ; - Left = 20, ; - Name = "cmdSetFolder", ; - TabIndex = 11, ; - ToolTipText = "Pick a storage for lacal settings. Available after restart.", ; - Top = 342, ; - Visible = .F., ; - Width = 80 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label1' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Configuration settings for GoFish are maintained in these XML files. See GoFish Help for more information.", ; - Height = 32, ; - Left = 255, ; - Name = "Label1", ; - TabIndex = 2, ; - Top = 20, ; - Width = 349, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label10' AS label WITH ; - Anchor = 10, ; - AutoSize = .T., ; - Caption = " Global Settings: ", ; - Height = 17, ; - Left = 45, ; - Name = "Label10", ; - TabIndex = 8, ; - Top = 251, ; - Width = 107 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label2' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Axtive path to XML files:", ; - Height = 25, ; - Left = 12, ; - Name = "Label2", ; - TabIndex = 8, ; - Top = 394, ; - Width = 318, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label3' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Path to XML files will be shown here. See Init() method of this form", ; - Height = 32, ; - Left = 23, ; - Name = "Label3", ; - TabIndex = 9, ; - Top = 415, ; - Width = 596, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label4' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Double-Click to view or edit any file.", ; - Height = 32, ; - Left = 255, ; - Name = "Label4", ; - TabIndex = 5, ; - Top = 137, ; - Width = 349, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label5' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Close GoFish and delete any file to restore that portion of GoFish to the default state. A new XML file will be built automatically.", ; - Height = 32, ; - Left = 255, ; - Name = "Label5", ; - TabIndex = 6, ; - Top = 176, ; - Width = 349, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label6' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "The files are maintained automatically by GoFish to maintain settings between sessions.", ; - Height = 32, ; - Left = 255, ; - Name = "Label6", ; - TabIndex = 3, ; - Top = 59, ; - Width = 349, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label7' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "If you are curious you may view these files, or if you have special needs you may edit them.", ; - Height = 32, ; - Left = 255, ; - Name = "Label7", ; - TabIndex = 4, ; - Top = 98, ; - Width = 349, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label8' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "You can reset GoFish by deleting its config files. New config files will be built upon exit.", ; - ForeColor = 255,0,0, ; - Height = 32, ; - Left = 142, ; - Name = "Label8", ; - TabIndex = 13, ; - Top = 469, ; - Width = 596, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Label9' AS label WITH ; - Alignment = 2, ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "********** Available after Restart of GoFish! Check or additional options after restart **********", ; - FontBold = .T., ; - ForeColor = 255,0,0, ; - Left = 12, ; - Name = "Label9", ; - TabIndex = 13, ; - Top = 368, ; - Visible = .F., ; - Width = 596, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageAdvanced.List1' AS listbox WITH ; - Height = 227, ; - Left = 12, ; - Name = "List1", ; - RowSourceType = 7, ; - TabIndex = 1, ; - Top = 17, ; - Width = 236 - *< END OBJECT: BaseClass="listbox" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Shape1' AS shape WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Height = 131, ; - Left = 11, ; - Name = "Shape1", ; - Top = 258, ; - Width = 611 - *< END OBJECT: BaseClass="shape" /> - - ADD OBJECT 'pfSettings.pageAdvanced.Text1' AS textbox WITH ; - BackStyle = 0, ; - BorderStyle = 0, ; - ControlSource = "Thisform.cCR_StoreLocal_Option", ; - Left = 111, ; - Name = "Text1", ; - ReadOnly = .T., ; - Top = 342, ; - Width = 394 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'pfSettings.pageBackups.Check1' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Backup source files when performing Replace operations.", ; - ControlSource = "Thisform.oSearchOptions.lBackup", ; - Height = 17, ; - Left = 18, ; - Name = "Check1", ; - Top = 119, ; - Width = 336 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pageBackups.Command2' AS commandbutton WITH ; - Caption = "Open Folder", ; - Height = 21, ; - Left = 132, ; - Name = "Command2", ; - Top = 220, ; - Width = 80 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageBackups.Label1' AS label WITH ; - BackStyle = 0, ; - Caption = "GoFish can create backups of files on which you perform a Replace operation. The backup files are stored in the folder path Home(7) \ GoFishBackps \ \ where is the Replace History Id that is assigned to each replace operation.", ; - Height = 45, ; - Left = 18, ; - Name = "Label1", ; - Top = 18, ; - Width = 600, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageBackups.Label2' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "See the GoFish Backup Help page for more info.", ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 17, ; - Left = 51, ; - MousePointer = 15, ; - Name = "Label2", ; - Top = 152, ; - Width = 266 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageBackups.Label3' AS label WITH ; - BackStyle = 0, ; - Caption = "You can map the folder reference to the Replace History log to view complete details of each replace operation.", ; - Height = 45, ; - Left = 18, ; - Name = "Label3", ; - Top = 73, ; - Width = 600, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageBackups.Label4' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Path to Backup files:", ; - Height = 25, ; - Left = 15, ; - Name = "Label4", ; - Top = 224, ; - Width = 318, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageBackups.Label5' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Path to backup files will be shown here. See Init() method of this label.", ; - Height = 32, ; - Left = 26, ; - Name = "Label5", ; - Top = 248, ; - Width = 596, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Command1' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command1", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 2, ; - ToolTipText = "Pick colour", ; - Top = 30, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command10' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command10", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 29, ; - ToolTipText = "Pick colour", ; - Top = 300, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command11' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command11", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 32, ; - ToolTipText = "Pick colour", ; - Top = 330, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command12' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command12", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 35, ; - ToolTipText = "Pick colour", ; - Top = 360, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command13' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command13", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 38, ; - ToolTipText = "Pick colour", ; - Top = 390, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command2' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command2", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 5, ; - ToolTipText = "Pick colour", ; - Top = 60, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command3' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command3", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 8, ; - ToolTipText = "Pick colour", ; - Top = 90, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command4' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command4", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 11, ; - ToolTipText = "Pick colour", ; - Top = 120, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command5' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command5", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 14, ; - ToolTipText = "Pick colour", ; - Top = 150, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command6' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command6", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 17, ; - ToolTipText = "Pick colour", ; - Top = 180, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command7' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command7", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 20, ; - ToolTipText = "Pick colour", ; - Top = 210, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command8' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command8", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 23, ; - ToolTipText = "Pick colour", ; - Top = 240, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Command9' AS commandbutton WITH ; - Caption = ". . .", ; - FontBold = .T., ; - Height = 25, ; - Left = 250, ; - Name = "Command9", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - SpecialEffect = 0, ; - TabIndex = 26, ; - ToolTipText = "Pick colour", ; - Top = 270, ; - Width = 25 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColours.Container1' AS container WITH ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container1", ; - Picture = ..\images\, ; - TabIndex = 3, ; - Top = 30, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container1.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container10' AS container WITH ; - BackColor = 255,255,255, ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container10", ; - Picture = ..\images\, ; - TabIndex = 30, ; - Top = 300, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container10.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container11' AS container WITH ; - BackColor = 255,255,255, ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container11", ; - Picture = ..\images\, ; - TabIndex = 33, ; - Top = 330, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container11.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container12' AS container WITH ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container12", ; - Picture = ..\images\, ; - TabIndex = 36, ; - Top = 360, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container12.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container13' AS container WITH ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container13", ; - Picture = ..\images\, ; - TabIndex = 39, ; - Top = 390, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container13.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container2' AS container WITH ; - BackColor = 255,255,255, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container2", ; - Picture = ..\images\, ; - TabIndex = 6, ; - Top = 60, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container2.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container3' AS container WITH ; - BackColor = 255,255,255, ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container3", ; - Picture = ..\images\, ; - TabIndex = 9, ; - Top = 90, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container3.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container4' AS container WITH ; - BackColor = 255,255,255, ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container4", ; - Picture = ..\images\, ; - TabIndex = 12, ; - Top = 120, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container4.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container5' AS container WITH ; - BackColor = 255,255,255, ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container5", ; - Picture = ..\images\, ; - TabIndex = 15, ; - Top = 150, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container5.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container6' AS container WITH ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container6", ; - Picture = ..\images\, ; - TabIndex = 18, ; - Top = 180, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container6.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container7' AS container WITH ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container7", ; - Picture = ..\images\, ; - TabIndex = 21, ; - Top = 210, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container7.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container8' AS container WITH ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container8", ; - Picture = ..\images\, ; - TabIndex = 24, ; - Top = 240, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container8.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Container9' AS container WITH ; - BackStyle = 1, ; - BorderWidth = 2, ; - Height = 27, ; - Left = 306, ; - Name = "Container9", ; - Picture = ..\images\, ; - TabIndex = 27, ; - Top = 270, ; - Width = 129 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColours.Container9.lblExample1' AS label WITH ; - BackStyle = 0, ; - Caption = "Example", ; - Height = 17, ; - Left = 8, ; - Name = "lblExample1", ; - TabIndex = 1, ; - ToolTipText = "Highlighting several frames.", ; - Top = 6, ; - Width = 120 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label1' AS label WITH ; - BackStyle = 0, ; - Caption = "Frame colour", ; - Height = 17, ; - Left = 21, ; - Name = "Label1", ; - TabIndex = 1, ; - Top = 30, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label10' AS label WITH ; - BackStyle = 0, ; - Caption = 'Tree fore colour "Search"', ; - Height = 17, ; - Left = 21, ; - Name = "Label10", ; - TabIndex = 28, ; - Top = 303, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label11' AS label WITH ; - BackStyle = 0, ; - Caption = 'Tree fore colour "Update"', ; - Height = 17, ; - Left = 21, ; - Name = "Label11", ; - TabIndex = 31, ; - Top = 330, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label12' AS label WITH ; - BackStyle = 0, ; - Caption = 'CSS back colour "tr even"', ; - Height = 17, ; - Left = 21, ; - Name = "Label12", ; - TabIndex = 34, ; - Top = 360, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label13' AS label WITH ; - BackStyle = 0, ; - Caption = 'CSS back colour "tr odd"', ; - Height = 17, ; - Left = 21, ; - Name = "Label13", ; - TabIndex = 37, ; - Top = 390, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label2' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid fore colour "SCX"', ; - Height = 17, ; - Left = 21, ; - Name = "Label2", ; - TabIndex = 4, ; - Top = 60, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label3' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid fore colour "VCX"', ; - Height = 17, ; - Left = 21, ; - Name = "Label3", ; - TabIndex = 7, ; - Top = 90, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label4' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid fore colour "PRG"', ; - Height = 17, ; - Left = 21, ; - Name = "Label4", ; - TabIndex = 10, ; - Top = 120, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label5' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid fore colour "other"', ; - Height = 17, ; - Left = 21, ; - Name = "Label5", ; - TabIndex = 13, ; - Top = 150, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label6' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid back colour "Replaced"', ; - Height = 17, ; - Left = 21, ; - Name = "Label6", ; - TabIndex = 16, ; - Top = 181, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label7' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid back colour "Exceed replace risk"', ; - Height = 17, ; - Left = 21, ; - Name = "Label7", ; - TabIndex = 19, ; - Top = 210, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label8' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid back colour "Replace risk 2"', ; - Height = 17, ; - Left = 21, ; - Name = "Label8", ; - TabIndex = 22, ; - Top = 240, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColours.Label9' AS label WITH ; - BackStyle = 0, ; - Caption = 'Grid back colour "Replace risk 3"', ; - Height = 17, ; - Left = 21, ; - Name = "Label9", ; - TabIndex = 25, ; - Top = 270, ; - Width = 220 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageColumns.cmdClearAll' AS commandbutton WITH ; - Caption = "Clear All", ; - FontSize = 8, ; - Height = 26, ; - Left = 21, ; - Name = "cmdClearAll", ; - Top = 98, ; - Width = 58 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColumns.cmdSelectAll' AS commandbutton WITH ; - Caption = "Select All", ; - FontSize = 8, ; - Height = 26, ; - Left = 21, ; - Name = "cmdSelectAll", ; - Top = 56, ; - Width = 58 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageColumns.containerColumnCheckBoxes' AS container WITH ; - Anchor = 5, ; - Height = 431, ; - Left = 14, ; - Name = "containerColumnCheckBoxes", ; - Top = 46, ; - Width = 526 - *< END OBJECT: BaseClass="container" /> - - ADD OBJECT 'pfSettings.pageColumns.Label1' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "Choose which columns you want to appear in the search results grid.", ; - FontBold = .T., ; - Height = 28, ; - Left = 15, ; - Name = "Label1", ; - Top = 14, ; - Width = 470, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.cboDockable' AS combobox WITH ; - BoundColumn = 2, ; - BoundTo = .T., ; - ColumnCount = 2, ; - ColumnWidths = "300,0", ; - ControlSource = "Thisform.nDockable", ; - Height = 22, ; - Left = 79, ; - Name = "cboDockable", ; - RowSource = "0 - Does not support docking,0,1 - Supports docking and is dockable,1,2 - Supports docking and is not dockable,2", ; - RowSourceType = 1, ; - Style = 2, ; - TabIndex = 2, ; - Top = 30, ; - Width = 305 - *< END OBJECT: BaseClass="combobox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check1' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Display dialog when files cannot be found or opened during a search or replace", ; - ControlSource = "Thisform.oSearchOptions.lShowErrorMessages", ; - Height = 17, ; - Left = 27, ; - Name = "Check1", ; - TabIndex = 5, ; - Top = 87, ; - Width = 452 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check2' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Display each filename as it is processed (slows down search)", ; - ControlSource = "Thisform.oSearchOptions.lShowWaitMessages", ; - Height = 17, ; - Left = 27, ; - Name = "Check2", ; - TabIndex = 7, ; - Top = 133, ; - Width = 359 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check3' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Display dialog box if no matches are found during a search.", ; - ControlSource = "Thisform.oSearchOptions.lShowNoMatchesMessage", ; - Height = 17, ; - Left = 27, ; - Name = "Check3", ; - TabIndex = 6, ; - Top = 110, ; - Width = 342 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check4' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Show Advanced Search form on startup", ; - ControlSource = "Thisform.oSearchOptions.lShowAdvancedFormOnStartup", ; - Height = 17, ; - Left = 28, ; - Name = "Check4", ; - TabIndex = 9, ; - Top = 193, ; - Width = 233 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check5' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Clear 'Apply Filter' checkbox with each new search", ; - ControlSource = "Thisform.lClearApplyFilter", ; - Height = 17, ; - Left = 28, ; - Name = "Check5", ; - TabIndex = 10, ; - Top = 216, ; - Width = 290 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check6' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Always confirm use of Whole Word search?", ; - ControlSource = "Thisform.lWarnWholeWord", ; - Height = 17, ; - Left = 27, ; - Name = "Check6", ; - TabIndex = 8, ; - Top = 157, ; - Width = 255 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check7' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Restore previous search results on startup", ; - ControlSource = "Thisform.lRestorePreviousSearchResultsOnStartup", ; - Height = 17, ; - Left = 28, ; - Name = "Check7", ; - TabIndex = 13, ; - Top = 263, ; - Width = 252 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check8' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Save each search results to search history folder.", ; - ControlSource = "Thisform.lSaveSearchResults", ; - Height = 17, ; - Left = 28, ; - Name = "Check8", ; - TabIndex = 11, ; - Top = 239, ; - Width = 287 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.Check9' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Open code windows at top left corner", ; - ControlSource = "Thisform.lMoveNewCodeToTopLeft", ; - Height = 17, ; - Left = 28, ; - Name = "Check9", ; - TabIndex = 14, ; - Top = 287, ; - Width = 220 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.chkDesktop' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Desktop", ; - ControlSource = "Thisform.lDesktop", ; - Height = 17, ; - Left = 401, ; - Name = "chkDesktop", ; - TabIndex = 3, ; - Top = 33, ; - Width = 64 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pagePreferences.cmdZoomDefault' AS commandbutton WITH ; - Caption = "Default 1.0", ; - FontSize = 8, ; - Height = 22, ; - Left = 308, ; - Name = "cmdZoomDefault", ; - TabIndex = 21, ; - Top = 354, ; - Width = 71 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pagePreferences.Command1' AS commandbutton WITH ; - Caption = " Open Folder", ; - Height = 25, ; - Left = 337, ; - Name = "Command1", ; - Picture = ..\..\2015-10-25 beta jrn\images\browsefolder.bmp, ; - PicturePosition = 1, ; - SpecialEffect = 0, ; - TabIndex = 12, ; - ToolTipText = "Open Explorer window to this path.", ; - Top = 235, ; - Width = 118 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label1' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Dockable", ; - Height = 17, ; - Left = 21, ; - Name = "Label1", ; - TabIndex = 1, ; - Top = 33, ; - Width = 54 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label2' AS label WITH ; - BackStyle = 0, ; - Caption = "Grid font size", ; - Height = 18, ; - Left = 88, ; - Name = "Label2", ; - TabIndex = 17, ; - Top = 326, ; - Width = 103 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label3' AS label WITH ; - BackStyle = 0, ; - Caption = "DisplayCount for Search/Scope history dropdowns", ; - Height = 18, ; - Left = 88, ; - Name = "Label3", ; - TabIndex = 25, ; - Top = 388, ; - Width = 311 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label4' AS label WITH ; - AutoSize = .T., ; - BackColor = 255,255,255, ; - BackStyle = 1, ; - Caption = " Messages / Dialogs", ; - Height = 17, ; - Left = 33, ; - Name = "Label4", ; - TabIndex = 4, ; - Top = 65, ; - Width = 115 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label5' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Maximum number of results to find", ; - Height = 17, ; - Left = 84, ; - Name = "Label5", ; - TabIndex = 29, ; - ToolTipText = "Search will automatically stop once this number of mached lines it reached.", ; - Top = 458, ; - Width = 191 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label6' AS label WITH ; - BackStyle = 0, ; - Caption = "Number of items in each MRU list for Search/Scope dropdowns", ; - Height = 18, ; - Left = 88, ; - Name = "Label6", ; - TabIndex = 27, ; - Top = 419, ; - Width = 396 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label7' AS label WITH ; - BackStyle = 0, ; - Caption = "Code Browser zoom factor (0.7 - 2.00)", ; - Height = 18, ; - Left = 88, ; - Name = "Label7", ; - TabIndex = 22, ; - Top = 357, ; - Width = 217 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label8' AS label WITH ; - BackStyle = 0, ; - Caption = "TreeView font size", ; - Height = 18, ; - Left = 290, ; - Name = "Label8", ; - TabIndex = 18, ; - Top = 327, ; - Width = 103 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Label9' AS label WITH ; - BackStyle = 0, ; - Caption = "Tabs to spaces", ; - Height = 18, ; - Left = 482, ; - Name = "Label9", ; - TabIndex = 23, ; - Top = 358, ; - Width = 103 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pagePreferences.Shape1' AS shape WITH ; - BackStyle = 0, ; - Curvature = 3, ; - Height = 111, ; - Left = 17, ; - Name = "Shape1", ; - Top = 73, ; - Width = 534 - *< END OBJECT: BaseClass="shape" /> - - ADD OBJECT 'pfSettings.pagePreferences.Spinner1' AS spinner WITH ; - ControlSource = "Thisform.nGridFontSize", ; - Height = 27, ; - KeyboardHighValue = 24, ; - KeyboardLowValue = 6, ; - Left = 23, ; - Name = "Spinner1", ; - SpinnerHighValue = 24.00, ; - SpinnerLowValue = 6.00, ; - TabIndex = 15, ; - Top = 321, ; - Width = 59 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pagePreferences.Spinner2' AS spinner WITH ; - ControlSource = "Thisform.nDropDownDisplayCount", ; - Height = 27, ; - KeyboardHighValue = 100, ; - KeyboardLowValue = 5, ; - Left = 23, ; - Name = "Spinner2", ; - SpinnerHighValue = 100.00, ; - SpinnerLowValue = 5.00, ; - TabIndex = 24, ; - Top = 383, ; - Width = 59 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pagePreferences.Spinner3' AS spinner WITH ; - ControlSource = "Thisform.nDropDownMaxMRU", ; - Height = 27, ; - KeyboardHighValue = 100, ; - KeyboardLowValue = 1, ; - Left = 23, ; - Name = "Spinner3", ; - SpinnerHighValue = 100.00, ; - SpinnerLowValue = 1.00, ; - TabIndex = 26, ; - Top = 414, ; - Width = 59 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pagePreferences.Spinner4' AS spinner WITH ; - ControlSource = "Thisform.nBrowserZoom", ; - Height = 27, ; - Increment = 0.10, ; - InputMask = "9.99", ; - KeyboardLowValue = 0, ; - Left = 23, ; - Name = "Spinner4", ; - SpinnerHighValue = 2.00, ; - SpinnerLowValue = 0.70, ; - TabIndex = 19, ; - Top = 352, ; - Value = 0.1, ; - Width = 59 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pagePreferences.Spinner5' AS spinner WITH ; - ControlSource = "Thisform.nTreeViewFontSize", ; - Height = 27, ; - KeyboardHighValue = 24, ; - KeyboardLowValue = 6, ; - Left = 225, ; - Name = "Spinner5", ; - SpinnerHighValue = 24.00, ; - SpinnerLowValue = 6.00, ; - TabIndex = 16, ; - Top = 322, ; - Width = 59 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pagePreferences.Spinner6' AS spinner WITH ; - ControlSource = "Thisform.nTabsToSpaces", ; - Height = 27, ; - KeyboardHighValue = 10, ; - KeyboardLowValue = 0, ; - Left = 417, ; - Name = "Spinner6", ; - SpinnerHighValue = 10.00, ; - SpinnerLowValue = 0.00, ; - TabIndex = 20, ; - Top = 353, ; - Width = 59 - *< END OBJECT: BaseClass="spinner" /> - - ADD OBJECT 'pfSettings.pagePreferences.Text1' AS textbox WITH ; - ControlSource = "Thisform.oSearchOptions.nMaxResults", ; - Height = 25, ; - InputMask = "9999999", ; - Left = 22, ; - Name = "Text1", ; - TabIndex = 28, ; - Top = 454, ; - Width = 59 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'pfSettings.pageReferences.Label9' AS label WITH ; - Alignment = 2, ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "******************** Not active ********************", ; - FontBold = .T., ; - ForeColor = 255,0,0, ; - Left = 15, ; - Name = "Label9", ; - TabIndex = 13, ; - Top = 224, ; - Visible = .F., ; - Width = 596, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageReplace.Check1' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Enable Replace Mode", ; - ControlSource = "Thisform.oSearchOptions.lEnableReplaceMode", ; - Height = 17, ; - Left = 10, ; - Name = "Check1", ; - Top = 5, ; - Width = 139 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pageReplace.Check2' AS checkbox WITH ; - Alignment = 0, ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Do not show replace warning dialog box with each replace", ; - ControlSource = "Thisform.oSearchOptions.lDoNotShowReplaceWarning", ; - Height = 17, ; - Left = 7, ; - Name = "Check2", ; - Top = 421, ; - Width = 336 - *< END OBJECT: BaseClass="checkbox" /> - - ADD OBJECT 'pfSettings.pageReplace.cmdOpenFolder' AS commandbutton WITH ; - Anchor = 8, ; - Caption = "Open Folder", ; - Height = 21, ; - Left = 550, ; - Name = "cmdOpenFolder", ; - Top = 421, ; - Width = 80 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'pfSettings.pageReplace.Image1' AS image WITH ; - Height = 296, ; - Left = 4, ; - Name = "Image1", ; - Picture = ..\images\replacelevels.bmp, ; - Stretch = 0, ; - Top = 124, ; - Width = 619 - *< END OBJECT: BaseClass="image" /> - - ADD OBJECT 'pfSettings.pageReplace.Label1' AS label WITH ; - BackStyle = 0, ; - Caption = "Warning: There are many risks associated with tools that replace code on your source files. Please review the GoFish Code Replacement Guide to be sure you understand how to use GoFish to replace code, and what the risks are.", ; - ForeColor = 255,0,0, ; - Height = 45, ; - Left = 8, ; - Name = "Label1", ; - Top = 26, ; - Width = 582, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageReplace.Label2' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "See the GoFish Replace Help page for more info.", ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 17, ; - Left = 126, ; - MousePointer = 15, ; - Name = "Label2", ; - Top = 56, ; - Width = 271 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageReplace.Label3' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Select the maximum Replace Risk level to enable in the results grid:", ; - FontBold = .T., ; - Height = 17, ; - Left = 10, ; - Name = "Label3", ; - Top = 79, ; - Width = 385 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageReplace.Label4' AS label WITH ; - AutoSize = .F., ; - BackStyle = 0, ; - Caption = "Replace Detail Table:", ; - Height = 19, ; - Left = 6, ; - Name = "Label4", ; - Top = 446, ; - Width = 121, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageReplace.Label5' AS label WITH ; - AutoSize = .F., ; - BackStyle = 0, ; - Caption = "Replace History Table:", ; - Height = 19, ; - Left = 6, ; - Name = "Label5", ; - Top = 473, ; - Width = 126, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageReplace.optiongroupReplaceSafetyLevel' AS optiongroup WITH ; - ButtonCount = 3, ; - ControlSource = "Thisform.nReplaceRisk", ; - Height = 25, ; - Left = 121, ; - Name = "optiongroupReplaceSafetyLevel", ; - Top = 100, ; - Value = 0, ; - Width = 355, ; - Option1.AutoSize = .T., ; - Option1.BackStyle = 0, ; - Option1.Caption = "1= Pretty Safe", ; - Option1.Height = 17, ; - Option1.Left = 8, ; - Option1.Name = "Option2", ; - Option1.Top = 4, ; - Option1.Width = 93, ; - Option2.AutoSize = .T., ; - Option2.BackStyle = 0, ; - Option2.Caption = "2 = Kinda Safe", ; - Option2.Height = 17, ; - Option2.Left = 121, ; - Option2.Name = "Option3", ; - Option2.Top = 4, ; - Option2.Width = 98, ; - Option3.AutoSize = .T., ; - Option3.BackStyle = 0, ; - Option3.Caption = "3 = Dangerous", ; - Option3.Height = 17, ; - Option3.Left = 246, ; - Option3.Name = "Option4", ; - Option3.Top = 4, ; - Option3.Width = 100 - *< END OBJECT: BaseClass="optiongroup" /> - - ADD OBJECT 'pfSettings.pageReplace.Text1' AS textbox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.oSearchEngine.cReplaceDetailTable", ; - Enabled = .F., ; - Height = 25, ; - Left = 132, ; - Name = "Text1", ; - ReadOnly = .T., ; - TabIndex = 14, ; - Top = 443, ; - Width = 498 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'pfSettings.pageReplace.Text2' AS textbox WITH ; - Anchor = 10, ; - ControlSource = "Thisform.oSearchEngine.cReplaceHistoryTable", ; - Enabled = .F., ; - Height = 25, ; - Left = 132, ; - Name = "Text2", ; - ReadOnly = .T., ; - TabIndex = 14, ; - Top = 470, ; - Width = 498 - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'pfSettings.pageThor.Label1' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "GoFish will be automatically registered with Thor if it is present. This will provide a way to assign a hotkey to launch Gofish, as well as expose classes for advanced uses of GoFish.", ; - Height = 32, ; - Left = 38, ; - Name = "Label1", ; - Top = 25, ; - Width = 555, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageThor.Label2' AS label WITH ; - AutoSize = .T., ; - BackStyle = 0, ; - Caption = "Learn more about Thor", ; - FontUnderline = .T., ; - ForeColor = 0,0,255, ; - Height = 17, ; - Left = 412, ; - MousePointer = 15, ; - Name = "Label2", ; - Top = 68, ; - Width = 128 - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageThor.Label4' AS label WITH ; - Anchor = 10, ; - BackStyle = 0, ; - Caption = "You can learn more about Thor at the VFPX.CodePlex.com website.", ; - Height = 32, ; - Left = 38, ; - Name = "Label4", ; - Top = 68, ; - Width = 398, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - ADD OBJECT 'pfSettings.pageThor.lblNoTHor' AS label WITH ; - Alignment = 2, ; - Anchor = 256, ; - BackStyle = 0, ; - Caption = "Thor is not presently running on your system.", ; - ForeColor = 255,0,0, ; - Height = 17, ; - Left = 38, ; - Name = "lblNoTHor", ; - Top = 105, ; - Visible = .F., ; - Width = 245, ; - WordWrap = .T. - *< END OBJECT: BaseClass="label" /> - - PROCEDURE Activate - Thisform.Refresh() - ENDPROC - - PROCEDURE applycolumnsettings - Local lcControlSourceField, loColumn, loControl - - *-- Set .Visible property on the Results form grid columns - For each loControl in Thisform.pfSettings.pageColumns.containerColumnCheckBoxes.Controls - lcControlSourceField = loControl.tag - loColumn = Thisform.oForm.oGrid.FindColumn(lcControlSourceField) - loColumn.Visible = Iif(loControl.value = 1, .t., .f.) - EndFor - ENDPROC - - PROCEDURE buildcolumncheckboxes - Local laFieldNames[1], lcName, llAlreadyAdded, lnContainerHeight, lnCount, lnRow, lnTop - Local lnVerticalSpacing, lnX, lnY, loCheckBox, loColumn, loContainerCheckBoxes, loPageframe - - lnY = 12 - lnX = 90 - - lnVerticalSpacing = 18 - llAlreadyAdded = .F. - - loPageframe = Thisform.pfSettings - loContainerCheckBoxes = m.loPageframe.pageColumns.containerColumnCheckBoxes - lnContainerHeight = m.loContainerCheckBoxes.Height - - Dimension m.laFieldNames[This.oForm.oGrid.ColumnCount, 4] - - For Each m.loColumn In This.oForm.oGrid.Columns FoxObject - lnRow = m.loColumn.ColumnOrder - laFieldNames[lnRow, 1] = iif(m.loColumn.Visible, 'A' + Str(lnRow, 4, 0), 'B' + Upper(m.loColumn.Header1.Caption)) - laFieldNames[lnRow, 2] = m.loColumn.Visible - laFieldNames[lnRow, 3] = m.loColumn.Header1.Caption - laFieldNames[lnRow, 4] = m.loColumn.Header1.Tag - Endfor - - Asort(m.laFieldNames, 1, -1) - - lnTop = m.lnY - - For lnCount = 1 To Alen(m.laFieldNames, 1) - - lcName = 'CheckBox_' + Alltrim(Str(m.lnCount)) - Try - m.loContainerCheckBoxes.RemoveObject(m.lcName) - Catch - Endtry - m.loContainerCheckBoxes.AddObject(m.lcName, 'CheckBox') - loCheckBox = m.loContainerCheckBoxes.&lcName - - With m.loCheckBox - .Caption = m.laFieldNames[m.lnCount, 3] - .Tag = m.laFieldNames[m.lnCount, 4] && Holds the control source!!! - .Value = Iif(m.laFieldNames[m.lnCount, 2] = .T., 1, 0) - .Visible = .T. - .AutoSize = .T. - - If m.lnTop + m.lnVerticalSpacing > m.lnContainerHeight - 12 - lnTop = m.lnY - lnX = m.lnX + 200 - Endif - - .Left = m.lnX - .Top = m.lnTop - .TabIndex = m.lnCount - lnTop = m.lnTop + m.lnVerticalSpacing - Endwith - - Endfor - - - ENDPROC - - PROCEDURE Destroy - DoDefault() - - If this.lReturn = .t. - ThisForm.SaveOptions() - Endif - - ENDPROC - - PROCEDURE Init - Lparameters toForm - - If VarType(m.toForm) != 'O' - Messagebox('Must pass a reference to GoFish Results Form when calling this form.', 0, 'GoFish') - Return .F. - Endif - - This.MinHeight = This.Height - This.MaxHeight = Int(This.Height * 1.5) - This.MinWidth = This.Width - This.MaxWidth = Int(This.Width * 1.5) - - DoDefault(m.toForm) - - Thisform.LoadOptions() - - This.BindControls = .T. - - Thisform.pfSettings.pageBackups.Enabled = Thisform.oSearchOptions.lEnableReplaceMode - - *SF 20221018 -> local storage - If Thisform.oForm.nFirstLoad=1 Then - This.pfSettings.pageAdvanced.Label3.Caption = 'Home(7) = ' + Proper(Addbs(Home(7))) - This.pfSettings.pageBackups.Label5.Caption = 'Home(7)\GoFishBackups\ = ' + Proper(Addbs(Home(7)) + 'GoFishBackups\' ) - Else &&thisform.oForm.nFirstLoad=1 - This.pfSettings.pageAdvanced.Label3.Caption = 'LOCAL = ' + Proper(Thisform.cCR_StoreLocal) - This.pfSettings.pageBackups.Label1.Caption = STRTRAN(This.pfSettings.pageBackups.Label1.Caption,'HOME(7)','') - This.pfSettings.pageBackups.Label5.Caption = 'LOCAL\GoFishBackups\ = ' + Proper(Thisform.cCR_StoreLocal + 'GoFishBackups\' ) - - Endif &&thisform.oForm.nFirstLoad=1 - */SF 20221018 -> local storage - - Thisform.Refresh() - - ENDPROC - - PROCEDURE KeyPress - LPARAMETERS nKeyCode, nShiftAltCtrl - - If nKeyCOde = 27 - Thisform.Release - Endif - - ENDPROC - - PROCEDURE loadformsettings - This.MinHeight = This.Height - This.MinWidth = This.Width - - DoDefault() - ENDPROC - - PROCEDURE loadoptions - This.oSearchOptions = This.CopyObjectProperties(This.oSearchOptions, CreateObject('GoFishSearchOptions')) - - Thisform.LoadResultsFormProperties() - - This.BuildColumnCheckBoxes() - ENDPROC - - PROCEDURE loadresultsformproperties - Local laProperties[1], lcProperty, lcXmlSettingsFile - - lcXmlSettingsFile = Thisform.cUISettingsFile - - *-- Get an array of Custom Form-level properties that are on the Restults form. - *-- Store them in the corresponding local Form properties here, if present. - Amembers(laProperties, Thisform.oForm, 0, 'U') - - *--- Import Custom properties from oForm to ThisForm - For x = 1 To Alen(laProperties) - lcProperty = laProperties[x] - AddProperty(This, lcProperty) - Try - Store Evaluate('Thisform.oForm.' + lcProperty) To ('Thisform.' + lcProperty) - Catch - Endtry - Endfor - - Thisform.cUISettingsFile = lcXmlSettingsFile && Must restore, since above trick overwrite this important setting - - Thisform.nDockable = Thisform.oForm.Dockable - - Thisform.nReplaceRisk = Evl(Thisform.oForm.nReplaceRisk, 1) - - *SF 20221015 - * --- set colours used for showing informations --- - - *.<<@N>>.BORDERWIDTH = 0 - This.pfSettings.pageColours.Container2.BorderWidth = 0 - This.pfSettings.pageColours.Container3.BorderWidth = 0 - This.pfSettings.pageColours.Container4.BorderWidth = 0 - This.pfSettings.pageColours.Container5.BorderWidth = 0 - This.pfSettings.pageColours.Container6.BorderWidth = 0 - This.pfSettings.pageColours.Container7.BorderWidth = 0 - This.pfSettings.pageColours.Container8.BorderWidth = 0 - This.pfSettings.pageColours.Container9.BorderWidth = 0 - This.pfSettings.pageColours.Container10.BorderWidth = 0 - This.pfSettings.pageColours.Container11.BorderWidth = 0 - This.pfSettings.pageColours.Container12.BorderWidth = 0 - This.pfSettings.pageColours.Container13.BorderWidth = 0 - - This.pfSettings.pageColours.Container1.BorderColor = Thisform.oForm.nContainerFrameColour - This.pfSettings.pageColours.Container2.lblExample1.ForeColor = Thisform.oForm.nFileSCXDynamicForeColour - This.pfSettings.pageColours.Container3.lblExample1.ForeColor = Thisform.oForm.nFileVCXDynamicForeColour - This.pfSettings.pageColours.Container4.lblExample1.ForeColor = Thisform.oForm.nFilePRGDynamicForeColour - This.pfSettings.pageColours.Container5.lblExample1.ForeColor = Thisform.oForm.nFileDefaultDynamicForeColour - This.pfSettings.pageColours.Container6.BackColor = Thisform.oForm.nReplacedDynamicBackColour - This.pfSettings.pageColours.Container7.BackColor = Thisform.oForm.nRiskExceededDynamicBackColour - This.pfSettings.pageColours.Container8.BackColor = Thisform.oForm.nRisk2DynamicBackColour - This.pfSettings.pageColours.Container9.BackColor = Thisform.oForm.nRisk3DynamicBackColour - This.pfSettings.pageColours.Container10.lblExample1.ForeColor = Thisform.oForm.nTreeSearchColour - This.pfSettings.pageColours.Container11.lblExample1.ForeColor = Thisform.oForm.nTreeUpdateColour - This.pfSettings.pageColours.Container12.BackColor = Thisform.oForm.nCSS_tr_even_Colour - This.pfSettings.pageColours.Container13.BackColor = Thisform.oForm.nCSS_tr_odd_Colour - */SF 20221015 - - *SF 20221017 - Thisform.pfSettings.pageReferences.Enabled = Thisform.oForm.nFirstLoad=2 - Thisform.pfSettings.pageAdvanced.chk_CRLocal_Default.Visible = Thisform.oForm.nFirstLoad=2 - Thisform.pfSettings.pageAdvanced.chk_CRLocal.Visible = Thisform.oForm.nFirstLoad=2 - Thisform.pfSettings.pageAdvanced.cmdSetFolder.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.oForm.lCR_Local - Thisform.pfSettings.pageAdvanced.Text1.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.oForm.lCR_Local - - Thisform.pfSettings.pageAdvanced.Label9.Visible = Thisform.oForm.lCR_Store_Restart - - - Thisform.cCR_StoreLocal_Option = Evl(Thisform.oForm.cCR_StoreLocal_Option,; - Iif(Thisform.oForm.lCR_Local,Thisform.cCR_StoreLocal,'')) - Thisform.cCR_StoreLocal_Set = Thisform.cCR_StoreLocal_Option - - */SF 20221017 - - ENDPROC - - PROCEDURE saveoptions - *-- Transfer Search Engine settings back to Results Form Search Engine instance - Local laProperties[1] - - This.CopyObjectProperties(This.oSearchOptions, Thisform.oSearchEngine.oSearchOptions) - - This.ApplyColumnSettings() - - *-- Transfer certain settings from Thisform back to the Search Results Form - With Thisform.oForm - .Dockable = Thisform.nDockable - .nGridFontSize = Thisform.nGridFontSize - .nTreeViewFontSize = Thisform.nTreeViewFontSize - .nTabsToSpaces = Thisform.nTabsToSpaces - .nDropDownDisplayCount = Thisform.nDropDownDisplayCount - .nDropDownMaxMRU = Thisform.nDropDownMaxMRU - .nReplaceRisk = Evl(Thisform.nReplaceRisk, 1) - .lClearApplyFilter = Thisform.lClearApplyFilter - .lWarnWholeWord = Thisform.lWarnWholeWord - .nBrowserZoom = Thisform.nBrowserZoom - * .Containerright.Container2.containerWebControl.nZoom = Thisform.nBrowserZoom - .lRestorePreviousSearchResultsOnStartup = Thisform.lRestorePreviousSearchResultsOnStartup - .lSaveSearchResults = Thisform.lSaveSearchResults - - .nJanitorSearchHistoryDays = Thisform.nJanitorSearchHistoryDays - .nJanitorReplaceHistoryDays = Thisform.nJanitorReplaceHistoryDays - .dLastJanitorRunDate = Thisform.dLastJanitorRunDate - - .lCR_Allow = Thisform.lCR_Allow - .lCR_Local_Default = Thisform.lCR_Local_Default - .lCR_Local = Thisform.lCR_Local - .lMoveNewCodeToTopLeft= Thisform.lMoveNewCodeToTopLeft - .lDesktop = Thisform.lDesktop - - .cCR_StoreLocal_Option = Thisform.cCR_StoreLocal_Option - Endwith - - - If !Empty(Thisform.cCR_StoreLocal_Option) And !Thisform.cCR_StoreLocal_Option==Thisform.cCR_StoreLocal_Set Then - Thisform.Set_LocalFolder(Thisform.cCR_StoreLocal_Option) - Endif &&!EMPTY(Thisform.cCR_StoreLocal_Option) AND Thisform.cCR_StoreLocal_Option=Thisform.cCR_StoreLocal_Set - - If Thisform.pfSettings.pageAdvanced.Label9.Visible Then - Thisform.oForm.lCR_Store_Restart = .T. - Messagebox('You will have to restart GoFish for this change to take effect.', 0, 'Notice:') - - Endif &&Thisform.pfSettings.pageAdvanced.Label9.Visible - - - ENDPROC - - PROCEDURE set_localfolder && cCR_StoreLocal_Option activated Check folder - Lparameters; - tcFolder - - Local; - lcFolder As String,; - llFound As Boolean,; - llSet As Boolean - - Do Case - Case !Empty(m.tcFolder) - *just store folder given - lcFolder = m.tcFolder - llFound = GF_Create_LocalPath(@lcFolder, .F., .F., .T.) - - GF_Put_LocalPath(m.lcFolder) - - Case Thisform.oForm.nFirstLoad#2 - *nothing to do - Case !Thisform.oForm.lCR_Allow - *nothing to do - Case !Thisform.oForm.lCR_Local - *nothing to do - Case !Empty(Thisform.cCR_StoreLocal_Option) - *nothing to do, activate - llSet = .T. - - Case GF_Get_LocalPath(@tcFolder) And Directory(m.tcFolder) - *found resource, activate - Thisform.cCR_StoreLocal_Option = m.tcFolder - Thisform.cCR_StoreLocal_Set = m.tcFolder - llSet = .T. - Otherwise - *pick a folder, or use default path - - tcFolder = Iif(Thisform.oForm.lCR_Local_Default,'',Justpath(Set("Resource",1))) - llFound = GF_Create_LocalPath(@tcFolder, .F., Thisform.oForm.lCR_Local_Default, Thisform.oForm.lCR_Local_Default) - - If Directory(m.tcFolder) Then - *folder found, activate - Thisform.cCR_StoreLocal_Option = m.tcFolder - Thisform.cCR_StoreLocal_Set = m.tcFolder - GF_Put_LocalPath(m.tcFolder) - llSet = .T. - Else &&Directory(m.tcFolder) - Thisform.oForm.lCR_Local = .F. - - Endif &&Directory(m.tcFolder) - Endcase - - Thisform.pfSettings.pageAdvanced.Text1.Refresh - - Return m.llSet - - ENDPROC - - PROCEDURE validate - Local llAtLeastOneColumnSelected, loControl - - llAtLeastOneColumnSelected = .f. - - For each loControl in thisform.pfSettings.pageColumns.containerColumnCheckBoxes.Controls - If loControl.value = 1 - llAtLeastOneColumnSelected = .t. - Endif - EndFor - - If !llAtLeastOneColumnSelected - MessageBox('Please select at least one column to display in the grid.', 0, 'Notice:') - thisform.pfSettings.ActivePage = 1 - Return .f. - Endif - - - ENDPROC - - PROCEDURE cmdCancel.Click - Thisform.lReturn = .f. - - thisform.Release() - ENDPROC - - PROCEDURE cmdOK.Click - If Thisform.Validate() - Thisform.lReturn = .t. - Thisform.Release() - Endif - - - - - - ENDPROC - - PROCEDURE pfSettings.Page1.Label3.Click - GF_Shell('https://github.com/VFPX/Thor') - - ENDPROC - - PROCEDURE pfSettings.Page1.Label5.Click - GF_Shell('https://github.com/VFPX/GoFish') - - ENDPROC - - PROCEDURE pfSettings.Page2.Spinner1.Valid - Thisform.dLastJanitorRunDate = {} - ENDPROC - - PROCEDURE pfSettings.Page2.Spinner2.Valid - Thisform.dLastJanitorRunDate = {} - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.chk_CRLocal.InteractiveChange - This.SetFocus - - This.Parent.Label9.Visible = .T. - - If This.Value Then - This.Value = Thisform.Set_LocalFolder() - - Endif &&This.Value - - This.Parent.cmdSetFolder.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.oForm.lCR_Local - This.Parent.Text1.Visible = Thisform.oForm.nFirstLoad=2 And Thisform.oForm.lCR_Local - - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.chk_CRMode.InteractiveChange - This.SetFocus - - This.Parent.Label9.Visible = .T. - This.Parent.chk_CRLocal_Default.Visible = This.Value - This.Parent.chk_CRLocal.Visible = This.Value - This.Parent.Text1.Visible = This.Value - This.Parent.cmdSetFolder.Visible = This.Value - - If This.Value Then - Thisform.Set_LocalFolder() - Endif &&This.Value - - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.cmdDeleteConfigFiles.Click - Local lcFilesToDelete, lcPath, lnResponse - - *SF 20221018 -> local storage - *lcPath = '"' + Addbs(Home(7)) + '"' - lcPath = '"' + Thisform.cCR_StoreLocal + '"' - */SF 20221018 -> local storage - - lcFilesToDelete = Addbs(lcPath) + 'gf_*.xml' - - lnResponse = MessageBox('Are you sure you want to reset GoFish by erasing config files?',3, 'Erase config files?') - - If lnResponse = 6 - Delete File (lcFilesToDelete) - EndIf - - This.Parent.list1.Requery() - - - - - - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.cmdOpenFolder.Click - *SF 20221018 -> local storage - *lcPath = '"' + Addbs(Home(7)) + '"' - lcPath = '"' + Thisform.cCR_StoreLocal + '"' - */SF 20221018 -> local storage - - GF_OpenExplorerWindow(lcPath) - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.cmdSetFolder.Click - Local; - lcFolder As String - - lcFolder = Thisform.cCR_StoreLocal_Option - lcFolder = Getdir(m.lcFolder,'Local GoFish config folder. Please pick one.','',64+1+32+2+8) - If !Empty(m.lcFolder) Then - Thisform.cCR_StoreLocal_Option = m.lcFolder - This.Parent.Label9.Visible = .T. - Endif &&!EMPTY(m.lcFolder) - - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.List1.Click - Local lnIndex - - lnIndex = this.ListIndex - lcValue = This.value - - If !('.XML' $ Upper(This.value)) - This.Init() && Reset RecordSource - This.Requery() - Endif - - This.Value = lcValue - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.List1.DblClick - *SF 20221018 -> local storage - *lcFile = '"' + Addbs(Home(7)) + this.Value + '"' - lcFile = '"' + Thisform.cCR_StoreLocal + this.Value + '"' - */SF 20221018 -> local storage - - If 'GF_' $ Upper(lcFile) and Upper(JustExt(lcFile)) = 'XML' - Run /n "notepad" &lcFile - Else - This.Init() && Reset RecordSource - This.Requery() - Endif - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.List1.Init - *SF 20221018 -> local storage - *This.RowSource = Addbs(Home(7)) + 'GF_*.xml' - This.RowSource = Thisform.cCR_StoreLocal + 'GF_*.xml' - */SF 20221018 -> local storage - - ENDPROC - - PROCEDURE pfSettings.pageAdvanced.Text1.When - RETURN .F. - ENDPROC - - PROCEDURE pfSettings.pageBackups.Check1.Click - DoDefault() - - This.Parent.Refresh() - ENDPROC - - PROCEDURE pfSettings.pageBackups.Command2.Click - *SF 20221018 -> local storage - *lcPath = '"' + Addbs(Home(7) + 'GoFishBackups') + '"' - lcPath = '"' + Addbs(Thisform.cCR_StoreLocal + 'GoFishBackups') + '"' - */SF 20221018 -> local storage - - GF_OpenExplorerWindow(lcPath) - - ENDPROC - - PROCEDURE pfSettings.pageBackups.Label2.Click - messagebox('No help available at this time.', 0, 'GoFish') - *** TODO: GF_Shell('URL for backup help') - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command1.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nContainerFrameColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nContainerFrameColour = m.lnReturn - This.Parent.Container1.BorderColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command10.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nTreeSearchColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nTreeSearchColour = m.lnReturn - This.Parent.Container10.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command11.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nTreeUpdateColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nTreeUpdateColour = m.lnReturn - This.Parent.Container11.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command12.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nCSS_tr_even_Colour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nCSS_tr_even_Colour = m.lnReturn - This.Parent.Container12.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command13.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nCSS_tr_odd_Colour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nCSS_tr_odd_Colour = m.lnReturn - This.Parent.Container13.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command2.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nFileSCXDynamicForeColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nFileSCXDynamicForeColour = m.lnReturn - This.Parent.Container2.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command3.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nFileVCXDynamicForeColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nFileVCXDynamicForeColour = m.lnReturn - This.Parent.Container3.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command4.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nFilePRGDynamicForeColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nFilePRGDynamicForeColour = m.lnReturn - This.Parent.Container4.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command5.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nFileDefaultDynamicForeColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nFileDefaultDynamicForeColour = m.lnReturn - This.Parent.Container5.lblExample1.ForeColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command6.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nReplacedDynamicBackColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nReplacedDynamicBackColour = m.lnReturn - This.Parent.Container6.BackColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command7.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nRiskExceededDynamicBackColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nRiskExceededDynamicBackColour = m.lnReturn - This.Parent.Container7.BackColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command8.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nRisk2DynamicBackColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nRisk2DynamicBackColour = m.lnReturn - This.Parent.Container8.BackColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColours.Command9.Click - Local lnReturn, lnColour - - lnColour = Thisform.oForm.nRisk3DynamicBackColour - lnReturn = Getcolor(m.lnColour) - - If m.lnReturn#-1 Then - Thisform.oForm.nRisk3DynamicBackColour = m.lnReturn - This.Parent.Container9.BackColor = m.lnReturn - Endif &&m.lnReturn#-1 - - ENDPROC - - PROCEDURE pfSettings.pageColumns.cmdClearAll.Click - For each loControl in this.Parent.containerColumnCheckBoxes.Controls - loControl.value = 0 - EndFor - - ENDPROC - - PROCEDURE pfSettings.pageColumns.cmdSelectAll.Click - For each loControl in this.Parent.containerColumnCheckBoxes.Controls - loControl.value = 1 - EndFor - - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Activate - This.Refresh() - ENDPROC - - PROCEDURE pfSettings.pagePreferences.cboDockable.InteractiveChange - lnCurrentDockable = Thisform.oForm.Dockable - lnNewValue = this.Value - - If lnNewValue = 0 and lnCurrentDockable # 0 - MessageBox('You will have to restart GoFish for this change to take effect.', 0, 'Notice:') - Endif - - Thisform.nDockable = This.Value - ENDPROC - - PROCEDURE pfSettings.pagePreferences.chkDesktop.InteractiveChange - local loMy, ; - loSettings, ; - lcSettingsFile - loMy = newobject('My', 'My.vcx') - loSettings = loMy.Settings - - *SF 20221018 -> local storage - *lcSettingsFile = addbs(home(7)) + Thisform.oForm.cUISettingsFile - lcSettingsFile = Thisform.oForm.cUISettingsFile - */SF 20221018 -> local storage - - m.loSettings.Load(m.lcSettingsFile) - m.loSettings.Add('lDesktop', This.Value) - m.loSettings.Save(m.lcSettingsFile) - messagebox('Note: this change takes effect the next time you run GoFish.', 64, 'GoFish') - - ENDPROC - - PROCEDURE pfSettings.pagePreferences.cmdZoomDefault.Click - Thisform.nBrowserZoom = 1.0 - This.Parent.Refresh() - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Command1.Click - Local lcFolder, lcPath - - lcFolder = "GF_Saved_Search_Results" - - *SF 20221018 -> local storage - *lcPath = '"' + Addbs(Home(7)) + lcFolder + '"' - lcPath = '"' + Thisform.cCR_StoreLocal + lcFolder + '"' - */SF 20221018 -> local storage - - GF_OpenExplorerWindow(lcPath) - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Spinner4.Click - Nodefault - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Spinner4.DownClick - This.Value = This.Value - 0.00 - - Nodefault - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Spinner4.UpClick - This.Value = This.Value + 0.00 - - nodefault - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Spinner4.Valid - If This.Value < This.SpinnerLowValue - This.Value = This.SpinnerLowValue - EndIf - - If This.Value > This.SpinnerHighValue - This.Value = This.SpinnerHighValue - Endif - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Text1.Click - This.SelStart = 0 - This.SelLength = 100 - ENDPROC - - PROCEDURE pfSettings.pagePreferences.Text1.Valid - If this.Value <= 0 - MessageBox('Please enter a value greater than zero.', 64, 'GoFish') - Return .f. - Endif - - - ENDPROC - - PROCEDURE pfSettings.pageReplace.Activate - This.Refresh() - ENDPROC - - PROCEDURE pfSettings.pageReplace.Check1.Click - DoDefault() - - Thisform.oSearchOptions.lBackup = .t. - - This.Parent.Refresh() - ENDPROC - - PROCEDURE pfSettings.pageReplace.Check2.Click - DoDefault() - - This.Parent.Refresh() - ENDPROC - - PROCEDURE pfSettings.pageReplace.cmdOpenFolder.Click - Local lcPath - - lcPath = JustPath(Thisform.oSearchEngine.cReplaceDetailTable) - - GF_OpenExplorerWindow(lcPath) - ENDPROC - - PROCEDURE pfSettings.pageReplace.Label2.Click - messagebox('No help available at this time.', 0, 'GoFish') - *** TODO: GF_Shell('URL for replace help') - - ENDPROC - - PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Option2.Click - DoDefault() - - This.Parent.Refresh() - - - ENDPROC - - PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Option3.Click - DoDefault() - - This.Parent.Refresh() - - - ENDPROC - - PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Option4.Click - DoDefault() - - This.Parent.Refresh() - - ENDPROC - - PROCEDURE pfSettings.pageReplace.optiongroupReplaceSafetyLevel.Refresh - lnColor = Rgb(240, 240, 240) - - lnRiskLevel = This.Value - - Do Case - Case lnRiskLevel = 1 - lnColor = Rgb(0, 176, 80)&& Green - - Case lnRiskLevel = 2 - lnColor = Rgb(255, 255, 128) && Yellow - - Case lnRiskLevel = 3 - lnColor = Rgb(255, 192, 0)&& Orange - Endcase - - If Thisform.oSearchOptions.lEnableReplaceMode = .t. - This.BackColor = lnColor - This.SetAll('Enabled', .t., 'OptionButton') - This.SetAll('Forecolor', Rgb(0,0,0), 'OptionButton') - Else - This.BackColor = Rgb(255,255,255) - This.SetAll('Enabled', .f., 'OptionButton') - This.SetAll('DisabledForecolor', Rgb(210,210,210), 'OptionButton') - Endif - - - DoDefault() - - ENDPROC - - PROCEDURE pfSettings.pageReplace.Refresh - this.Parent.pageBackups.Enabled = Thisform.oSearchOptions.lEnableReplaceMode - - DoDefault() - ENDPROC - - PROCEDURE pfSettings.pageReplace.Text1.Valid - If this.Value <= 0 - MessageBox('Please enter a value greater than zero.', 64, 'GoFish') - Return .f. - Endif - - - ENDPROC - - PROCEDURE pfSettings.pageReplace.Text2.Valid - If this.Value <= 0 - MessageBox('Please enter a value greater than zero.', 64, 'GoFish') - Return .f. - Endif - - - ENDPROC - - PROCEDURE pfSettings.pageThor.Activate - Local llThorRunning - - Try - ExecScript(_Screen.cThorDispatcher, '?') - llThorRunning = .T. - Catch - llThorRunning = .F. - EndTry - - This.lblNoThor.Visible = !llThorRunning - - ENDPROC - - PROCEDURE pfSettings.pageThor.Label2.Click - GF_Shell('https://github.com/VFPX/Thor') - - ENDPROC +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_options" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_options.scx b/Source/Forms/gofish_options.scx index 93d8c60..00a44a1 100644 Binary files a/Source/Forms/gofish_options.scx and b/Source/Forms/gofish_options.scx differ diff --git a/Source/Forms/gofish_results.SCT b/Source/Forms/gofish_results.SCT index 4f5daa9..bbb173d 100644 Binary files a/Source/Forms/gofish_results.SCT and b/Source/Forms/gofish_results.SCT differ diff --git a/Source/Forms/gofish_results.dataenvironment.sc2 b/Source/Forms/gofish_results.dataenvironment.sc2 new file mode 100644 index 0000000..6971294 --- /dev/null +++ b/Source/Forms/gofish_results.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_results.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="2" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_results.gf_resultsform1.sc2 b/Source/Forms/gofish_results.gf_resultsform1.sc2 new file mode 100644 index 0000000..c8e8a4d --- /dev/null +++ b/Source/Forms/gofish_results.gf_resultsform1.sc2 @@ -0,0 +1,279 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_results.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_resultsform1 AS gf_resultsform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + DoCreate = .T. + Name = "Gf_resultsform1" + lblSearch.Name = "lblSearch" + comboSearchExpressionHistory.Name = "comboSearchExpressionHistory" + editSearch.Name = "editSearch" + comboSearchScopeHistory.Name = "comboSearchScopeHistory" + lblScope.Name = "lblScope" + containerLeft.cntVersion.cmdVFPX.Name = "cmdVFPX" + containerLeft.cntVersion.Gf_versionlabel1.Name = "Gf_versionlabel1" + containerLeft.cntVersion.Name = "cntVersion" + containerLeft.Name = "containerLeft" + containerLeft.oTreeView.Height = 513 + containerLeft.oTreeView.Left = 0 + containerLeft.oTreeView.Name = "oTreeView" + containerLeft.oTreeView.Top = 0 + containerLeft.oTreeView.Width = 186 + containerRight.CONTAINER1.chkReplaceMode.Alignment = 0 + containerRight.CONTAINER1.chkReplaceMode.Name = "chkReplaceMode" + containerRight.CONTAINER1.cmdClassBrowser.Name = "cmdClassBrowser" + containerRight.CONTAINER1.cmdEdit.Name = "cmdEdit" + containerRight.CONTAINER1.cmdGoToObject.Name = "cmdGoToObject" + containerRight.CONTAINER1.cmdMenu.Name = "cmdMenu" + containerRight.CONTAINER1.cmdOpenExplorer.Name = "cmdOpenExplorer" + containerRight.CONTAINER1.cmdReport.Name = "cmdReport" + containerRight.CONTAINER1.cmdSearchErrors.Name = "cmdSearchErrors" + containerRight.CONTAINER1.COMMAND1.Name = "COMMAND1" + containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 + containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + containerRight.CONTAINER1.CONTAINER1.cmdFilter.Name = "cmdFilter" + containerRight.CONTAINER1.CONTAINER1.Name = "CONTAINER1" + containerRight.CONTAINER1.Container2.chkCodeOnly.Alignment = 0 + containerRight.CONTAINER1.Container2.chkCodeOnly.Name = "chkCodeOnly" + containerRight.CONTAINER1.Container2.Name = "Container2" + containerRight.CONTAINER1.containerReplaceText.cmdReplaceErrors.Name = "cmdReplaceErrors" + containerRight.CONTAINER1.containerReplaceText.cmdReplaceHistory.Name = "cmdReplaceHistory" + containerRight.CONTAINER1.containerReplaceText.Name = "containerReplaceText" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.Name = "optiongroupReplaceMode" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Left = 158 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Name = "optionAdvancedReplace" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Top = 5 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Left = 92 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Name = "optionReplaceLine" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Top = 5 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Left = 5 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Name = "optionReplaceText" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Top = 5 + containerRight.CONTAINER1.containerReplaceText.PageFrame.ErasePage = .T. + containerRight.CONTAINER1.containerReplaceText.PageFrame.Height = 55 + containerRight.CONTAINER1.containerReplaceText.PageFrame.Name = "PageFrame" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdCheckAll.Name = "cmdCheckAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdClearAll.Name = "cmdClearAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdReplace.Name = "cmdReplace" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.editReplaceExpression.Name = "editReplaceExpression" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.LABEL1.Name = "LABEL1" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.Name = "PAGE1" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.cmdSaveLine.Name = "cmdSaveLine" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.editReplaceLine.Name = "editReplaceLine" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.lblReplaceLine.Name = "lblReplaceLine" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.Name = "PAGE2" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdBrowse.Name = "cmdBrowse" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdCheckAll.Name = "cmdCheckAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdClearAll.Name = "cmdClearAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdEdit.Name = "cmdEdit" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdReplace.Name = "cmdReplace" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Name = "PAGE3" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Text1.Name = "Text1" + containerRight.CONTAINER1.containerReplaceText.PageFrame.Top = 25 + containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Alignment = 2 + containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Name = "CHECK1" + containerRight.CONTAINER1.GridFiles.colProcess.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Height = 16 + containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Name = "imageCheck" + containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Width = 50 + containerRight.CONTAINER1.GridFiles.colProcess.LABEL1.Name = "LABEL1" + containerRight.CONTAINER1.GridFiles.colProcess.Name = "colProcess" + containerRight.CONTAINER1.GridFiles.colProcess.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN1.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN1.Name = "COLUMN1" + containerRight.CONTAINER1.GridFiles.COLUMN1.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN10.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN10.Name = "COLUMN10" + containerRight.CONTAINER1.GridFiles.COLUMN10.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN11.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN11.Name = "COLUMN11" + containerRight.CONTAINER1.GridFiles.COLUMN11.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN12.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN12.Name = "COLUMN12" + containerRight.CONTAINER1.GridFiles.COLUMN12.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN13.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN13.Name = "COLUMN13" + containerRight.CONTAINER1.GridFiles.COLUMN13.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN14.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN14.Name = "COLUMN14" + containerRight.CONTAINER1.GridFiles.COLUMN14.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN15.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN15.Name = "COLUMN15" + containerRight.CONTAINER1.GridFiles.COLUMN15.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN16.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN16.Name = "COLUMN16" + containerRight.CONTAINER1.GridFiles.COLUMN16.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN17.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN17.Name = "COLUMN17" + containerRight.CONTAINER1.GridFiles.COLUMN17.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN18.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN18.Name = "COLUMN18" + containerRight.CONTAINER1.GridFiles.COLUMN18.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN19.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN19.Name = "COLUMN19" + containerRight.CONTAINER1.GridFiles.COLUMN19.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN2.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN2.Name = "COLUMN2" + containerRight.CONTAINER1.GridFiles.COLUMN2.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN20.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN20.Name = "COLUMN20" + containerRight.CONTAINER1.GridFiles.COLUMN20.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN21.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN21.Name = "COLUMN21" + containerRight.CONTAINER1.GridFiles.COLUMN21.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN22.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN22.Name = "COLUMN22" + containerRight.CONTAINER1.GridFiles.COLUMN22.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN23.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN23.Name = "COLUMN23" + containerRight.CONTAINER1.GridFiles.COLUMN23.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN25.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN25.Name = "COLUMN25" + containerRight.CONTAINER1.GridFiles.COLUMN25.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN3.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN3.Name = "COLUMN3" + containerRight.CONTAINER1.GridFiles.COLUMN3.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN4.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN4.Name = "COLUMN4" + containerRight.CONTAINER1.GridFiles.COLUMN4.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN5.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN5.Name = "COLUMN5" + containerRight.CONTAINER1.GridFiles.COLUMN5.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN6.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN6.Name = "COLUMN6" + containerRight.CONTAINER1.GridFiles.COLUMN6.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN7.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN7.Name = "COLUMN7" + containerRight.CONTAINER1.GridFiles.COLUMN7.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN8.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN8.Name = "COLUMN8" + containerRight.CONTAINER1.GridFiles.COLUMN8.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN9.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN9.Name = "COLUMN9" + containerRight.CONTAINER1.GridFiles.COLUMN9.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.Name = "GridFiles" + containerRight.CONTAINER1.lblResults.Name = "lblResults" + containerRight.CONTAINER1.Name = "CONTAINER1" + containerRight.Container2.containerWebControl.ButtonContainer.lblFilePath.Name = "lblFilePath" + containerRight.Container2.containerWebControl.ButtonContainer.Name = "ButtonContainer" + containerRight.Container2.containerWebControl.cmdCompressCodeview.Name = "cmdCompressCodeview" + containerRight.Container2.containerWebControl.cmdMaximizeCodeView.Name = "cmdMaximizeCodeView" + containerRight.Container2.containerWebControl.CMDZOOMIN.Name = "CMDZOOMIN" + containerRight.Container2.containerWebControl.CMDZOOMOUT.Name = "CMDZOOMOUT" + containerRight.Container2.containerWebControl.comboViewPosition.Name = "comboViewPosition" + containerRight.Container2.containerWebControl.lblCodeView.Name = "lblCodeView" + containerRight.Container2.containerWebControl.Name = "containerWebControl" + containerRight.Container2.containerWebControl.OBROWSER.Height = 144 + containerRight.Container2.containerWebControl.OBROWSER.Left = 1 + containerRight.Container2.containerWebControl.OBROWSER.Name = "OBROWSER" + containerRight.Container2.containerWebControl.OBROWSER.Top = 23 + containerRight.Container2.containerWebControl.OBROWSER.Width = 794 + containerRight.Container2.Name = "Container2" + containerRight.Name = "containerRight" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.Name = "GRIPPER" + containerRight.Splitter1.Name = "Splitter1" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.Name = "GRIPPER" + containerRight.splitter3.Name = "splitter3" + splitter2.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" + splitter2.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" + splitter2.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" + splitter2.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" + splitter2.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" + splitter2.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.Name = "GRIPPER" + splitter2.Name = "splitter2" + ProgressBar.BAR.IMAGE1.Name = "IMAGE1" + ProgressBar.BAR.Name = "BAR" + ProgressBar.Box.Name = "Box" + ProgressBar.IMAGE1.Name = "IMAGE1" + ProgressBar.LABEL1.Name = "LABEL1" + ProgressBar.LABEL2.Name = "LABEL2" + ProgressBar.Name = "ProgressBar" + comboSearchExpressionHistoryDropDownArrow.Name = "comboSearchExpressionHistoryDropDownArrow" + timerShowAdvancedForm.Name = "timerShowAdvancedForm" + imgScopeIcon.Name = "imgScopeIcon" + ButtonContainer.chkLimitToProjectFolder.Alignment = 0 + ButtonContainer.chkLimitToProjectFolder.Name = "chkLimitToProjectFolder" + ButtonContainer.chkMatchWholeWord.Alignment = 0 + ButtonContainer.chkMatchWholeWord.Name = "chkMatchWholeWord" + ButtonContainer.chkSubdirectories.Alignment = 0 + ButtonContainer.chkSubdirectories.Name = "chkSubdirectories" + ButtonContainer.cmdAdvanced.Name = "cmdAdvanced" + ButtonContainer.cmdHelp.Name = "cmdHelp" + ButtonContainer.cmdOptions.Name = "cmdOptions" + ButtonContainer.cmdRegexpHelp.Name = "cmdRegexpHelp" + ButtonContainer.cmdSearch.Name = "cmdSearch" + ButtonContainer.comboViewPosition.Name = "comboViewPosition" + ButtonContainer.COMMAND1.Name = "COMMAND1" + ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 + ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + ButtonContainer.CONTAINER1.Name = "CONTAINER1" + ButtonContainer.Container2.CHKAPPLYFILTER.Alignment = 0 + ButtonContainer.Container2.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + ButtonContainer.Container2.Name = "Container2" + ButtonContainer.Container3.CHKAPPLYFILTER.Alignment = 0 + ButtonContainer.Container3.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + ButtonContainer.Container3.Name = "Container3" + ButtonContainer.lblCodeView.Name = "lblCodeView" + ButtonContainer.lblSearchTime.Name = "lblSearchTime" + ButtonContainer.Name = "ButtonContainer" + +ENDDEFINE diff --git a/Source/Forms/gofish_results.sc2 b/Source/Forms/gofish_results.sc2 index def3f69..d961f35 100644 --- a/Source/Forms/gofish_results.sc2 +++ b/Source/Forms/gofish_results.sc2 @@ -4,289 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_results.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="2" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_resultsform1 AS gf_resultsform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - DoCreate = .T. - Name = "Gf_resultsform1" - lblSearch.Name = "lblSearch" - comboSearchExpressionHistory.Name = "comboSearchExpressionHistory" - editSearch.Name = "editSearch" - comboSearchScopeHistory.Name = "comboSearchScopeHistory" - lblScope.Name = "lblScope" - containerLeft.cntVersion.cmdVFPX.Name = "cmdVFPX" - containerLeft.cntVersion.Gf_versionlabel1.Name = "Gf_versionlabel1" - containerLeft.cntVersion.Name = "cntVersion" - containerLeft.Name = "containerLeft" - containerLeft.oTreeView.Height = 513 - containerLeft.oTreeView.Left = 0 - containerLeft.oTreeView.Name = "oTreeView" - containerLeft.oTreeView.Top = 0 - containerLeft.oTreeView.Width = 186 - containerRight.CONTAINER1.chkReplaceMode.Alignment = 0 - containerRight.CONTAINER1.chkReplaceMode.Name = "chkReplaceMode" - containerRight.CONTAINER1.cmdClassBrowser.Name = "cmdClassBrowser" - containerRight.CONTAINER1.cmdEdit.Name = "cmdEdit" - containerRight.CONTAINER1.cmdGoToObject.Name = "cmdGoToObject" - containerRight.CONTAINER1.cmdMenu.Name = "cmdMenu" - containerRight.CONTAINER1.cmdOpenExplorer.Name = "cmdOpenExplorer" - containerRight.CONTAINER1.cmdReport.Name = "cmdReport" - containerRight.CONTAINER1.cmdSearchErrors.Name = "cmdSearchErrors" - containerRight.CONTAINER1.COMMAND1.Name = "COMMAND1" - containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 - containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - containerRight.CONTAINER1.CONTAINER1.cmdFilter.Name = "cmdFilter" - containerRight.CONTAINER1.CONTAINER1.Name = "CONTAINER1" - containerRight.CONTAINER1.Container2.chkCodeOnly.Alignment = 0 - containerRight.CONTAINER1.Container2.chkCodeOnly.Name = "chkCodeOnly" - containerRight.CONTAINER1.Container2.Name = "Container2" - containerRight.CONTAINER1.containerReplaceText.cmdReplaceErrors.Name = "cmdReplaceErrors" - containerRight.CONTAINER1.containerReplaceText.cmdReplaceHistory.Name = "cmdReplaceHistory" - containerRight.CONTAINER1.containerReplaceText.Name = "containerReplaceText" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.Name = "optiongroupReplaceMode" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Left = 158 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Name = "optionAdvancedReplace" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Top = 5 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Left = 92 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Name = "optionReplaceLine" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Top = 5 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Left = 5 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Name = "optionReplaceText" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Top = 5 - containerRight.CONTAINER1.containerReplaceText.PageFrame.ErasePage = .T. - containerRight.CONTAINER1.containerReplaceText.PageFrame.Height = 55 - containerRight.CONTAINER1.containerReplaceText.PageFrame.Name = "PageFrame" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdCheckAll.Name = "cmdCheckAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdClearAll.Name = "cmdClearAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdReplace.Name = "cmdReplace" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.editReplaceExpression.Name = "editReplaceExpression" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.LABEL1.Name = "LABEL1" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.Name = "PAGE1" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.cmdSaveLine.Name = "cmdSaveLine" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.editReplaceLine.Name = "editReplaceLine" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.lblReplaceLine.Name = "lblReplaceLine" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.Name = "PAGE2" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdBrowse.Name = "cmdBrowse" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdCheckAll.Name = "cmdCheckAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdClearAll.Name = "cmdClearAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdEdit.Name = "cmdEdit" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdReplace.Name = "cmdReplace" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Name = "PAGE3" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Text1.Name = "Text1" - containerRight.CONTAINER1.containerReplaceText.PageFrame.Top = 25 - containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Alignment = 2 - containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Name = "CHECK1" - containerRight.CONTAINER1.GridFiles.colProcess.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Height = 16 - containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Name = "imageCheck" - containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Width = 50 - containerRight.CONTAINER1.GridFiles.colProcess.LABEL1.Name = "LABEL1" - containerRight.CONTAINER1.GridFiles.colProcess.Name = "colProcess" - containerRight.CONTAINER1.GridFiles.colProcess.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN1.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN1.Name = "COLUMN1" - containerRight.CONTAINER1.GridFiles.COLUMN1.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN10.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN10.Name = "COLUMN10" - containerRight.CONTAINER1.GridFiles.COLUMN10.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN11.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN11.Name = "COLUMN11" - containerRight.CONTAINER1.GridFiles.COLUMN11.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN12.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN12.Name = "COLUMN12" - containerRight.CONTAINER1.GridFiles.COLUMN12.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN13.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN13.Name = "COLUMN13" - containerRight.CONTAINER1.GridFiles.COLUMN13.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN14.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN14.Name = "COLUMN14" - containerRight.CONTAINER1.GridFiles.COLUMN14.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN15.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN15.Name = "COLUMN15" - containerRight.CONTAINER1.GridFiles.COLUMN15.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN16.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN16.Name = "COLUMN16" - containerRight.CONTAINER1.GridFiles.COLUMN16.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN17.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN17.Name = "COLUMN17" - containerRight.CONTAINER1.GridFiles.COLUMN17.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN18.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN18.Name = "COLUMN18" - containerRight.CONTAINER1.GridFiles.COLUMN18.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN19.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN19.Name = "COLUMN19" - containerRight.CONTAINER1.GridFiles.COLUMN19.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN2.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN2.Name = "COLUMN2" - containerRight.CONTAINER1.GridFiles.COLUMN2.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN20.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN20.Name = "COLUMN20" - containerRight.CONTAINER1.GridFiles.COLUMN20.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN21.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN21.Name = "COLUMN21" - containerRight.CONTAINER1.GridFiles.COLUMN21.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN22.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN22.Name = "COLUMN22" - containerRight.CONTAINER1.GridFiles.COLUMN22.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN23.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN23.Name = "COLUMN23" - containerRight.CONTAINER1.GridFiles.COLUMN23.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN25.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN25.Name = "COLUMN25" - containerRight.CONTAINER1.GridFiles.COLUMN25.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN3.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN3.Name = "COLUMN3" - containerRight.CONTAINER1.GridFiles.COLUMN3.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN4.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN4.Name = "COLUMN4" - containerRight.CONTAINER1.GridFiles.COLUMN4.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN5.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN5.Name = "COLUMN5" - containerRight.CONTAINER1.GridFiles.COLUMN5.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN6.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN6.Name = "COLUMN6" - containerRight.CONTAINER1.GridFiles.COLUMN6.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN7.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN7.Name = "COLUMN7" - containerRight.CONTAINER1.GridFiles.COLUMN7.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN8.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN8.Name = "COLUMN8" - containerRight.CONTAINER1.GridFiles.COLUMN8.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN9.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN9.Name = "COLUMN9" - containerRight.CONTAINER1.GridFiles.COLUMN9.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.Name = "GridFiles" - containerRight.CONTAINER1.lblResults.Name = "lblResults" - containerRight.CONTAINER1.Name = "CONTAINER1" - containerRight.Container2.containerWebControl.ButtonContainer.lblFilePath.Name = "lblFilePath" - containerRight.Container2.containerWebControl.ButtonContainer.Name = "ButtonContainer" - containerRight.Container2.containerWebControl.cmdCompressCodeview.Name = "cmdCompressCodeview" - containerRight.Container2.containerWebControl.cmdMaximizeCodeView.Name = "cmdMaximizeCodeView" - containerRight.Container2.containerWebControl.CMDZOOMIN.Name = "CMDZOOMIN" - containerRight.Container2.containerWebControl.CMDZOOMOUT.Name = "CMDZOOMOUT" - containerRight.Container2.containerWebControl.comboViewPosition.Name = "comboViewPosition" - containerRight.Container2.containerWebControl.lblCodeView.Name = "lblCodeView" - containerRight.Container2.containerWebControl.Name = "containerWebControl" - containerRight.Container2.containerWebControl.OBROWSER.Height = 144 - containerRight.Container2.containerWebControl.OBROWSER.Left = 1 - containerRight.Container2.containerWebControl.OBROWSER.Name = "OBROWSER" - containerRight.Container2.containerWebControl.OBROWSER.Top = 23 - containerRight.Container2.containerWebControl.OBROWSER.Width = 794 - containerRight.Container2.Name = "Container2" - containerRight.Name = "containerRight" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.Name = "GRIPPER" - containerRight.Splitter1.Name = "Splitter1" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.Name = "GRIPPER" - containerRight.splitter3.Name = "splitter3" - splitter2.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" - splitter2.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" - splitter2.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" - splitter2.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" - splitter2.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" - splitter2.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.Name = "GRIPPER" - splitter2.Name = "splitter2" - ProgressBar.BAR.IMAGE1.Name = "IMAGE1" - ProgressBar.BAR.Name = "BAR" - ProgressBar.Box.Name = "Box" - ProgressBar.IMAGE1.Name = "IMAGE1" - ProgressBar.LABEL1.Name = "LABEL1" - ProgressBar.LABEL2.Name = "LABEL2" - ProgressBar.Name = "ProgressBar" - comboSearchExpressionHistoryDropDownArrow.Name = "comboSearchExpressionHistoryDropDownArrow" - timerShowAdvancedForm.Name = "timerShowAdvancedForm" - imgScopeIcon.Name = "imgScopeIcon" - ButtonContainer.chkLimitToProjectFolder.Alignment = 0 - ButtonContainer.chkLimitToProjectFolder.Name = "chkLimitToProjectFolder" - ButtonContainer.chkMatchWholeWord.Alignment = 0 - ButtonContainer.chkMatchWholeWord.Name = "chkMatchWholeWord" - ButtonContainer.chkSubdirectories.Alignment = 0 - ButtonContainer.chkSubdirectories.Name = "chkSubdirectories" - ButtonContainer.cmdAdvanced.Name = "cmdAdvanced" - ButtonContainer.cmdHelp.Name = "cmdHelp" - ButtonContainer.cmdOptions.Name = "cmdOptions" - ButtonContainer.cmdRegexpHelp.Name = "cmdRegexpHelp" - ButtonContainer.cmdSearch.Name = "cmdSearch" - ButtonContainer.comboViewPosition.Name = "comboViewPosition" - ButtonContainer.COMMAND1.Name = "COMMAND1" - ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 - ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - ButtonContainer.CONTAINER1.Name = "CONTAINER1" - ButtonContainer.Container2.CHKAPPLYFILTER.Alignment = 0 - ButtonContainer.Container2.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - ButtonContainer.Container2.Name = "Container2" - ButtonContainer.Container3.CHKAPPLYFILTER.Alignment = 0 - ButtonContainer.Container3.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - ButtonContainer.Container3.Name = "Container3" - ButtonContainer.lblCodeView.Name = "lblCodeView" - ButtonContainer.lblSearchTime.Name = "lblSearchTime" - ButtonContainer.Name = "ButtonContainer" +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_resultsform1" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_results.scx b/Source/Forms/gofish_results.scx index 37cf088..0c059be 100644 Binary files a/Source/Forms/gofish_results.scx and b/Source/Forms/gofish_results.scx differ diff --git a/Source/Forms/gofish_results_desktop.dataenvironment.sc2 b/Source/Forms/gofish_results_desktop.dataenvironment.sc2 new file mode 100644 index 0000000..7f6fce4 --- /dev/null +++ b/Source/Forms/gofish_results_desktop.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_results_desktop.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="2" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_results_desktop.gf_resultsform1.sc2 b/Source/Forms/gofish_results_desktop.gf_resultsform1.sc2 new file mode 100644 index 0000000..7df7a40 --- /dev/null +++ b/Source/Forms/gofish_results_desktop.gf_resultsform1.sc2 @@ -0,0 +1,280 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_results_desktop.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS gf_resultsform1 AS gf_resultsform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + Desktop = .T. + DoCreate = .T. + Name = "Gf_resultsform1" + lblSearch.Name = "lblSearch" + comboSearchExpressionHistory.Name = "comboSearchExpressionHistory" + editSearch.Name = "editSearch" + comboSearchScopeHistory.Name = "comboSearchScopeHistory" + lblScope.Name = "lblScope" + containerLeft.cntVersion.cmdVFPX.Name = "cmdVFPX" + containerLeft.cntVersion.Gf_versionlabel1.Name = "Gf_versionlabel1" + containerLeft.cntVersion.Name = "cntVersion" + containerLeft.Name = "containerLeft" + containerLeft.oTreeView.Height = 513 + containerLeft.oTreeView.Left = 0 + containerLeft.oTreeView.Name = "oTreeView" + containerLeft.oTreeView.Top = 0 + containerLeft.oTreeView.Width = 186 + containerRight.CONTAINER1.chkReplaceMode.Alignment = 0 + containerRight.CONTAINER1.chkReplaceMode.Name = "chkReplaceMode" + containerRight.CONTAINER1.cmdClassBrowser.Name = "cmdClassBrowser" + containerRight.CONTAINER1.cmdEdit.Name = "cmdEdit" + containerRight.CONTAINER1.cmdGoToObject.Name = "cmdGoToObject" + containerRight.CONTAINER1.cmdMenu.Name = "cmdMenu" + containerRight.CONTAINER1.cmdOpenExplorer.Name = "cmdOpenExplorer" + containerRight.CONTAINER1.cmdReport.Name = "cmdReport" + containerRight.CONTAINER1.cmdSearchErrors.Name = "cmdSearchErrors" + containerRight.CONTAINER1.COMMAND1.Name = "COMMAND1" + containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 + containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + containerRight.CONTAINER1.CONTAINER1.cmdFilter.Name = "cmdFilter" + containerRight.CONTAINER1.CONTAINER1.Name = "CONTAINER1" + containerRight.CONTAINER1.Container2.chkCodeOnly.Alignment = 0 + containerRight.CONTAINER1.Container2.chkCodeOnly.Name = "chkCodeOnly" + containerRight.CONTAINER1.Container2.Name = "Container2" + containerRight.CONTAINER1.containerReplaceText.cmdReplaceErrors.Name = "cmdReplaceErrors" + containerRight.CONTAINER1.containerReplaceText.cmdReplaceHistory.Name = "cmdReplaceHistory" + containerRight.CONTAINER1.containerReplaceText.Name = "containerReplaceText" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.Name = "optiongroupReplaceMode" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Left = 158 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Name = "optionAdvancedReplace" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Top = 5 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Left = 92 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Name = "optionReplaceLine" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Top = 5 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Left = 5 + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Name = "optionReplaceText" + containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Top = 5 + containerRight.CONTAINER1.containerReplaceText.PageFrame.ErasePage = .T. + containerRight.CONTAINER1.containerReplaceText.PageFrame.Height = 55 + containerRight.CONTAINER1.containerReplaceText.PageFrame.Name = "PageFrame" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdCheckAll.Name = "cmdCheckAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdClearAll.Name = "cmdClearAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdReplace.Name = "cmdReplace" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.editReplaceExpression.Name = "editReplaceExpression" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.LABEL1.Name = "LABEL1" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.Name = "PAGE1" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.cmdSaveLine.Name = "cmdSaveLine" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.editReplaceLine.Name = "editReplaceLine" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.lblReplaceLine.Name = "lblReplaceLine" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.Name = "PAGE2" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdBrowse.Name = "cmdBrowse" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdCheckAll.Name = "cmdCheckAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdClearAll.Name = "cmdClearAll" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdEdit.Name = "cmdEdit" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdReplace.Name = "cmdReplace" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Name = "PAGE3" + containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Text1.Name = "Text1" + containerRight.CONTAINER1.containerReplaceText.PageFrame.Top = 25 + containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Alignment = 2 + containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Name = "CHECK1" + containerRight.CONTAINER1.GridFiles.colProcess.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Height = 16 + containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Name = "imageCheck" + containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Width = 50 + containerRight.CONTAINER1.GridFiles.colProcess.LABEL1.Name = "LABEL1" + containerRight.CONTAINER1.GridFiles.colProcess.Name = "colProcess" + containerRight.CONTAINER1.GridFiles.colProcess.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN1.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN1.Name = "COLUMN1" + containerRight.CONTAINER1.GridFiles.COLUMN1.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN10.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN10.Name = "COLUMN10" + containerRight.CONTAINER1.GridFiles.COLUMN10.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN11.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN11.Name = "COLUMN11" + containerRight.CONTAINER1.GridFiles.COLUMN11.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN12.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN12.Name = "COLUMN12" + containerRight.CONTAINER1.GridFiles.COLUMN12.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN13.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN13.Name = "COLUMN13" + containerRight.CONTAINER1.GridFiles.COLUMN13.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN14.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN14.Name = "COLUMN14" + containerRight.CONTAINER1.GridFiles.COLUMN14.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN15.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN15.Name = "COLUMN15" + containerRight.CONTAINER1.GridFiles.COLUMN15.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN16.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN16.Name = "COLUMN16" + containerRight.CONTAINER1.GridFiles.COLUMN16.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN17.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN17.Name = "COLUMN17" + containerRight.CONTAINER1.GridFiles.COLUMN17.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN18.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN18.Name = "COLUMN18" + containerRight.CONTAINER1.GridFiles.COLUMN18.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN19.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN19.Name = "COLUMN19" + containerRight.CONTAINER1.GridFiles.COLUMN19.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN2.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN2.Name = "COLUMN2" + containerRight.CONTAINER1.GridFiles.COLUMN2.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN20.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN20.Name = "COLUMN20" + containerRight.CONTAINER1.GridFiles.COLUMN20.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN21.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN21.Name = "COLUMN21" + containerRight.CONTAINER1.GridFiles.COLUMN21.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN22.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN22.Name = "COLUMN22" + containerRight.CONTAINER1.GridFiles.COLUMN22.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN23.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN23.Name = "COLUMN23" + containerRight.CONTAINER1.GridFiles.COLUMN23.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN25.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN25.Name = "COLUMN25" + containerRight.CONTAINER1.GridFiles.COLUMN25.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN3.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN3.Name = "COLUMN3" + containerRight.CONTAINER1.GridFiles.COLUMN3.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN4.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN4.Name = "COLUMN4" + containerRight.CONTAINER1.GridFiles.COLUMN4.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN5.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN5.Name = "COLUMN5" + containerRight.CONTAINER1.GridFiles.COLUMN5.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN6.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN6.Name = "COLUMN6" + containerRight.CONTAINER1.GridFiles.COLUMN6.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN7.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN7.Name = "COLUMN7" + containerRight.CONTAINER1.GridFiles.COLUMN7.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN8.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN8.Name = "COLUMN8" + containerRight.CONTAINER1.GridFiles.COLUMN8.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.COLUMN9.Header1.Name = "Header1" + containerRight.CONTAINER1.GridFiles.COLUMN9.Name = "COLUMN9" + containerRight.CONTAINER1.GridFiles.COLUMN9.Text1.Name = "Text1" + containerRight.CONTAINER1.GridFiles.Name = "GridFiles" + containerRight.CONTAINER1.lblResults.Name = "lblResults" + containerRight.CONTAINER1.Name = "CONTAINER1" + containerRight.Container2.containerWebControl.ButtonContainer.lblFilePath.Name = "lblFilePath" + containerRight.Container2.containerWebControl.ButtonContainer.Name = "ButtonContainer" + containerRight.Container2.containerWebControl.cmdCompressCodeview.Name = "cmdCompressCodeview" + containerRight.Container2.containerWebControl.cmdMaximizeCodeView.Name = "cmdMaximizeCodeView" + containerRight.Container2.containerWebControl.CMDZOOMIN.Name = "CMDZOOMIN" + containerRight.Container2.containerWebControl.CMDZOOMOUT.Name = "CMDZOOMOUT" + containerRight.Container2.containerWebControl.comboViewPosition.Name = "comboViewPosition" + containerRight.Container2.containerWebControl.lblCodeView.Name = "lblCodeView" + containerRight.Container2.containerWebControl.Name = "containerWebControl" + containerRight.Container2.containerWebControl.OBROWSER.Height = 144 + containerRight.Container2.containerWebControl.OBROWSER.Left = 1 + containerRight.Container2.containerWebControl.OBROWSER.Name = "OBROWSER" + containerRight.Container2.containerWebControl.OBROWSER.Top = 23 + containerRight.Container2.containerWebControl.OBROWSER.Width = 794 + containerRight.Container2.Name = "Container2" + containerRight.Name = "containerRight" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.Splitter1.GRIPPER.Name = "GRIPPER" + containerRight.Splitter1.Name = "Splitter1" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" + containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + containerRight.splitter3.GRIPPER.Name = "GRIPPER" + containerRight.splitter3.Name = "splitter3" + splitter2.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" + splitter2.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" + splitter2.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" + splitter2.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" + splitter2.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" + splitter2.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" + splitter2.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" + splitter2.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" + splitter2.GRIPPER.Name = "GRIPPER" + splitter2.Name = "splitter2" + ProgressBar.BAR.IMAGE1.Name = "IMAGE1" + ProgressBar.BAR.Name = "BAR" + ProgressBar.Box.Name = "Box" + ProgressBar.IMAGE1.Name = "IMAGE1" + ProgressBar.LABEL1.Name = "LABEL1" + ProgressBar.LABEL2.Name = "LABEL2" + ProgressBar.Name = "ProgressBar" + comboSearchExpressionHistoryDropDownArrow.Name = "comboSearchExpressionHistoryDropDownArrow" + timerShowAdvancedForm.Name = "timerShowAdvancedForm" + imgScopeIcon.Name = "imgScopeIcon" + ButtonContainer.chkLimitToProjectFolder.Alignment = 0 + ButtonContainer.chkLimitToProjectFolder.Name = "chkLimitToProjectFolder" + ButtonContainer.chkMatchWholeWord.Alignment = 0 + ButtonContainer.chkMatchWholeWord.Name = "chkMatchWholeWord" + ButtonContainer.chkSubdirectories.Alignment = 0 + ButtonContainer.chkSubdirectories.Name = "chkSubdirectories" + ButtonContainer.cmdAdvanced.Name = "cmdAdvanced" + ButtonContainer.cmdHelp.Name = "cmdHelp" + ButtonContainer.cmdOptions.Name = "cmdOptions" + ButtonContainer.cmdRegexpHelp.Name = "cmdRegexpHelp" + ButtonContainer.cmdSearch.Name = "cmdSearch" + ButtonContainer.comboViewPosition.Name = "comboViewPosition" + ButtonContainer.COMMAND1.Name = "COMMAND1" + ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 + ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + ButtonContainer.CONTAINER1.Name = "CONTAINER1" + ButtonContainer.Container2.CHKAPPLYFILTER.Alignment = 0 + ButtonContainer.Container2.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + ButtonContainer.Container2.Name = "Container2" + ButtonContainer.Container3.CHKAPPLYFILTER.Alignment = 0 + ButtonContainer.Container3.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" + ButtonContainer.Container3.Name = "Container3" + ButtonContainer.lblCodeView.Name = "lblCodeView" + ButtonContainer.lblSearchTime.Name = "lblSearchTime" + ButtonContainer.Name = "ButtonContainer" + +ENDDEFINE diff --git a/Source/Forms/gofish_results_desktop.sc2 b/Source/Forms/gofish_results_desktop.sc2 index 98943be..91f526d 100644 --- a/Source/Forms/gofish_results_desktop.sc2 +++ b/Source/Forms/gofish_results_desktop.sc2 @@ -4,290 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_results_desktop.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="2" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS gf_resultsform1 AS gf_resultsform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - Desktop = .T. - DoCreate = .T. - Name = "Gf_resultsform1" - lblSearch.Name = "lblSearch" - comboSearchExpressionHistory.Name = "comboSearchExpressionHistory" - editSearch.Name = "editSearch" - comboSearchScopeHistory.Name = "comboSearchScopeHistory" - lblScope.Name = "lblScope" - containerLeft.cntVersion.cmdVFPX.Name = "cmdVFPX" - containerLeft.cntVersion.Gf_versionlabel1.Name = "Gf_versionlabel1" - containerLeft.cntVersion.Name = "cntVersion" - containerLeft.Name = "containerLeft" - containerLeft.oTreeView.Height = 513 - containerLeft.oTreeView.Left = 0 - containerLeft.oTreeView.Name = "oTreeView" - containerLeft.oTreeView.Top = 0 - containerLeft.oTreeView.Width = 186 - containerRight.CONTAINER1.chkReplaceMode.Alignment = 0 - containerRight.CONTAINER1.chkReplaceMode.Name = "chkReplaceMode" - containerRight.CONTAINER1.cmdClassBrowser.Name = "cmdClassBrowser" - containerRight.CONTAINER1.cmdEdit.Name = "cmdEdit" - containerRight.CONTAINER1.cmdGoToObject.Name = "cmdGoToObject" - containerRight.CONTAINER1.cmdMenu.Name = "cmdMenu" - containerRight.CONTAINER1.cmdOpenExplorer.Name = "cmdOpenExplorer" - containerRight.CONTAINER1.cmdReport.Name = "cmdReport" - containerRight.CONTAINER1.cmdSearchErrors.Name = "cmdSearchErrors" - containerRight.CONTAINER1.COMMAND1.Name = "COMMAND1" - containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 - containerRight.CONTAINER1.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - containerRight.CONTAINER1.CONTAINER1.cmdFilter.Name = "cmdFilter" - containerRight.CONTAINER1.CONTAINER1.Name = "CONTAINER1" - containerRight.CONTAINER1.Container2.chkCodeOnly.Alignment = 0 - containerRight.CONTAINER1.Container2.chkCodeOnly.Name = "chkCodeOnly" - containerRight.CONTAINER1.Container2.Name = "Container2" - containerRight.CONTAINER1.containerReplaceText.cmdReplaceErrors.Name = "cmdReplaceErrors" - containerRight.CONTAINER1.containerReplaceText.cmdReplaceHistory.Name = "cmdReplaceHistory" - containerRight.CONTAINER1.containerReplaceText.Name = "containerReplaceText" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.Name = "optiongroupReplaceMode" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Left = 158 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Name = "optionAdvancedReplace" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionAdvancedReplace.Top = 5 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Left = 92 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Name = "optionReplaceLine" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceLine.Top = 5 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Left = 5 - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Name = "optionReplaceText" - containerRight.CONTAINER1.containerReplaceText.optiongroupReplaceMode.optionReplaceText.Top = 5 - containerRight.CONTAINER1.containerReplaceText.PageFrame.ErasePage = .T. - containerRight.CONTAINER1.containerReplaceText.PageFrame.Height = 55 - containerRight.CONTAINER1.containerReplaceText.PageFrame.Name = "PageFrame" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdCheckAll.Name = "cmdCheckAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdClearAll.Name = "cmdClearAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.cmdReplace.Name = "cmdReplace" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.editReplaceExpression.Name = "editReplaceExpression" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.LABEL1.Name = "LABEL1" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE1.Name = "PAGE1" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.cmdSaveLine.Name = "cmdSaveLine" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.editReplaceLine.Name = "editReplaceLine" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.lblReplaceLine.Name = "lblReplaceLine" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE2.Name = "PAGE2" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdBrowse.Name = "cmdBrowse" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdCheckAll.Name = "cmdCheckAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdClearAll.Name = "cmdClearAll" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdEdit.Name = "cmdEdit" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.cmdReplace.Name = "cmdReplace" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Name = "PAGE3" - containerRight.CONTAINER1.containerReplaceText.PageFrame.PAGE3.Text1.Name = "Text1" - containerRight.CONTAINER1.containerReplaceText.PageFrame.Top = 25 - containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Alignment = 2 - containerRight.CONTAINER1.GridFiles.colProcess.CHECK1.Name = "CHECK1" - containerRight.CONTAINER1.GridFiles.colProcess.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Height = 16 - containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Name = "imageCheck" - containerRight.CONTAINER1.GridFiles.colProcess.imageCheck.Width = 50 - containerRight.CONTAINER1.GridFiles.colProcess.LABEL1.Name = "LABEL1" - containerRight.CONTAINER1.GridFiles.colProcess.Name = "colProcess" - containerRight.CONTAINER1.GridFiles.colProcess.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN1.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN1.Name = "COLUMN1" - containerRight.CONTAINER1.GridFiles.COLUMN1.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN10.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN10.Name = "COLUMN10" - containerRight.CONTAINER1.GridFiles.COLUMN10.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN11.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN11.Name = "COLUMN11" - containerRight.CONTAINER1.GridFiles.COLUMN11.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN12.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN12.Name = "COLUMN12" - containerRight.CONTAINER1.GridFiles.COLUMN12.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN13.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN13.Name = "COLUMN13" - containerRight.CONTAINER1.GridFiles.COLUMN13.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN14.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN14.Name = "COLUMN14" - containerRight.CONTAINER1.GridFiles.COLUMN14.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN15.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN15.Name = "COLUMN15" - containerRight.CONTAINER1.GridFiles.COLUMN15.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN16.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN16.Name = "COLUMN16" - containerRight.CONTAINER1.GridFiles.COLUMN16.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN17.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN17.Name = "COLUMN17" - containerRight.CONTAINER1.GridFiles.COLUMN17.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN18.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN18.Name = "COLUMN18" - containerRight.CONTAINER1.GridFiles.COLUMN18.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN19.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN19.Name = "COLUMN19" - containerRight.CONTAINER1.GridFiles.COLUMN19.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN2.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN2.Name = "COLUMN2" - containerRight.CONTAINER1.GridFiles.COLUMN2.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN20.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN20.Name = "COLUMN20" - containerRight.CONTAINER1.GridFiles.COLUMN20.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN21.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN21.Name = "COLUMN21" - containerRight.CONTAINER1.GridFiles.COLUMN21.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN22.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN22.Name = "COLUMN22" - containerRight.CONTAINER1.GridFiles.COLUMN22.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN23.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN23.Name = "COLUMN23" - containerRight.CONTAINER1.GridFiles.COLUMN23.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN25.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN25.Name = "COLUMN25" - containerRight.CONTAINER1.GridFiles.COLUMN25.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN3.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN3.Name = "COLUMN3" - containerRight.CONTAINER1.GridFiles.COLUMN3.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN4.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN4.Name = "COLUMN4" - containerRight.CONTAINER1.GridFiles.COLUMN4.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN5.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN5.Name = "COLUMN5" - containerRight.CONTAINER1.GridFiles.COLUMN5.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN6.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN6.Name = "COLUMN6" - containerRight.CONTAINER1.GridFiles.COLUMN6.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN7.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN7.Name = "COLUMN7" - containerRight.CONTAINER1.GridFiles.COLUMN7.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN8.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN8.Name = "COLUMN8" - containerRight.CONTAINER1.GridFiles.COLUMN8.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.COLUMN9.Header1.Name = "Header1" - containerRight.CONTAINER1.GridFiles.COLUMN9.Name = "COLUMN9" - containerRight.CONTAINER1.GridFiles.COLUMN9.Text1.Name = "Text1" - containerRight.CONTAINER1.GridFiles.Name = "GridFiles" - containerRight.CONTAINER1.lblResults.Name = "lblResults" - containerRight.CONTAINER1.Name = "CONTAINER1" - containerRight.Container2.containerWebControl.ButtonContainer.lblFilePath.Name = "lblFilePath" - containerRight.Container2.containerWebControl.ButtonContainer.Name = "ButtonContainer" - containerRight.Container2.containerWebControl.cmdCompressCodeview.Name = "cmdCompressCodeview" - containerRight.Container2.containerWebControl.cmdMaximizeCodeView.Name = "cmdMaximizeCodeView" - containerRight.Container2.containerWebControl.CMDZOOMIN.Name = "CMDZOOMIN" - containerRight.Container2.containerWebControl.CMDZOOMOUT.Name = "CMDZOOMOUT" - containerRight.Container2.containerWebControl.comboViewPosition.Name = "comboViewPosition" - containerRight.Container2.containerWebControl.lblCodeView.Name = "lblCodeView" - containerRight.Container2.containerWebControl.Name = "containerWebControl" - containerRight.Container2.containerWebControl.OBROWSER.Height = 144 - containerRight.Container2.containerWebControl.OBROWSER.Left = 1 - containerRight.Container2.containerWebControl.OBROWSER.Name = "OBROWSER" - containerRight.Container2.containerWebControl.OBROWSER.Top = 23 - containerRight.Container2.containerWebControl.OBROWSER.Width = 794 - containerRight.Container2.Name = "Container2" - containerRight.Name = "containerRight" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.Splitter1.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.Splitter1.GRIPPER.Name = "GRIPPER" - containerRight.Splitter1.Name = "Splitter1" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" - containerRight.splitter3.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - containerRight.splitter3.GRIPPER.Name = "GRIPPER" - containerRight.splitter3.Name = "splitter3" - splitter2.GRIPPER.GRIPPERDOT1.Name = "GRIPPERDOT1" - splitter2.GRIPPER.GRIPPERDOT1.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT1.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT1.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT2.Name = "GRIPPERDOT2" - splitter2.GRIPPER.GRIPPERDOT2.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT2.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT2.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT3.Name = "GRIPPERDOT3" - splitter2.GRIPPER.GRIPPERDOT3.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT3.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT3.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT4.Name = "GRIPPERDOT4" - splitter2.GRIPPER.GRIPPERDOT4.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT4.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT4.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.GRIPPERDOT5.Name = "GRIPPERDOT5" - splitter2.GRIPPER.GRIPPERDOT5.SHAPEDARK.Name = "SHAPEDARK" - splitter2.GRIPPER.GRIPPERDOT5.SHAPELIGHT.Name = "SHAPELIGHT" - splitter2.GRIPPER.GRIPPERDOT5.SHAPEMIDDLE.Name = "SHAPEMIDDLE" - splitter2.GRIPPER.Name = "GRIPPER" - splitter2.Name = "splitter2" - ProgressBar.BAR.IMAGE1.Name = "IMAGE1" - ProgressBar.BAR.Name = "BAR" - ProgressBar.Box.Name = "Box" - ProgressBar.IMAGE1.Name = "IMAGE1" - ProgressBar.LABEL1.Name = "LABEL1" - ProgressBar.LABEL2.Name = "LABEL2" - ProgressBar.Name = "ProgressBar" - comboSearchExpressionHistoryDropDownArrow.Name = "comboSearchExpressionHistoryDropDownArrow" - timerShowAdvancedForm.Name = "timerShowAdvancedForm" - imgScopeIcon.Name = "imgScopeIcon" - ButtonContainer.chkLimitToProjectFolder.Alignment = 0 - ButtonContainer.chkLimitToProjectFolder.Name = "chkLimitToProjectFolder" - ButtonContainer.chkMatchWholeWord.Alignment = 0 - ButtonContainer.chkMatchWholeWord.Name = "chkMatchWholeWord" - ButtonContainer.chkSubdirectories.Alignment = 0 - ButtonContainer.chkSubdirectories.Name = "chkSubdirectories" - ButtonContainer.cmdAdvanced.Name = "cmdAdvanced" - ButtonContainer.cmdHelp.Name = "cmdHelp" - ButtonContainer.cmdOptions.Name = "cmdOptions" - ButtonContainer.cmdRegexpHelp.Name = "cmdRegexpHelp" - ButtonContainer.cmdSearch.Name = "cmdSearch" - ButtonContainer.comboViewPosition.Name = "comboViewPosition" - ButtonContainer.COMMAND1.Name = "COMMAND1" - ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Alignment = 0 - ButtonContainer.CONTAINER1.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - ButtonContainer.CONTAINER1.Name = "CONTAINER1" - ButtonContainer.Container2.CHKAPPLYFILTER.Alignment = 0 - ButtonContainer.Container2.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - ButtonContainer.Container2.Name = "Container2" - ButtonContainer.Container3.CHKAPPLYFILTER.Alignment = 0 - ButtonContainer.Container3.CHKAPPLYFILTER.Name = "CHKAPPLYFILTER" - ButtonContainer.Container3.Name = "Container3" - ButtonContainer.lblCodeView.Name = "lblCodeView" - ButtonContainer.lblSearchTime.Name = "lblSearchTime" - ButtonContainer.Name = "ButtonContainer" +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="gf_resultsform1" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_results_desktop.sct b/Source/Forms/gofish_results_desktop.sct index e81a0be..26c61cb 100644 Binary files a/Source/Forms/gofish_results_desktop.sct and b/Source/Forms/gofish_results_desktop.sct differ diff --git a/Source/Forms/gofish_results_desktop.scx b/Source/Forms/gofish_results_desktop.scx index a6bf3bd..65b3b56 100644 Binary files a/Source/Forms/gofish_results_desktop.scx and b/Source/Forms/gofish_results_desktop.scx differ diff --git a/Source/Forms/gofish_searchhistory.SCT b/Source/Forms/gofish_searchhistory.SCT index e33fe9d..59a421f 100644 Binary files a/Source/Forms/gofish_searchhistory.SCT and b/Source/Forms/gofish_searchhistory.SCT differ diff --git a/Source/Forms/gofish_searchhistory.dataenvironment.sc2 b/Source/Forms/gofish_searchhistory.dataenvironment.sc2 new file mode 100644 index 0000000..4203f42 --- /dev/null +++ b/Source/Forms/gofish_searchhistory.dataenvironment.sc2 @@ -0,0 +1,17 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_searchhistory.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + DataSource = .NULL. + Height = 0 + Left = 0 + Name = "Dataenvironment" + Top = 0 + Width = 0 + +ENDDEFINE diff --git a/Source/Forms/gofish_searchhistory.form1.sc2 b/Source/Forms/gofish_searchhistory.form1.sc2 new file mode 100644 index 0000000..0998ab1 --- /dev/null +++ b/Source/Forms/gofish_searchhistory.form1.sc2 @@ -0,0 +1,323 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="gofish_searchhistory.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS form1 AS gf_baseform OF "..\lib\gofishui.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Grid1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Grid1.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdLoadResults" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdCancel" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="cmdDelete" UniqueID="" Timestamp="" /> + + * + *p: cuni + * + + Caption = "Load search results from search history." + cuisettingsfile = GF_Search_History_Form_Settings.xml + cuni = + DoCreate = .T. + Height = 391 + Left = 0 + Name = "Form1" + ShowTips = .T. + Top = 0 + Width = 748 + WindowType = 1 + _memberdata = + + + + ADD OBJECT 'cmdCancel' AS commandbutton WITH ; + Anchor = 12, ; + Cancel = .T., ; + Caption = "Cancel", ; + Height = 25, ; + Left = 640, ; + Name = "cmdCancel", ; + TabIndex = 6, ; + Top = 360, ; + Width = 100 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'cmdDelete' AS commandbutton WITH ; + Anchor = 4, ; + Caption = "Delete", ; + Height = 25, ; + Left = 135, ; + Name = "cmdDelete", ; + SpecialEffect = 0, ; + TabIndex = 4, ; + ToolTipText = "Erase highlighted search", ; + Top = 360, ; + Width = 109 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'cmdLoadResults' AS commandbutton WITH ; + Anchor = 6, ; + Caption = "Load results", ; + Default = .T., ; + Height = 25, ; + Left = 7, ; + Name = "cmdLoadResults", ; + TabIndex = 3, ; + Top = 360, ; + Width = 109 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Command1' AS commandbutton WITH ; + Anchor = 12, ; + Caption = " Open Folder", ; + Height = 25, ; + Left = 509, ; + Name = "Command1", ; + Picture = ..\images\browsefolder.bmp, ; + PicturePosition = 1, ; + SpecialEffect = 0, ; + TabIndex = 5, ; + ToolTipText = "Open Explorer window to this path.", ; + Top = 360, ; + Width = 118 + *< END OBJECT: BaseClass="commandbutton" /> + + ADD OBJECT 'Grid1' AS grid WITH ; + AllowCellSelection = .F., ; + Anchor = 15, ; + ColumnCount = 4, ; + DeleteMark = .F., ; + Height = 324, ; + HighlightBackColor = 0,0,160, ; + HighlightStyle = 2, ; + Left = 6, ; + Name = "Grid1", ; + Panel = 1, ; + ReadOnly = .T., ; + RecordMark = .F., ; + RecordSource = "gf_SearchHistory", ; + ScrollBars = 2, ; + TabIndex = 2, ; + Top = 24, ; + Width = 734, ; + Column1.ControlSource = "Datetime", ; + Column1.Name = "Column1", ; + Column1.ReadOnly = .T., ; + Column1.Width = 147, ; + Column2.ControlSource = "Search", ; + Column2.Name = "Column2", ; + Column2.ReadOnly = .F., ; + Column2.Width = 165, ; + Column3.ControlSource = "Results", ; + Column3.Name = "Column3", ; + Column3.ReadOnly = .T., ; + Column4.ControlSource = "Scope", ; + Column4.Name = "Column4", ; + Column4.ReadOnly = .T., ; + Column4.Width = 1000 + *< END OBJECT: BaseClass="grid" /> + + ADD OBJECT 'Grid1.Column1.Header1' AS header WITH ; + Caption = "Date", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'Grid1.Column1.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Grid1.Column2.Header1' AS header WITH ; + Caption = "Search expression", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'Grid1.Column2.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .F. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Grid1.Column3.Header1' AS header WITH ; + Caption = "Results", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'Grid1.Column3.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Grid1.Column4.Header1' AS header WITH ; + Caption = "Scope", ; + Name = "Header1" + *< END OBJECT: BaseClass="header" /> + + ADD OBJECT 'Grid1.Column4.Text1' AS textbox WITH ; + BackColor = 255,255,255, ; + BorderStyle = 0, ; + ForeColor = 0,0,0, ; + Margin = 0, ; + Name = "Text1", ; + ReadOnly = .T. + *< END OBJECT: BaseClass="textbox" /> + + ADD OBJECT 'Label1' AS label WITH ; + Caption = "Choose historical search to restore", ; + FontBold = .T., ; + Height = 17, ; + Left = 8, ; + Name = "Label1", ; + TabIndex = 1, ; + Top = 5, ; + Width = 524 + *< END OBJECT: BaseClass="label" /> + + PROCEDURE Init + Lparameters; + toForm,; + tcScope + + Local; + lnAnchor1 As Number,; + lnAnchor2 As Number + + If toForm.lOtherHistory Then + *swap buttons + lnAnchor1 = This.cmdLoadResults.Anchor + lnAnchor2 = This.Command1.Anchor + + This.cmdLoadResults.Anchor = 0 + This.Command1.Anchor = 0 + + This.Command1.Left = This.cmdLoadResults.Left + This.cmdLoadResults.Left = This.cmdCancel.Left-This.Command1.Left-This.cmdLoadResults.Width + + This.Command1.Anchor = m.lnAnchor1 + This.cmdLoadResults.Anchor = m.lnAnchor2 + + This.cmdLoadResults.TabIndex = Bitxor(This.Command1.TabIndex,This.cmdLoadResults.TabIndex) + This.Command1.TabIndex = Bitxor(This.Command1.TabIndex,This.cmdLoadResults.TabIndex) + This.cmdLoadResults.TabIndex = Bitxor(This.Command1.TabIndex,This.cmdLoadResults.TabIndex) + + Endif &&toForm.lOtherHistory + + DoDefault(@toForm) + + If !Empty(m.tcScope) Then + This.Caption = This.Caption + ' (' + m.tcScope + ')' + Endif &&!Empty(m.tcScope) + + ENDPROC + + PROCEDURE KeyPress + LPARAMETERS nKeyCode, nShiftAltCtrl + + If nKeyCOde = 27 + Thisform.Release() + Endif + + ENDPROC + + PROCEDURE Load + If !Used('gf_SearchHistory') + Messagebox("Search history cursor is not present.", 0, "Error:") + Return 0 + Endif + + Set Filter To ! Deleted() In gf_SearchHistory + + Return DoDefault() + + ENDPROC + + PROCEDURE Unload + Return Alltrim(Thisform.cUni) + + ENDPROC + + PROCEDURE cmdCancel.Click + Thisform.cUni = "" + Thisform.Release() + ENDPROC + + PROCEDURE cmdDelete.Click + Local; + lcUni As String,; + lnSelect As Number + + lnSelect = Select() + + Select gf_SearchHistory + lcUni = Alltrim(cUni) + Delete + + Thisform.oForm.DeleteSearchResults(m.lcUni, .F., .F., .F., .F., .F.) + + lnSelect = Select() + + Thisform.Grid1.Refresh + + ENDPROC + + PROCEDURE cmdDelete.Refresh + This.Enabled = !Eof("gf_SearchHistory") + + ENDPROC + + PROCEDURE cmdLoadResults.Click + Thisform.cUni = Alltrim(gf_SearchHistory.cUni) + + Thisform.Release() + ENDPROC + + PROCEDURE cmdLoadResults.Refresh + This.Enabled = !Empty(gf_SearchHistory.cUni) + ENDPROC + + PROCEDURE Command1.Click + Local lcPath + + lcPath = Addbs(Thisform.oForm.cCR_StoreLocal + Thisform.oForm.cSavedSearchResultsFolder) + + GF_OpenExplorerWindow(m.lcPath) + + ENDPROC + + PROCEDURE Grid1.DblClick + Thisform.cmdLoadResults.Click() + ENDPROC + + PROCEDURE Grid1.KeyPress + Lparameters tnKeyCode, tnShiftAltCtrl + + If m.tnKeyCode=13 Then + Thisform.cmdLoadResults.Click() + Endif &&m.tnKeyCode=13 + + ENDPROC + +ENDDEFINE diff --git a/Source/Forms/gofish_searchhistory.sc2 b/Source/Forms/gofish_searchhistory.sc2 index 64b350c..ac440e0 100644 --- a/Source/Forms/gofish_searchhistory.sc2 +++ b/Source/Forms/gofish_searchhistory.sc2 @@ -4,293 +4,8 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="gofish_searchhistory.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> - - DataSource = .NULL. - Height = 0 - Left = 0 - Name = "Dataenvironment" - Top = 0 - Width = 0 - -ENDDEFINE - -DEFINE CLASS form1 AS gf_baseform OF "..\lib\gofishui.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Grid1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column1.Header1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column1.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column2.Header1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column2.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column3.Header1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column3.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column4.Header1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Grid1.Column4.Text1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdLoadResults" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdCancel" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" /> - *< OBJECTDATA: ObjPath="cmdDelete" UniqueID="" Timestamp="" /> - - * - *p: cfolder - * - - Caption = "Load search results from search history." - cfolder = - cuisettingsfile = GF_Search_History_Form_Settings.xml - DoCreate = .T. - Height = 391 - Left = 0 - Name = "FORM1" - ShowTips = .T. - Top = 0 - Width = 748 - WindowType = 1 - _memberdata = - - - - ADD OBJECT 'cmdCancel' AS commandbutton WITH ; - Anchor = 12, ; - Caption = "Cancel", ; - Height = 25, ; - Left = 626, ; - Name = "cmdCancel", ; - TabIndex = 2, ; - Top = 360, ; - Width = 100 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'cmdDelete' AS commandbutton WITH ; - Anchor = 4, ; - Caption = "Delete", ; - Height = 25, ; - Left = 138, ; - Name = "cmdDelete", ; - SpecialEffect = 0, ; - ToolTipText = "Erase highlighted search", ; - Top = 360, ; - Width = 109 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'cmdLoadResults' AS commandbutton WITH ; - Anchor = 6, ; - Caption = "Load results", ; - Height = 25, ; - Left = 7, ; - Name = "cmdLoadResults", ; - TabIndex = 1, ; - Top = 360, ; - Width = 109 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'Command1' AS commandbutton WITH ; - Anchor = 12, ; - Caption = " Open Folder", ; - Height = 25, ; - Left = 486, ; - Name = "Command1", ; - Picture = ..\images\browsefolder.bmp, ; - PicturePosition = 1, ; - SpecialEffect = 0, ; - ToolTipText = "Open Explorer window to this path.", ; - Top = 360, ; - Width = 118 - *< END OBJECT: BaseClass="commandbutton" /> - - ADD OBJECT 'Grid1' AS grid WITH ; - AllowCellSelection = .F., ; - Anchor = 15, ; - ColumnCount = 4, ; - DeleteMark = .F., ; - Height = 324, ; - HighlightBackColor = 0,0,160, ; - HighlightStyle = 2, ; - Left = 6, ; - Name = "Grid1", ; - Panel = 1, ; - ReadOnly = .T., ; - RecordMark = .F., ; - RecordSource = "gf_SearchHistory", ; - ScrollBars = 2, ; - TabIndex = 3, ; - Top = 24, ; - Width = 734, ; - Column1.ControlSource = "", ; - Column1.Name = "Column1", ; - Column1.ReadOnly = .T., ; - Column1.Width = 147, ; - Column2.ControlSource = "", ; - Column2.Name = "Column2", ; - Column2.ReadOnly = .T., ; - Column2.Width = 165, ; - Column3.ControlSource = "", ; - Column3.Name = "Column3", ; - Column3.ReadOnly = .T., ; - Column4.ControlSource = "", ; - Column4.Name = "Column4", ; - Column4.ReadOnly = .T., ; - Column4.Width = 1000 - *< END OBJECT: BaseClass="grid" /> - - ADD OBJECT 'Grid1.Column1.Header1' AS header WITH ; - Caption = "Date", ; - Name = "Header1" - *< END OBJECT: BaseClass="header" /> - - ADD OBJECT 'Grid1.Column1.Text1' AS textbox WITH ; - BackColor = 255,255,255, ; - BorderStyle = 0, ; - ForeColor = 0,0,0, ; - Margin = 0, ; - Name = "Text1", ; - ReadOnly = .T. - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'Grid1.Column2.Header1' AS header WITH ; - Caption = "Search expression", ; - Name = "Header1" - *< END OBJECT: BaseClass="header" /> - - ADD OBJECT 'Grid1.Column2.Text1' AS textbox WITH ; - BackColor = 255,255,255, ; - BorderStyle = 0, ; - ForeColor = 0,0,0, ; - Margin = 0, ; - Name = "Text1", ; - ReadOnly = .T. - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'Grid1.Column3.Header1' AS header WITH ; - Caption = "Results", ; - Name = "Header1" - *< END OBJECT: BaseClass="header" /> - - ADD OBJECT 'Grid1.Column3.Text1' AS textbox WITH ; - BackColor = 255,255,255, ; - BorderStyle = 0, ; - ForeColor = 0,0,0, ; - Margin = 0, ; - Name = "Text1", ; - ReadOnly = .T. - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'Grid1.Column4.Header1' AS header WITH ; - Caption = "Scope", ; - Name = "Header1" - *< END OBJECT: BaseClass="header" /> - - ADD OBJECT 'Grid1.Column4.Text1' AS textbox WITH ; - BackColor = 255,255,255, ; - BorderStyle = 0, ; - ForeColor = 0,0,0, ; - Margin = 0, ; - Name = "Text1", ; - ReadOnly = .T. - *< END OBJECT: BaseClass="textbox" /> - - ADD OBJECT 'Label1' AS label WITH ; - Caption = "Choose historical search to restore", ; - FontBold = .T., ; - Height = 17, ; - Left = 8, ; - Name = "Label1", ; - TabIndex = 4, ; - Top = 5, ; - Width = 524 - *< END OBJECT: BaseClass="label" /> - - PROCEDURE KeyPress - LPARAMETERS nKeyCode, nShiftAltCtrl - - If nKeyCOde = 27 - Thisform.Release() - Endif - - ENDPROC - - PROCEDURE Load - If !Used('gf_SearchHistory') - Messagebox("Search history cursor is not present.", 0, "Error:") - Return 0 - Endif - - Set Filter To ! Deleted() In gf_SearchHistory - - Return DoDefault() - - ENDPROC - - PROCEDURE Unload - Return Alltrim(Thisform.cFolder) - - ENDPROC - - PROCEDURE cmdCancel.Click - Thisform.cFolder = "" - Thisform.Release() - ENDPROC - - PROCEDURE cmdDelete.Click - Local lcPath, lnResponse - - lcPath = Alltrim(gf_SearchHistory.SearchHistoryFolder) - - If Empty(lcPath) - Messagebox("gf_SearchHistory.SearchHistoryFolder value is an empty String. Cannot delete. No action will be taken.", 16, "Cannot delete...") - Return - Endif - - lnResponse = Messagebox("Are you sure you want to delete folder: " + Chr(13) + Chr(13) + lcPath, 3 + 32 , "Confirm delete operation...") - - If lnResponse != 6 - Return - Endif - - If GF_RemoveFolder(m.lcPath) - Delete In gf_SearchHistory - Else - Messagebox('Unable to delete folder "' + m.lcPath + '"', 16, 'Unable to delete folder') - Endif - - Thisform.Grid1.SetFocus() - Thisform.Refresh() - - ENDPROC - - PROCEDURE cmdDelete.Refresh - This.Enabled = !Empty(gf_SearchHistory.SearchHistoryFolder) - ENDPROC - - PROCEDURE cmdLoadResults.Click - Thisform.cFolder = Alltrim(gf_SearchHistory.SearchHistoryFolder) - - Thisform.Release() - ENDPROC - - PROCEDURE cmdLoadResults.Refresh - This.Enabled = !Empty(gf_SearchHistory.SearchHistoryFolder) - ENDPROC - - PROCEDURE Command1.Click - Local lcFolder, lcPath - - lcPath = Alltrim(gf_SearchHistory.SearchHistoryFolder) - - GF_OpenExplorerWindow(lcPath) - ENDPROC - - PROCEDURE Command1.Refresh - This.Enabled = !Empty(gf_SearchHistory.SearchHistoryFolder) - ENDPROC - - PROCEDURE Grid1.DblClick - Thisform.cmdLoadResults.Click() - ENDPROC +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="dataenvironment" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="form1" Baseclass="form" /> -ENDDEFINE +* \ No newline at end of file diff --git a/Source/Forms/gofish_searchhistory.scx b/Source/Forms/gofish_searchhistory.scx index 8eee6ad..d94a515 100644 Binary files a/Source/Forms/gofish_searchhistory.scx and b/Source/Forms/gofish_searchhistory.scx differ diff --git a/Source/GoFish5.APP b/Source/GoFish5.APP index 620969f..23630c0 100644 Binary files a/Source/GoFish5.APP and b/Source/GoFish5.APP differ diff --git a/Source/GoFish5.PJT b/Source/GoFish5.PJT index 5c3098a..81829ee 100644 Binary files a/Source/GoFish5.PJT and b/Source/GoFish5.PJT differ diff --git a/Source/GoFish5.pj2 b/Source/GoFish5.pj2 index 31e0a0b..c4d3e2b 100644 --- a/Source/GoFish5.pj2 +++ b/Source/GoFish5.pj2 @@ -72,8 +72,7 @@ loProject = _VFP.Projects('GoFish5.pjx') WITH loProject.FILES .ADD('buildgofish.h') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('buildgofish.prg') && *< FileMetadata: Type="P" Cpid="1252" Timestamp="0" ID="0" ObjRev="544" User="" /> - .ADD('changelog_ver_4.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> - .ADD('changelog_ver_5.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> + .ADD('changelog_thor.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('css\gofish - black.css') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('css\gofish - color.css') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('css\gofish css readme.txt') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> @@ -110,8 +109,10 @@ WITH loProject.FILES .ADD('images\fish13.ico') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gf_dnarrow.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gf_folder_icon_16.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> + .ADD('images\gf_folderpick_icon_16.bmp') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gf_large_letter.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gf_project_icon_16.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> + .ADD('images\gf_projectpick_icon_16.bmp') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gf_small_letter.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gf_uparrow.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('images\gofish16.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> @@ -180,8 +181,7 @@ WITH loProject.FILES * .ITEM(lcCurdir + 'buildgofish.h').Exclude = .T. .ITEM(lcCurdir + 'buildgofish.prg').Exclude = .T. - .ITEM(lcCurdir + 'changelog_ver_4.txt').Exclude = .T. - .ITEM(lcCurdir + 'changelog_ver_5.txt').Exclude = .T. + .ITEM(lcCurdir + 'changelog_thor.txt').Exclude = .T. .ITEM(lcCurdir + 'gofishgeneratescc.prg').Exclude = .T. .ITEM(lcCurdir + 'lib\gofish.h').Exclude = .T. * diff --git a/Source/GoFish5.pjx b/Source/GoFish5.pjx index fc0d508..2d1285d 100644 Binary files a/Source/GoFish5.pjx and b/Source/GoFish5.pjx differ diff --git a/Source/HTML/GoFish.js.bak b/Source/HTML/GoFish.js.bak new file mode 100644 index 0000000..ede4276 --- /dev/null +++ b/Source/HTML/GoFish.js.bak @@ -0,0 +1,22 @@ + \ No newline at end of file diff --git a/Source/Images/SAVE.BMP b/Source/Images/SAVE.BMP new file mode 100644 index 0000000..9217b49 Binary files /dev/null and b/Source/Images/SAVE.BMP differ diff --git a/Source/Images/gf_folderpick_icon_16.bmp b/Source/Images/gf_folderpick_icon_16.bmp new file mode 100644 index 0000000..7ae13f1 Binary files /dev/null and b/Source/Images/gf_folderpick_icon_16.bmp differ diff --git a/Source/Images/gf_projectpick_icon_16.bmp b/Source/Images/gf_projectpick_icon_16.bmp new file mode 100644 index 0000000..c557cf2 Binary files /dev/null and b/Source/Images/gf_projectpick_icon_16.bmp differ diff --git a/Source/Lib/VFP/FFC/_base._activedoc.vc2 b/Source/Lib/VFP/FFC/_base._activedoc.vc2 new file mode 100644 index 0000000..7671013 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._activedoc.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _activedoc AS activedoc && Foundation ActiveDoc class. + *< CLASSDATA: Baseclass="activedoc" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 68 + Name = "_activedoc" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 68 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._checkbox.vc2 b/Source/Lib/VFP/FFC/_base._checkbox.vc2 new file mode 100644 index 0000000..64ba6bd --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._checkbox.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _checkbox AS checkbox && Foundation CheckBox class. + *< CLASSDATA: Baseclass="checkbox" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Check1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 17 + Name = "_checkbox" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 60 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._collection.vc2 b/Source/Lib/VFP/FFC/_base._collection.vc2 new file mode 100644 index 0000000..0e65277 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._collection.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _collection AS collection && Foundation Collection class. + *< CLASSDATA: Baseclass="collection" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_collection" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._combobox.vc2 b/Source/Lib/VFP/FFC/_base._combobox.vc2 new file mode 100644 index 0000000..00c557f --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._combobox.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _combobox AS combobox && Foundation ComboBox class. + *< CLASSDATA: Baseclass="combobox" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 24 + Name = "_combobox" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 100 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._commandbutton.vc2 b/Source/Lib/VFP/FFC/_base._commandbutton.vc2 new file mode 100644 index 0000000..052cd48 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._commandbutton.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _commandbutton AS commandbutton && Foundation CommandButton class. + *< CLASSDATA: Baseclass="commandbutton" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Command1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 27 + Name = "_commandbutton" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 84 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._commandgroup.vc2 b/Source/Lib/VFP/FFC/_base._commandgroup.vc2 new file mode 100644 index 0000000..af41456 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._commandgroup.vc2 @@ -0,0 +1,238 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _commandgroup AS commandgroup && Foundation CommandGroup class. + *< CLASSDATA: Baseclass="commandgroup" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + ButtonCount = 2 + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 66 + Name = "_commandgroup" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + Value = 1 + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 94 + Command1.Caption = "Command1" + Command1.Height = 27 + Command1.Left = 5 + Command1.Name = "Command1" + Command1.Top = 5 + Command1.Width = 84 + Command2.Caption = "Command2" + Command2.Height = 27 + Command2.Left = 5 + Command2.Name = "Command2" + Command2.Top = 34 + Command2.Width = 84 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._container.vc2 b/Source/Lib/VFP/FFC/_base._container.vc2 new file mode 100644 index 0000000..f9412bf --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._container.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _container AS container && Foundation Container class. + *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 200 + Name = "_container" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 200 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._control.vc2 b/Source/Lib/VFP/FFC/_base._control.vc2 new file mode 100644 index 0000000..498ad73 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._control.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _control AS control && Foundation Control class. + *< CLASSDATA: Baseclass="control" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 22 + Name = "_control" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 24 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._cursor2.vc2 b/Source/Lib/VFP/FFC/_base._cursor2.vc2 new file mode 100644 index 0000000..fc21810 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._cursor2.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _cursor2 AS cursor && Foundation Cursor class. + *< CLASSDATA: Baseclass="cursor" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_cursor2" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._cursoradapter.vc2 b/Source/Lib/VFP/FFC/_base._cursoradapter.vc2 new file mode 100644 index 0000000..d2e7f59 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._cursoradapter.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _cursoradapter AS cursoradapter && Foundation CursorAdapter class. + *< CLASSDATA: Baseclass="cursoradapter" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 22 + Name = "_cursoradapter" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._custom.vc2 b/Source/Lib/VFP/FFC/_base._custom.vc2 new file mode 100644 index 0000000..ff396f9 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._custom.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _custom AS custom && Foundation Custom class. + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 22 + Name = "_custom" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 24 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._dataenvironment2.vc2 b/Source/Lib/VFP/FFC/_base._dataenvironment2.vc2 new file mode 100644 index 0000000..daca999 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._dataenvironment2.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _dataenvironment2 AS dataenvironment && Foundation DataEnvironment class. + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + DataSource = .NULL. + Height = 22 + Name = "_dataenvironment2" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 24 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._editbox.vc2 b/Source/Lib/VFP/FFC/_base._editbox.vc2 new file mode 100644 index 0000000..66cc9ed --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._editbox.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _editbox AS editbox && Foundation EditBox class. + *< CLASSDATA: Baseclass="editbox" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 53 + Name = "_editbox" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 100 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._form.vc2 b/Source/Lib/VFP/FFC/_base._form.vc2 new file mode 100644 index 0000000..c291a56 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._form.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _form AS form && Foundation Form class. + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Form1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + DoCreate = .T. + Name = "_form" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + ShowWindow = 1 + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._formset.vc2 b/Source/Lib/VFP/FFC/_base._formset.vc2 new file mode 100644 index 0000000..55aea8e --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._formset.vc2 @@ -0,0 +1,413 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _formset AS formset && Foundation FormSet class. + *< CLASSDATA: Baseclass="formset" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Form1" UniqueID="" Timestamp="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Name = "_formset" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + + ADD OBJECT 'Form1' AS _form WITH ; + builder = , ; + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm"), ; + Caption = "Form1", ; + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg"), ; + cversion = , ; + DoCreate = .T., ; + Name = "Form1", ; + ninstances = 0, ; + nobjectrefcount = 0, ; + ohost = .NULL., ; + vresult = .T. + *< END OBJECT: ClassLib="_base.vcx" BaseClass="form" /> + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + + PROCEDURE Form1.addtoproject + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Form1.Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Form1.Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Form1.Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE Form1.newinstance + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE Form1.ninstances_access + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE Form1.ninstances_assign + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE Form1.nobjectrefcount_access + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE Form1.nobjectrefcount_assign + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE Form1.release + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE Form1.releaseobjrefs + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE Form1.sethost + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE Form1.setobjectref + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE Form1.setobjectrefs + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._grid.vc2 b/Source/Lib/VFP/FFC/_base._grid.vc2 new file mode 100644 index 0000000..93e5795 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._grid.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _grid AS grid && Foundation Grid class. + *< CLASSDATA: Baseclass="grid" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 200 + Name = "_grid" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 320 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._hyperlink.vc2 b/Source/Lib/VFP/FFC/_base._hyperlink.vc2 new file mode 100644 index 0000000..8919b37 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._hyperlink.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _hyperlink AS hyperlink && Foundation Hyperlink class. + *< CLASSDATA: Baseclass="hyperlink" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_hyperlink" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._image.vc2 b/Source/Lib/VFP/FFC/_base._image.vc2 new file mode 100644 index 0000000..170d609 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._image.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _image AS image && Foundation Image class. + *< CLASSDATA: Baseclass="image" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 68 + Name = "_image" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 68 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._label.vc2 b/Source/Lib/VFP/FFC/_base._label.vc2 new file mode 100644 index 0000000..be35e24 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._label.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _label AS label && Foundation Label class. + *< CLASSDATA: Baseclass="label" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Label1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 16 + Name = "_label" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 40 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._line.vc2 b/Source/Lib/VFP/FFC/_base._line.vc2 new file mode 100644 index 0000000..c628a42 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._line.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _line AS line && Foundation Line class. + *< CLASSDATA: Baseclass="line" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 68 + Name = "_line" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 68 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._listbox.vc2 b/Source/Lib/VFP/FFC/_base._listbox.vc2 new file mode 100644 index 0000000..37b0dba --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._listbox.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _listbox AS listbox && Foundation Listbox class. + *< CLASSDATA: Baseclass="listbox" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 170 + Name = "_listbox" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 100 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._optionbutton2.vc2 b/Source/Lib/VFP/FFC/_base._optionbutton2.vc2 new file mode 100644 index 0000000..45b3bc0 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._optionbutton2.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _optionbutton2 AS optionbutton && Foundation OptionButton class. + *< CLASSDATA: Baseclass="optionbutton" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Option1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 17 + Name = "_optionbutton2" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 61 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._optiongroup.vc2 b/Source/Lib/VFP/FFC/_base._optiongroup.vc2 new file mode 100644 index 0000000..dc08bd9 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._optiongroup.vc2 @@ -0,0 +1,239 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _optiongroup AS optiongroup && Foundation OptionGroup class. + *< CLASSDATA: Baseclass="optiongroup" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + ButtonCount = 2 + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 46 + Name = "_optiongroup" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + Value = 1 + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 71 + Option1.Caption = "Option1" + Option1.Height = 17 + Option1.Left = 5 + Option1.Name = "Option1" + Option1.Top = 5 + Option1.Value = 1 + Option1.Width = 61 + Option2.Caption = "Option2" + Option2.Height = 17 + Option2.Left = 5 + Option2.Name = "Option2" + Option2.Top = 24 + Option2.Width = 61 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._page2.vc2 b/Source/Lib/VFP/FFC/_base._page2.vc2 new file mode 100644 index 0000000..0fc5636 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._page2.vc2 @@ -0,0 +1,225 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _page2 AS page && Foundation Page class. + *< CLASSDATA: Baseclass="page" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Page1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 16 + Name = "_page2" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 60 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._pageframe.vc2 b/Source/Lib/VFP/FFC/_base._pageframe.vc2 new file mode 100644 index 0000000..0ff0b40 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._pageframe.vc2 @@ -0,0 +1,230 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _pageframe AS pageframe && Foundation PageFrame class. + *< CLASSDATA: Baseclass="pageframe" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + ErasePage = .T. + Height = 169 + Name = "_pageframe" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + PageCount = 2 + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 241 + Page1.Caption = "Page1" + Page1.Name = "Page1" + Page2.Caption = "Page2" + Page2.Name = "Page2" + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._projecthook.vc2 b/Source/Lib/VFP/FFC/_base._projecthook.vc2 new file mode 100644 index 0000000..14b9ea0 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._projecthook.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _projecthook AS projecthook && Foundation ProjectHook class. + *< CLASSDATA: Baseclass="projecthook" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 68 + Name = "_projecthook" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 68 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._relation2.vc2 b/Source/Lib/VFP/FFC/_base._relation2.vc2 new file mode 100644 index 0000000..5467e9e --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._relation2.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _relation2 AS relation && Foundation Relation class. + *< CLASSDATA: Baseclass="relation" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_relation2" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._separator.vc2 b/Source/Lib/VFP/FFC/_base._separator.vc2 new file mode 100644 index 0000000..4d87924 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._separator.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _separator AS separator && Foundation Separator class. + *< CLASSDATA: Baseclass="separator" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 0 + Name = "_separator" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 0 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._shape.vc2 b/Source/Lib/VFP/FFC/_base._shape.vc2 new file mode 100644 index 0000000..8359a56 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._shape.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _shape AS shape && Foundation Shape class. + *< CLASSDATA: Baseclass="shape" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 68 + Name = "_shape" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 68 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._spinner.vc2 b/Source/Lib/VFP/FFC/_base._spinner.vc2 new file mode 100644 index 0000000..c19c6f8 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._spinner.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _spinner AS spinner && Foundation Spinner class. + *< CLASSDATA: Baseclass="spinner" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 24 + Name = "_spinner" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 120 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._textbox.vc2 b/Source/Lib/VFP/FFC/_base._textbox.vc2 new file mode 100644 index 0000000..9cda13e --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._textbox.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _textbox AS textbox && Foundation TextBox class. + *< CLASSDATA: Baseclass="textbox" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_textbox" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 100 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._timer.vc2 b/Source/Lib/VFP/FFC/_base._timer.vc2 new file mode 100644 index 0000000..f6953e2 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._timer.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _timer AS timer && Foundation Timer class. + *< CLASSDATA: Baseclass="timer" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_timer" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._toolbar.vc2 b/Source/Lib/VFP/FFC/_base._toolbar.vc2 new file mode 100644 index 0000000..e38e693 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._toolbar.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _toolbar AS toolbar && Foundation Toolbar class. + *< CLASSDATA: Baseclass="toolbar" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + Caption = "Toolbar1" + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Name = "_toolbar" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + ShowWindow = 1 + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._xmladapter.vc2 b/Source/Lib/VFP/FFC/_base._xmladapter.vc2 new file mode 100644 index 0000000..82230fa --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._xmladapter.vc2 @@ -0,0 +1,235 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _xmladapter AS xmladapter && Foundation XMLAdapter class. + *< CLASSDATA: Baseclass="xmladapter" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Tables" UniqueID="" Timestamp="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 56 + Name = "_xmladapter" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 56 + + ADD OBJECT 'Tables' AS collection WITH ; + Height = 23, ; + Left = 23, ; + Name = "Tables", ; + Top = 23, ; + Width = 23 + *< END OBJECT: BaseClass="collection" /> + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._xmlfield.vc2 b/Source/Lib/VFP/FFC/_base._xmlfield.vc2 new file mode 100644 index 0000000..8dc80ff --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._xmlfield.vc2 @@ -0,0 +1,224 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _xmlfield AS xmlfield && Foundation XMLField class. + *< CLASSDATA: Baseclass="xmlfield" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 23 + Name = "_xmlfield" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 23 + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base._xmltable.vc2 b/Source/Lib/VFP/FFC/_base._xmltable.vc2 new file mode 100644 index 0000000..728d8c7 --- /dev/null +++ b/Source/Lib/VFP/FFC/_base._xmltable.vc2 @@ -0,0 +1,235 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _xmltable AS xmltable && Foundation XMLTable class. + *< CLASSDATA: Baseclass="xmltable" Timestamp="" Scale="Pixels" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Fields" UniqueID="" Timestamp="" /> + + * + *m: addtoproject && Dummy code for adding files to project. + *m: newinstance && Returns new instance of object. + *m: ninstances_access && Access method for nInstances property. + *m: ninstances_assign && Assign method for nInstances property. + *m: nobjectrefcount_access && Access method for nObjectRefCount property. + *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. + *m: release && Releases object from memory. + *m: releaseobjrefs && Releases all object references of aObjectRefs array. + *m: sethost && Set oHost property to form reference object. + *m: setobjectref && Set object reference to specific property. + *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. + *p: builder && Bulder property. + *p: builderx && BuilderX property. + *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. + *p: cversion && Version property. + *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. + *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. + *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. + *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. + *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. + *p: ninstances && Number of instances. + *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. + *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. + *a: aobjectrefs[1,3] && Array of object references properties. + * + + builder = && Bulder property. + builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. + csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. + cversion = && Version property. + Height = 56 + Name = "_xmltable" + ninstances = 0 && Number of instances. + nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. + ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. + vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. + Width = 56 + + ADD OBJECT 'Fields' AS collection WITH ; + Height = 23, ; + Left = 23, ; + Name = "Fields", ; + Top = 23, ; + Width = 23 + *< END OBJECT: BaseClass="collection" /> + + PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. + *-- Dummy code for adding files to project. + RETURN + + DO SetObjRf.prg + + ENDPROC + + PROCEDURE Destroy + IF this.lRelease + RETURN .F. + ENDIF + this.lRelease=.T. + this.ReleaseObjRefs + this.oHost=.NULL. + + ENDPROC + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + lcOnError=UPPER(ALLTRIM(ON("ERROR"))) + IF NOT EMPTY(lcOnError) + lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; + "PROGRAM()","cMethod"),"LINENO()","nLine") + &lcOnError + RETURN + ENDIF + lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; + "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; + "Method: "+LOWER(ALLTRIM(cMethod)) + lcCodeLineMsg=MESSAGE(1) + IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." + lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) + IF NOT EMPTY(lcCodeLineMsg) + lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg + ENDIF + ENDIF + WAIT CLEAR + MESSAGEBOX(lcErrorMsg,16,_screen.Caption) + ERROR nError + + ENDPROC + + PROCEDURE Init + IF this.lSetHost + this.SetHost + ENDIF + IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) + RETURN .F. + ENDIF + + ENDPROC + + PROCEDURE newinstance && Returns new instance of object. + LPARAMETERS tnDataSessionID + LOCAL oNewObject,lnLastDataSessionID + + lnLastDataSessionID=SET("DATASESSION") + IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 + SET DATASESSION TO tnDataSessionID + ENDIF + oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) + SET DATASESSION TO (lnLastDataSessionID) + RETURN oNewObject + + ENDPROC + + PROCEDURE ninstances_access && Access method for nInstances property. + LOCAL laInstances[1] + + RETURN AINSTANCE(laInstances,this.Class) + + ENDPROC + + PROCEDURE ninstances_assign && Assign method for nInstances property. + LPARAMETERS vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. + LOCAL lnObjectRefCount + + lnObjectRefCount=ALEN(this.aObjectRefs,1) + IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) + lnObjectRefCount=0 + ENDIF + RETURN lnObjectRefCount + + ENDPROC + + PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. + LPARAMETERS m.vNewVal + + ERROR 1743 + + ENDPROC + + PROCEDURE release && Releases object from memory. + LOCAL lcBaseClass + + IF this.lRelease + NODEFAULT + RETURN .F. + ENDIF + this.lRelease=.T. + lcBaseClass=LOWER(this.BaseClass) + this.oHost=.NULL. + this.ReleaseObjRefs + IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") + RELEASE this + ENDIF + + ENDPROC + + PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. + LOCAL lcName,oObject,lnCount + + IF this.nObjectRefCount=0 + RETURN + ENDIF + FOR lnCount = this.nObjectRefCount TO 1 STEP -1 + lcName=this.aObjectRefs[lnCount,1] + IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" + LOOP + ENDIF + oObject=this.&lcName + IF ISNULL(oObject) + LOOP + ENDIF + IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) + oObject.Release + ENDIF + IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) + oObject.oHost=.NULL. + ENDIF + this.&lcName=.NULL. + oObject=.NULL. + ENDFOR + DIMENSION this.aObjectRefs[1,3] + this.aObjectRefs="" + + ENDPROC + + PROCEDURE sethost && Set oHost property to form reference object. + this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) + + ENDPROC + + PROCEDURE setobjectref && Set object reference to specific property. + LPARAMETERS tcName,tvClass,tvClassLibrary + LOCAL lvResult + + this.vResult=.T. + DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) + lvResult=this.vResult + this.vResult=.T. + RETURN lvResult + + ENDPROC + + PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. + LPARAMETERS toObject + + RETURN + + ENDPROC + +ENDDEFINE diff --git a/Source/Lib/VFP/FFC/_base.vc2 b/Source/Lib/VFP/FFC/_base.vc2 index 951f156..b031360 100644 --- a/Source/Lib/VFP/FFC/_base.vc2 +++ b/Source/Lib/VFP/FFC/_base.vc2 @@ -4,8140 +4,42 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="_base.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -* -DEFINE CLASS _activedoc AS activedoc && Foundation ActiveDoc class. - *< CLASSDATA: Baseclass="activedoc" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 68 - Name = "_activedoc" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 68 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _checkbox AS checkbox && Foundation CheckBox class. - *< CLASSDATA: Baseclass="checkbox" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Check1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 17 - Name = "_checkbox" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 60 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _collection AS collection && Foundation Collection class. - *< CLASSDATA: Baseclass="collection" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_collection" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _combobox AS combobox && Foundation ComboBox class. - *< CLASSDATA: Baseclass="combobox" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 24 - Name = "_combobox" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 100 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _commandbutton AS commandbutton && Foundation CommandButton class. - *< CLASSDATA: Baseclass="commandbutton" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Command1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 27 - Name = "_commandbutton" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 84 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _commandgroup AS commandgroup && Foundation CommandGroup class. - *< CLASSDATA: Baseclass="commandgroup" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - ButtonCount = 2 - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 66 - Name = "_commandgroup" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - Value = 1 - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 94 - Command1.Caption = "Command1" - Command1.Height = 27 - Command1.Left = 5 - Command1.Name = "Command1" - Command1.Top = 5 - Command1.Width = 84 - Command2.Caption = "Command2" - Command2.Height = 27 - Command2.Left = 5 - Command2.Name = "Command2" - Command2.Top = 34 - Command2.Width = 84 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _container AS container && Foundation Container class. - *< CLASSDATA: Baseclass="container" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 200 - Name = "_container" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 200 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _control AS control && Foundation Control class. - *< CLASSDATA: Baseclass="control" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 22 - Name = "_control" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 24 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _cursor2 AS cursor && Foundation Cursor class. - *< CLASSDATA: Baseclass="cursor" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_cursor2" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _cursoradapter AS cursoradapter && Foundation CursorAdapter class. - *< CLASSDATA: Baseclass="cursoradapter" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 22 - Name = "_cursoradapter" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _custom AS custom && Foundation Custom class. - *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 22 - Name = "_custom" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 24 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _dataenvironment2 AS dataenvironment && Foundation DataEnvironment class. - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - DataSource = .NULL. - Height = 22 - Name = "_dataenvironment2" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 24 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _editbox AS editbox && Foundation EditBox class. - *< CLASSDATA: Baseclass="editbox" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 53 - Name = "_editbox" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 100 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _form AS form && Foundation Form class. - *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Form1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - DoCreate = .T. - Name = "_form" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - ShowWindow = 1 - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _formset AS formset && Foundation FormSet class. - *< CLASSDATA: Baseclass="formset" Timestamp="" Scale="" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Form1" UniqueID="" Timestamp="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Name = "_formset" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - - ADD OBJECT 'Form1' AS _form WITH ; - builder = , ; - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm"), ; - Caption = "Form1", ; - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg"), ; - cversion = , ; - DoCreate = .T., ; - Name = "Form1", ; - ninstances = 0, ; - nobjectrefcount = 0, ; - ohost = .NULL., ; - vresult = .T. - *< END OBJECT: ClassLib="_base.vcx" BaseClass="form" /> - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - - PROCEDURE Form1.addtoproject - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Form1.Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Form1.Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Form1.Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE Form1.newinstance - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE Form1.ninstances_access - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE Form1.ninstances_assign - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE Form1.nobjectrefcount_access - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE Form1.nobjectrefcount_assign - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE Form1.release - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE Form1.releaseobjrefs - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE Form1.sethost - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE Form1.setobjectref - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE Form1.setobjectrefs - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _grid AS grid && Foundation Grid class. - *< CLASSDATA: Baseclass="grid" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 200 - Name = "_grid" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 320 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _hyperlink AS hyperlink && Foundation Hyperlink class. - *< CLASSDATA: Baseclass="hyperlink" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_hyperlink" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _image AS image && Foundation Image class. - *< CLASSDATA: Baseclass="image" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 68 - Name = "_image" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 68 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _label AS label && Foundation Label class. - *< CLASSDATA: Baseclass="label" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Label1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 16 - Name = "_label" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 40 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _line AS line && Foundation Line class. - *< CLASSDATA: Baseclass="line" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 68 - Name = "_line" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 68 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _listbox AS listbox && Foundation Listbox class. - *< CLASSDATA: Baseclass="listbox" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 170 - Name = "_listbox" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 100 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _optionbutton2 AS optionbutton && Foundation OptionButton class. - *< CLASSDATA: Baseclass="optionbutton" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Option1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 17 - Name = "_optionbutton2" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 61 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _optiongroup AS optiongroup && Foundation OptionGroup class. - *< CLASSDATA: Baseclass="optiongroup" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - ButtonCount = 2 - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 46 - Name = "_optiongroup" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - Value = 1 - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 71 - Option1.Caption = "Option1" - Option1.Height = 17 - Option1.Left = 5 - Option1.Name = "Option1" - Option1.Top = 5 - Option1.Value = 1 - Option1.Width = 61 - Option2.Caption = "Option2" - Option2.Height = 17 - Option2.Left = 5 - Option2.Name = "Option2" - Option2.Top = 24 - Option2.Width = 61 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _page2 AS page && Foundation Page class. - *< CLASSDATA: Baseclass="page" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Page1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 16 - Name = "_page2" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 60 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _pageframe AS pageframe && Foundation PageFrame class. - *< CLASSDATA: Baseclass="pageframe" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - ErasePage = .T. - Height = 169 - Name = "_pageframe" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - PageCount = 2 - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 241 - Page1.Caption = "Page1" - Page1.Name = "Page1" - Page2.Caption = "Page2" - Page2.Name = "Page2" - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _projecthook AS projecthook && Foundation ProjectHook class. - *< CLASSDATA: Baseclass="projecthook" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 68 - Name = "_projecthook" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 68 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _relation2 AS relation && Foundation Relation class. - *< CLASSDATA: Baseclass="relation" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_relation2" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _separator AS separator && Foundation Separator class. - *< CLASSDATA: Baseclass="separator" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 0 - Name = "_separator" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 0 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _shape AS shape && Foundation Shape class. - *< CLASSDATA: Baseclass="shape" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 68 - Name = "_shape" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 68 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _spinner AS spinner && Foundation Spinner class. - *< CLASSDATA: Baseclass="spinner" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 24 - Name = "_spinner" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 120 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _textbox AS textbox && Foundation TextBox class. - *< CLASSDATA: Baseclass="textbox" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_textbox" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 100 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _timer AS timer && Foundation Timer class. - *< CLASSDATA: Baseclass="timer" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_timer" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _toolbar AS toolbar && Foundation Toolbar class. - *< CLASSDATA: Baseclass="toolbar" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - Caption = "Toolbar1" - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Name = "_toolbar" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - ShowWindow = 1 - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _xmladapter AS xmladapter && Foundation XMLAdapter class. - *< CLASSDATA: Baseclass="xmladapter" Timestamp="" Scale="Pixels" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Tables" UniqueID="" Timestamp="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 56 - Name = "_xmladapter" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 56 - - ADD OBJECT 'Tables' AS collection WITH ; - Height = 23, ; - Left = 23, ; - Name = "Tables", ; - Top = 23, ; - Width = 23 - *< END OBJECT: BaseClass="collection" /> - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _xmlfield AS xmlfield && Foundation XMLField class. - *< CLASSDATA: Baseclass="xmlfield" Timestamp="" Scale="Pixels" Uniqueid="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 23 - Name = "_xmlfield" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 23 - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE - -DEFINE CLASS _xmltable AS xmltable && Foundation XMLTable class. - *< CLASSDATA: Baseclass="xmltable" Timestamp="" Scale="Pixels" Uniqueid="" /> - - *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder - *< OBJECTDATA: ObjPath="Fields" UniqueID="" Timestamp="" /> - - * - *m: addtoproject && Dummy code for adding files to project. - *m: newinstance && Returns new instance of object. - *m: ninstances_access && Access method for nInstances property. - *m: ninstances_assign && Assign method for nInstances property. - *m: nobjectrefcount_access && Access method for nObjectRefCount property. - *m: nobjectrefcount_assign && Assign method for nObjectRefCount property. - *m: release && Releases object from memory. - *m: releaseobjrefs && Releases all object references of aObjectRefs array. - *m: sethost && Set oHost property to form reference object. - *m: setobjectref && Set object reference to specific property. - *m: setobjectrefs && Place holder method for listing SetObjectRef method calls. - *p: builder && Bulder property. - *p: builderx && BuilderX property. - *p: csetobjrefprogram && Program to be called when when setting an object references via the SetObjectRef method. - *p: cversion && Version property. - *p: lautobuilder && Specifies if custom FFC builder is automatically launched when instance is added to a container in design mode, even if the control pallette Builder Lock button is off. - *p: lautosetobjectrefs && Specifiies if the SetObjectRefs method is automatically called from the Init method. - *p: lignoreerrors && Specifies if the default FFC error handler is executed when an error occurs. - *p: lrelease && Indicates the object's Release method has been executed and the object is in the process of being released from memory. - *p: lsethost && Specifies if the SetHost method is automatically called from the Init method to set the oHost property to THISFORM. - *p: ninstances && Number of instances. - *p: nobjectrefcount && Returns the number of items in the object reference array property aObjectRefs. - *p: ohost && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - *p: vresult && Variant result property for internal usage when calling programs in PRGs and a return file is required. - *a: aobjectrefs[1,3] && Array of object references properties. - * - - builder = && Bulder property. - builderx = (HOME()+"Wizards\BuilderD,BuilderDForm") && BuilderX property. - csetobjrefprogram = (IIF(VERSION(2)=0,"",HOME()+"FFC\")+"SetObjRf.prg") && Program to be called when when setting an object references via the SetObjectRef method. - cversion = && Version property. - Height = 56 - Name = "_xmltable" - ninstances = 0 && Number of instances. - nobjectrefcount = 0 && Returns the number of items in the object reference array property aObjectRefs. - ohost = .NULL. && Object reference to host object (generally THISFORM), which is automatically set on Init if lSetHost is .T. - vresult = .T. && Variant result property for internal usage when calling programs in PRGs and a return file is required. - Width = 56 - - ADD OBJECT 'Fields' AS collection WITH ; - Height = 23, ; - Left = 23, ; - Name = "Fields", ; - Top = 23, ; - Width = 23 - *< END OBJECT: BaseClass="collection" /> - - PROTECTED PROCEDURE addtoproject && Dummy code for adding files to project. - *-- Dummy code for adding files to project. - RETURN - - DO SetObjRf.prg - - ENDPROC - - PROCEDURE Destroy - IF this.lRelease - RETURN .F. - ENDIF - this.lRelease=.T. - this.ReleaseObjRefs - this.oHost=.NULL. - - ENDPROC - - PROCEDURE Error - LPARAMETERS nError, cMethod, nLine - LOCAL lcOnError,lcErrorMsg,lcCodeLineMsg - - IF this.lIgnoreErrors OR _vfp.StartMode>0 - RETURN .F. - ENDIF - lcOnError=UPPER(ALLTRIM(ON("ERROR"))) - IF NOT EMPTY(lcOnError) - lcOnError=STRTRAN(STRTRAN(STRTRAN(lcOnError,"ERROR()","nError"), ; - "PROGRAM()","cMethod"),"LINENO()","nLine") - &lcOnError - RETURN - ENDIF - lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)+this.Name+CHR(13)+ ; - "Error: "+ALLTRIM(STR(nError))+CHR(13)+ ; - "Method: "+LOWER(ALLTRIM(cMethod)) - lcCodeLineMsg=MESSAGE(1) - IF BETWEEN(nLine,1,100000) AND NOT lcCodeLineMsg="..." - lcErrorMsg=lcErrorMsg+CHR(13)+"Line: "+ALLTRIM(STR(nLine)) - IF NOT EMPTY(lcCodeLineMsg) - lcErrorMsg=lcErrorMsg+CHR(13)+CHR(13)+lcCodeLineMsg - ENDIF - ENDIF - WAIT CLEAR - MESSAGEBOX(lcErrorMsg,16,_screen.Caption) - ERROR nError - - ENDPROC - - PROCEDURE Init - IF this.lSetHost - this.SetHost - ENDIF - IF this.lAutoSetObjectRefs AND NOT this.SetObjectRefs(this) - RETURN .F. - ENDIF - - ENDPROC - - PROCEDURE newinstance && Returns new instance of object. - LPARAMETERS tnDataSessionID - LOCAL oNewObject,lnLastDataSessionID - - lnLastDataSessionID=SET("DATASESSION") - IF TYPE("tnDataSessionID")=="N" AND tnDataSessionID>=1 - SET DATASESSION TO tnDataSessionID - ENDIF - oNewObject=NEWOBJECT(this.Class,this.ClassLibrary) - SET DATASESSION TO (lnLastDataSessionID) - RETURN oNewObject - - ENDPROC - - PROCEDURE ninstances_access && Access method for nInstances property. - LOCAL laInstances[1] - - RETURN AINSTANCE(laInstances,this.Class) - - ENDPROC - - PROCEDURE ninstances_assign && Assign method for nInstances property. - LPARAMETERS vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE nobjectrefcount_access && Access method for nObjectRefCount property. - LOCAL lnObjectRefCount - - lnObjectRefCount=ALEN(this.aObjectRefs,1) - IF lnObjectRefCount=1 AND EMPTY(this.aObjectRefs[1]) - lnObjectRefCount=0 - ENDIF - RETURN lnObjectRefCount - - ENDPROC - - PROCEDURE nobjectrefcount_assign && Assign method for nObjectRefCount property. - LPARAMETERS m.vNewVal - - ERROR 1743 - - ENDPROC - - PROCEDURE release && Releases object from memory. - LOCAL lcBaseClass - - IF this.lRelease - NODEFAULT - RETURN .F. - ENDIF - this.lRelease=.T. - lcBaseClass=LOWER(this.BaseClass) - this.oHost=.NULL. - this.ReleaseObjRefs - IF NOT INLIST(lcBaseClass+" ","form ","formset ","toolbar ") - RELEASE this - ENDIF - - ENDPROC - - PROCEDURE releaseobjrefs && Releases all object references of aObjectRefs array. - LOCAL lcName,oObject,lnCount - - IF this.nObjectRefCount=0 - RETURN - ENDIF - FOR lnCount = this.nObjectRefCount TO 1 STEP -1 - lcName=this.aObjectRefs[lnCount,1] - IF EMPTY(lcName) OR NOT PEMSTATUS(this,lcName,5) OR TYPE("this."+lcName)#"O" - LOOP - ENDIF - oObject=this.&lcName - IF ISNULL(oObject) - LOOP - ENDIF - IF TYPE("oObject")=="O" AND NOT ISNULL(oObject) AND PEMSTATUS(oObject,"Release",5) - oObject.Release - ENDIF - IF NOT ISNULL(oObject) AND PEMSTATUS(oObject,"oHost",5) - oObject.oHost=.NULL. - ENDIF - this.&lcName=.NULL. - oObject=.NULL. - ENDFOR - DIMENSION this.aObjectRefs[1,3] - this.aObjectRefs="" - - ENDPROC - - PROCEDURE sethost && Set oHost property to form reference object. - this.oHost=IIF(TYPE("thisform")=="O",thisform,.NULL.) - - ENDPROC - - PROCEDURE setobjectref && Set object reference to specific property. - LPARAMETERS tcName,tvClass,tvClassLibrary - LOCAL lvResult - - this.vResult=.T. - DO (this.cSetObjRefProgram) WITH (this),(tcName),(tvClass),(tvClassLibrary) - lvResult=this.vResult - this.vResult=.T. - RETURN lvResult - - ENDPROC - - PROCEDURE setobjectrefs && Place holder method for listing SetObjectRef method calls. - LPARAMETERS toObject - - RETURN - - ENDPROC - -ENDDEFINE +*-- EXTERNAL_CLASS identify external member Class names / EXTERNAL_CLASS identifica los nombres de las Clases externas +*< EXTERNAL_CLASS: Name="_activedoc" Baseclass="activedoc" /> +*< EXTERNAL_CLASS: Name="_checkbox" Baseclass="checkbox" /> +*< EXTERNAL_CLASS: Name="_collection" Baseclass="collection" /> +*< EXTERNAL_CLASS: Name="_combobox" Baseclass="combobox" /> +*< EXTERNAL_CLASS: Name="_commandbutton" Baseclass="commandbutton" /> +*< EXTERNAL_CLASS: Name="_commandgroup" Baseclass="commandgroup" /> +*< EXTERNAL_CLASS: Name="_container" Baseclass="container" /> +*< EXTERNAL_CLASS: Name="_control" Baseclass="control" /> +*< EXTERNAL_CLASS: Name="_cursor2" Baseclass="cursor" /> +*< EXTERNAL_CLASS: Name="_cursoradapter" Baseclass="cursoradapter" /> +*< EXTERNAL_CLASS: Name="_custom" Baseclass="custom" /> +*< EXTERNAL_CLASS: Name="_dataenvironment2" Baseclass="dataenvironment" /> +*< EXTERNAL_CLASS: Name="_editbox" Baseclass="editbox" /> +*< EXTERNAL_CLASS: Name="_form" Baseclass="form" /> +*< EXTERNAL_CLASS: Name="_formset" Baseclass="formset" /> +*< EXTERNAL_CLASS: Name="_grid" Baseclass="grid" /> +*< EXTERNAL_CLASS: Name="_hyperlink" Baseclass="hyperlink" /> +*< EXTERNAL_CLASS: Name="_image" Baseclass="image" /> +*< EXTERNAL_CLASS: Name="_label" Baseclass="label" /> +*< EXTERNAL_CLASS: Name="_line" Baseclass="line" /> +*< EXTERNAL_CLASS: Name="_listbox" Baseclass="listbox" /> +*< EXTERNAL_CLASS: Name="_optionbutton2" Baseclass="optionbutton" /> +*< EXTERNAL_CLASS: Name="_optiongroup" Baseclass="optiongroup" /> +*< EXTERNAL_CLASS: Name="_page2" Baseclass="page" /> +*< EXTERNAL_CLASS: Name="_pageframe" Baseclass="pageframe" /> +*< EXTERNAL_CLASS: Name="_projecthook" Baseclass="projecthook" /> +*< EXTERNAL_CLASS: Name="_relation2" Baseclass="relation" /> +*< EXTERNAL_CLASS: Name="_separator" Baseclass="separator" /> +*< EXTERNAL_CLASS: Name="_shape" Baseclass="shape" /> +*< EXTERNAL_CLASS: Name="_spinner" Baseclass="spinner" /> +*< EXTERNAL_CLASS: Name="_textbox" Baseclass="textbox" /> +*< EXTERNAL_CLASS: Name="_timer" Baseclass="timer" /> +*< EXTERNAL_CLASS: Name="_toolbar" Baseclass="toolbar" /> +*< EXTERNAL_CLASS: Name="_xmladapter" Baseclass="xmladapter" /> +*< EXTERNAL_CLASS: Name="_xmlfield" Baseclass="xmlfield" /> +*< EXTERNAL_CLASS: Name="_xmltable" Baseclass="xmltable" /> + +* \ No newline at end of file diff --git a/Source/Lib/VFP/FFC/_base.vct b/Source/Lib/VFP/FFC/_base.vct index a319eb1..5f5b97b 100644 Binary files a/Source/Lib/VFP/FFC/_base.vct and b/Source/Lib/VFP/FFC/_base.vct differ diff --git a/Source/Lib/VFP/FFC/_base.vcx b/Source/Lib/VFP/FFC/_base.vcx index 2957d08..ec958cd 100644 Binary files a/Source/Lib/VFP/FFC/_base.vcx and b/Source/Lib/VFP/FFC/_base.vcx differ diff --git a/Source/Lib/VFP/FFC/_environ._runcode.vc2 b/Source/Lib/VFP/FFC/_environ._runcode.vc2 new file mode 100644 index 0000000..ba2fce9 --- /dev/null +++ b/Source/Lib/VFP/FFC/_environ._runcode.vc2 @@ -0,0 +1,454 @@ +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +* (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! +* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! +*-------------------------------------------------------------------------------------------------------------------------------------------------------- +*< FOXBIN2PRG: Version="1.19" SourceFile="_environ.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +* +DEFINE CLASS _runcode AS _custom OF "_base.vcx" && Runs a block of VFP code via macros without compilation. + *< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" /> + + * + *m: runcode && RunCode(cCode[, lFile] [,llgnoreErrors]) + * + + cversion = 1.02 + Name = "_runcode" + + PROCEDURE Error + LPARAMETERS nError, cMethod, nLine + + IF this.lIgnoreErrors OR _vfp.StartMode>0 + RETURN .F. + ENDIF + DODEFAULT(nError, cMethod, nLine) + return + + ENDPROC + + PROCEDURE runcode && RunCode(cCode[, lFile] [,llgnoreErrors]) + * RunCode.PRG - Run code block interpreter. + * Version 2.00 + * + * Copyright (c) 1998-1999 Microsoft Corp. + * 1 Microsoft Way + * Redmond, WA 98052 + * + * Description: + * Runs a block of VFP code via macros without compilation. + * + * Parameter list: + * cCode: Code to execute or file name that contains code to execute + * lFile: Specifies source file mode. + * .F./Empty = Code is specified by cCode. + * .T. = Code is imported from specified file via cCode value. + * lIgnoreErrors: Specifies error handling mode. + * .F./Empty = Errors are trapped and displayed in a wait window. + * .T. = All errors are ignored. + + + LPARAMETERS __tcCode,__tlFile,__tvIgnoreErrors + LOCAL __lcCode,__lcOnError,__llArrayCode,__lcLine,__lnLine,__lcLine2,__llVFP60 + LOCAL __lcCommand,__lcExpr,__lcChar,__lnAtPos,__lnAtPos2,__lnOccurrence + LOCAL __lnLineTotal,__llTextMode,__lcLastOnError,__lvResult + LOCAL __lcDoExpr,__lnDoLine,__lnDoLineTotal,__lnDoStackCount + LOCAL __lcForExpr,__lnForMax,__lnForStep,__lnForLine,__lnForLineTotal,__lnForStackCount + LOCAL __lcIfExpr,__llIfExpr,__lnIfLine,__lnIfLineTotal,__lnIfStackCount + LOCAL __laLines[1],__laForLines[1],__laIfLines[1],__laDoLines[1] + EXTERNAL ARRAY __tcCode,__laLines,__laForLines,__laIfLines,__laDoLines + + #DEFINE TAB CHR(9) + #DEFINE LF CHR(10) + #DEFINE CR CHR(13) + #DEFINE CR_LF CR+LF + + IF VARTYPE(__tvIgnoreErrors)=="C" + __lcOnError=ALLTRIM(__tvIgnoreErrors) + ELSE + __lcOnError=IIF(__tvIgnoreErrors,"=.F.","__") + ENDIF + __llVFP60=" 06.0"$VERSION() + IF NOT __llVFP60 + __lcLastOnError=ON("ERROR") + IF __tvIgnoreErrors + ON ERROR =.F. + ELSE + ON ERROR + ENDIF + __lvResult=.T. + IF __tlFile + __lcCode="" + __lcCode=ALLTRIM(FILETOSTR(__tcCode)) + ELSE + __lcCode=IIF(VARTYPE(__tcCode)=="C",__tcCode,"") + ENDIF + IF LEFT(__lcCode,1)==";" + __lcCode=STRTRAN(__lcCode,";",CR_LF) + ENDIF + __lvResult=EVALUATE("ExecScript(__lcCode)") + IF EMPTY(__lcLastOnError) + ON ERROR + ELSE + ON ERROR &__lcLastOnError + ENDIF + RETURN __lvResult + ENDIF + __llArrayCode=(TYPE("__tcCode[1]")=="C") + IF __llArrayCode + __lnLineTotal=ACOPY(__tcCode,__laLines) + ELSE + IF VARTYPE(__tcCode)#"C" OR EMPTY(__tcCode) + RETURN + ENDIF + IF __tlFile + __lcCode="" + __lcCode=ALLTRIM(FILETOSTR(__tcCode)) + IF EMPTY(__lcCode) + RETURN + ENDIF + ELSE + __lcCode=ALLTRIM(__tcCode) + ENDIF + IF LEFT(__lcCode,1)==";" + __lcCode=STRTRAN(__lcCode,";",CR_LF) + ENDIF + __lnLineTotal=ALINES(__laLines,__lcCode) + IF __lnLineTotal=0 + RETURN + ENDIF + PRIVATE __lcLastLine + __lcLastLine="" + __lnLine=0 + DO WHILE __lnLine<__lnLineTotal + __lnLine=__lnLine+1 + __lcLine=ALLTRIM(__laLines[__lnLine]) + __lnAtPos=AT("&"+"&",__lcLine) + IF __lnAtPos>0 + __lcLine=ALLTRIM(LEFT(__lcLine,__lnAtPos-1)) + ENDIF + DO WHILE .T. + __lcChar=LEFT(__lcLine,1) + IF __lcChar==" " OR __lcChar==TAB + __lcLine=ALLTRIM(SUBSTR(__lcLine,2)) + LOOP + ENDIF + __lcChar=RIGHT(__lcLine,1) + IF __lcChar==" " OR __lcChar==TAB + __lcLine=TRIM(LEFT(__lcLine,LEN(__lcLine)-1)) + LOOP + ENDIF + EXIT + ENDDO + IF EMPTY(__lcLine) OR LEFT(__lcLine,1)=="*" OR LEFT(__lcLine,1)=="#" OR ; + LEFT(__lcLine,2)==("&"+"&") OR UPPER(LEFT(__lcLine,4))=="NOTE" OR ; + LEFT(__lcLine,4)=="