Example: /MacCocoa/NSStatusItem/Display current iTunes Song

Online Documentation   -   Statistics   -   FAQ   -   Plugin Parts (All, Dependencies)   -   Class hierarchy

New in Version 22.2 22.3 22.4 22.5 23.0 23.1 23.2 23.3 23.4 23.5 24.0 24.1

The list of the   topics,   classes,   interfaces,   controls,   modules,   global methods by category,   global methods by name,   screenshots,   licenses   and   examples.

Platforms to show: All Mac Windows Linux Cross-Platform

/MacCocoa/NSStatusItem/Display current iTunes Song


Required plugins for this example: MBS MacCocoa Plugin, MBS MacBase Plugin, MBS Util Plugin, MBS MacClassic Plugin, MBS Main Plugin

You find this example project in your Plugins Download as a Xojo project file within the examples folder: /MacCocoa/NSStatusItem/Display current iTunes Song

This example is the version from Sun, 17th Mar 2012.

Project "Display current iTunes Song.xojo_binary_project"
MenuBar Menu
MenuItem UntitledMenu3 = ""
MenuItem UntitledMenu2 = "File"
MenuItem FileQuit = "Quit"
MenuItem UntitledMenu0 = "Edit"
MenuItem EditUndo = "Undo"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "Cut"
MenuItem EditCopy = "Copy"
MenuItem EditPaste = "Paste"
MenuItem EditClear = "Clear"
End MenuBar
Class App Inherits Application
EventHandler Sub Open() dim f as FolderItem dim source as String if TargetMachO=false then MsgBox "This example needs a MachO target running on Mac OS X." quit end if s=new NSStatusItemMBS if not s.Available then MsgBox "NSStatusItem is not available." quit end if call s.CreateMenu s.HighlightMode=false s.Title="?" c=new clock c.Period=2000 c.mode=2 a=new AppleScriptMBS a.UnicodeText=true source= "tell application ""iTunes"""+chr(13) source=source+"return name of current track"+chr(13) source=source+"end tell" a.Compile source End EventHandler
Function getcurrentsong() As string dim s as String a.Execute s=a.Result System.DebugLog str(lenb(s))+" "+str(len(s)) System.DebugLog hex(GetEncodingOfStringMBS(s)) Return s End Function
Sub update() dim t as String if s<>Nil then t=getcurrentsong if t<>last then s.title=t last=t end if end if End Sub
Property Protected a As applescriptmBS
Property c As clock
Property last As string
Property s As NSStatusItemMBS
End Class
Class Clock Inherits Timer
EventHandler Sub Action() app.update End EventHandler
End Class
End Project

See also:

The items on this page are in the following plugins: MBS MacCocoa Plugin.


💬 Ask a question or report a problem