Title:

Graphical User Interfaces in X Window System

Code:GUX
Ac.Year:2012/2013
Term:Winter
Study plans:
ProgramBranchYearDuty
IT-MSC-2MBI-Elective
IT-MSC-2MBS-Elective
IT-MSC-2MGM-Compulsory-Elective - group G
IT-MSC-2MIN-Elective
IT-MSC-2MIS-Compulsory-Elective - group S
IT-MSC-2MMI-Elective
IT-MSC-2MMM-Elective
IT-MSC-2MPV-Elective
IT-MSC-2MSK-Elective
IT-MSC-2EITE2ndElective
Language:Czech
Public info:http://www.fit.vutbr.cz/study/courses/GUX/public/
Private info:http://www.fit.vutbr.cz/study/courses/GUX/private/
Credits:5
Completion:examination (written)
Type of
instruction:
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Hours:2600818
 ExaminationTestsExercisesLaboratoriesOther
Points:60200020
Guarantee:Lampa Petr, Ing., CC
Lecturer:Lampa Petr, Ing., CC
Instructor:Kašpárek Tomáš, Ing., CC
Faculty:Faculty of Information Technology BUT
Department:Department of Information Systems FIT BUT
 
Learning objectives:
The goal is to make students familiar with the design and programming of graphical user interfaces in Unix/X Window System environment.
Description:
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+.
Knowledge and skills required for the course:
C language programming in Unix environment.
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.
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 of computer exercises:
  1. X Window system configuration, running remote applications, basic tools.
  2. Programming environment, simple application, compilation, link command.
  3. Graphic operations, graphic contexts, events, event handling.
  4. Common X Toolkit application features, application resources.
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.
Fundamental literature:
  1. Hix, D., Hartson, H., R.: Developing User Interfaces: Ensuring Usability Through Product & Process, John Wiley & Sons, 1993, ISBN 0-471-57813-4
  2. 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
  3. Nye, A., O'Reilly, T.: X Toolkit Intrinsics Programming Manual, OSF/Motif Edition, O'Reilly & Associates, 1990, ISBN 0-937175-62-5
  4. Krause, A.: Foundations of GTK+ Development, Apress, 2007, ISBN13: 978-1-59059-793-4
  5. Heller, D.: Motif Programming Manual, O'Reilly & Associates, 3rd ed 2002, ISBN 1-56592-016-3
  6. Sheets, J.R.: Writing GNOME applications, Addison-Wesley, 2001, ISBN 0-201-65791-0
  7. Dallheimer, M.K.: Programming with Qt, O'Reilly Verlag GmbH, 2001, ISBN 0-596-00064-2
Study literature:
  1. Heller, D.: Motif Programming Manual, O'Reilly & Associates, 3rd ed 2002, ISBN 1-56592-016-3
  2. Krause, A.: Foundations of GTK+ Development, Apress, 2007, ISBN13: 978-1-59059-793-4
  3. http://library.gnome.org/devel/gtk-tutorial/stable/
Controlled instruction:
Projects have to be submitted before the deadline, late project submission will be graded 0 points.
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.