示例#1
0
        //============================================================================*
        // Copy() - BatchTest
        //============================================================================*

        public void Copy(cBatchTest BatchTest)
        {
            if (BatchTest != null)
            {
                return;
            }

            foreach (cCharge Charge in BatchTest.Batch.Load.ChargeList)
            {
                if (Charge.PowderWeight == BatchTest.Batch.PowderWeight)
                {
                    break;
                }
            }

            m_dBarrelLength   = BatchTest.Firearm.BarrelLength;
            m_dBestGroup      = BatchTest.BestGroup;
            m_dBestGroupRange = BatchTest.BestGroupRange;
            m_Firearm         = BatchTest.Firearm;
            m_nMuzzleVelocity = BatchTest.MuzzleVelocity;
            m_strNotes        = BatchTest.Notes;
            m_nPressure       = BatchTest.Pressure;
            m_TestDate        = BatchTest.TestDate;
            m_dTwist          = BatchTest.Firearm.Twist;
            m_dPowderWeight   = BatchTest.Batch.PowderWeight;

            m_fBatchTest = true;

            if (BatchTest.Batch != null)
            {
                m_nBatchID = BatchTest.Batch.BatchID;

                m_strSource = String.Format("Batch #{0:G0} Testing", BatchTest.Batch.BatchID);
            }
        }
示例#2
0
        //============================================================================*
        // Copy()
        //============================================================================*

        public void Copy(cBatchTest BatchTest)
        {
            m_Batch = BatchTest.m_Batch;

            m_TestDate    = BatchTest.m_TestDate;
            m_strLocation = BatchTest.m_strLocation;

            m_Firearm = BatchTest.m_Firearm;

            m_nNumRounds      = BatchTest.m_nNumRounds;
            m_dBestGroup      = BatchTest.m_dBestGroup;
            m_dBestGroupRange = BatchTest.m_dBestGroupRange;
            m_strNotes        = BatchTest.m_strNotes;

            m_TestShotList = new cTestShotList(BatchTest.TestShotList);

            m_nAltitude    = BatchTest.m_nAltitude;
            m_nTemperature = BatchTest.m_nTemperature;
            m_dPressure    = BatchTest.m_dPressure;
            m_dHumidity    = BatchTest.m_dHumidity;

            m_nWindDirection = BatchTest.m_nWindDirection;
            m_nWindSpeed     = BatchTest.m_nWindSpeed;

            m_fSuppressed = BatchTest.m_fSuppressed;
        }
示例#3
0
        //============================================================================*
        // CompareTo()
        //============================================================================*

        public int CompareTo(cBatchTest BatchTest)
        {
            if (BatchTest == null)
            {
                return(1);
            }

            //----------------------------------------------------------------------------*
            // Compare Batch
            //----------------------------------------------------------------------------*

            int rc = m_Batch.CompareTo(BatchTest.m_Batch);

            //----------------------------------------------------------------------------*
            // Firearm
            //----------------------------------------------------------------------------*

            if (rc == 0)
            {
                rc = m_Firearm.CompareTo(BatchTest.m_Firearm);

                //----------------------------------------------------------------------------*
                // NumRounds
                //----------------------------------------------------------------------------*

                if (rc == 0)
                {
                    rc = m_nNumRounds.CompareTo(BatchTest.m_nNumRounds);
                }
            }

            return(rc);
        }
示例#4
0
        //============================================================================*
        // Comparer()
        //============================================================================*

        public static int Comparer(cBatchTest BatchTest1, cBatchTest BatchTest2)
        {
            if (BatchTest1 == null)
            {
                if (BatchTest2 != null)
                {
                    return(-1);
                }
                else
                {
                    return(0);
                }
            }
            else
            {
                if (BatchTest2 == null)
                {
                    return(1);
                }
            }

            return(BatchTest1.CompareTo(BatchTest2));
        }
示例#5
0
        //============================================================================*
        // cBatchTest() - Copy Constructor
        //============================================================================*

        public cBatchTest(cBatchTest BatchTest)
        {
            Copy(BatchTest);
        }
示例#6
0
        //============================================================================*
        // cBatchTestForm() - Constructor
        //============================================================================*

        public cBatchTestForm(cBatch Batch, cDataFiles DataFiles, cRWRegistry RWRegistry, bool fViewOnly = false)
        {
            InitializeComponent();

            m_DataFiles  = DataFiles;
            m_RWRegistry = RWRegistry;
            m_fViewOnly  = fViewOnly;

            string strTitle = "";

            if (Batch.BatchTest == null)
            {
                m_BatchTest          = new cBatchTest();
                m_BatchTest.Batch    = Batch;
                m_BatchTest.Firearm  = Batch.Firearm;
                m_BatchTest.TestDate = DateTime.Today;

                m_BatchTest.Temperature        = 59;
                m_BatchTest.Altitude           = 0;
                m_BatchTest.BarometricPressure = 29.92;
                m_BatchTest.Humidity           = 0.78;

                strTitle = "Add";

                BatchTestOKButton.Text        = "Add";
                BatchTestDeleteButton.Enabled = false;
            }
            else
            {
                m_BatchTest = new cBatchTest(Batch.BatchTest);

                if (!m_fViewOnly)
                {
                    strTitle = "Edit";

                    BatchTestOKButton.Text = "Update";
                }
                else
                {
                    BatchTestCancelButton.Text    = "Close";
                    BatchTestDeleteButton.Visible = false;
                    BatchTestOKButton.Visible     = false;

                    int nButtonX = (this.Size.Width / 2) - (BatchTestCancelButton.Width / 2);

                    BatchTestCancelButton.Location = new Point(nButtonX, BatchTestCancelButton.Location.Y);

                    strTitle = "View";
                }
            }

            SetClientSizeCore(BatchDataGroupBox.Location.X + BatchDataGroupBox.Width + 10, BatchTestCancelButton.Location.Y + BatchTestCancelButton.Height + 20);

            //----------------------------------------------------------------------------*
            // Set Title
            //----------------------------------------------------------------------------*

            strTitle += " Batch Test";

            Text = strTitle;

            //----------------------------------------------------------------------------*
            // Event Handlers
            //----------------------------------------------------------------------------*

            if (!m_fViewOnly && !m_BatchTest.Batch.Archived)
            {
                TestDatePicker.TextChanged += OnDateChanged;

                FirearmCombo.SelectedIndexChanged += OnFirearmChanged;

                LocationTextBox.TextChanged += OnLocationTextChanged;

                SuppressedCheckBox.Click += OnSuppressedClicked;

                TemperatureTextBox.TextChanged += OnTemperatureChanged;
                AltitudeTextBox.TextChanged    += OnAltitudeChanged;
                PressureTextBox.TextChanged    += OnBarometricPressureChanged;
                HumidityTextBox.TextChanged    += OnHumidityChanged;

                WindSpeedTextBox.TextChanged     += OnWindSpeedChanged;
                WindDirectionTextBox.TextChanged += OnWindDirectionChanged;

                NumShotsTextBox.TextChanged += OnNumShotsTextChanged;

                BestGroupTextBox.TextChanged += OnBestGroupChanged;

                NotesTextBox.TextChanged += OnNotesChanged;

                BestGroupRangeTextBox.TextChanged += OnBestGroupRangeChanged;

                TargetCalculatorButton.Click += OnTargetCalculatorClicked;

                FavoriteLoadRadioButton.Click += OnFavoriteLoadClicked;
                RejectLoadRadioButton.Click   += OnRejectLoadClicked;

                BatchTestOKButton.Click += OnOKClicked;
            }
            else
            {
                NumShotsTextBox.ReadOnly       = true;
                BestGroupTextBox.ReadOnly      = true;
                BestGroupRangeTextBox.ReadOnly = true;

                NotesTextBox.ReadOnly = true;
            }

            EditShotsButton.Click += OnEditShotsClicked;

            //----------------------------------------------------------------------------*
            // Set Decimals
            //----------------------------------------------------------------------------*

            SetInputParameters();

            //----------------------------------------------------------------------------*
            // Populate Form Data
            //----------------------------------------------------------------------------*

            SetStaticToolTips();

            BatchIDLabel.Text = String.Format("{0:G0}", m_BatchTest.Batch.BatchID);

            if (m_BatchTest.Batch.Archived)
            {
                BatchIDLabel.Text += " - Archived";
            }

            DateLoadedLabel.Text = m_BatchTest.Batch.DateLoaded.ToShortDateString();
            CaliberLabel.Text    = m_BatchTest.Batch.Load.Caliber.ToString();
            LoadLabel.Text       = m_BatchTest.Batch.Load.ToShortString();
            ChargeLabel.Text     = String.Format("{0:F1}", m_BatchTest.Batch.PowderWeight);
            NumRoundsLabel.Text  = String.Format("{0:G0}", m_BatchTest.Batch.NumRounds);

            switch (m_BatchTest.Batch.Load.FirearmType)
            {
            case cFirearm.eFireArmType.Handgun:
                FirearmTypeLabel.Text = "Handgun";
                break;

            case cFirearm.eFireArmType.Rifle:
                FirearmTypeLabel.Text = "Rifle";
                break;

            case cFirearm.eFireArmType.Shotgun:
                FirearmTypeLabel.Text = "Shotgun";
                break;
            }

            PopulateBatchTestData();
            PopulateShotList();

            m_fInitialized = true;

            UpdateButtons();
        }