Merge pull request #4630 from Red-F/gotham-resume-pvr-lastplayedposition
[vuplus_xbmc] / xbmc / pictures / GUIWindowPictures.h
1 #pragma once
2
3 /*
4  *      Copyright (C) 2005-2013 Team XBMC
5  *      http://xbmc.org
6  *
7  *  This Program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation; either version 2, or (at your option)
10  *  any later version.
11  *
12  *  This Program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  *  GNU General Public License for more details.
16  *
17  *  You should have received a copy of the GNU General Public License
18  *  along with XBMC; see the file COPYING.  If not, see
19  *  <http://www.gnu.org/licenses/>.
20  *
21  */
22
23 #include "windows/GUIMediaWindow.h"
24 #include "GUIWindowSlideShow.h"
25 #include "PictureThumbLoader.h"
26 #include "DllImageLib.h"
27
28 class CGUIDialogProgress;
29
30 class CGUIWindowPictures : public CGUIMediaWindow, public IBackgroundLoaderObserver
31 {
32 public:
33   CGUIWindowPictures(void);
34   virtual ~CGUIWindowPictures(void);
35   virtual bool OnMessage(CGUIMessage& message);
36   virtual void OnInitWindow();
37
38 protected:
39   virtual bool GetDirectory(const CStdString &strDirectory, CFileItemList& items);
40   virtual void OnInfo(int item);
41   virtual bool OnClick(int iItem);
42   virtual void UpdateButtons();
43   virtual void OnPrepareFileItems(CFileItemList& items);
44   virtual bool Update(const CStdString &strDirectory, bool updateFilterPath = true);
45   virtual void GetContextButtons(int itemNumber, CContextButtons &buttons);
46   virtual bool OnContextButton(int itemNumber, CONTEXT_BUTTON button);
47   virtual CStdString GetStartFolder(const CStdString &dir);
48
49   void OnRegenerateThumbs();
50   virtual bool OnPlayMedia(int iItem);
51   bool ShowPicture(int iItem, bool startSlideShow);
52   void OnShowPictureRecursive(const CStdString& strPath);
53   void OnSlideShow(const CStdString& strPicture);
54   void OnSlideShow();
55   void OnSlideShowRecursive(const CStdString& strPicture);
56   void OnSlideShowRecursive();
57   virtual void OnItemLoaded(CFileItem* pItem);
58   virtual void LoadPlayList(const CStdString& strPlayList);
59
60   CGUIDialogProgress* m_dlgProgress;
61   DllImageLib m_ImageLib;
62
63   CPictureThumbLoader m_thumbLoader;
64   bool m_slideShowStarted;
65 };