1415ef601SStephan Aßmus /* 2*c60fcc87SStephan Aßmus * Copyright 2007-2009 Stephan Aßmus <superstippi@gmx.de>. 3*c60fcc87SStephan Aßmus * All rights reserved. Distributed under the terms of the MIT License. 4415ef601SStephan Aßmus */ 5415ef601SStephan Aßmus 6415ef601SStephan Aßmus #include "PlaylistObserver.h" 7415ef601SStephan Aßmus 8415ef601SStephan Aßmus #include <Message.h> 9415ef601SStephan Aßmus 10415ef601SStephan Aßmus 11415ef601SStephan Aßmus PlaylistObserver::PlaylistObserver(BHandler* target) 12415ef601SStephan Aßmus : Playlist::Listener() 13415ef601SStephan Aßmus , AbstractLOAdapter(target) 14415ef601SStephan Aßmus { 15415ef601SStephan Aßmus } 16415ef601SStephan Aßmus 17415ef601SStephan Aßmus 18415ef601SStephan Aßmus PlaylistObserver::~PlaylistObserver() 19415ef601SStephan Aßmus { 20415ef601SStephan Aßmus } 21415ef601SStephan Aßmus 22415ef601SStephan Aßmus 23415ef601SStephan Aßmus void 24*c60fcc87SStephan Aßmus PlaylistObserver::ItemAdded(PlaylistItem* item, int32 index) 25415ef601SStephan Aßmus { 26*c60fcc87SStephan Aßmus BMessage message(MSG_PLAYLIST_ITEM_ADDED); 27*c60fcc87SStephan Aßmus message.AddPointer("item", item); 28415ef601SStephan Aßmus message.AddInt32("index", index); 29415ef601SStephan Aßmus 30415ef601SStephan Aßmus DeliverMessage(message); 31415ef601SStephan Aßmus } 32415ef601SStephan Aßmus 33415ef601SStephan Aßmus 34415ef601SStephan Aßmus void 35*c60fcc87SStephan Aßmus PlaylistObserver::ItemRemoved(int32 index) 36415ef601SStephan Aßmus { 37*c60fcc87SStephan Aßmus BMessage message(MSG_PLAYLIST_ITEM_REMOVED); 38415ef601SStephan Aßmus message.AddInt32("index", index); 39415ef601SStephan Aßmus 40415ef601SStephan Aßmus DeliverMessage(message); 41415ef601SStephan Aßmus } 42415ef601SStephan Aßmus 43415ef601SStephan Aßmus 44415ef601SStephan Aßmus void 45*c60fcc87SStephan Aßmus PlaylistObserver::ItemsSorted() 46415ef601SStephan Aßmus { 47*c60fcc87SStephan Aßmus BMessage message(MSG_PLAYLIST_ITEMS_SORTED); 48415ef601SStephan Aßmus 49415ef601SStephan Aßmus DeliverMessage(message); 50415ef601SStephan Aßmus } 51415ef601SStephan Aßmus 52415ef601SStephan Aßmus 53415ef601SStephan Aßmus void 54*c60fcc87SStephan Aßmus PlaylistObserver::CurrentItemChanged(int32 newIndex) 55415ef601SStephan Aßmus { 56*c60fcc87SStephan Aßmus BMessage message(MSG_PLAYLIST_CURRENT_ITEM_CHANGED); 57415ef601SStephan Aßmus message.AddInt32("index", newIndex); 58415ef601SStephan Aßmus 59415ef601SStephan Aßmus DeliverMessage(message); 60415ef601SStephan Aßmus } 61415ef601SStephan Aßmus 62