Reference no: EM132417696
HCI & GUI Programming Assignment
MP3 BlastBox is a media player application for .mp3 format audio tracks. A picture to guide the creation of the graphical user interface for the application is shown in Figure 1. From this starting point, develop the MP3 BlastBox application. The features to be implemented are detailed further in section 2.0. User interfaces must be created using the coding approach shown in class.
![1273_figure.jpg](https://secure.expertsmind.com/CMSImages/1273_figure.jpg)
Figure 1: MP3 BlastBox example user interface design
2.0 MP3 BlastBox Features
Create a user interface for the MP3 Blast Box application similar to that shown in Figure 1.
At application startup, the list of available tracks should be populated from a "music" directory adjacent to where the application is located. This directory should only contain music files in .mp3 format. It is not necessary therefore to implement filtering.
When the "Add" button is clicked, a track selected in the available list is added to the selected tracks list. The button should not be enabled unless a track is selected in the available list.
Implement removal of a single track and removal of all tracks from the selected tracks list.
Manage the enabling and disabling of buttons to support correct use of the application. For example, if the selected tracks list is empty, all buttons should be disabled. If a track is selected in the available tracks list, the "Add Track" button is once again enabled. Clicking on a track in the list of selected tracks enables the "Play" button etc.
When the "Play" button is clicked, the highlighted track from the list of selected tracks is played. It is not necessary to play the entire list. Also implement the "Stop" and "Pause" buttons.
Add a slider to control volume. Bind the control to the media player's volume.
Create a simple icon for the application and add it. Customize the styling and colouring of the application to enhance its appeal to users.
Provide play position feedback. This can be in numeric form using a label, for example, or in the form of a slider or both. If using a slider, it is not necessary to support seek operations to allow the user to move playing to a new position in the track.
Development approach (This item is explained further in Section 2.1).
2.1 Development Approach
You are required to demonstrate a progressive, analytic and methodic approach to the development. Progress will be inspected at the end of the first and second weeks to ensure that this requirement is adhered to. At the first inspection, for example, it is expected that the user interface would be largely complete. Simpler implementation tasks might also have begun at this point. To score well on these inspections, there should be clear evidence of engagement, planning, research and analysis.
It is your responsibility to ensure that your application is tested and working, directory paths are valid and that all components are present in the zipped archive.