Detail předmětu

Grafická uživatelská rozhraní v X Window

FIT-GUXAk. rok: 2017/2018

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í

Hodnocení studia je založeno na bodovacím systému. Pro úspěšné absolvování předmětu je nutno dosáhnout 50 bodů.

Osnovy výuky

    Osnova přednášek:
    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ů.

    Osnova počítačových cvičení:
    • Tvorba jednoduché aplikace v prostředí GTK+: překlad, sestavení, zachytávání a zpracování událostí, základní grafické prvky. 
    • Tvorba aplikace v prostředí Qt5. Použití moderního přístupu pro tvorbu grafického rozhraní v podobě QML.

    Osnova ostatní - projekty, práce:
    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í.

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 MMI , 0 ročník, zimní semestr, volitelný
    obor MBI , 0 ročník, zimní semestr, volitelný
    obor MSK , 0 ročník, zimní semestr, volitelný
    obor MMM , 0 ročník, zimní semestr, volitelný
    obor MBS , 0 ročník, zimní semestr, volitelný
    obor MPV , 0 ročník, zimní semestr, volitelný
    obor MIS , 0 ročník, zimní semestr, povinně volitelný
    obor MIN , 0 ročník, zimní semestr, volitelný
    obor MGM , 0 ročník, zimní semestr, povinně 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., nepovinná

Vyučující / Lektor