Exemplo n.º 1
0
 /// <summary>
 /// Aktualizuje seznam publikací podle zadaných filtrů v příslušné komponentě GUI.
 /// </summary>
 /// <param name="authorFilter">filtr autorů</param>
 /// <param name="yearFilter">filtr letopočtů</param>
 /// <param name="publicationTypeFilter">filtr typů</param>
 private void refreshPublications(
     HashSet <int> authorFilter = null, HashSet <int> yearFilter = null, HashSet <string> publicationTypeFilter = null)
 {
     // načtení aktuálního filtrovaného seznamu publikací z datové vrstvy a propojení s komponentou GUI
     publicationDataGrid.ItemsSource = null;
     publicationDataGrid.ItemsSource = publicationModel.
                                       GetPublications(authorFilter, yearFilter, publicationTypeFilter);
 }
        /// <summary>
        /// Vypíše seznam publikací pokud bylo dokončeno přidávání filtrů.
        /// </summary>
        public void PrintFilteredPublicationList()
        {
            WriteLine("Seznam publikací:");
            WriteLine("ID\tBibTeX klíč\tTyp\tNázev\tRok\tAutoři");
            List <Publication> publications = publicationModel.GetPublications(
                authorFilter, yearFilter, publicationTypeFilter);

            foreach (Publication publication in publications)
            {
                Write($"{publication.Id}\t{publication.Entry}\t{PublicationType.GetTypeByName(publicationTypes, publication.Type).Description}\t{publication.Title}\t{publication.Year}\t");
                WriteAuthors(publication.Author);
            }

            authorFilter.Clear();
            yearFilter.Clear();
            publicationTypeFilter.Clear();
        }