Multiplatformní API uživatelského rozhraní pro C/C++
Thesis title in Czech: | Multiplatformní API uživatelského rozhraní pro C/C++ |
---|---|
Thesis title in English: | Crossplatform user interface API for C/C++ |
Academic year of topic announcement: | 2005/2006 |
Thesis type: | diploma thesis |
Thesis language: | čeština |
Department: | Department of Software Engineering (32-KSI) |
Supervisor: | RNDr. Filip Zavoral, Ph.D. |
Author: | hidden - assigned and confirmed by the Study Dept. |
Date of registration: | 14.11.2005 |
Date of assignment: | 14.11.2005 |
Date and time of defence: | 11.09.2006 00:00 |
Date of electronic submission: | 11.09.2006 |
Date of submission of printed version: | 11.09.2006 |
Date of proceeded defence: | 11.09.2006 |
Opponents: | RNDr. Jiří Dokulil, Ph.D. |
Guidelines |
Cílem práce je zmapovat aktuální stav nástrojů pro vývoj GUI, vybrat z jejich charakteristik to nejlepší a implementovat samotný systém knihoven. Ten má být určen pro běžné aplikace nezávislé na vlastnostech jednotlivých cílových platforem a s
důrazem na grafický vzhled a rychlost. Tím je vyloučeno použití interpretovaných platformně nezávislých jazyků jako např. Java. |
References |
Adrian Nye: XLib programmin manual for Version 11
Matthias Kalle Dalheimer: Programming with Qt Microsoft: MSDN |
Preliminary scope of work |
Požadavky :
- Výsledné aplikace by mělo být možné zkompilovat na cílových systémech bez nebo s minimálními změnami zdrojových kódů. - Styly na bázi pluginů. Implementace stylů by mělo být možné načítat za běhu. S tím kvůli různým velikostem a vzhledu komponent (control) souvisí např. i systém pro automatické umísťování komponent. - Cílové platformy na bázi pluginů - ne jen okna vlastní dané platformě, ale kupříkladu virtuální okenní systém uvnitř OpenGL. Opět s možností načítání za běhu. - Bude definován protokol při jehož dodržení bude přístup thread-safe. - Systém bude obsahovat kompletní set základních komponent, které ale nutně nemusí odpovídat dnešním klasickým komponentám (co se týče vzhledu a obsluhy), pokud autor najde vhodnější náhradu. - Budou implementovány pluginy alespoň pro nativní okna ve Win32, a systémy s podporou XLib (unix-based). Nezávazně též virtuální okna pod OpenGL, případně nativní Mac. |