OTHER: Update to c++ iterators and uint remove

This commit is contained in:
Thomas Frauendorfer 2009-03-01 15:22:11 +01:00
parent 58693f9421
commit 6d271f221c
4 changed files with 45 additions and 1 deletions

View file

@ -16,6 +16,7 @@
#include <xmmsclient/xmmsclient++.h>
#include "compat.h"
#include <QAbstractTableModel>
#include <QHash>
#include <QVariant>
@ -119,7 +120,11 @@ PlaylistModel::handle_update_pos (const Xmms::Dict &posdict)
{
QString changed_pl = XClient::stdToQ (posdict.get<std::string> ("name"));
if (changed_pl == m_name) {
#if HAVE_XMMSV
uint32_t pos = posdict.get<int32_t> ("position");
#else
uint32_t pos = posdict.get<uint32_t> ("position");
#endif
m_current_pos = pos;
emit currentPosChanged (index (pos, 0));
emit dataChanged(index (pos, 0), index (pos, m_columns.size ()));
@ -231,21 +236,40 @@ PlaylistModel::handle_change (const Xmms::Dict &chg)
return true;
}
#if HAVE_XMMSV
bool
PlaylistModel::handle_list (const Xmms::List< int > &list)
#else
bool
PlaylistModel::handle_list (const Xmms::List< unsigned int > &list)
#endif
{
beginRemoveRows (QModelIndex (), 0, m_plist.size ());
m_plist.clear ();
endRemoveRows ();
int i = 0;
#if HAVE_XMMSV
for (Xmms::List< int >::const_iterator iter = list.begin();
iter != list.end(); iter ++) {
i++;
}
#else
for (list.first (); list.isValid (); ++list) {
i ++;
}
#endif
beginInsertRows (QModelIndex (), 0, i);
#if HAVE_XMMSV
for (Xmms::List< int >::const_iterator iter = list.begin();
iter != list.end(); iter ++) {
m_plist.append (*iter);
}
#else
for (list.first (); list.isValid (); ++list) {
m_plist.append (*list);
}
#endif
endInsertRows ();

View file

@ -19,6 +19,7 @@
#define __PLAYLIST_MODEL_H__
#include <xmmsclient/xmmsclient++.h>
#include "compat.h"
class XClient;
@ -134,7 +135,11 @@ class PlaylistModel : public QAbstractItemModel
void entry_changed (uint32_t);
private:
#if HAVE_XMMSV
bool handle_list (const Xmms::List< int > &list);
#else
bool handle_list (const Xmms::List< unsigned int > &list);
#endif
bool handle_change (const Xmms::Dict &chg);
#if (XMMS_IPC_PROTOCOL_VERSION > 10)
bool handle_update_pos (const Xmms::Dict &pos);

View file

@ -14,6 +14,7 @@
*/
#include <xmmsclient/xmmsclient++.h>
#include "compat.h"
#include "xcollection.h"
#include "xcollection_p.h"
@ -163,9 +164,16 @@ XCollection::Private::handle_playlists_list (const Xmms::List< std::string > &li
{
m_playlists.clear ();
#if HAVE_XMMSV
for (Xmms::List< std::string >::const_iterator iter = list.begin();
iter != list.end(); iter ++) {
m_playlists.append (XClient::stdToQ(*iter));
}
#else
for (list.first (); list.isValid (); ++list) {
m_playlists.append (XClient::stdToQ(*list));
}
#endif
m_playlists.sort ();
return true;

View file

@ -14,6 +14,7 @@
*/
#include "xclient.h"
#include "compat.h"
#include "BrowseModel.h"
#include "application.h"
@ -100,8 +101,14 @@ BrowseModel::list_cb (const Xmms::List< Xmms::Dict > &res)
delete m_list.takeFirst ();
}
#if HAVE_XMMSV
for (Xmms::List< Xmms::Dict >::const_iterator iter = res.begin();
iter != res.end(); iter++) {
Xmms::Dict d = *iter;
#else
for (res.first (); res.isValid (); ++res) {
Xmms::Dict d = *res;
#endif
if (!d.contains ("path"))
continue;