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);
        }
Esempio n. 3
0
        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);
        }