1 // (c) 2005 Seb Ruiz <me@sebruiz.net>
2 // See COPYING file for licensing information.
4 #ifndef AMAROK_PODCASTSETTINGS_H
5 #define AMAROK_PODCASTSETTINGS_H
7 #include "kdialog.h" //baseclass
11 #include <q3ptrlist.h>
15 class PodcastSettingsDialogBase
;
19 enum MediaFetch
{ STREAM
=0, AUTOMATIC
=1 };
24 PodcastSettings( const QDomNode
&channelSettings
, const QString
&title
);
25 PodcastSettings( const PodcastSettings
*parentSettings
, const QString
&title
);
26 PodcastSettings( const QString
&title
); // standard settings
27 PodcastSettings( const QString
&title
, const QString
&save
, const bool autoScan
,
28 const int fetchType
, const bool autotransfer
, const bool purge
, const int purgecount
);
30 const QString
&saveLocation() { return m_saveLocation
; }
31 const QString
&title() { return m_title
; }
32 bool autoscan() { return m_autoScan
; }
33 int fetchType() { return m_fetch
; }
34 bool autoTransfer() { return m_addToMediaDevice
; }
35 bool hasPurge() { return m_purge
; }
36 int purgeCount() { return m_purgeCount
; }
38 QString m_title
; //the title of the podcast or category these settings belong to
39 QString m_saveLocation
;
42 bool m_addToMediaDevice
;
48 class PodcastSettingsDialog
: public KDialog
53 explicit PodcastSettingsDialog( PodcastSettings
*list
, QWidget
* parent
=0 );
54 PodcastSettingsDialog( const Q3PtrList
<PodcastSettings
> &list
, const QString
&caption
, QWidget
* parent
=0 );
57 PodcastSettings
*getSettings() { return m_settings
; }
69 void setSettings( PodcastSettings
*settings
);
70 QString
requesterSaveLocation();
72 PodcastSettingsDialogBase
*m_ps
;
73 Q3PtrList
<PodcastSettings
> m_settingsList
;
74 PodcastSettings
*m_settings
;
77 #endif /*AMAROK_PODCASTSETTINGS_H*/