175ffc858Sstippi /* 275ffc858Sstippi * Copyright (C) 2010 Stephan Aßmus <superstippi@gmx.de> 375ffc858Sstippi * 475ffc858Sstippi * All rights reserved. 575ffc858Sstippi * 675ffc858Sstippi * Redistribution and use in source and binary forms, with or without 775ffc858Sstippi * modification, are permitted provided that the following conditions 875ffc858Sstippi * are met: 975ffc858Sstippi * 1. Redistributions of source code must retain the above copyright 1075ffc858Sstippi * notice, this list of conditions and the following disclaimer. 1175ffc858Sstippi * 2. Redistributions in binary form must reproduce the above copyright 1275ffc858Sstippi * notice, this list of conditions and the following disclaimer in the 1375ffc858Sstippi * documentation and/or other materials provided with the distribution. 1475ffc858Sstippi * 1575ffc858Sstippi * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY 1675ffc858Sstippi * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1775ffc858Sstippi * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1875ffc858Sstippi * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR 1975ffc858Sstippi * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 2075ffc858Sstippi * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 2175ffc858Sstippi * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 2275ffc858Sstippi * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 2375ffc858Sstippi * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 2475ffc858Sstippi * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 2575ffc858Sstippi * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2675ffc858Sstippi */ 27*9ccfda9cSstippi #ifndef DOWNLOAD_WINDOW_H 28*9ccfda9cSstippi #define DOWNLOAD_WINDOW_H 2975ffc858Sstippi 3075ffc858Sstippi 3175ffc858Sstippi #include <Window.h> 3275ffc858Sstippi 33dd275f31Sstippi class BButton; 34a8d8342dSstippi class BFile; 35dd275f31Sstippi class BGroupLayout; 36c516096eSstippi class BWebDownload; 374b059d47Sstippi 38*9ccfda9cSstippi 3975ffc858Sstippi class DownloadWindow : public BWindow { 4075ffc858Sstippi public: 417a40c975Sstippi DownloadWindow(BRect frame, bool visible); 4275ffc858Sstippi virtual ~DownloadWindow(); 4375ffc858Sstippi 44*9ccfda9cSstippi virtual void MessageReceived(BMessage* message); 4575ffc858Sstippi virtual bool QuitRequested(); 4675ffc858Sstippi 47dd275f31Sstippi private: 48*9ccfda9cSstippi void _DownloadStarted(BWebDownload* download); 49*9ccfda9cSstippi void _DownloadFinished(BWebDownload* download); 50*9ccfda9cSstippi void _RemoveFinishedDownloads(); 51*9ccfda9cSstippi void _SaveSettings(); 52*9ccfda9cSstippi void _LoadSettings(); 53*9ccfda9cSstippi bool _OpenSettingsFile(BFile& file, uint32 mode); 544b059d47Sstippi 5575ffc858Sstippi private: 56*9ccfda9cSstippi BGroupLayout* fDownloadViewsLayout; 57*9ccfda9cSstippi BButton* fRemoveFinishedButton; 5875ffc858Sstippi }; 5975ffc858Sstippi 6075ffc858Sstippi 61*9ccfda9cSstippi #endif // DOWNLOAD_WINDOW_H 62