Detail předmětu

Grafická uživatelská rozhraní v X Window

FIT-GUXAk. rok: 2024/2025

Třídy aplikací z hlediska interakce s uživatelem. Zásady návrhu uživatelských rozhraní. Architektura X Window System, historie a současnost. Vstupní a výstupní grafické operace na úrovni X serveru a Xlib. Wayland, základní protokoly. 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í. Základní bázové třídy X Toolkitu a Gtk, jejich význam a použití. 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

Vstupní znalosti

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

Pravidla hodnocení a ukončení předmětu

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


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

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 System.

Programování aplikací v prostředí X Window, X Toolkit Intrinsics, Gtk3 a Gtk4, základní metodologie návrhu uživatelského rozhraní.

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/

Elearning

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

  • Program MITAI magisterský navazující

    specializace NGRI , 0 ročník, zimní semestr, volitelný
    specializace NADE , 0 ročník, zimní semestr, volitelný
    specializace NISD , 0 ročník, zimní semestr, volitelný
    specializace NMAT , 0 ročník, zimní semestr, volitelný
    specializace NSEC , 0 ročník, zimní semestr, volitelný
    specializace NISY do 2020/21 , 0 ročník, zimní semestr, volitelný
    specializace NNET , 0 ročník, zimní semestr, volitelný
    specializace NMAL , 0 ročník, zimní semestr, volitelný
    specializace NCPS , 0 ročník, zimní semestr, volitelný
    specializace NHPC , 0 ročník, zimní semestr, volitelný
    specializace NVER , 0 ročník, zimní semestr, volitelný
    specializace NIDE , 0 ročník, zimní semestr, volitelný
    specializace NISY , 0 ročník, zimní semestr, volitelný
    specializace NEMB do 2023/24 , 0 ročník, zimní semestr, volitelný
    specializace NSPE , 0 ročník, zimní semestr, volitelný
    specializace NEMB , 0 ročník, zimní semestr, volitelný
    specializace NBIO , 0 ročník, zimní semestr, volitelný
    specializace NSEN , 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. Wayland, základní protokoly a xdg_shell.
  3. Příklad jednoduché aplikace s použitím Xlib, XCB nebo Wayland. Knihovny nástrojů, příklad jednoduché aplikace s použitím X Toolkit/Motif nebo Gtk3/4.
  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. Jednoduché objekty Gtk a jejich použití.
  9. Univerzální a specializované kontejnery.
  10. Tvorba menu a dialogů.

Projekt

26 hod., povinná

Vyučující / Lektor

Osnova

  1. Aplikace v prostředí Gtk/GNOME, samostatné zadání.

Elearning