public bool withinColorRange(RGB_Color c1, RGB_Color c2)
        {
            int threshold = 40;

            if (Math.Abs(c1.R - c2.R) <= threshold && Math.Abs(c1.G - c2.G) <= threshold && Math.Abs(c1.B - c2.B) <= threshold)
            {
                return(true);
            }
            return(false);
        }
Example #2
0
 // CONSTRUCTOR FOR ADDING PROFESSORS
 public Professors(string profFN, string profLN, string profID)
 {
     FirstName  = profFN;
     LastName   = profLN;
     SRUID      = profID;
     profRGB    = new RGB_Color(255, 255, 255);
     MaxClasses = 12;
     NumClasses = 0;
     MaxPrep    = 4;
     NumPrep    = 0;
 }
 public bool isColorTaken(RGB_Color color)
 {
     for (int i = 0; i < professors.Count; i++)
     {
         if (professors[i].SRUID != ID.Text && withinColorRange(color, professors[i].profRGB))
         {
             return(true);
         }
     }
     return(false);
 }
Example #4
0
 public Professors()
 {
     FirstName  = "None";
     LastName   = "None";
     SRUID      = "---";
     profRGB    = new RGB_Color(255, 255, 255);
     MaxClasses = 12;
     NumClasses = 0;
     MaxPrep    = 4;
     NumPrep    = 0;
 }
        private bool allRequiredFields()
        {
            bool success = true;

            // First Name
            if (FirstName.Text == "")
            {
                FirstName_Required.Visibility = Visibility.Visible;
                success = false;
            }
            else
            {
                FirstName_Required.Visibility = Visibility.Hidden;
            }
            // Last Name
            if (LastName.Text == "")
            {
                LastName_Required.Visibility = Visibility.Visible;
                success = false;
            }
            else
            {
                LastName_Required.Visibility = Visibility.Hidden;
            }
            // SRU ID
            if (ID.Text == "")
            {
                ID_Required.Visibility = Visibility.Visible;
                ID_Invalid.Visibility  = Visibility.Hidden;
                success = false;
            }
            else
            {
                if (ID.Text.Length != 9 || ID.Text.Substring(0, 2) != "A0")
                {
                    ID_Invalid.Visibility  = Visibility.Visible;
                    ID_Required.Visibility = Visibility.Hidden;
                    success = false;
                }
                else
                {
                    ID_Invalid.Visibility  = Visibility.Hidden;
                    ID_Required.Visibility = Visibility.Hidden;
                }
            }
            // Color
            if (colorPicker.SelectedColor.ToString() == "")
            {
                Color_Required.Visibility = Visibility.Visible;
                Color_Invalid.Visibility  = Visibility.Hidden;
                success = false;
            }
            else
            {
                RGB_Color tempColor = new RGB_Color(colorPicker.SelectedColor.ToString());
                if (isColorTaken(tempColor))
                {
                    Color_Invalid.Visibility  = Visibility.Visible;
                    Color_Required.Visibility = Visibility.Hidden;
                    success = false;
                }
                else
                {
                    Color_Invalid.Visibility  = Visibility.Hidden;
                    Color_Required.Visibility = Visibility.Hidden;
                }
            }
            // Max Classes/Prep
            if (Classes.Text == "" || Prep.Text == "")
            {
                Max_Required.Visibility = Visibility.Visible;
                Max_Invalid.Visibility  = Visibility.Hidden;
                success = false;
            }
            else
            {
                int classParse, prepParse;
                if (!Int32.TryParse(Classes.Text, out classParse) || !Int32.TryParse(Prep.Text, out prepParse))
                {
                    Max_Invalid.Visibility  = Visibility.Visible;
                    Max_Required.Visibility = Visibility.Hidden;
                    success = false;
                }
                else
                {
                    Max_Invalid.Visibility  = Visibility.Hidden;
                    Max_Required.Visibility = Visibility.Hidden;
                }
            }
            return(success);
        }