Пример #1
0
        void newWindow_RaiseCustomEvent(object sender, CustomEventArgs e)
        {
            String   classAbbr = e.classAbbrev;
            CourseDB courseDB  = CourseDB.Instance;
            Course   c         = courseDB.fetchCourseByName(classAbbr);

            c.Reviews.Add(e.userReview);
            c.Tags.Add(e.tag);
            CourseListItemControl clic = courseDB.getControl(c);

            ReviewPanel reviewPanel = new ReviewPanel();

            reviewPanel.RatingNumber.Text  = e.userReview.GetRating() + "";
            reviewPanel.ReviewSummary.Text = e.userReview.Summary;
            reviewPanel.Title.Text         = e.userReview.Title;
            clic.CommentsStackPanel.Children.Add(reviewPanel);

            clic.Star.RatingValue = c.GetRating();
            clic.TagLabel.Text    = c.CourseTagsToString();

            ReviewClass.Remove(classAbbr);

            if (ReviewClass.Count == 0)
            {
                this.ReviewButton.IsEnabled  = false;
                this.ReviewButton.Foreground = new System.Windows.Media.SolidColorBrush((Color)ColorConverter.ConvertFromString("#FF747474"));
            }
        }
Пример #2
0
        /// <summary>
        /// Given a Course, generate a CourseListItemControl object for it.
        /// </summary>
        /// <param name="cCourse">Course to generate Control from</param>
        /// <returns>The Generated Control.</returns>
        private CourseListItemControl generateCLIC(Course cCourse)
        {
            // Generate new Control and populate.
            CourseListItemControl pReturnControl = new CourseListItemControl(cCourse);

            pReturnControl.CourseNameLabel.Content = cCourse.CourseAbbrev + "\t" + cCourse.CourseName;
            pReturnControl.CourseDayLabel.Text     = cCourse.SceduleDayToString();
            pReturnControl.CourseTime.Text         = cCourse.SceduleTimeToString();
            pReturnControl.CourseRoom.Text         = cCourse.Location;
            pReturnControl.ProfNameLabel.Text      = cCourse.ProfessorName;

            if (cCourse.StatusToString().Equals("Open"))
            {
                Uri uri = new Uri(System.AppDomain.CurrentDomain.BaseDirectory + "../../green_dot.png");
                pReturnControl.StatusIcon.Source = new BitmapImage(uri);
            }
            else
            {
                Uri uri = new Uri(System.AppDomain.CurrentDomain.BaseDirectory + "../../red_dot.png");
                pReturnControl.StatusIcon.Source = new BitmapImage(uri);
            }
            pReturnControl.StatusLabel.Text            = cCourse.getStatusAbbrev();
            pReturnControl.CourseDescriptionLabel.Text = cCourse.Description;
            pReturnControl.TagLabel.Text    = cCourse.CourseTagsToString();
            pReturnControl.Height           = CourseListItemControl.ShortDescriptionHeight;
            pReturnControl.PreReqLabel.Text = cCourse.PreReqToString();
            pReturnControl.Star.RatingValue = cCourse.GetRating();

            foreach (Tutorial t in cCourse.Tutorials)
            {
                pReturnControl.TutorialTimeDropDown.Items.Add(t);
            }
            if (cCourse.Tutorials.Count == 0)
            {
                pReturnControl.TutorialTimeDropDown.Items.Add("No tutorials");
            }

            pReturnControl.TutorialTimeDropDown.SelectedIndex = 0;

            foreach (UserReview rev in cCourse.Reviews)
            {
                ReviewPanel reviewPanel = new ReviewPanel();
                reviewPanel.RatingNumber.Text  = rev.GetRating() + "";
                reviewPanel.ReviewSummary.Text = rev.Summary;
                reviewPanel.Title.Text         = rev.Title;
                pReturnControl.CommentsStackPanel.Children.Add(reviewPanel);
            }

            return(pReturnControl);
        }
Пример #3
0
        /// <summary>
        /// Function to add a class to the database. Generates an associated CourseListItemControl
        /// </summary>
        /// <param name="cNewCourse">The Course to add.</param>
        public void addCourse(Course cNewCourse)
        {
            CourseListItemControl pNewControl = generateCLIC(cNewCourse);

            m_pCourseList.Add(new KeyValuePair <Course, CourseListItemControl>(cNewCourse, pNewControl));
        }
Пример #4
0
        private void Calendar_Click(object sender, RoutedEventArgs e)
        {
            Button button = (Button)sender;

            if (button.Content.Equals("No class"))
            {
                return;
            }

            if (StudentCourses.Count() > 0 && toggleSelectedClass == false)
            {
                this.SelectedClassStackPanel.Children.Clear();
                CourseListItemControl CourseControl = new CourseListItemControl(null);
                Course c = new Course();
                for (int i = 0; i < StudentCourses.Count; i++)
                {
                    if (StudentCourses[i].CourseAbbrev.Equals((sender as Button).Content))
                    {
                        c = StudentCourses[i];
                        switch (i)
                        {
                        case 0: CourseControl.RemoveButton.Click += RemoveButton_Click0; break;

                        case 1: CourseControl.RemoveButton.Click += RemoveButton_Click1; break;

                        case 2: CourseControl.RemoveButton.Click += RemoveButton_Click2; break;

                        case 3: CourseControl.RemoveButton.Click += RemoveButton_Click3; break;

                        case 4: CourseControl.RemoveButton.Click += RemoveButton_Click4; break;
                        }
                        break;
                    }
                }

                CourseControl.CourseNameLabel.Content = c.CourseAbbrev + "\t" + c.CourseName;
                CourseControl.CourseDayLabel.Text     = c.SceduleDayToString();
                CourseControl.CourseTime.Text         = c.SceduleTimeToString();
                CourseControl.CourseRoom.Text         = c.Location;
                CourseControl.ProfNameLabel.Text      = c.ProfessorName + " User";
                if (c.StatusToString().Equals("Open"))
                {
                    Uri uri = new Uri(System.AppDomain.CurrentDomain.BaseDirectory + "../../green_dot.png");
                    CourseControl.StatusIcon.Source = new BitmapImage(uri);
                }
                else
                {
                    Uri uri = new Uri(System.AppDomain.CurrentDomain.BaseDirectory + "../../red_dot.png");
                    CourseControl.StatusIcon.Source = new BitmapImage(uri);
                }
                CourseControl.StatusLabel.Text = c.StatusToString();

                CourseControl.RemoveButton.Visibility          = Visibility.Visible;
                CourseControl.TutorialSelectedLabel.Visibility = Visibility.Visible;

                if (c.Tutorials.Count > 0)
                {
                    CourseControl.TutorialSelectedLabel.Text = c.Tutorials[0].ToString();
                }

                CourseControl.MoreTextBlock.Visibility        = Visibility.Hidden;
                CourseControl.AddButton1.Visibility           = Visibility.Hidden;
                CourseControl.Status.Visibility               = Visibility.Hidden;
                CourseControl.StatusLabel1.Visibility         = Visibility.Hidden;
                CourseControl.TutorialTimeDropDown.Visibility = Visibility.Hidden;

                this.SelectedClassStackPanel.Children.Add(CourseControl);
                toggleSelectedClass = true;
            }
            else
            {
                toggleSelectedClass = false;
                this.SelectedClassStackPanel.Children.Clear();
            }
        }