~ubuntu-branches/ubuntu/karmic/gnomoradio/karmic

« back to all changes in this revision

Viewing changes to wraporadio/wraporadio.h

  • Committer: Bazaar Package Importer
  • Author(s): Riccardo Setti
  • Date: 2004-11-11 17:38:34 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20041111173834-y7bu0ymimw53e0ls
Tags: 0.15.1-2
Correct depends field.

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
#include "roboradio/song-list-cache.h"
31
31
#include "roboradio/song-list-history.h"
32
32
#include "roboradio/song-list-radio.h"
 
33
#include "roboradio/xspf.h"
33
34
 
34
35
// gettext stuff
35
36
#define _(String) gettext  (String)
52
53
        typedef Roboradio::Time Time;
53
54
 
54
55
#if 0
55
 
        class Song : public SigC::Object
 
56
        class Song : public sigc::trackable
56
57
        {
57
58
        protected:
58
59
                Roboradio::SongRef s;
75
76
        typedef Roboradio::SongRef Song;
76
77
#endif
77
78
 
78
 
        class SongList : public SigC::Object
 
79
        class SongList : public sigc::trackable
79
80
        {
80
81
        public:
81
82
                enum SongListType
133
134
                bool get_shufflable () const { return sl->get_shufflable(); }
134
135
                SongList get_shuffle_list () const { return SongList(sl->get_shuffle_list()); }
135
136
 
136
 
                bool get_mutable () const { return dynamic_cast<Roboradio::SongListMutable*>(&*sl); }
 
137
                bool get_mutable () const { return sl->get_mutable() ? true : false; }
137
138
 
138
139
                bool exists () const { return &*sl; }
139
140
 
151
152
                bool operator< (const SongList &list) const { return &*sl < &*list.sl; }
152
153
 
153
154
                iterator insert (iterator pos, const Song &value)
154
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->insert(pos, value); }
 
155
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->insert(pos, value); }
155
156
                void move (iterator old_pos, iterator new_pos)
156
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->move(old_pos, new_pos); }
 
157
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->move(old_pos, new_pos); }
157
158
                iterator remove (iterator pos)
158
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->remove(pos); }
 
159
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->remove(pos); }
159
160
                void pop_front ()
160
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->pop_front(); }
 
161
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->pop_front(); }
161
162
                void pop_back ()
162
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->pop_back(); }
 
163
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->pop_back(); }
163
164
                void push_front (const Song &value)
164
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->push_front(value); }
 
165
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->push_front(value); }
165
166
                void push_back (const Song &value)
166
 
                        { Roboradio::SongListMutable *p = dynamic_cast<Roboradio::SongListMutable*>(&*sl); if (p) p->push_back(value); }
167
 
 
168
 
                SigC::Signal1<void,bool> &signal_shuffle_changed () { return sl->signal_shuffle_changed; }
169
 
                SigC::Signal1<void,bool> &signal_repeat_changed () { return sl->signal_repeat_changed; }
170
 
                SigC::Signal1<void,Glib::ustring> &signal_name_changed () { return sl->signal_name_changed; }
171
 
 
172
 
                SigC::Signal1<void,iterator> &signal_removed () { return sl->signal_removed; }
173
 
                SigC::Signal1<void,iterator> &signal_inserted () { return sl->signal_inserted; }
174
 
                SigC::Signal1<void,iterator> &signal_moved () { return sl->signal_moved; }
175
 
                SigC::Signal1<void,iterator> &signal_song_info_changed () { return sl->signal_song_info_changed; }
176
 
                SigC::Signal2<void,iterator,unsigned int> &signal_song_import_progress () { return sl->signal_song_import_progress; }
177
 
                SigC::Signal0<void> &signal_destroyed () { return sl->signal_destroyed; }
178
 
                SigC::Signal0<void> &signal_current_song_changed () { return sl->signal_current_song_changed; }
179
 
 
180
 
                static SigC::Signal1<void,ref_ptr<Roboradio::SongList> > &signal_new_named_song_list () { return Roboradio::SongList::signal_new_named_song_list; } // FIXME: *** remove roboradio reference
181
 
                static SigC::Signal1<void,ref_ptr<Roboradio::SongList> > &signal_named_song_list_destroyed () { return Roboradio::SongList::signal_named_song_list_destroyed; }
182
 
                static SigC::Signal1<void,ref_ptr<Roboradio::SongList> > &signal_global_name_changed () { return Roboradio::SongList::signal_global_name_changed; }
 
167
                        { Roboradio::SongListMutable *p = sl->get_mutable(); if (p) p->push_back(value); }
 
168
 
 
169
                sigc::signal<void,bool> &signal_shuffle_changed () { return sl->signal_shuffle_changed; }
 
170
                sigc::signal<void,bool> &signal_repeat_changed () { return sl->signal_repeat_changed; }
 
171
                sigc::signal<void,Glib::ustring> &signal_name_changed () { return sl->signal_name_changed; }
 
172
 
 
173
                sigc::signal<void,iterator> &signal_removed () { return sl->signal_removed; }
 
174
                sigc::signal<void,iterator> &signal_inserted () { return sl->signal_inserted; }
 
175
                sigc::signal<void,iterator> &signal_moved () { return sl->signal_moved; }
 
176
                sigc::signal<void,iterator> &signal_song_info_changed () { return sl->signal_song_info_changed; }
 
177
                sigc::signal<void,iterator,unsigned int> &signal_song_import_progress () { return sl->signal_song_import_progress; }
 
178
                sigc::signal<void> &signal_destroyed () { return sl->signal_destroyed; }
 
179
                sigc::signal<void> &signal_current_song_changed () { return sl->signal_current_song_changed; }
 
180
 
 
181
                static sigc::signal<void,ref_ptr<Roboradio::SongList> > &signal_new_named_song_list () { return Roboradio::SongList::signal_new_named_song_list; } // FIXME: *** remove roboradio reference
 
182
                static sigc::signal<void,ref_ptr<Roboradio::SongList> > &signal_named_song_list_destroyed () { return Roboradio::SongList::signal_named_song_list_destroyed; }
 
183
                static sigc::signal<void,ref_ptr<Roboradio::SongList> > &signal_global_name_changed () { return Roboradio::SongList::signal_global_name_changed; }
183
184
        };
184
185
 
185
186
        class SongListSearch : public SongList
192
193
                void set_criteria (const Glib::ustring &criteria) { static_cast<Roboradio::SongListSearch*>(&*sl)->set_criteria(criteria); }
193
194
                Glib::ustring get_criteria () const { return static_cast<Roboradio::SongListSearch*>(&*sl)->get_criteria(); }
194
195
 
195
 
                void search_online () { static_cast<Roboradio::SongListSearch*>(&*sl)->search_online(); }
 
196
                void search_online (const Glib::ustring &search_string) { static_cast<Roboradio::SongListSearch*>(&*sl)->search_online(search_string); }
196
197
        };
197
198
 
198
199
        class SongListRadio : public SongList
212
213
                unsigned int get_number () const { return std::atoi(static_cast<Roboradio::SongListHistory*>(&*sl)->get_number().c_str()); }
213
214
                void set_number (unsigned int days) { std::ostringstream stm; stm << days; static_cast<Roboradio::SongListHistory*>(&*sl)->set_number(stm.str()); }
214
215
        };
 
216
 
 
217
        namespace XSPF
 
218
        {
 
219
                static inline void import_list (const Glib::ustring &url) { Roboradio::XSPF::import_list(url); }
 
220
                static inline void export_list (const Glib::ustring &filename) { Roboradio::XSPF::export_list(filename); }
 
221
        }
215
222
};
216
223
 
217
224
#endif