1415ef601SStephan Aßmus /* 2415ef601SStephan Aßmus * Copyright 2007, Haiku. All rights reserved. 3415ef601SStephan Aßmus * Distributed under the terms of the MIT License. 4415ef601SStephan Aßmus * 5415ef601SStephan Aßmus * Authors: 6415ef601SStephan Aßmus * Stephan Aßmus <superstippi@gmx.de> 71b7f76bcSStephan Aßmus * Fredrik Modéen <fredrik@modeen.se> 8415ef601SStephan Aßmus */ 91b7f76bcSStephan Aßmus 10415ef601SStephan Aßmus #ifndef PLAYLIST_WINDOW_H 11415ef601SStephan Aßmus #define PLAYLIST_WINDOW_H 12415ef601SStephan Aßmus 13415ef601SStephan Aßmus 14415ef601SStephan Aßmus #include <Window.h> 15415ef601SStephan Aßmus 16415ef601SStephan Aßmus #include "ListenerAdapter.h" 17415ef601SStephan Aßmus 18415ef601SStephan Aßmus class BMenuBar; 19415ef601SStephan Aßmus class BMenuItem; 20415ef601SStephan Aßmus class CommandStack; 21415ef601SStephan Aßmus class Controller; 22415ef601SStephan Aßmus class Notifier; 23415ef601SStephan Aßmus class Playlist; 24415ef601SStephan Aßmus class PlaylistListView; 25415ef601SStephan Aßmus class RWLocker; 261b7f76bcSStephan Aßmus class BButton; 27*b9044f36SFrançois Revol class BFilePanel; 28415ef601SStephan Aßmus 29415ef601SStephan Aßmus class PlaylistWindow : public BWindow { 30415ef601SStephan Aßmus public: 31415ef601SStephan Aßmus PlaylistWindow(BRect frame, 32415ef601SStephan Aßmus Playlist* playlist, 33415ef601SStephan Aßmus Controller* controller); 34415ef601SStephan Aßmus virtual ~PlaylistWindow(); 35415ef601SStephan Aßmus 36415ef601SStephan Aßmus virtual bool QuitRequested(); 37415ef601SStephan Aßmus virtual void MessageReceived(BMessage* message); 38415ef601SStephan Aßmus 39415ef601SStephan Aßmus private: 40415ef601SStephan Aßmus void _CreateMenu(BRect& frame); 41415ef601SStephan Aßmus void _ObjectChanged(const Notifier* object); 42415ef601SStephan Aßmus 43415ef601SStephan Aßmus Playlist* fPlaylist; 44415ef601SStephan Aßmus PlaylistListView* fListView; 45415ef601SStephan Aßmus 46415ef601SStephan Aßmus BView* fTopView; 47415ef601SStephan Aßmus BMenuItem* fUndoMI; 48415ef601SStephan Aßmus BMenuItem* fRedoMI; 49415ef601SStephan Aßmus 501b7f76bcSStephan Aßmus BFilePanel* fOpenPanel; 511b7f76bcSStephan Aßmus BFilePanel* fSavePanel; 521b7f76bcSStephan Aßmus 53415ef601SStephan Aßmus RWLocker* fLocker; 54415ef601SStephan Aßmus CommandStack* fCommandStack; 55415ef601SStephan Aßmus ListenerAdapter fCommandStackListener; 56415ef601SStephan Aßmus }; 57415ef601SStephan Aßmus 58415ef601SStephan Aßmus #endif // PLAYLIST_WINDOW_H 59