Exemple #1
0
        private void btnConfirmCreate_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(this.txtNewName.Text))
            {
                MessageBox.Show("Please provide a name you want to use for the new Crool project.");
                return;
            }

            using (var context = new CroolContext(Config.ConnectionString))
            {
                if (!context.CroolProjects.Where(c => c.Name == this.txtNewName.Text).Any())
                {
                    this.CreateCroolProject(this.txtNewName.Text);
                    this.ToggleCreateMode();
                    this.LoadCroolProjectsCombo();
                    this.LoadCroolProject();
                }
                else
                {
                    MessageBox.Show("Crool project with the same name already exists. Please use another name.");
                }
            }
        }
Exemple #2
0
 private void LoadCroolProjectsCombo()
 {
     using (var context = new CroolContext(Config.ConnectionString))
     {
         this.cmbProjects.DataSource = context.CroolProjects.ToList();
         this.cmbProjects.DisplayMember = "Name";
         this.cmbProjects.ValueMember = "Id";
     }
 }
Exemple #3
0
        private void LoadCroolProject()
        {
            if (this.cmbProjects.SelectedValue == null)
            {
                MessageBox.Show("Please select the Crool project you wish to load.");
                return;
            }

            using (var context = new CroolContext(Config.ConnectionString))
            {
                int croolProjectId = (int)this.cmbProjects.SelectedValue;
                this.ActiveCroolProject = context.CroolProjects.Where(p => p.Id == croolProjectId).FirstOrDefault();
            }
        }
Exemple #4
0
        private Business.Entities.File GetLinkedFile(Document document)
        {
            if (this.cmbProjects.SelectedValue != null)
            {
                var project = document.ProjectItem.ContainingProject;
                string pathToProject = project.FullName.Substring(0, project.FullName.LastIndexOf('\\'));

                var path = GetRelativeFilePath(pathToProject, document.FullName);

                using (var context = new CroolContext(Config.ConnectionString))
                {
                    var file =
                        context.Files.Where(
                            f =>
                            f.Project.CroolProject_Id == (int)this.cmbProjects.SelectedValue &&
                            f.FileName == path).FirstOrDefault();

                    return file;
                }
            }

            return null;
        }
Exemple #5
0
        private void CreateCroolProject(string friendlyName)
        {
            try
            {
                var croolProject = new Business.Entities.CroolProject
                {
                    Name = friendlyName
                };

                foreach (Project p in this.Application.Solution.Projects)
                {
                    this.AddProjectToCroolProject(croolProject, p);
                }

                using (var context = new CroolContext(Config.ConnectionString))
                {
                    context.CroolProjects.Add(croolProject);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Something went wrong.\nException message:" + ex.Message);
            }
        }
Exemple #6
0
        private void btnSaveReview_Click(object sender, EventArgs e)
        {
            if (this.Application.ActiveDocument != null)
            {
                dynamic selection = this.Application.ActiveDocument.Selection;
                var file = GetLinkedFile(this.Application.ActiveDocument);

                using (var context = new CroolContext(Config.ConnectionString))
                {
                    var review = new Business.Entities.Review
                    {
                        Text = this.txtReviewText.Text,
                        From = this.txtFrom.Text,
                        To = this.txtTo.Text,
                        StartLine = selection.CurrentLine,
                        EndLine = selection.BottomLine,
                        File_Id = file.Id
                    };

                    context.Reviews.Add(review);
                    context.SaveChanges();
                }

                this.tabControl1.SelectTab(0);
                this.LoadReviews(file);
            }
        }