#ifndef QTDE_COMMON_H
#define QTDE_COMMON_H

#include "config.h"

#include <QWidget>

#if defined(HAVE_STD_SHARED_PTR)
#include <memory>
#elif defined(HAVE_STD_TR1_SHARED_PTR)
#include <tr1/memory>
#elif defined(HAVE_BOOST_SHARED_PTR)
#include <boost/shared_ptr.hpp>
#include <boost/enable_shared_from_this.hpp>
#endif

#if defined(HAVE_STD_SHARED_PTR)
#define SHARED_PTR std::shared_ptr
#define ENABLE_SHARED_FROM_THIS std::enable_shared_from_this
#elif defined(HAVE_STD_TR1_SHARED_PTR)
#define SHARED_PTR std::tr1::shared_ptr
#define ENABLE_SHARED_FROM_THIS std::tr1::enable_shared_from_this
#elif defined(HAVE_BOOST_SHARED_PTR)
#define SHARED_PTR boost::shared_ptr
#define ENABLE_SHARED_FROM_THIS boost::enable_shared_from_this
#endif

#endif /* QTDE_COMMON_H */
