Example #1
0
        //new ToolTip().SetToolTip(buttonNextPhoto, "Get Next Photo");

        public FormAddPhoto(Panel_Road existingPanel, TamsProject theProject, ModuleRoads theModuleRoads)
        {
            moduleRoads = theModuleRoads;
            panelRoad   = existingPanel;
            Project     = theProject;
            InitializeComponent();
            listOfPhotos = moduleRoads.listOfPhotos;

            //roadControls.toolTip.SetToolTip(roadControls.pictureBoxPhoto, "");
            new ToolTip().SetToolTip(buttonAddPhoto, "Add Photo");
            new ToolTip().SetToolTip(buttonNextPhoto, "Next Photo");
            new ToolTip().SetToolTip(buttonPreviousPhoto, "Previous Photo");
            new ToolTip().SetToolTip(buttonChangeDirectory, "Change Directory");
            new ToolTip().SetToolTip(buttonBrowseFile, "Browse Directory");

            string relativePath = panelRoad.currentFolder.Remove(0, Project.projectFolderPath.Length);

            labelCurrentDirectory.Text = Project.projectFolderPath[0] + ":\\...\\Databases" + relativePath;


            populatePhotoList();

            try
            {
                fileEntries = Directory.GetFiles(panelRoad.currentFolder);
                validFolder = true;
            }
            catch
            {
                validFolder = false;
            }
        }
Example #2
0
        public Panel_Road(TamsProject theProject, ModuleRoads theModuleRoads)
        {
            InitializeComponent();
            Project = theProject;
            try
            {
                currentFolder = Project.projectFolderPath + Database.GetDataByQuery(Project.conn, "SELECT road_photos FROM photo_paths;").Rows[0][0].ToString();
            }
            catch
            {
                currentFolder = null;
            }

            moduleRoads = theModuleRoads;


            numericUpDownSpeedLimit.ValueChanged += moduleValueChanged;
            numericUpDownLanes.ValueChanged      += moduleValueChanged;
            textBoxFrom.TextChanged       += moduleValueChanged;
            textBoxTo.TextChanged         += moduleValueChanged;
            textBoxRoadName.TextChanged   += moduleValueChanged;
            comboBoxSurface.TextChanged   += moduleValueChanged;
            comboBoxType.TextChanged      += moduleValueChanged;
            comboBoxTreatment.TextChanged += moduleValueChanged;
            inputRsl.TextChanged          += moduleValueChanged;
            textBoxWidth.TextChanged      += widthChanged;
            textBoxLength.TextChanged     += lengthChanged;

            checkDistressValues();


            AutoScroll = true;
        }
Example #3
0
 public FormTreatmentCosts(TamsProject theProject, Dictionary <string, double> pricePerYard, FormAnalysis formAnalysis)
 {
     InitializeComponent();
     Project               = theProject;
     updatedPricePerYard   = pricePerYard;
     analysis              = formAnalysis;
     treatments            = Database.GetDataByQuery(Project.conn, "SELECT id, name, cost FROM treatments;");
     numericUpDown1.Value  = Convert.ToDecimal(treatments.Rows[0]["cost"]);
     numericUpDown2.Value  = Convert.ToDecimal(treatments.Rows[1]["cost"]);
     numericUpDown3.Value  = Convert.ToDecimal(treatments.Rows[2]["cost"]);
     numericUpDown4.Value  = Convert.ToDecimal(treatments.Rows[3]["cost"]);
     numericUpDown5.Value  = Convert.ToDecimal(treatments.Rows[4]["cost"]);
     numericUpDown6.Value  = Convert.ToDecimal(treatments.Rows[5]["cost"]);
     numericUpDown7.Value  = Convert.ToDecimal(treatments.Rows[6]["cost"]);
     numericUpDown8.Value  = Convert.ToDecimal(treatments.Rows[7]["cost"]);
     numericUpDown9.Value  = Convert.ToDecimal(treatments.Rows[8]["cost"]);
     numericUpDown10.Value = Convert.ToDecimal(treatments.Rows[9]["cost"]);
     numericUpDown11.Value = Convert.ToDecimal(treatments.Rows[10]["cost"]);
     numericUpDown12.Value = Convert.ToDecimal(treatments.Rows[11]["cost"]);
     numericUpDown13.Value = Convert.ToDecimal(treatments.Rows[12]["cost"]);
     numericUpDown14.Value = Convert.ToDecimal(treatments.Rows[13]["cost"]);
     numericUpDown15.Value = Convert.ToDecimal(treatments.Rows[14]["cost"]);
     numericUpDown16.Value = Convert.ToDecimal(treatments.Rows[15]["cost"]);
     numericUpDown17.Value = Convert.ToDecimal(treatments.Rows[16]["cost"]);
     numericUpDown18.Value = Convert.ToDecimal(treatments.Rows[17]["cost"]);
     numericUpDown19.Value = Convert.ToDecimal(treatments.Rows[18]["cost"]);
     numericUpDown20.Value = Convert.ToDecimal(treatments.Rows[19]["cost"]);
     numericUpDown21.Value = Convert.ToDecimal(treatments.Rows[23]["cost"]);
     numericUpDown22.Value = Convert.ToDecimal(treatments.Rows[20]["cost"]);
     numericUpDown23.Value = Convert.ToDecimal(treatments.Rows[21]["cost"]);
     numericUpDown24.Value = Convert.ToDecimal(treatments.Rows[22]["cost"]);
 }
Example #4
0
 public RoadGraphs(TamsProject theProject, ModuleRoads roads, string[] asphalt, string[] gravel, string[] concrete)
 {
     Project          = theProject;
     moduleRoads      = roads;
     distressAsphalt  = asphalt;
     distressGravel   = gravel;
     distressConcrete = concrete;
 }
Example #5
0
 public FormOutput(TamsProject theProject, ModuleRoads roads = null, string name = null)
 {
     InitializeComponent();
     CenterToScreen();
     Project     = theProject;
     moduleRoads = roads;
     reportType  = name;
 }
Example #6
0
        private void InitializeProject()
        {
            uxMap.Projection = DotSpatial.Projections.KnownCoordinateSystems.Projected.World.WebMercator;
            Project          = new TamsProject(uxMap);
            tabControlControls.TabPages.Clear();

            if (Program.cmdArgs.Length > 0)
            {
                string file = Program.cmdArgs[0];
                if (!Project.open(file))
                {
                    MessageBox.Show("Could not open " + file);
                }
            }

            while (!Project.isOpen)
            {
                FormStartup getProject = new FormStartup(Project);
                getProject.ShowDialog();
            }

            Visible = true;
            ToolStripMenuItem[] lcs = { importRoadsToolStripMenuItem,
                                        generalToolStripMenuItem,
                                        potholesToolStripMenuItem,
                                        analysisToolStripMenuItem,
                                        customToolStripMenuItem,
                                        roadToolStripMenuItem,
                                        roadTypeToolStripMenuItem,
                                        roadCategoryToolStripMenuItem,
                                        governingDistressToolStripMenuItem,
                                        rSLToolStripMenuItem };
            ToolStripMenuItem[] lcsn = { favoriteSignsToolStripMenuItem, signAlertsToolStripMenuItem, signInventoryToolStripMenuItem, supportAlertsToolStripMenuItem, supportInventoryToolStripMenuItem, signToolStripMenuItem };
            ToolStripMenuItem[] lcso = { otherToolStripMenuItem,
                                         sidewalkDistressToolStripMenuItem,
                                         severeRoadDistressToolStripMenuItem,
                                         aDARampsToolStripMenuItem,
                                         drainageToolStripMenuItem,
                                         accidentsToolStripMenuItem,
                                         allOthersToolStripMenuItem,
                                         roadsWithSidewalksToolStripMenuItem };
            ModuleRoads         road  = new ModuleRoads(Project, new TabPage("Roads"), lcs);
            ModuleSigns         sign  = new ModuleSigns(Project, new TabPage("Signs"), lcsn);
            GenericModule       other = new GenericModule(Project, new TabPage("Other"), lcso);

            Project.addModule(road, "Roads", tabControlControls);
            Project.addModule(sign, "Signs", tabControlControls);
            Project.addModule(other, "Other", tabControlControls);

            Project.selectModule("Roads");

            toolStripStatusLabel1.Text    = Project.projectFilePath;
            toolStripStatusLabel2.Visible = false;
            toolStripProgressBar1.Visible = false;

            CurrentMode = uxMap.FunctionMode;
            maxWidth    = (int)uxMap.ViewExtents.Width + 10;
        }
Example #7
0
 public FormSettings(ProjectSettings settings, TamsProject theProject)
 {
     InitializeComponent();
     CenterToScreen();
     settingControls   = new List <CtlSetting>();
     Settings          = settings;
     Project           = theProject;
     textBoxNotes.Text = ""; // default instructions
 }
Example #8
0
 public SignReports(TamsProject theProject, ModuleSigns signs = null)
 {
     Project     = theProject;
     moduleSigns = signs;
 }
Example #9
0
        public Panel_Sign(TamsProject theProject)
        {
            InitializeComponent();
            Project = theProject;
            string supportPhotos;

            try
            {
                supportPhotos        = Database.GetDataByQuery(Project.conn, "SELECT support_photos FROM photo_paths;").Rows[0][0].ToString();
                currentSupportFolder = Project.projectFolderPath + supportPhotos;
            }
            catch
            {
                supportPhotos        = null;
                currentSupportFolder = null;
            }
            if (string.IsNullOrEmpty(supportPhotos))
            {
                validSupportFolder = false;
            }
            else
            {
                try
                {
                    fileEntriesSupport = Directory.GetFiles(currentSupportFolder);
                    validSupportFolder = true;
                }
                catch
                {
                    validSupportFolder = false;
                }
            }

            string signPhotos = Database.GetDataByQuery(Project.conn, "SELECT sign_photos FROM photo_paths;").Rows[0][0].ToString();

            currentSignFolder = Project.projectFolderPath + signPhotos;

            if (string.IsNullOrEmpty(signPhotos))
            {
                validSignFolder = false;
            }
            else
            {
                try
                {
                    fileEntriesSign = Directory.GetFiles(currentSignFolder);
                    validSignFolder = true;
                }
                catch
                {
                    validSignFolder = false;
                }
            }

            textBoxAddress.TextChanged += moduleValueChanged;
            comboBoxMaterial.SelectionChangeCommitted          += moduleValueChanged;
            comboBoxCondition.SelectionChangeCommitted         += moduleValueChanged;
            comboBoxObstruction.SelectedValueChanged           += moduleValueChanged;
            numericUpDownOffset.ValueChanged                   += moduleValueChanged;
            comboBoxSupportRecommendation.SelectedValueChanged += moduleValueChanged;
            textBoxType.TextChanged                       += moduleValueChanged;
            textBoxDescription.TextChanged                += moduleValueChanged;
            comboBoxSheeting.SelectedValueChanged         += moduleValueChanged;
            comboBoxBacking.SelectedValueChanged          += moduleValueChanged;
            numericUpDownHeightSign.ValueChanged          += moduleValueChanged;
            numericUpDownWidth.ValueChanged               += moduleValueChanged;
            numericUpDownMountHeight.ValueChanged         += moduleValueChanged;
            textBoxInstall.TextChanged                    += moduleValueChanged;
            textBoxText.TextChanged                       += moduleValueChanged;
            comboBoxReflectivity.SelectionChangeCommitted += moduleValueChanged;
            comboBoxConditionSign.SelectedValueChanged    += moduleValueChanged;
            comboBoxDirection.SelectedValueChanged        += moduleValueChanged;
            textBoxPhotoPost.TextChanged                  += moduleValueChanged;
            textBoxPhotoSign.TextChanged                  += moduleValueChanged;

            new ToolTip().SetToolTip(buttonAdd, "Add New Sign to Post");
            new ToolTip().SetToolTip(buttonRemove, "Remove Sign from Post");
            new ToolTip().SetToolTip(buttonInstallDate, "Set Install Date of Sign");
            new ToolTip().SetToolTip(buttonFavorite, "Add Sign to Favorites");
            new ToolTip().SetToolTip(buttonSignNote, "Add Note to Sign");
            new ToolTip().SetToolTip(buttonNextPhotoSign, "Get Next Photo");

            AutoScroll = true;
        }
Example #10
0
 public RoadSymbols(TamsProject theProject, ModuleRoads roads)
 {
     Project     = theProject;
     moduleRoads = roads;
 }
Example #11
0
        private void InitializeProject()
        {
            uxMap.Projection = DotSpatial.Projections.KnownCoordinateSystems.Projected.World.WebMercator;
            Project          = new TamsProject(uxMap);
            tabControlControls.TabPages.Clear();

            if (Program.cmdArgs.Length > 0)
            {
                string file = Program.cmdArgs[0];
                if (!Project.open(file))
                {
                    MessageBox.Show("Could not open " + file);
                }
            }

            while (!Project.isOpen)
            {
                FormStartup getProject = new FormStartup(Project);
                string      logMessage = "";
                logMessage += "GetEntryAssembly().Location Startup: " + System.Reflection.Assembly.GetEntryAssembly().Location + "\n";
                logMessage += "GetExecutingAssembly().CodeBase: " + System.Reflection.Assembly.GetExecutingAssembly().CodeBase + "\n";
                logMessage += "Environment.CurrentDirectory " + Environment.CurrentDirectory + "\n";
                Classes.Log.Add(logMessage, "dev");
                try
                {
                    getProject.openProjectFile(System.Reflection.Assembly.GetEntryAssembly().Location);
                }
                catch
                {
                    getProject.ShowDialog();
                }
            }

            Visible = true;
            ToolStripMenuItem[] lcs = { importRoadsToolStripMenuItem,
                                        generalToolStripMenuItem,
                                        potholesToolStripMenuItem,
                                        analysisToolStripMenuItem,
                                        roadToolStripMenuItem,
                                        surfaceTypeToolStripMenuItem,
                                        functionalClassificationToolStripMenuItem,
                                        governingDistressesToolStripMenuItem,
                                        rSLDistributionToolStripMenuItem };
            ToolStripMenuItem[] lcsn = { favoriteSignsToolStripMenuItem, signInventoryToolStripMenuItem, signRecommendationsToolStripMenuItem, supportInventoryToolStripMenuItem, supportRecommendationsToolStripMenuItem, signToolStripMenuItem };
            ToolStripMenuItem[] lcso = { otherToolStripMenuItem,
                                         sidewalkDistressToolStripMenuItem,
                                         severeRoadDistressToolStripMenuItem,
                                         aDARampsToolStripMenuItem,
                                         drainageToolStripMenuItem,
                                         accidentsToolStripMenuItem,
                                         allOthersToolStripMenuItem,
                                         roadsWithSidewalksToolStripMenuItem };
            road  = new ModuleRoads(Project, new TabPage("Roads"), lcs);
            sign  = new ModuleSigns(Project, new TabPage("Signs"), lcsn);
            other = new GenericModule(Project, new TabPage("Other"), lcso);
            Project.addModule(road, "Roads", tabControlControls);
            Project.addModule(sign, "Signs", tabControlControls);
            Project.addModule(other, "Other", tabControlControls);

            Project.selectModule("Roads");

            toolStripStatusLabel1.Text    = Project.projectFilePath;
            toolStripStatusLabel2.Visible = false;
            toolStripProgressBar1.Visible = false;

            CurrentMode = uxMap.FunctionMode;
            maxWidth    = (int)uxMap.ViewExtents.Width + 10;
        }
Example #12
0
 public RoadReports(TamsProject theProject, ModuleRoads roads = null)
 {
     Project     = theProject;
     moduleRoads = roads;
 }
Example #13
0
 public OtherReports(TamsProject theProject, GenericModule other = null)
 {
     Project     = theProject;
     moduleOther = other;
 }
Example #14
0
        public Panel_Other(TamsProject theProject)
        {
            InitializeComponent();
            Project = theProject;

            controlSets = new Dictionary <string, List <Control> >()
            {
                { "Sidewalk", new List <Control>() },
                { "ADA Ramp", new List <Control>() },
                { "Severe Road Distress", new List <Control>() },
                { "Accident", new List <Control>() },
                { "Drainage", new List <Control>() },
                { "Other", new List <Control>() }
            };
            int left = 11, right = 89;

            ComboBox placeholder = new ComboBox();

            placeholder.Visible = false;

            TextBox notes = new TextBox();

            notes.Location = new Point(left, 144);
            notes.Size     = new Size(193, 80);

            Label notesLabel = new Label();

            notesLabel.Text     = "Notes";
            notesLabel.Size     = new Size(70, 14);
            notesLabel.Location = new Point(left, 122);

            #region sidewalk
            ComboBox swFault = new ComboBox();
            swFault.Location = new Point(right, 24);
            swFault.Size     = new Size(112, 20);
            swFault.Items.Add("");
            swFault.Items.Add("Less than 0.25 in.");
            swFault.Items.Add("0.25 - 0.5 in.");
            swFault.Items.Add("0.5 - 1 in.");
            swFault.Items.Add("More than 1 in.");
            controlSets["Sidewalk"].Add(swFault);

            ComboBox swBreak = new ComboBox();
            swBreak.Location = new Point(right, 48);
            swBreak.Size     = new Size(112, 20);
            swBreak.Items.Add("");
            swBreak.Items.Add("Low");
            swBreak.Items.Add("Moderate");
            swBreak.Items.Add("Severe");
            controlSets["Sidewalk"].Add(swBreak);

            ComboBox rec3rd = new ComboBox();
            rec3rd.Location = new Point(right, 72);
            rec3rd.Size     = new Size(112, 20);
            rec3rd.Items.Add("");
            rec3rd.Items.Add("Grind");
            rec3rd.Items.Add("Replace");
            rec3rd.Items.Add("Watch");
            rec3rd.Items.Add("Other (see notes)");
            controlSets["Sidewalk"].Add(rec3rd);

            ComboBox swSurface = new ComboBox();
            swSurface.Location = new Point(right, 96);
            swSurface.Size     = new Size(112, 20);
            swSurface.Items.Add("");
            swSurface.Items.Add("Asphalt");
            swSurface.Items.Add("Concrete");
            swSurface.Items.Add("Pervious");
            swSurface.Items.Add("Not Paved");
            swSurface.Items.Add("Multiple");
            swSurface.Items.Add("Other");
            controlSets["Sidewalk"].Add(swSurface);

            controlSets["Sidewalk"].Add(notes);

            Label swFaultLabel = new Label();
            swFaultLabel.Text     = "Faults";
            swFaultLabel.Size     = new Size(70, 14);
            swFaultLabel.Location = new Point(left, 26);
            controlSets["Sidewalk"].Add(swFaultLabel);

            Label swBreakLabel = new Label();
            swBreakLabel.Text     = "Breaks";
            swBreakLabel.Size     = new Size(70, 14);
            swBreakLabel.Location = new Point(left, 50);
            controlSets["Sidewalk"].Add(swBreakLabel);

            Label rec3rdLabel = new Label();
            rec3rdLabel.Text     = "Recommend";
            rec3rdLabel.Size     = new Size(70, 14);
            rec3rdLabel.Location = new Point(left, 74);
            controlSets["Sidewalk"].Add(rec3rdLabel);

            Label swSurfaceLabel = new Label();
            swSurfaceLabel.Size     = new Size(70, 14);
            swSurfaceLabel.Text     = "Surface";
            swSurfaceLabel.Location = new Point(left, 98);
            controlSets["Sidewalk"].Add(swSurfaceLabel);

            controlSets["Sidewalk"].Add(notesLabel);
            #endregion sidewalk

            #region ramp
            ComboBox adaCondition = new ComboBox();
            adaCondition.Location = new Point(right, 24);
            adaCondition.Size     = new Size(112, 20);
            adaCondition.Items.Add("");
            adaCondition.Items.Add("Good");
            adaCondition.Items.Add("Acceptable");
            adaCondition.Items.Add("Bad");
            controlSets["ADA Ramp"].Add(adaCondition);

            ComboBox adaCompliant = new ComboBox();
            adaCompliant.Location = new Point(right, 48);
            adaCompliant.Size     = new Size(112, 20);
            adaCompliant.Items.Add("");
            adaCompliant.Items.Add("Yes");
            adaCompliant.Items.Add("No");
            controlSets["ADA Ramp"].Add(adaCompliant);

            ComboBox tiles = new ComboBox();
            tiles.Location = new Point(right, 72);
            tiles.Size     = new Size(112, 20);
            tiles.Items.Add("");
            tiles.Items.Add("Yes");
            tiles.Items.Add("No");
            controlSets["ADA Ramp"].Add(tiles);

            controlSets["ADA Ramp"].Add(placeholder);
            controlSets["ADA Ramp"].Add(notes);

            Label adaConditionLabel = new Label();
            adaConditionLabel.Text     = "Condition";
            adaConditionLabel.Size     = new Size(70, 14);
            adaConditionLabel.Location = new Point(left, 26);
            controlSets["ADA Ramp"].Add(adaConditionLabel);

            Label adaCompliantLabel = new Label();
            adaCompliantLabel.Text     = "Compliant";
            adaCompliantLabel.Size     = new Size(70, 14);
            adaCompliantLabel.Location = new Point(left, 50);
            controlSets["ADA Ramp"].Add(adaCompliantLabel);

            Label tilesLabel = new Label();
            tilesLabel.Text     = "Has Tiles";
            tilesLabel.Size     = new Size(70, 14);
            tilesLabel.Location = new Point(left, 74);
            controlSets["ADA Ramp"].Add(tilesLabel);

            controlSets["ADA Ramp"].Add(notesLabel);
            #endregion ramp

            #region distress
            TextBox distress = new TextBox();
            distress.Location = new Point(right, 24);
            distress.Size     = new Size(112, 20);
            controlSets["Severe Road Distress"].Add(distress);

            TextBox rec2nd = new TextBox();
            rec2nd.Location = new Point(right, 48);
            rec2nd.Size     = new Size(112, 20);
            controlSets["Severe Road Distress"].Add(rec2nd);

            TextBox nonElement = new TextBox();
            nonElement.Location = new Point(right, 72);
            nonElement.Size     = new Size(112, 20);
            controlSets["Severe Road Distress"].Add(nonElement);
            nonElement.Visible = false;

            controlSets["Severe Road Distress"].Add(placeholder);
            controlSets["Severe Road Distress"].Add(notes);

            Label distressLabel = new Label();
            distressLabel.Text     = "Distress";
            distressLabel.Size     = new Size(70, 14);
            distressLabel.Location = new Point(left, 26);
            controlSets["Severe Road Distress"].Add(distressLabel);

            Label rec2ndLabel = new Label();
            rec2ndLabel.Text     = "Recommend";
            rec2ndLabel.Size     = new Size(75, 14);
            rec2ndLabel.Location = new Point(left, 50);
            controlSets["Severe Road Distress"].Add(rec2ndLabel);

            controlSets["Severe Road Distress"].Add(notesLabel);
            #endregion distress

            #region drainage
            ComboBox type = new ComboBox();
            type.Location = new Point(right, 24);
            type.Size     = new Size(112, 20);
            type.Items.Add("");
            type.Items.Add("Curb and Gutter");
            type.Items.Add("Roadway Ponding");
            type.Items.Add("Unpaved Shoulder");
            type.Items.Add("Turf Shoulder");
            type.Items.Add("Storm Grate");
            type.Items.Add("Other");
            controlSets["Drainage"].Add(type);

            controlSets["Drainage"].Add(rec2nd);

            nonElement          = new TextBox();
            nonElement.Location = new Point(right, 72);
            nonElement.Size     = new Size(112, 20);
            controlSets["Drainage"].Add(nonElement);
            nonElement.Visible = false;

            controlSets["Drainage"].Add(placeholder);
            controlSets["Drainage"].Add(notes);

            Label typeLabel = new Label();
            typeLabel.Text     = "Type";
            typeLabel.Location = new Point(left, 26);
            typeLabel.Size     = new Size(70, 14);
            controlSets["Drainage"].Add(typeLabel);

            controlSets["Drainage"].Add(rec2ndLabel);

            controlSets["Drainage"].Add(notesLabel);
            #endregion drainage

            #region accidents
            accidentDate.Location = new Point(right + 23, 24);
            accidentDate.Size     = new Size(89, 20);
            controlSets["Accident"].Add(accidentDate);

            TextBox accidentType = new TextBox();
            accidentType.Location = new Point(right, 48);
            accidentType.Size     = new Size(112, 20);
            controlSets["Accident"].Add(accidentType);

            ComboBox accidentSeverity = new ComboBox();
            accidentSeverity.Location = new Point(right, 72);
            accidentSeverity.Size     = new Size(112, 20);
            accidentSeverity.Items.Add("");
            accidentSeverity.Items.Add("Injury");
            accidentSeverity.Items.Add("Death");
            accidentSeverity.Items.Add("Property Damage");
            controlSets["Accident"].Add(accidentSeverity);

            controlSets["Accident"].Add(placeholder);
            controlSets["Accident"].Add(notes);

            nonElement          = new TextBox();
            nonElement.Location = new Point(right, 72);
            nonElement.Size     = new Size(112, 20);
            controlSets["Accident"].Add(nonElement);
            nonElement.Visible = false;

            Label accidentDateLabel = new Label();
            accidentDateLabel.Text     = "Date";
            accidentDateLabel.Location = new Point(left, 26);
            accidentDateLabel.Size     = new Size(70, 14);
            controlSets["Accident"].Add(accidentDateLabel);

            Label accidentTypeLabel = new Label();
            accidentTypeLabel.Text     = "Type";
            accidentTypeLabel.Location = new Point(left, 50);
            accidentTypeLabel.Size     = new Size(70, 14);
            controlSets["Accident"].Add(accidentTypeLabel);

            Label accidentSeverityLabel = new Label();
            accidentSeverityLabel.Text     = "Severity";
            accidentSeverityLabel.Location = new Point(left, 74);
            accidentSeverityLabel.Size     = new Size(70, 14);
            controlSets["Accident"].Add(accidentSeverityLabel);

            Button buttonAccidentDate = new Button();
            new ToolTip().SetToolTip(buttonAccidentDate, "Set Date of Accident");
            buttonAccidentDate.Image    = Properties.Resources.calendar;
            buttonAccidentDate.Location = new Point(right, 23);
            buttonAccidentDate.Name     = "buttonAccidentDate";
            buttonAccidentDate.Size     = new Size(22, 22);
            buttonAccidentDate.UseVisualStyleBackColor = true;
            controlSets["Accident"].Add(buttonAccidentDate);

            controlSets["Accident"].Add(notesLabel);
            #endregion accidents

            #region other
            TextBox property1 = new TextBox();
            property1.Size     = new Size(112, 20);
            property1.Location = new Point(right, 24);
            controlSets["Other"].Add(property1);

            TextBox property2 = new TextBox();
            property2.Size     = new Size(112, 20);
            property2.Location = new Point(right, 48);
            controlSets["Other"].Add(property2);


            nonElement          = new TextBox();
            nonElement.Location = new Point(right, 72);
            nonElement.Size     = new Size(112, 20);
            controlSets["Other"].Add(nonElement);
            nonElement.Visible = false;

            controlSets["Other"].Add(placeholder);
            controlSets["Other"].Add(notes);

            Label property1Label = new Label();
            property1Label.Text     = "Property 1";
            property1Label.Size     = new Size(70, 14);
            property1Label.Location = new Point(left, 26);
            controlSets["Other"].Add(property1Label);

            Label property2Label = new Label();
            property2Label.Text     = "Property 2";
            property2Label.Size     = new Size(70, 14);
            property2Label.Location = new Point(left, 50);
            controlSets["Other"].Add(property2Label);

            controlSets["Other"].Add(notesLabel);
            #endregion other

            comboBoxObject.TextChanged     += moduleValueChanged;
            comboBoxObject.TextChanged     += objectChanged;
            textBoxAddress.TextChanged     += moduleValueChanged;
            textBoxDescription.TextChanged += moduleValueChanged;
            textBoxPhotoFile.TextChanged   += moduleValueChanged;

            swFault.SelectedIndexChanged += new EventHandler(delegate(object sender, EventArgs e) { updateSidwalkRecommendation(sender, e, swFault, rec3rd); });
            swSurface.TextChanged        += moduleValueChanged;
            swFault.TextChanged          += moduleValueChanged;
            swBreak.TextChanged          += moduleValueChanged;
            rec3rd.TextChanged           += moduleValueChanged;
            notes.TextChanged            += moduleValueChanged;

            adaCondition.TextChanged += moduleValueChanged;
            adaCompliant.TextChanged += moduleValueChanged;
            tiles.TextChanged        += moduleValueChanged;

            distress.TextChanged += moduleValueChanged;
            rec2nd.TextChanged   += moduleValueChanged;

            type.TextChanged += moduleValueChanged;

            accidentDate.TextChanged     += moduleValueChanged;
            accidentType.TextChanged     += moduleValueChanged;
            accidentSeverity.TextChanged += moduleValueChanged;

            property1.TextChanged += moduleValueChanged;
            property2.TextChanged += moduleValueChanged;

            buttonNextPhoto.Click    += buttonNextPhoto_Click;
            buttonAccidentDate.Click += ButtonAccidentDate_Click;
        }