BUG SoundMangler Planning Meeting 11/15/97 | ||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||
User Interface Design![]() The user interface of SoundMangler consists of a menu hierarchy, two list boxes, a vew for configuring sound preferences, and two buttons. The menu bar contains a file menu, an edit menu, and a help menu. The items in these menus are listed below:
The first list on the main view displays the available filters which can be applied to the audio stream. The second list displays only the filters which have been applied. Filters can be dragged from the first list to the second to apply the filter. Filters can be dragged out of the second list to remove it from the stream. If a filter is selected in the second list, its configuration screen is brought up in the config box on the right side of the window. There are two buttons on the bottom of the window. The first opens the Sound Preferences Control Panel. The second is a two-state button which turns the filters on and off. | ||||||||||||||||||||||||||||
Add-On APIAudio filter add-ons are required to do several things:
On start-up, the application searches for add-ons. Those it finds are put in the first list view. Each of the add-ons are initialized. The filter is a subclass of the Filter class, defined as: An add-on must supply a function which returns a filter object. This function is defined below, but may be modified if implementation requires otherwise. Where MyFilter is a subclass of the Filter class defined earlier, defined and created in the add-on. When the application searches for add-ons and creates this filter, it must search for the symbol called MakeNewFilter. Several questions about the add-on api are addressed below:: Question: What is passed to the filter object on initialization? Answer: The size of the BView for the configuration screen is passed in. Question: How is the view handled in the application? Answer: The add-on returns a subclass of BView which maintains its own controls. | ||||||||||||||||||||||||||||
Directory StructureThe directory structure of the completed project is detailed below: | ||||||||||||||||||||||||||||
Job Breakdown |