1 /* 2 * MainWin.h - Media Player for the Haiku Operating System 3 * 4 * Copyright (C) 2006 Marcus Overhagen <marcus@overhagen.de> 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * version 2 as published by the Free Software Foundation. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 * 19 */ 20 #ifndef __FILE_INFO_WIN_H 21 #define __FILE_INFO_WIN_H 22 23 #include <Window.h> 24 25 26 class Controller; 27 class ControllerObserver; 28 class InfoView; 29 30 #define INFO_STATS 0x00000001 31 #define INFO_TRANSPORT 0x00000002 32 #define INFO_FILE 0x00000004 33 #define INFO_AUDIO 0x00000008 34 #define INFO_VIDEO 0x00000010 35 #define INFO_COPYRIGHT 0x00000020 36 37 #define INFO_ALL 0xffffffff 38 39 40 class InfoWin : public BWindow { 41 public: 42 InfoWin(BPoint leftTop, 43 Controller* controller); 44 virtual ~InfoWin(); 45 46 virtual void FrameResized(float newWidth, float newHeight); 47 virtual void MessageReceived(BMessage* message); 48 virtual bool QuitRequested(); 49 virtual void Pulse(); 50 51 void ResizeToPreferred(); 52 void Update(uint32 which = INFO_ALL); 53 54 private: 55 Controller* fController; 56 ControllerObserver* fControllerObserver; 57 58 InfoView* fInfoView; 59 BStringView* fFilenameView; 60 BTextView* fLabelsView; 61 BTextView* fContentsView; 62 }; 63 64 #endif // __FILE_INFO_WIN_H 65