Tag Archive for ''

Listening to

Beatles - A Day In The Life
(Lennon / McCartney) (1967 - Sgt Pepper’s Lonely Hearts Club Band)
Currently playing on JRMC version 12.0.450

Ah ben ça alors c’est cool ! Voici la première version d’un plugin pour WLW qui retourne le “currently playing” de JRMC. Un grand merci aux différents contributeurs trouvés sur le web. En particuler à Rahul Soni dont un billet de blog m’a complètement mis sur la voie. Je me suis directement inspiré de son code et y ait ajouté l’interface vers JRMC en VB que j’avais déjà développée pour le plugin “Listening to” de “The Journal”. Après avoir essayé de faire ce plugin en C# dans lequel je me suis perdu dans les interop etc.. j’ai finalement réalisé celui ci en VB comme premier exercice de plugin pour WLW. Il me reste maintenant à imaginer un design plus chatoyant (peut-être configurable) pour l’affichage en html.

Voici le code que j’ai réalisé:

   1: Public Class ListeningToPlugin
   2:  Inherits ContentSource
   3:  Public Overrides Function CreateContent( _
   4:      ByVal dialogOwner As IWin32Window, _
   5:      ByRef newContent As String) As DialogResult
   6:      ‘ First try to get an already running object
   7:      ‘On Error Resume Next
   8:      Dim mja As Object
   9:      Dim mjsrc As Object
  10:      Try
  11:          mja = GetObject(, “MediaJukebox Application”)
  12:      Catch ex As Exception
  13:          MsgBox(“Sorry can’t access or create MJA !”)
  14:          ‘Then, create a new object
  15:          mja = CreateObject(“MediaJukebox Application”)
  16:      End Try
  17:  
  18:      mjsrc = mja.GetCurPlaylist()
  19:      Dim playing_track As Object = mjsrc.GetFile(mjsrc.Position)
  20:      Dim track_name As String = playing_track.Get(“Name”, False)
  21:      Dim artist As String = playing_track.Get(“Artist”, False)
  22:      Dim album As String = playing_track.Get(“Album”, False)
  23:      Dim composer As String = playing_track.Get(“Composer”, False)
  24:      Dim year As String = playing_track.Get(“Date (year)”, False)
  25:      Dim rating As String = playing_track.Get(“Rating”, False)
  26:      Dim JRMC_Version As String = mja.GetVersion.Version
  27:  
  28:      Try
  29:          newContent = 

 + artist +  - ” + track_name + _
  30:                       ““ + year + ” - “ + album + ” (” + composer + “)” + _
  31:                       Played on JRMC version “ + JRMC_Version + 
  32:  
  33:          Return DialogResult.OK
  34:      Catch ex As Exception
  35:          ‘Do some error handling here!
  36:      End Try
  37:  End Function
  38:  Class

Voila aussi ce que cela donne dans l’interface de WLW

image

Bon ben, A plus !

Elton John - Shine On Through
1978 - A Single Man (Elton John / Gary Osborne)
Played on JRMC version 12.0.450

Alan Parsons Project - Don’t Let the Moment Pass
(Eric Woolfson) (1990 - Freudiana)
Currently playing on JRMC version 12.0.450