DDJ, September 1997
Designing User Interfaces
Additional resources (listings and source code) for
the articles below can be found here.
Emacspeak: A Speech-Enabling Interface
T.V. Raman
The Emacspeak speech feedback system is unique in that it enables the separation of the computational component of an application from its user interface.
Converting MFC Toolbars into Taskbars
Mark Janczura
One use for a Windows 95 taskbar is for displaying information to users. Mark shows you how to undock a taskbar from the shell, giving users the option of docking the taskbar to the application window.
Customizing Common Controls
Jason Clark
Common controls are standard Windows 95/NT GUI components that save you time and users trouble. As an example, Jason describes how you can customize a tree-view control.
A Text UI for the Java AWT
Stuart D. Gathman
Stuart presents a text user-interface toolkit for the Java AWT that allows ASCII terminals to run Java applications on UNIX servers. In addition, the toolkit enables a multiuser Virtual Machine.
Tagged Data Storage
Jeremy Vineyard
Tagged data storage improves the efficiency and robustness of your data-storage architecture and decreases the time you spend writing code to store and restore data.
Java Deadlock
Allan Vermeulen
One of the primary motivations for using Java-and one of its biggest advantages to developers-is safety. Still, Java does nothing to protect you from deadlock-a nasty problem where a program simply stops executing because all threads are waiting for a resource that will never become available. Allan examines Java deadlock and shows how it can be prevented.
FireWire: The IEEE 1394 Serial Bus
Thomas "Rick" Tewell
FireWire, also known as IEEE 1394, may pave the way for a true convergence of consumer electronics and computers. Thomas presents a fully functional Win32 console application that takes a snapshot from the CCM-DS250 digital camera, converts it from a YUV format to a 24-bit device independent bitmap (DIB), and writes the DIB to a file.
Server-Side Scripting in Visual Basic
Al Williams
Al shows how you can transform a boring web page into an interactive powerhouse using Visual Basic, IIS 3.0, VBScript, and server-side ActiveX components.
Stereoscopic Imaging
Andy Ramm
Stereoscopic imaging gives you the ability to deliver a user interface that provides a natural 3-D view of an object or scene, dramatically increasing technical proficiency and the ability to interpret multidimensional data.
Leveraging Oracle Power Objects 2.1
Douglas C. McArthur
Douglas describes how Oracle's visual development tool Power Objects 2.1 was used to develop MDLSCREEN, an Oracle-based client/server data-management system for automated drug discovery and high-throughput screening.
Programming Paradigms
Michael Swaine
Will Apple's bridge to the future be a bridge over troubled waters? Based on the goings-on at this year's World Wide Developer's Conference, Michael looks at what the future might hold for Apple.
C Programming
Al Stevens
Al's scratching his head over what's going on with the proposed C++ standardization.
Java Q&A
Clif Berg
JavaBeans, Sun's answer to component software, are reusable components that can be visually manipulated. Cliff shows you how to build a Bean.
Algorithm Alley
Bob Jenkins
What makes one hash function better than another? Bob knows the answer, and he has used his knowledge to design a new hash function that may be better than what you're using now.
Undocumented Corner
Robert R. Collins
Robert continues his discussion of in-circuit emulators. This month he describes how microprocessor design has evolved with in-circuit emulation in mind, and the changes that occurred within the microprocessor itself in the process.
Programmer's Bookshelf
Gregory V. Wilson
Gregory examines a bevy of books: Understanding ActiveX and OLE, Garbage Collection: Algorithms for Automatic Dynamic Memory Management, Modern Compiler Implementation in Java, Growing Artificial Societies, and Java Design: Building Better Apps and Applets.
Editorial
Jonathan Erickson
Letters
News & Views
the DDJ staff
Of Interest
Eugene Eric Kim
Swaine's Flames
Michael Swaine