General Purpose File Browser/UNIX Front End
Senior Project: 1990-1991
Brian Alexander, Randall Gaz, Hector Tissera and Hai Vu
This project consisted of two parts. The first was to develop a general purpose
library of C++ "browser" classes. These classes would make it easy to construct
graphical interfaces allowing a user to interactively "browse" through a
hierarchy of arbitrary objects. One example might be the browsing of the
organization chart for a company. The constructed interface might allow one to
pick a particular division in the company and see in a window an image of the
director of that division, along with images of each of the department heads
reporting to the director. By clicking the mouse on one of the department head
images, another window representing that department would appear. That window
might contain an image of the department head, along with images of each of the
group supervisors reporting to that department head. Finally, one might click
the mouse on the image of one of the supervisors to bring up a window showing
images of the group supervisor and of each of the members of the group. At any
given time, one might double-click on an image to bring up data about that
person, e.g. office location, phone number, and electronic mail address. This
class library was completely generic, in that it had no knowledge of the type
of hierarchy under consideration or of the visual representation of elements in
the hierarchy.
The second part of the project was to develop a general purpose UNIX file
browser, using the browser class library. This file browser allows one to open
windows depicting the contents of directories in iconic form. The user can
navigate the file system by clicking the mouse on directory icons. General file
manipulation operations, such as file copy, delete, rename, and permission
management, can also be performed through the point and select interface. The
browser class library and the UNIX file browser were developed using OI (Object
Interface -- Solbourne's object-oriented, X Windows and C++-based user
interface toolkit), and run on Solbourne's multiprocessor UNIX systems.
|