Hacker’s Guide to Visual FoxPro
An irreverent look at how Visual FoxPro really works. Tells you the inside scoop on every command, function, property, event and method of Visual FoxPro.
This object is the building block for projects. Every project contains a Files collection composed of File objects. Each File object represents one file (or group of files, like a form) in the project.
Property |
Value |
Purpose |
CodePage |
Numeric |
The codepage for this file. |
Description |
Character |
The description saved for this file. The description appears in the bottom panel of the Project Manager when the file has focus. |
Exclude |
Logical |
Indicates whether the file is to be included in an APP or EXE built from the project. Actually, indicates whether it should be excluded. |
FileClass, FileClassLibrary |
Character |
If the file is a form, these two indicate the name and library of the class it's based on. If the file is not a form, each contains an empty string. |
LastModified |
DateTime |
The date and time at which the file was last changed. |
Name |
Character |
The filename, including the path. |
ReadOnly |
Logical |
This property tells you if the file can be edited. ReadOnly is .T. if the file is checked in under source code control or if it is flagged Read-Only. ReadOnly cannot be directly changed—you need to either check out the file or clear the Read-Only attribute to toggle this property. |
SCCStatus |
Numeric |
Indicates the file's status with the project's source control provider. If there is no source control provider, contains 0. |
Type |
Single character |
Indicates what kind of file this is. |
Method |
Purpose |
AddToSCC |
Adds the file to the project's source control provider. |
CheckIn |
Checks the file into the source control provider. |
CheckOut |
Checks the file out of the source control provider. |
GetLatestVersion |
Brings a read-only copy of the file in its current state to the local drive. |
Modify |
Opens the file in its native editing tool. |
Remove |
Removes the file from the project, optionally deleting it from the disk as well. |
RemoveFromSCC |
Removes the file from source control. |
Run |
Runs the file. For reports, previews the file. |
UndoCheckOut |
Changes the file's source control status to checked in, discarding any changes since checkout. |
It might seem that there’s a method missing from the list—Add. But you can’t apply Add to a file object because there is no such object at the time you’re adding the file. So Add is a Files collection method.
File, like Project, is a COM class, not a native VFP class. This means, among other things, that it has no events. It also means we can’t subclass it, because we have no control over the creation of File objects. It happens automatically when a project is opened or when a file is added to a project.
* See what's in a project
FOR EACH oFile IN _VFP.ActiveProject.Files
? oFile.Name, oFile.Type
ENDFOR
AddToSCC, CheckIn, CheckOut, CodePage, Description, Exclude, FileClass, FileClassLibrary, Files, GetLatestVersion, LastModified, Modify, Name, Project, ReadOnly, Remove, RemoveFromSCC, Run Method, SCCStatus, Type Property, UndoCheckOut