private void saveButton_Click(object sender, EventArgs e)
        {
            this.Cursor = Cursors.WaitCursor;

            try
            {
                if (!this.Validate())
                {
                    return;
                }

                var pattern = new SocketBoxPattern();
                pattern.Id   = this.patternId;
                pattern.Name = this.nameText.Text;
                pattern.IndividualWRDwgPath = this.individualWRText.Text;
                pattern.IndividualWSDwgPath = this.individualWSText.Text;
                pattern.IndividualBRDwgPath = this.individualBRText.Text;
                pattern.IndividualBSDwgPath = this.individualBSText.Text;
                pattern.PatternWRDwgPath    = this.patternWRText.Text;
                pattern.PatternWSDwgPath    = this.patternWSText.Text;
                pattern.PatternBRDwgPath    = this.patternBRText.Text;
                pattern.PatternBSDwgPath    = this.patternBSText.Text;
                pattern.SocketBoxSize       = (int)this.sizeCombo.SelectedValue;
                pattern.NeedCSV             = this.outputCheck.Checked;
                pattern.CategoryId          = (int)this.categoryCombo.SelectedValue;

                if (this.detailGrid.Rows.Count == 0)
                {
                    pattern.DetailsList = new List <SocketBoxPatternDetail>();
                }
                else
                {
                    pattern.DetailsList = (this.detailGrid.DataSource as BindingSource).DataSource as List <SocketBoxPatternDetail>;
                }

                pattern.ColorsList = (this.colorGrid.DataSource as BindingSource).DataSource as List <SocketBoxPatternColor>;

                int id;
                using (var service = new SocketPlanService())
                {
                    id = service.RegisterSocketBoxPattern(pattern);
                }

                this.UpdateTree();
                this.SelectPatternNode(id);

                MessageDialog.ShowInformation(this, "Saved successfully.");
            }
            catch (Exception exp)
            {
                MessageDialog.ShowError(exp);
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
 private void CopyToServer(SocketBoxPattern pattern)
 {
     this.CopyToServer(pattern.IndividualWRDwgPath);
     this.CopyToServer(pattern.IndividualWRDwgPath);
     this.CopyToServer(pattern.IndividualWSDwgPath);
     this.CopyToServer(pattern.IndividualBRDwgPath);
     this.CopyToServer(pattern.IndividualBSDwgPath);
     this.CopyToServer(pattern.PatternWRDwgPath);
     this.CopyToServer(pattern.PatternWSDwgPath);
     this.CopyToServer(pattern.PatternBRDwgPath);
     this.CopyToServer(pattern.PatternBSDwgPath);
 }
 private void UpdatePanel(SocketBoxPattern pattern)
 {
     this.categoryCombo.SelectedValue = pattern.CategoryId;
     this.nameText.Text          = pattern.Name;
     this.individualWRText.Text  = pattern.IndividualWRDwgPath;
     this.individualWSText.Text  = pattern.IndividualWSDwgPath;
     this.individualBRText.Text  = pattern.IndividualBRDwgPath;
     this.individualBSText.Text  = pattern.IndividualBSDwgPath;
     this.patternWRText.Text     = pattern.PatternWRDwgPath;
     this.patternWSText.Text     = pattern.PatternWSDwgPath;
     this.patternBRText.Text     = pattern.PatternBRDwgPath;
     this.patternBSText.Text     = pattern.PatternBSDwgPath;
     this.sizeCombo.SelectedItem = (BoxSize)pattern.SocketBoxSize;
     this.outputCheck.Checked    = pattern.NeedCSV;
     this.SetDetails(pattern.DetailsList);
     this.SetColors(pattern.ColorsList);
 }
        private void saveButton_Click(object sender, EventArgs e)
        {
            this.Cursor = Cursors.WaitCursor;

            try
            {
                if (!this.Validate())
                {
                    return;
                }

                var pattern = new SocketBoxPattern();
                pattern.Id   = this.patternId;
                pattern.Name = this.nameText.Text;
                pattern.IndividualWRDwgPath = this.individualWRText.Text;
                pattern.IndividualWSDwgPath = this.individualWSText.Text;
                pattern.IndividualBRDwgPath = this.individualBRText.Text;
                pattern.IndividualBSDwgPath = this.individualBSText.Text;
                pattern.PatternWRDwgPath    = this.patternWRText.Text;
                pattern.PatternWSDwgPath    = this.patternWSText.Text;
                pattern.PatternBRDwgPath    = this.patternBRText.Text;
                pattern.PatternBSDwgPath    = this.patternBSText.Text;
                pattern.SocketBoxSize       = (int)this.sizeCombo.SelectedValue;
                pattern.SocketBoxDepth      = this.depthCombo.SelectedItem.ToString();
                pattern.NeedCSV             = this.outputCheck.Checked;
                pattern.CategoryId          = (int)this.categoryCombo.SelectedValue;

                if (this.detailGrid.Rows.Count == 0)
                {
                    pattern.DetailsList = new List <SocketBoxPatternDetail>();
                }
                else
                {
                    pattern.DetailsList = (this.detailGrid.DataSource as BindingSource).DataSource as List <SocketBoxPatternDetail>;
                }

                pattern.ColorsList = (this.colorGrid.DataSource as BindingSource).DataSource as List <SocketBoxPatternColor>;

                int id;
                using (var service = new SocketPlanService())
                {
                    id = service.RegisterSocketBoxPattern(pattern, Environment.MachineName);
                }

#if !DEBUG
                var userName = Properties.Settings.Default.ServerUserName;
                var password = Properties.Settings.Default.ServerPassword;
                var source   = Paths.GetServerSystemDirectory();
                MasterFileLoader.Authorize(source, userName, password);
#endif

                this.CopyToServer(pattern);
                this.IncrementMasterFileVersion();

                this.UpdateTree();
                this.SelectPatternNode(id);

                UnitWiring.Masters.UpdateSocketBoxPatterns();

                MessageDialog.ShowInformation(this, "Saved successfully.");
            }
            catch (Exception exp)
            {
                MessageDialog.ShowError(exp);
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }