Weekly Progress Reports:
Progress as of second semester
The following parts of the project have been completed:
- Control panel written in tcl/tk
- .rpm file for easy installation on redhat installations
- Keyboard Settings added to control panel with slide bars
- Video mode changer added to the control panel
- Easy navigation of the panel (allows for tab key control)
- Help file system installed
- User profiles added and tested
- Magnification program getting added within a week
- Documentation finished
The control panel
The control panel was written in tcl/tk for the speed of use and speed to program. It allowed for easier access to the C code than the previous Java version. With the tcl/tk panel, the user can also use the profiles specific to their needs and change them as he/she sees fit. The Linux group has worked on making the panel easy-to-understand, and easy-to-install. Below is a screen shot of the panel.
The control panel allows the user to save the settings, apply, restore to default, and cancel the session. When pressed, the buttons perform the following:
- Apply - The control panel sets the XWindow session to the settings on the control panel. It applys functionality of whatever is set on the control panel yet does not save any of the information.
- Save - The settings are applied and a user profile is created in the users home directory as .accessprofile.
- Cancel - The control panel closes and the settings are set to it's orginal settings when the program started.
- Restore Defaults - This sets the accessibility options to the default settings, which are similar to a state before the features were ever installed.
The .rpm file
The linux group has made a .rpm file for installation with the Redhat Package Manager. It allows the handicap features to be installed easily and uninstalled just as easy. Note: the user must be logged in as root in order to install the Linux AccessX package.
Keyboard settings to the control panel
The keyboard settings made via easy-to-use slide bars on the control panel. Most of the timings are in milliseconds. The settings are automaticly set to the current setting at startup.
Video Mode Changer Added to the control panel
AccessX has also installed xvidmode-1.0 to the control panel. This allows the user it instantly chance video mode setting for people who have a harder time seeing the screen. It prevents the user from changing the default XF86Config file, which is system wide, and allows on-the-fly mode changing without the keyboard combination. It also saves the chosen video mode to be that video mode at startup.
Easy navigation of the control panel
Linux AccessX now supports tab key navigation of the control panel. This allow a user to navigate through the panel similarly to the way one can on Windows applications.
Help File System Installed
Linux AccessX comes complete with a help file system which easily explains each of the developed features and how they are loaded, and how they can be used.
User Profiles added and tested
The user profile system has been successfully tested. In order to implement this feature, the Linux AccessX group had to figure out how the initialization of programs work at X startup. Since most people (98%) of linux users use the startx script for starting XWindows, AccessX had to know how a file can be started when the X server starts. StartX (and nearly all start scripts) checks if there is a .xinitrc file first. If one exists, it runs this script. If it does not exist, it runs the systemwide xinitrc file (which, on RedHat, starts FVWM95). Linux AccessX implemented the following algorithm to run user profiles:
- When the user saves the profiles, the control panel will save an executable script called .accessprofile in the user's home directory.
- In order to insure the .accessprofile is run at startup, the following cases must be considered:
- If a .xinitrc file exists, check if that file executes the .accessprofile
- If it executes a .accessprofile, we are done. Or else, the control panel must add the appropriate lines to the .xinitrc file to execute the .accessprofile.
- If the .xinitrc file does not exist in the user's home directory, the control panel copies the systemwide xinitrc file to the user's home directory as .xinitrc and adds the appropriate lines to the .xinitrc file to execute the .accessprofile.
This stragedy works on almost all Linux machines, unless the administrator changes how the startup is done.
Magnification program getting added within a week
We will add the UnWindows version of DynaMag to the control panel within a week.