sk.baka.ambient.activity.main
Class MagnatuneController

java.lang.Object
  extended by sk.baka.ambient.activity.main.AbstractController
      extended by sk.baka.ambient.activity.main.AbstractListController
          extended by sk.baka.ambient.activity.main.cb.AbstractCollectionController
              extended by sk.baka.ambient.activity.main.MagnatuneController
All Implemented Interfaces:
IPlaylistPlayerListener, ILibraryListener, IGestureListViewListener

public final class MagnatuneController
extends AbstractCollectionController
implements IPlaylistPlayerListener

Controls the Magnatune view

Author:
Martin Vysny

Nested Class Summary
 
Nested classes/interfaces inherited from class sk.baka.ambient.activity.main.AbstractController
AbstractController.Listener
 
Field Summary
static List<ActionsEnum> actions
          The actions to display on the Task switcher.
 
Fields inherited from class sk.baka.ambient.activity.main.cb.AbstractCollectionController
collection
 
Fields inherited from class sk.baka.ambient.activity.main.AbstractListController
highlightColor, listView
 
Fields inherited from class sk.baka.ambient.activity.main.AbstractController
app, cycle, listener, mainActivity, mainView
 
Constructor Summary
MagnatuneController(Activity mainActivity, GesturesListView playlistView)
          Creates new Magnatune controller.
 
Method Summary
protected  void onAction(ActionsEnum action)
          Called when an action button is pressed.
protected  void performZoom(boolean zoom)
          Zooms, or un-zooms the controller.
 void playbackStateChanged(PlayerStateEnum state)
          The playback state was changed.
 void playlistChanged(Interval target)
          Fired when the playlist changes - by removing a track, reshuffling etc.
 void randomChanged(Random random)
          The play mode was changed.
 void repeatChanged(Repeat repeat)
          The play mode was changed.
 void trackChanged(PlaylistItem track, boolean play, int positionMillis)
          A new track was selected in the playlist.
 void trackPositionChanged(int position, boolean playing)
           A position in the track was changed.
 void update(Interval select)
          Overrides default functionality - the AbstractListController.recomputeListItems() is invoked and the list view contents are updated.
 
Methods inherited from class sk.baka.ambient.activity.main.cb.AbstractCollectionController
canComputeItems, canHighlight, computeTracks, coverLoaded, destroy, getHint, isComputeTracksLong, isComputeTracksOnlineOp, isReadOnly, itemActivated, libraryUpdate, lyricsLoaded, recomputeListItems, refetchData, removeItems, reset, update, updateData
 
Methods inherited from class sk.baka.ambient.activity.main.AbstractListController
dropItems, getClipboard, highlightChanged, moveItems, moveItemsByOne, setClipboard
 
Methods inherited from class sk.baka.ambient.activity.main.AbstractController
equals, flipVisibility, hashCode, hide, initButtonBar, initButtonBar, initButtonBar, isDestroyed, isVisible, isZoomed, setVisibility, show, visibilityChanged, zoom
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

actions

public static final List<ActionsEnum> actions
The actions to display on the Task switcher.

Constructor Detail

MagnatuneController

public MagnatuneController(Activity mainActivity,
                           GesturesListView playlistView)
Creates new Magnatune controller.

Parameters:
mainActivity -
playlistView -
Method Detail

playbackStateChanged

public void playbackStateChanged(PlayerStateEnum state)
Description copied from interface: IPlaylistPlayerListener
The playback state was changed.

Specified by:
playbackStateChanged in interface IPlaylistPlayerListener
Parameters:
state - new playback state.

playlistChanged

public void playlistChanged(Interval target)
Description copied from interface: IPlaylistPlayerListener
Fired when the playlist changes - by removing a track, reshuffling etc.

Specified by:
playlistChanged in interface IPlaylistPlayerListener
Parameters:
target - the "target" (or the product) of the operation - for example for copy/move operations this interval contains added items, for delete operation the interval is empty. May be null if the target is not known. Semantically, the target should contain tracks that were 'produced' by the operation and they should be the target of the next operation. This implies that the playlist view should make these tracks appear selected.

randomChanged

public void randomChanged(Random random)
Description copied from interface: IPlaylistPlayerListener
The play mode was changed.

Specified by:
randomChanged in interface IPlaylistPlayerListener
Parameters:
random - new random value, never null.

repeatChanged

public void repeatChanged(Repeat repeat)
Description copied from interface: IPlaylistPlayerListener
The play mode was changed.

Specified by:
repeatChanged in interface IPlaylistPlayerListener
Parameters:
repeat - new repeat value, never null.

trackChanged

public void trackChanged(PlaylistItem track,
                         boolean play,
                         int positionMillis)
Description copied from interface: IPlaylistPlayerListener
A new track was selected in the playlist.

Specified by:
trackChanged in interface IPlaylistPlayerListener
Parameters:
track - the new track, may be null - in this case the playback is stopped.
play - if true then the track is already being played (or is about to be played).
positionMillis - the starting playback position in milliseconds.

trackPositionChanged

public void trackPositionChanged(int position,
                                 boolean playing)
Description copied from interface: IPlaylistPlayerListener

A position in the track was changed. This is only due to PlaylistPlayer.seek(int) - it is never invoked periodically as the playback progresses. This event is not invoked when a playback is started with non-zero start seek time.

Note that the playback may be paused.

Specified by:
trackPositionChanged in interface IPlaylistPlayerListener
Parameters:
position - the new position in milliseconds.
playing - if true then playback is activated, if false then the playback is paused. This event is not invoked when the playback is stopped.

update

public void update(Interval select)
Description copied from class: AbstractListController
Overrides default functionality - the AbstractListController.recomputeListItems() is invoked and the list view contents are updated.

Overrides:
update in class AbstractListController
Parameters:
select - reset selection to this interval.

onAction

protected void onAction(ActionsEnum action)
Description copied from class: AbstractController
Called when an action button is pressed. By default invokes main activity. Subclasses can override.

Overrides:
onAction in class AbstractCollectionController
Parameters:
action - the action to take

performZoom

protected void performZoom(boolean zoom)
Description copied from class: AbstractController
Zooms, or un-zooms the controller.

Overrides:
performZoom in class AbstractListController
Parameters:
zoom - true zoom the controller in, false zoom the controller out.


Copyright © 2007-2008. All Rights Reserved.