In reply to:Whenever a previously submitted file is deleted on TeamSite, a hole is created. A hole is an object thatrepresents the absence of a previously existing IWFile (except for a hole itself). If a file that wasnever submitted is deleted, no hole is created. Holes can be created as a result of other operations thatperform file deletions.For example, if a previously file is renamed to a new name, the old file is implicitly deleted anda hole will be created in that area to replace it.A hole’s path is that of the file whose absence it represents. Deleting a file in a work area does notdelete that file in the work area’s associated staging area. In order to do that, the corresponding holemust be submitted to the staging area. A hole is created with the property modified and becomesunmodified after it is successfully submitted.A hole may not have children. A directory that, along with its contents, is deleted is replaced by a holefor the directory (which must be submitted to remove it from STAGING), not a entire tree of holes.Holes have the property invisible, which is typically used by client programs that do not wish to displayholes to end users. There are two signatures of the method IWPathNamedObject.lookupByPath,one of which takes an additional boolean argument which, if set to true, performs the lookup throughinvisible objects and, thus, can return a reference to an invisible object such as a hole.A client program that wishes to filter out holes (for example when displaying files to an end user) cando so using the IWFile.PropertyMask constant pmVisible. A client program that wishes tofilter for both non-hole files and holes which have not yet been submitted, while ignoring holes whichhave already been submitted, can do so using the constant pmVisibleOrModified.
In reply to:I think John got it right.