private void RefreshChangesetList(object sender, EventArgs e) { string cmdResult = CmdRunner.ExecuteCommandWithStringResult( "cm find changeset --nototal --format=\"{changesetid}#{date}#{comment}\"", SampleHelper.GetWorkspace()); ArrayList results = SampleHelper.GetListResults(cmdResult, true); changesetList.Items.Clear(); foreach (string item in results) { Changeset cset = new Changeset(item); cmdResult = CmdRunner.ExecuteCommandWithStringResult( string.Format("cm log {0} --csFormat=\"{{items}}\" --itemFormat=\"{{path}}#{{fullstatus}}#{{newline}}\"", cset.Id), SampleHelper.GetWorkspace()); results = SampleHelper.GetListResults(cmdResult, true); foreach (string changedItem in results) { cset.Changes.Add(new Item(changedItem)); } changesetList.Items.Add(cset); } }
private void Checkin(object sender, EventArgs e) { foreach (Change item in itemsToCommit.Items) { if (item.ChangeType == ChangeType.Added) { CmdRunner.ExecuteCommandWithStringResult( string.Format("cm add {0}", item.Name), SampleHelper.GetWorkspace()); } if (item.ChangeType == ChangeType.Deleted) { CmdRunner.ExecuteCommandWithStringResult( string.Format("cm rm {0}", item.Name), SampleHelper.GetWorkspace()); } } string result = CmdRunner.ExecuteCommandWithStringResult( string.Format("cm ci -c=\"{0}\"", textBox1.Text), SampleHelper.GetWorkspace()); MessageBox.Show(result); textBox1.Text = string.Empty; Update(sender, e); }
public Item(string output) { if (string.IsNullOrEmpty(output)) { Path = string.Empty; Status = string.Empty; return; } string[] parsed = output.Split('#'); Path = parsed[0].Replace(SampleHelper.GetWorkspace().ToLowerInvariant(), ""); Status = parsed[1]; }
private List <Change> GetChanges() { List <Change> changes = new List <Change>(); string cmdResult = CmdRunner.ExecuteCommandWithStringResult( string.Format("cm status --all --machinereadable"), SampleHelper.GetWorkspace()); ArrayList results = SampleHelper.GetListResults(cmdResult, true); for (int i = 1; i < results.Count; i++) { changes.Add(new Change((string)results[i])); } return(changes); }
private void CheckinUpdates(object sender, EventArgs e) { List <Change> mChanges = GetChanges(); if (mChanges.Count == 0) { return; } StringBuilder builder = new StringBuilder(); foreach (var item in mChanges) { builder.Append(string.Format("{0} {1}\n", item.ChangeType, item.Name)); } foreach (var item in mChanges) { if (item.ChangeType == ChangeType.Added) { CmdRunner.ExecuteCommandWithStringResult( string.Format("cm add {0}", item.Name), SampleHelper.GetWorkspace()); } if (item.ChangeType == ChangeType.Deleted) { CmdRunner.ExecuteCommandWithStringResult( string.Format("cm rm {0}", item.Name), SampleHelper.GetWorkspace()); } } CmdRunner.ExecuteCommandWithStringResult("cm ci ", SampleHelper.GetWorkspace()); mTrayIcon.ShowBalloonTip(3, string.Format("{0} new changes saved", mChanges.Count), string.Format("The following changes have been checked in.\n{0}", builder.ToString()), ToolTipIcon.Info); }