Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000373MPfmMVP | Presenterspublic2012-05-27 16:322013-02-23 13:13
Reporterycastonguay 
Assigned Toycastonguay 
PrioritynormalSeverityfeatureReproducibilityN/A
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version0.7.0.0Fixed in Version 
Summary0000373: Add view/presenter for desktop Library Browser (ILibraryBrowserPresenter/ILibraryBrowserView)
DescriptionThe Presenter controls all the logic for the application. It sends updates to the
view through the ILibraryBrowserView interface (for the Main Window).
TagsNo tags attached.
Attached Files

- Relationships
child of 0000324assignedycastonguay Use a MVP-style pattern to centralize code for UI on multiple platforms 

-  Notes
(0000719)
svn (developer)
2012-05-27 16:34

The user animal has checked in files related to this issue (revision 514).

Comment:
MPfm 0.6.0.1
* MVP
  - Renamed IMainView to IPlayerView.
  - Renamed IMainPresenter to IPlayerPresenter.
  - Added ILibraryBrowserView view (nothing inside yet).
  - Added the LibraryBrowserEntity and SongBrowserFilterEntity classes.
  - Added ConfigurationHelper static class.
  - Added the LibraryBrowserPresenter class.
  - Bootstrapper: Added Ninject configuration for MPfmGateway.
* GTK
  - Now using Ninject to create MPfmGateway.
  - MainWindow: Implemented ILibraryBrowserView and ISongBrowserView views.
  - MainWindow: Now updating the first level nodes of the Library Browser.

Related to issue #360, issue 0000361, issue 0000368, issue 0000370, issue #371, issue #372 and issue 0000373.


Files modified:
U MPfm/branches/current/MPfm.GTK/Main.cs
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.GTK/Windows/UpdateLibraryWindow.cs
U MPfm/branches/current/MPfm.Library/Gateway/MPfmGateway.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/Bootstrapper.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/LibraryModule.cs
A MPfm/branches/current/MPfm.MVP/Helpers/
A MPfm/branches/current/MPfm.MVP/Helpers/ConfigurationHelper.cs
U MPfm/branches/current/MPfm.MVP/MPfm.MVP.csproj
A MPfm/branches/current/MPfm.MVP/Models/LibraryBrowserEntity.cs
A MPfm/branches/current/MPfm.MVP/Models/SongBrowserFilterEntity.cs
A MPfm/branches/current/MPfm.MVP/Presenters/ILibraryBrowserPresenter.cs
D MPfm/branches/current/MPfm.MVP/Presenters/IMainPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/IPlayerPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
D MPfm/branches/current/MPfm.MVP/Presenters/MainPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Services/ILibraryService.cs
U MPfm/branches/current/MPfm.MVP/Services/LibraryService.cs
A MPfm/branches/current/MPfm.MVP/Views/ILibraryBrowserView.cs
D MPfm/branches/current/MPfm.MVP/Views/IMainView.cs
A MPfm/branches/current/MPfm.MVP/Views/IPlayerView.cs
(0000721)
svn (developer)
2012-05-27 17:39

The user animal has checked in files related to this issue (revision 515).

Comment:
MPfm 0.6.0.1
* Library
  - MPfmGateway: Added overload to SelectDistinctAlbumTitles (added artistName parameter).
* MVP
  - LibraryBrowserPresenter: Implemented all methods from interface (GetFirstLevelNodes, GetArtistNodes, GetAlbumNodes, GetArtistAlbumNodes).
* GTK
  - MainWindow: Now loading AudioFileFormat combo box dynamically.
  - MainWindow: The Library Browser tree view now contains correct data.

Related to issue 0000366 and issue 0000373.



Files modified:
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.GTK/gtk-gui/MPfm.GTK.MainWindow.cs
U MPfm/branches/current/MPfm.GTK/gtk-gui/gui.stetic
U MPfm/branches/current/MPfm.Library/Gateway/IMPfmGateway.cs
U MPfm/branches/current/MPfm.Library/Gateway/MPfmGateway.cs
U MPfm/branches/current/MPfm.MVP/Presenters/ILibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Services/ILibraryService.cs
U MPfm/branches/current/MPfm.MVP/Services/LibraryService.cs
(0000725)
svn (developer)
2012-05-27 21:44

The user animal has checked in files related to this issue (revision 517).

Comment:
MPfm 0.6.0.1
* MVP
  - Added IAudioFileCacheService/AudioFileCacheService and the AudioFileCache singleton.
    Moved code from SongBrowserPresenter to AudioFileCacheService.
  - LibraryBrowserPresenter, SongBrowserPresenter: Added PlayerPresenter to the constructor arguments.
  - Moved all interfaces to subdirectories.

Related to issue 0000373, issue 0000374 and issue 0000375.


Files modified:
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/Bootstrapper.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/LibraryModule.cs
A MPfm/branches/current/MPfm.MVP/Cache/
A MPfm/branches/current/MPfm.MVP/Cache/AudioFileCache.cs
U MPfm/branches/current/MPfm.MVP/MPfm.MVP.csproj
D MPfm/branches/current/MPfm.MVP/Presenters/ILibraryBrowserPresenter.cs
D MPfm/branches/current/MPfm.MVP/Presenters/IPlayerPresenter.cs
D MPfm/branches/current/MPfm.MVP/Presenters/ISongBrowserPresenter.cs
D MPfm/branches/current/MPfm.MVP/Presenters/IUpdateLibraryPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/
A MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ILibraryBrowserPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/IPlayerPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs
A MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/IUpdateLibraryPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
A MPfm/branches/current/MPfm.MVP/Services/AudioFileCacheService.cs
D MPfm/branches/current/MPfm.MVP/Services/ILibraryService.cs
D MPfm/branches/current/MPfm.MVP/Services/IMainService.cs
D MPfm/branches/current/MPfm.MVP/Services/IUpdateLibraryService.cs
A MPfm/branches/current/MPfm.MVP/Services/Interfaces/
A MPfm/branches/current/MPfm.MVP/Services/Interfaces/IAudioFileCacheService.cs
A MPfm/branches/current/MPfm.MVP/Services/Interfaces/ILibraryService.cs
A MPfm/branches/current/MPfm.MVP/Services/Interfaces/IMainService.cs
A MPfm/branches/current/MPfm.MVP/Services/Interfaces/IUpdateLibraryService.cs
(0000731)
svn (developer)
2012-05-29 19:34

The user animal has checked in files related to this issue (revision 518).

Comment:
MPfm 0.6.0.1
* MVP
  - Removed views from all presenter constructors. The views must now be set using the BindView method.
  - LibraryModule: Added Ninject bindings for all presenters.
* GTK
  - The MainWindow is now created by Ninject!
  - MainWindow: Added all presenters in constructor.
  
Related to issue 0000356, issue 0000361, issue 0000364, issue 0000373 and issue 0000374.


Files modified:
U MPfm/branches/current/MPfm.GTK/Main.cs
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.GTK/Windows/UpdateLibraryWindow.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/LibraryModule.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ILibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/IPlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/IUpdateLibraryPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/UpdateLibraryPresenter.cs
(0000734)
svn (developer)
2012-05-29 20:41

The user animal has checked in files related to this issue (revision 519).

Comment:
MPfm 0.6.0.1
* MVP
  - Removed AudioFileCache singleton class.
  - Ninject: Updated bindings (changed PlayerPresenter binding to InSingletonScope).
  - Ninject: Added AudioFileCacheService as a singleton (InSingletonScope).
  - LibraryBrowserPresenter: Added IAudioFileCacheService to constructor.
* GTK
  - Added controls to the PlaylistWindow.

Related to issue 0000356 and issue 0000373.


Files modified:
U MPfm/branches/current/MPfm.GTK/Main.cs
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.GTK/Windows/PlaylistWindow.cs
U MPfm/branches/current/MPfm.GTK/gtk-gui/MPfm.GTK.MainWindow.cs
U MPfm/branches/current/MPfm.GTK/gtk-gui/MPfm.GTK.PlaylistWindow.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/LibraryModule.cs
U MPfm/branches/current/MPfm.MVP/MPfm.MVP.csproj
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
(0000736)
svn (developer)
2012-05-29 20:41

The user animal has checked in files related to this issue (revision 520).

Comment:
MPfm 0.6.0.1
* MVP
  - Removed AudioFileCache singleton class.
  - Ninject: Updated bindings (changed PlayerPresenter binding to InSingletonScope).
  - Ninject: Added AudioFileCacheService as a singleton (InSingletonScope).
  - LibraryBrowserPresenter: Added IAudioFileCacheService to constructor.
* GTK
  - Added controls to the PlaylistWindow.

Related to issue 0000356 and issue 0000373.


Files modified:
U MPfm/branches/current/MPfm.GTK/gtk-gui/gui.stetic
(0000741)
svn (developer)
2012-06-03 11:06

The user animal has checked in files related to this issue (revision 525).

Comment:
MPfm 0.6.0.1
* MVP
  - ILibraryBrowserView: Added two RefreshLibraryBrowser methods.
  - LibraryBrowserPresenter: Updated presenter to use the view refresh.
  - Deleted IMainService.cs.
* GTK
  - Updated implementation so that the presenter refreshes the information.

Related to issue 0000373 and issue #377.


Files modified:
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.MVP/MPfm.MVP.csproj
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ILibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
D MPfm/branches/current/MPfm.MVP/Services/Interfaces/IMainService.cs
U MPfm/branches/current/MPfm.MVP/Views/ILibraryBrowserView.cs
(0000743)
svn (developer)
2012-06-03 18:57

The user animal has checked in files related to this issue (revision 526).

Comment:
MPfm 0.6.0.1
* MVP
  - Added the SongBrowserQueryEntity entity.
  - ISongBrowserView: Added RefreshSongBrowser method.
  - SongBrowserPresenter: Now using the view to update the UI.
  - LibraryBrowserPresenter: Added TreeNodeSelected method, which updates the song browser presenter.
  - AudioFileCacheService: Now using SongBrowserQueryEntity for method parameters.
* GTK
  - Updated implementation.

Related to issue 0000373, issue 0000374, issue 0000375 and issue #378.


Files modified:
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.MVP/Bootstrapper/LibraryModule.cs
U MPfm/branches/current/MPfm.MVP/MPfm.MVP.csproj
U MPfm/branches/current/MPfm.MVP/Models/LibraryBrowserEntity.cs
A MPfm/branches/current/MPfm.MVP/Models/SongBrowserQueryEntity.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ILibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Services/AudioFileCacheService.cs
U MPfm/branches/current/MPfm.MVP/Services/Interfaces/IAudioFileCacheService.cs
U MPfm/branches/current/MPfm.MVP/Views/ISongBrowserView.cs
(0000748)
svn (developer)
2012-06-03 21:31

The user animal has checked in files related to this issue (revision 528).

Comment:
MPfm 0.6.0.1

The Library Browser and Song Browser can now be double clicked to start a new playlist. The song position track bar is now updated (but the song position cannot be changed yet).

* MVP
  - LibraryBrowserPresenter: Added the TreeNodeDoubleClicked method.
  - LibraryBrowserPresenter: Added dependency for AudioFileCacheService.
  - SongBrowserPresenter: Added the TableRowDoubleClicked method.
  - PlayerPresenter: Added the Play(IEnumerable<AudioFile> audioFiles, int startPosition) overload.
  - SongInformationEntity: Added more properties.
  - PlayerPositionEntity: Added PositionPercentage property.
* GTK
  - Updated implementation.

Related to issue 0000361, issue 0000373 and issue 0000374.


Files modified:
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.GTK/gtk-gui/MPfm.GTK.MainWindow.cs
U MPfm/branches/current/MPfm.GTK/gtk-gui/gui.stetic
U MPfm/branches/current/MPfm.MVP/Models/PlayerPositionEntity.cs
U MPfm/branches/current/MPfm.MVP/Models/SongInformationEntity.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ILibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/IPlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
(0000751)
svn (developer)
2012-06-03 21:42

The user animal has checked in files related to this issue (revision 529).

Comment:
MPfm 0.6.0.1

* MVP
  - PlayerPresenter: Fixed crash bug when stopping player.
  - LibraryBrowserPresenter: Fixed filter bug when changing sound format filter.

Related to issue 0000361 and issue 0000373.


Files modified:
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
(0000755)
svn (developer)
2012-06-09 15:28

The user animal has checked in files related to this issue (revision 548).

Comment:
MPfm 0.6.0.1
* Mac
  - The Library Browser can now be browsed successfully. Removed the NSOutlineView header.
  - LibraryBrowserDataSource: Added code to fetch the next NSOutlineView tree node items.
* MVP
  - LibraryBrowserPresenter: Added the TreeExpandable method for Mac OS X in order to refresh the additional nodes for the NSOutlineView.

Related to issue 0000373 and issue 0000381.


Files modified:
U MPfm/branches/current/MPfm.MVP/MPfm.MVP.csproj
U MPfm/branches/current/MPfm.MVP/Presenters/Interfaces/ILibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.Mac/MainWindow.designer.cs
U MPfm/branches/current/MPfm.Mac/MainWindow.xib
U MPfm/branches/current/MPfm.Mac/MainWindowController.cs
U MPfm/branches/current/MPfm.Mac/Objects/LibraryBrowserDataSource.cs
(0000802)
svn (developer)
2012-07-02 13:10

The user animal has checked in files related to this issue (revision 588).

Comment:
MPfm 0.6.0.1
* Mac
  - Added a lot more logging all around.
  - Added assembly info file.
  - Added CocoaHelper class for misc helper methods.
* MVP
  - Added a lot more logging to PlayerPresenter, SongBrowserPresenter and LibraryBrowserPresenter.

Related to issue 0000361, issue 0000373, issue 0000374 and issue 0000381.


Files modified:
U MPfm/branches/current/MPfm.MVP/AssemblyInfo.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Services/InitializationService.cs
A MPfm/branches/current/MPfm.Mac/AssemblyInfo.cs
A MPfm/branches/current/MPfm.Mac/Helpers/CocoaHelper.cs
U MPfm/branches/current/MPfm.Mac/MPfm.Mac.csproj
U MPfm/branches/current/MPfm.Mac/MainWindowController.cs
(0000871)
svn (developer)
2012-12-03 20:48

The user animal has checked in files related to this issue (revision 645).

Comment:
GTK: Removed IPlayerPresenter, ISongBrowserPresenter and ILibraryBrowserPresenter from the constructor.
Added actions for IPlayerView, ISongBrowserView and ILibraryBrowserView.
GTK: The MainWindow is now completely disconnected from presenters.

Related to issue #360, issue 0000361, issue 0000373, issue 0000374, issue #377, issue #378 and issue 0000382.


Files modified:
U MPfm/branches/current/MPfm.GTK/Main.cs
U MPfm/branches/current/MPfm.GTK/Windows/MainWindow.cs
U MPfm/branches/current/MPfm.MVP/Presenters/LibraryBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/PlayerPresenter.cs
U MPfm/branches/current/MPfm.MVP/Presenters/SongBrowserPresenter.cs
U MPfm/branches/current/MPfm.MVP/Views/ILibraryBrowserView.cs
U MPfm/branches/current/MPfm.MVP/Views/IPlayerView.cs
U MPfm/branches/current/MPfm.MVP/Views/ISongBrowserView.cs

- Issue History
Date Modified Username Field Change
2012-05-27 16:32 ycastonguay New Issue
2012-05-27 16:32 ycastonguay Status new => assigned
2012-05-27 16:32 ycastonguay Assigned To => ycastonguay
2012-05-27 16:32 ycastonguay Issue generated from 0000361
2012-05-27 16:33 ycastonguay Relationship added child of 0000324
2012-05-27 16:34 svn Checkin
2012-05-27 16:34 svn Note Added: 0000719
2012-05-27 17:39 svn Checkin
2012-05-27 17:39 svn Note Added: 0000721
2012-05-27 18:29 ycastonguay Issue cloned 0000374
2012-05-27 21:44 svn Checkin
2012-05-27 21:44 svn Note Added: 0000725
2012-05-29 19:34 svn Checkin
2012-05-29 19:34 svn Note Added: 0000731
2012-05-29 20:41 svn Checkin
2012-05-29 20:41 svn Note Added: 0000734
2012-05-29 20:41 svn Checkin
2012-05-29 20:41 svn Note Added: 0000736
2012-06-03 11:06 svn Checkin
2012-06-03 11:06 svn Note Added: 0000741
2012-06-03 18:57 svn Checkin
2012-06-03 18:57 svn Note Added: 0000743
2012-06-03 21:31 svn Checkin
2012-06-03 21:31 svn Note Added: 0000748
2012-06-03 21:42 svn Checkin
2012-06-03 21:42 svn Note Added: 0000751
2012-06-09 15:28 svn Checkin
2012-06-09 15:28 svn Note Added: 0000755
2012-07-02 13:10 svn Checkin
2012-07-02 13:10 svn Note Added: 0000802
2012-12-03 20:48 svn Checkin
2012-12-03 20:48 svn Note Added: 0000871
2013-02-13 18:22 ycastonguay Issue cloned 0000408
2013-02-23 13:13 ycastonguay Summary Add the ILibraryBrowserPresenter interface and implement LibraryBrowser\rPresenter => Add view/presenter for desktop Library Browser (ILibraryBrowserPresenter/ILibraryBrowserView)


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker