11 #include "SlideShowPicture.h" 13 #include "interfaces/ISlideShowDelegate.h" 14 #include "threads/Event.h" 15 #include "threads/Thread.h" 32 void LoadPic(
int iPic,
int iSlideNumber,
const std::string &strFileName,
const int maxWidth,
const int maxHeight);
33 bool IsLoading() {
return m_isLoading; }
34 int SlideNumber()
const {
return m_iSlideNumber; }
35 int Pic()
const {
return m_iPic; }
38 void Process()
override;
40 int m_iSlideNumber = 0;
41 std::string m_strFileName;
46 bool m_isLoading =
false;
58 void Add(
const CFileItem* picture)
override;
59 bool IsPlaying()
const override;
60 void Select(
const std::string& picture)
override;
62 std::shared_ptr<const CFileItem> GetCurrentSlide()
override;
63 void StartSlideShow()
override;
64 void PlayPicture()
override;
65 bool InSlideShow()
const override;
66 int NumSlides()
const override;
67 int CurrentSlide()
const override;
68 bool IsPaused()
const override {
return m_bPause; }
69 bool IsShuffled()
const override {
return m_bShuffled; }
70 void Reset()
override;
71 void RunSlideShow(
const std::string& strPath,
72 bool bRecursive =
false,
74 bool bNotRandom =
false,
75 const std::string& beginSlidePath =
"",
76 bool startSlideShow =
true,
78 SortOrder order = SortOrderAscending,
79 SortAttribute sortAttributes = SortAttributeNone,
80 const std::string& strExtensions =
"")
override;
81 void AddFromPath(
const std::string& strPath,
84 SortOrder order = SortOrderAscending,
85 SortAttribute sortAttributes = SortAttributeNone,
86 const std::string& strExtensions =
"")
override;
87 void Shuffle()
override;
88 int GetDirection()
const override {
return m_iDirection; }
92 bool OnAction(
const CAction& action)
override;
93 void Render()
override;
94 void RenderEx()
override;
95 void Process(
unsigned int currentTime, CDirtyRegionList& regions)
override;
96 void OnDeinitWindow(
int nextWindowID)
override;
98 void OnLoadPic(
int iPic,
100 const std::string& strFileName,
101 std::unique_ptr<CTexture> pTexture,
104 static void RunSlideShow(
const std::vector<std::string>& paths,
int start = 0);
109 void SetDirection(
int direction);
111 typedef std::set<std::string> path_set;
112 void AddItems(
const std::string &strPath, path_set *recursivePaths,
114 SortOrder order = SortOrderAscending,
115 SortAttribute sortAttributes = SortAttributeNone);
117 CSlideShowPic::DISPLAY_EFFECT GetDisplayEffect(
int iSlideNumber)
const;
119 void RenderErrorMessage();
120 void Rotate(
float fAngle,
bool immediate =
false);
121 void Zoom(
int iZoom);
122 void ZoomRelative(
float fZoom,
bool immediate =
false);
123 void Move(
float fX,
float fY);
124 void GetCheckedSize(
float width,
float height,
int &maxWidth,
int &maxHeight);
125 std::string GetPicturePath(
CFileItem *item);
128 void AnnouncePlayerPlay(
const CFileItemPtr& item);
129 void AnnouncePlayerPause(
const CFileItemPtr& item);
130 void AnnouncePlayerStop(
const CFileItemPtr& item);
131 void AnnouncePlaylistClear();
132 void AnnouncePlaylistAdd(
const CFileItemPtr& item,
int pos);
133 void AnnouncePropertyChanged(
const std::string &strProperty,
const CVariant &value);
139 float m_fInitialRotate;
142 float m_fInitialZoom;
147 bool m_bPlayingVideo;
148 int m_iVideoSlide = -1;
149 bool m_bErrorMessage;
151 std::vector<CFileItemPtr> m_slides;
153 std::unique_ptr<CSlideShowPic> m_Image[2];
157 std::unique_ptr<CBackgroundPicLoader> m_pBackgroundLoader;
158 int m_iLastFailedNextSlide;
160 RESOLUTION m_Resolution;
161 CPoint m_firstGesturePoint;
This is an Event class built from a ConditionVariable.
Definition: Event.h:35
Represents a list of files.
Definition: FileItem.h:702
Definition: GUIWindowSlideShow.h:51
EVENT_RESULT
Results of OnMouseEvent() Any value not equal to EVENT_RESULT_UNHANDLED indicates that the event was ...
Definition: GUIControl.h:68
Definition: GUIWindowSlideShow.h:25
Definition: ISlideShowDelegate.h:18
Class encapsulating information regarding a particular user action to be sent to windows and controls...
Definition: Action.h:21
Definition: GUIDialog.h:35
Definition: LibInputPointer.h:13
Definition: GUIMessage.h:365
SortBy
Definition: SortUtils.h:49
Simple class for mouse events.
Definition: MouseEvent.h:20
Represents a file on a share.
Definition: FileItem.h:102
1 : Sort by Name (String: Label)
Definition: SortUtils.h:54