Faculty of Information Technology, BUT

Course details

Graphical User Interfaces in X Window System

GUX Acad. year 2014/2015 Winter semester 5 credits

Interaction between user and application, different application classes. Graphical User Interface in Unix and its history. System X Window, structure, X server concept, graphical operations. Application programming interface, Toolkits. Standard X Toolkit and its usage. Object orientation features in X Toolkit and GTK+. Widget names, attributes and manipulation. Event processing, translation and action table. Base X Toolkit and GTK+ classes. Programming with OSF/Motif and GTK+.


Lampa Petr, Ing. (CC FIT BUT)

Language of instruction



Examination (written)

Time span

26 hrs lectures, 8 hrs pc labs, 18 hrs projects

Assessment points

60 exam, 20 half-term test, 20 projects



Lampa Petr, Ing. (CC FIT BUT)


Jurzykowski Michal, Ing. (DCGM FIT BUT)
Kašpárek Tomáš, Ing. (CC FIT BUT)
Mlích Jozef, Ing. (DCGM FIT BUT)

Subject specific learning outcomes and competences

Students will get knowledge of application programming in X Window, GTK+ and OSF/Motif environment and basic principles of user interface design.

Learning objectives

The goal is to make students familiar with the design and programming of graphical user interfaces in Unix/X Window System environment.

Prerequisite kwnowledge and skills

C language programming in Unix environment.

Study literature

Fundamental literature

  • 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

Syllabus of lectures

  1. Application classes from the point of view of user interaction.
  2. X Window system structure, X protocol, input and output graphic operations.
  3. Xlib level programming, simple application example, Toolkits, example of application using toolkit.
  4. OOP features in X Toolkit and GTK+, instance and class of widgets, properties, internal implementation.
  5. Widget naming system, resources, convertors.
  6. Built-in X Toolkit widget classes and their usage.
  7. Event processing, translation table, action table.
  8. User interface design rules
  9. Common OSF/Motif features, keyboard navigation, compound strings, font lists and renditions.
  10. Simple widget classes and their usage.
  11. Composite widget classes.
  12. Menu and dialogs.

Syllabus - others, projects and individual work of students

  1. Simple application based on given skeleton and examples, common assignment.
  2. X Toolkit/Motif or GTK+/GNOME application, individual assignment.

Progress assessment

Written mid-term exam (max. 20 points) and submitting 2 projects in due dates. There is no alternative term of mid-term exam.

Controlled instruction

Projects have to be submitted before the deadline, late project submission will be graded 0 points.

Course inclusion in study plans

Back to top