FileBrowser utility implemented, pattern declared as constant.
Refactored large amounts of code. Changed all the model classes (Book, Track, Bookshelf) to incorporate a new update event design. Removed propertyChange from the fragment classes. Added all update events to AudioBookActivity class. Deleted useless classes. Made a BookCreator and TrackCreator to create books with the help of metadata, such as title and duration of the track.
Improved on overall design. Removed unused events. Added required events. Changed Bookshelf to be the only model that is listened to. Book and Track now are not listened to. Their mutators are accessed by Bookshelf. Added interfaces for updates from Book and Track, since these updates must be included in Bookshelf. WIP on AudioBookActivity's propertyChange restructure.
Worked on events from model. Removed unused methods. Renamed some methods and merged some methods that did the same thing. Removed unnecessary methods. Changed event name to better reflect what should happen. fireProperty is now completely removed from both Book and Track. 'elapsedTime' in Track is now more accurate. Added initial version of 'copy constructor/method' to be used in event parameters. Fixed a logical error in model.
WIP on MVC, mainly AudioBookActivity and PlayerFragment. Started working on adding seek functionality to the book seekbar. Added test folder structure.
Added generated test classes.
WIP on Bookshelf updates sending clones of Bookshelf, Book and Track instances.
WIP on updates from model and AudioBookActivity.
Implemented test classes for Book and Track. Partial implementation of Bookshelf also included. Reworked code structure of property change updates.
Slight changes to documentation.
Merge branch 'development' of ssh://github.com/MarcusParkkinen/AudioBook into development
Reworked updates. Update events should now work properly, and event handling is set up for easy implementation of BookshelfFragment. Update events now only send a copy of the bookshelf with them. Removed addTrack/BookTo methods, since they are not needed. Started work on a Bookshelf test case. SeekBars should now work fully. Seeking is implemented (and the SeekBars should update correctly). Modified TrackTest and BookTest according to model changes. Added the missing graphical components of PlayerFragment. The components' positions is a WIP. In conclusion the Player part of the application should be close to complete.
Fixed logical issue in Book class method.
More work on Bookshelf test case. Fixed logical errors in Book.
Merge remote-tracking branch 'origin/development' into development
Removed elapsed time variable from Book, since it can be calculated from the track index and the duration of its tracks. This makes it easier to keep track of the total elapsed time through the book, since it does not need to be updated. Added more test cases to BookshelfTest. Worked on AudioBookActivity and Bookshelf, fixing issues and changing implementation of the seek bars. They now use doubles, so that they do not always seek to time=0 ms. Fixed logical issue in setting the elapsed time to a new time (0 should be allowed) in Bookshelf.
Fixed crash that occured when trying to play a book. Made time updates move the seek bars. Removed unused methods (Increment).
Renamed methods and variables to better reflect what they do. Removed unused code. Added new methods required by the main activity. Fixed issue with seeking. Added comments and debug logs. Changed Track to accept setElapsedTime above its duration for now. Attempted to add label updates, but they make the application crash.
Merge remote-tracking branch 'origin/development' into development
Added docs files for handin 3