Advisor(s) - Committee Chair
Sylvia Pulliam, Robert Crawford, Larry Mayhew
Department of Computer Science
Master of Science
This thesis involves the construction of a Multi-Platform Graphical User Interface. The major windowing environments under consideration are Microsoft Windows, X WindowsTM and Macintosh. It makes use of C++’s Object-Oriented capabilities.
An abstraction of a common framework for handling events and graphical display objects is made, thereby an architecturally neutral design is prepared for implementing graphic user interfaces. C++ has been selected to implement this architecture for common windowing toolkits. C++ combines backward compatibility to C with modern Object-Oriented Programming paradigm. The aim in this thesis is to design a comprehensive framework for commercial software developers who want to maximize their investments in product development. The practical problems facing C++ programmers of graphical interface based applications, like implementing the C “callback” event handlers for C++ libraries, are closely inspected.
In order to save time and effort in software developing projects, many reusable classes are constructed. There lies reuse to reduce programming costs and increase the functionality of the programs.
After the design of an abstract windowing-environment independent class library, several utility classes for machine dependent file I/O, smart data object that manage their own memory allocation and persistence are also developed. The application programs that are developed in any one of the standard windowing environments will run without source code modification on Apple Macintosh, Microsoft Windows and Unix machines that support X WindowsTM (using either Athena Widgets or Motif). All applications that are developed are equally portable.
Computer Sciences | Physical Sciences and Mathematics
Reddy, C. C., "Multi-Platform Graphical User Interface Development with C++" (1995). Masters Theses & Specialist Projects. Paper 3422.