Detail předmětu

Grafická uživatelská rozhraní v X Window

FIT-GUXAk. rok: 2020/2021

Třídy aplikací z hlediska interakce s uživatelem. Zásady návrhu uživatelských rozhraní. Architektura systému X Window, historie a současnost. Vstupní a výstupní grafické operace na úrovni X serveru a Xlib. Rysy OOP v X Toolkitu a GTK+, instance a třída grafických prvků, vlastnosti instance a třídy, vnitřní implementace. Konvence nastavování vlastností prvků, výstavba aplikace. Zpracování událostí, překladová tabulka, akční tabulka. Základní bázové třídy X Toolkitu a GTK+, jejich význam a použití. GTK+ a OSF/Motif, společné vlastnosti, ovládání prvků, řetězce a styly zobrazení řetězců. Jednoduché objekty, univerzální a specializované kontejnery. Tvorba menu a dialogů. Použití přímé manipulace, Drag&Drop.

Jazyk výuky

čeština

Počet kreditů

5

Garant předmětu

Výsledky učení předmětu

Programování aplikací v prostředí X Window, GTK+ a OSF/Motif, základní metodologie návrhu uživatelského rozhraní.

Prerekvizity

Programování v jazyce C a prostředí Unixu.

Způsob a kritéria hodnocení

V polovině semestru písemnou prací s hodnocením 20 bodů a odevzdáním 2 projektů. Půlsemestrální práce nemá opravný termín.

Učební cíle

Seznámení s tvorbou aplikací s grafickým uživatelským rozhraním v prostředí systému Unix/X Window.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Projekty musí být odevzdány do zveřejněného data, pozdní odevzdání projektu je hodnoceno 0 body.

Základní literatura

Hix, D., Hartson, H., R.: Developing User Interfaces: Ensuring Usability Through Product & Process, John Wiley & Sons, 1993, ISBN 0-471-57813-4 Scheifler, R., W., Gettys, J.: X Window System, The Complete Reference to Xlib, X Protocol, ICCCM, XLFD, Digital Press, 1990, ISBN 1-55558-050-5 Nye, A., O'Reilly, T.: X Toolkit Intrinsics Programming Manual, OSF/Motif Edition, O'Reilly & Associates, 1990, ISBN 0-937175-62-5 Krause, A.: Foundations of GTK+ Development, Apress, 2007, ISBN13: 978-1-59059-793-4 Heller, D.: Motif Programming Manual, O'Reilly & Associates, 3rd ed 2002, ISBN 1-56592-016-3 Sheets, J.R.: Writing GNOME applications, Addison-Wesley, 2001, ISBN 0-201-65791-0 Dallheimer, M.K.: Programming with Qt, O'Reilly Verlag GmbH, 2001, ISBN 0-596-00064-2 Warkus, M.: Official GNOME 2 Developer's Guide, O'Reilly, 2004, ISBN: 1-59327-030-5

Doporučená literatura

Krause, A.: Foundations of GTK+ Development, Apress, 2007, ISBN13: 978-1-59059-793-4 Heller, D.: Motif Programming Manual, O'Reilly & Associates, 3rd ed 2002, ISBN 1-56592-016-3 https://docs.gtk.org/gtk4/

Zařazení předmětu ve studijních plánech

  • Program IT-MGR-2 magisterský navazující

    obor MGM , 0 ročník, zimní semestr, povinně volitelný
    obor MBI , 0 ročník, zimní semestr, volitelný
    obor MBS , 0 ročník, zimní semestr, volitelný
    obor MIN , 0 ročník, zimní semestr, volitelný
    obor MIS , 0 ročník, zimní semestr, povinně volitelný
    obor MMI , 0 ročník, zimní semestr, volitelný
    obor MMM , 0 ročník, zimní semestr, volitelný
    obor MPV , 0 ročník, zimní semestr, volitelný
    obor MSK , 0 ročník, zimní semestr, volitelný

  • Program MITAI magisterský navazující

    specializace NISY , 0 ročník, zimní semestr, volitelný
    specializace NADE , 0 ročník, zimní semestr, volitelný
    specializace NBIO , 0 ročník, zimní semestr, volitelný
    specializace NCPS , 0 ročník, zimní semestr, volitelný
    specializace NEMB , 0 ročník, zimní semestr, volitelný
    specializace NHPC , 0 ročník, zimní semestr, volitelný
    specializace NGRI , 0 ročník, zimní semestr, volitelný
    specializace NIDE , 0 ročník, zimní semestr, volitelný
    specializace NISD , 0 ročník, zimní semestr, volitelný
    specializace NMAL , 0 ročník, zimní semestr, volitelný
    specializace NMAT , 0 ročník, zimní semestr, volitelný
    specializace NNET , 0 ročník, zimní semestr, volitelný
    specializace NSEC , 0 ročník, zimní semestr, volitelný
    specializace NSEN , 0 ročník, zimní semestr, volitelný
    specializace NSPE , 0 ročník, zimní semestr, volitelný
    specializace NVER , 0 ročník, zimní semestr, volitelný
    specializace NVIZ , 0 ročník, zimní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Třídy aplikací z hlediska interakce s uživatelem.
  2. Architektura systému X Window, X protokol, vstupní a výstupní grafické operace, rozšíření X protokolu.
  3. Programování na úrovni Xlib/XCB, příklad jednoduché aplikace, knihovny nástrojů, příklad jednoduché aplikace s použitím X Toolkitu a GTK+.
  4. Rysy OOP v X Toolkitu a GTK+, instance a třída grafických prvků, vlastnosti instance a třídy, vnitřní implementace.
  5. Systém pojmenování prvků uvnitř aplikace a vně, nastavování vlastností, konvertory.
  6. Základní bázové třídy X Toolkitu a GTK+.
  7. Zpracovávání událostí, překladová tabulka, akční tabulka.
  8. Zásady návrhu uživatelských rozhraní.
  9. GTK+ a OSF/Motif, společné vlastnosti, ovládání prvků, řetězce a styly zobrazení řetězců.
  10. Jednoduché objekty, jejich použití.
  11. Univerzální a specializované kontejnery.
  12. Tvorba menu a dialogů.

Projekt

26 hod., povinná

Vyučující / Lektor

Osnova

  1. Jednoduchá aplikace na základě kostry a příkladů, společné zadání.
  2. Aplikace v prostředí X Toolkit/Motif nebo GTK+/GNOME, samostatné zadání.