Compile fixes for 10.9

This commit is contained in:
John Maguire 2013-10-28 17:30:52 +01:00
parent 2647fe4bbc
commit b17b075361
3 changed files with 8 additions and 7 deletions

View File

@ -28,6 +28,7 @@
#include <math.h> #include <math.h>
#include <stddef.h> #include <stddef.h>
#include <stdint.h> #include <stdint.h>
#include <algorithm>
#include <limits> #include <limits>
#include <iterator> #include <iterator>

View File

@ -33,7 +33,7 @@ ClosureBase::~ClosureBase() {
CallbackClosure::CallbackClosure( CallbackClosure::CallbackClosure(
QObject* sender, QObject* sender,
const char* signal, const char* signal,
std::tr1::function<void()> callback) std::function<void()> callback)
: ClosureBase(new ObjectHelper(sender, signal, this)), : ClosureBase(new ObjectHelper(sender, signal, this)),
callback_(callback) { callback_(callback) {
} }
@ -67,7 +67,7 @@ void Unpack(QList<QGenericArgument>*) {}
_detail::ClosureBase* NewClosure( _detail::ClosureBase* NewClosure(
QObject* sender, QObject* sender,
const char* signal, const char* signal,
std::tr1::function<void()> callback) { std::function<void()> callback) {
return new _detail::CallbackClosure( return new _detail::CallbackClosure(
sender, signal, callback); sender, signal, callback);
} }

View File

@ -18,7 +18,7 @@
#ifndef CLOSURE_H #ifndef CLOSURE_H
#define CLOSURE_H #define CLOSURE_H
#include <tr1/functional> #include <functional>
#include <QMetaMethod> #include <QMetaMethod>
#include <QObject> #include <QObject>
@ -158,12 +158,12 @@ class CallbackClosure : public ClosureBase {
CallbackClosure( CallbackClosure(
QObject* sender, QObject* sender,
const char* signal, const char* signal,
std::tr1::function<void()> callback); std::function<void()> callback);
virtual void Invoke(); virtual void Invoke();
private: private:
std::tr1::function<void()> callback_; std::function<void()> callback_;
}; };
} // namespace _detail } // namespace _detail
@ -194,13 +194,13 @@ _detail::ClosureBase* NewClosure(
_detail::ClosureBase* NewClosure( _detail::ClosureBase* NewClosure(
QObject* sender, QObject* sender,
const char* signal, const char* signal,
std::tr1::function<void()> callback); std::function<void()> callback);
template <typename... Args> template <typename... Args>
_detail::ClosureBase* NewClosure( _detail::ClosureBase* NewClosure(
QObject* sender, QObject* sender,
const char* signal, const char* signal,
std::tr1::function<void(Args...)> callback, std::function<void(Args...)> callback,
const Args&... args) { const Args&... args) {
return NewClosure(sender, signal, boost::bind(callback, args...)); return NewClosure(sender, signal, boost::bind(callback, args...));
} }