public SourceControlStatus(SourceControlStatusFlags v) { Flags = v; }
public SourceControlStatus(P4.FileMetaData f) { Flags = SourceControlStatusFlags.scsUncontrolled; try { if (f != null) { if (f.HeadAction == P4.FileAction.Delete) { Flags = SourceControlStatusFlags.scsDeletedAtHead; if (f.Action == P4.FileAction.Add) { Flags |= SourceControlStatusFlags.scsMarkedAdd | SourceControlStatusFlags.scsCheckedOut; } } else if (f.Action == P4.FileAction.Add) { Flags = SourceControlStatusFlags.scsMarkedAdd | SourceControlStatusFlags.scsCheckedOut; } else if (f.Action == P4.FileAction.Branch) { Flags = SourceControlStatusFlags.scsBranched | SourceControlStatusFlags.scsCheckedOut; } else if (f.Action == P4.FileAction.Delete) { Flags = SourceControlStatusFlags.scsMarkedDelete | SourceControlStatusFlags.scsCheckedOut; } else if (f.Action == P4.FileAction.MoveAdd) { Flags = SourceControlStatusFlags.scsMoved; } else if (f.IsInDepot) { Flags = SourceControlStatusFlags.scsCheckedIn; } if (f.Action == P4.FileAction.Edit) { Flags = SourceControlStatusFlags.scsCheckedOut; } if (f.OurLock) { Flags |= SourceControlStatusFlags.scsLockedSelf; } if (f.OtherOpen > 0) { for (int idx = 0; idx < f.OtherOpen; idx++) { if (f.OtherActions[idx] == P4.FileAction.Edit || f.OtherActions[idx] == P4.FileAction.Integrate) { Flags |= SourceControlStatusFlags.scsOtherCheckedOut; } if (f.OtherActions[idx] == P4.FileAction.Delete) { Flags |= SourceControlStatusFlags.scsMarkedDelete | SourceControlStatus.scsOtherCheckedOut; } } } if (f.OtherLock) { Flags |= SourceControlStatusFlags.scsLockedOther; } if (f.IsStale) { Flags |= SourceControlStatusFlags.scsStale; } if (f.Unresolved) { Flags |= SourceControlStatusFlags.scsNeedsResolve; } if (f.Action == P4.FileAction.Integrate) { Flags |= SourceControlStatusFlags.scsIntegrated; } if ((f.HaveRev == 0) && (f.Action != P4.FileAction.Add) && (f.Action != P4.FileAction.MoveAdd) && (f.Action != P4.FileAction.Branch)) { Flags |= SourceControlStatusFlags.scsNotOnDisk; } } } catch (Exception) { Flags = SourceControlStatusFlags.scsUncontrolled; } }
public SourceControlStatusFlags Set(SourceControlStatusFlags f) { return(Flags |= f); }
public SourceControlStatusFlags Clear(SourceControlStatusFlags f) { return(Flags &= ~f); }
public bool TestOnly(SourceControlStatusFlags f) { return((Flags & ~f) == 0); }
public bool TestNone(SourceControlStatusFlags f) { return((Flags & f) == 0); }
public bool TestAll(SourceControlStatusFlags f) { return((Flags & f) == f); }
public bool TestAny(SourceControlStatusFlags f) { return((Flags & f) != 0); }
public bool Test(SourceControlStatusFlags f) { return(TestAny(f)); }