xref: /haiku/src/apps/webpositive/DownloadWindow.h (revision dd275f312a4c3579e3f2e8a20eecf8607ea655f5)
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  */
2775ffc858Sstippi 
2875ffc858Sstippi #ifndef DownloadWindow_h
2975ffc858Sstippi #define DownloadWindow_h
3075ffc858Sstippi 
3175ffc858Sstippi #include <Window.h>
3275ffc858Sstippi 
33*dd275f31Sstippi class BButton;
34*dd275f31Sstippi class BGroupLayout;
354b059d47Sstippi class WebDownload;
364b059d47Sstippi 
3775ffc858Sstippi class DownloadWindow : public BWindow {
3875ffc858Sstippi public:
397a40c975Sstippi     DownloadWindow(BRect frame, bool visible);
4075ffc858Sstippi     virtual ~DownloadWindow();
4175ffc858Sstippi 
4275ffc858Sstippi     virtual void MessageReceived(BMessage*);
4375ffc858Sstippi     virtual bool QuitRequested();
4475ffc858Sstippi 
45*dd275f31Sstippi private:
464b059d47Sstippi     void downloadStarted(WebDownload* download);
474b059d47Sstippi     void downloadFinished(WebDownload* download);
48*dd275f31Sstippi     void removeFinishedDownloads();
494b059d47Sstippi 
5075ffc858Sstippi private:
51*dd275f31Sstippi     BGroupLayout* m_downloadViewsLayout;
52*dd275f31Sstippi     BButton* m_removeFinishedButton;
5375ffc858Sstippi };
5475ffc858Sstippi 
5575ffc858Sstippi #endif // DownloadWindow_h
5675ffc858Sstippi 
57