File support-newer-libindi.patch of Package kstars4
From 97c3d53af2998420f7646b3a482417d00c291ec8 Mon Sep 17 00:00:00 2001
From: Jasem Mutlaq <mutlaqja@ikarustech.com>
Date: Mon, 1 Dec 2014 00:50:27 +0300
Subject: use std::string from libindi
---
kstars/indi/indidevice.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/kstars/indi/indidevice.cpp b/kstars/indi/indidevice.cpp
index f52decc..2a05ca6 100644
--- a/kstars/indi/indidevice.cpp
+++ b/kstars/indi/indidevice.cpp
@@ -271,7 +271,8 @@ void INDI_D::updateMessageLog(INDI::BaseDevice *idv, int messageID)
return;
msgST_w->ensureCursorVisible();
- msgST_w->insertPlainText(dv->messageQueue(messageID) + QString("\n"));
+ msgST_w->insertPlainText(QString::fromStdString(dv->messageQueue(messageID)));
+ msgST_w->insertPlainText("\n");
QTextCursor c = msgST_w->textCursor();
c.movePosition(QTextCursor::Start);
msgST_w->setTextCursor(c);
--
cgit v0.11.2
From 06e344bea9334eff76096a445f22ace2963b28bb Mon Sep 17 00:00:00 2001
From: Jasem Mutlaq <mutlaqja@ikarustech.com>
Date: Wed, 8 Apr 2015 14:01:12 +0300
Subject: Account for differences between libindi 1.0.0 and 1.1.0
---
kstars/indi/indistd.cpp | 4 ++++
kstars/indi/indistd.h | 10 +++++++++-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/kstars/indi/indistd.cpp b/kstars/indi/indistd.cpp
index 4ecbb25..5de6fae 100644
--- a/kstars/indi/indistd.cpp
+++ b/kstars/indi/indistd.cpp
@@ -36,7 +36,11 @@ namespace ISD
{
+#if (INDI_VERSION_MAJOR >= 1 && INDI_VERSION_MINOR >= 1)
+GDSetCommand::GDSetCommand(INDI_PROPERTY_TYPE inPropertyType, const QString &inProperty, const QString &inElement, QVariant qValue, QObject *parent) : QObject(parent)
+#else
GDSetCommand::GDSetCommand(INDI_TYPE inPropertyType, const QString &inProperty, const QString &inElement, QVariant qValue, QObject *parent) : QObject(parent)
+#endif
{
propType = inPropertyType;
indiProperty = inProperty;
diff --git a/kstars/indi/indistd.h b/kstars/indi/indistd.h
index 9af15c6..e03e159 100644
--- a/kstars/indi/indistd.h
+++ b/kstars/indi/indistd.h
@@ -19,6 +19,7 @@
#include "indicommon.h"
#include "fitsviewer/fitscommon.h"
+#include "config-kstars.h"
class ClientManager;
class FITSViewer;
@@ -36,9 +37,15 @@ class GDSetCommand : public QObject
Q_OBJECT
public:
+#if (INDI_VERSION_MAJOR >= 1 && INDI_VERSION_MINOR >= 1)
+ GDSetCommand(INDI_PROPERTY_TYPE inPropertyType, const QString & inProperty, const QString & inElement, QVariant qValue, QObject *parent);
+ INDI_PROPERTY_TYPE propType;
+#else
GDSetCommand(INDI_TYPE inPropertyType, const QString & inProperty, const QString & inElement, QVariant qValue, QObject *parent);
-
INDI_TYPE propType;
+#endif
+
+
QString indiProperty;
QString indiElement;
QVariant elementValue;
--
cgit v0.11.2
From 087208582d008705262934d82bfa2dbc88fb09fb Mon Sep 17 00:00:00 2001
From: Jasem Mutlaq <mutlaqja@ikarustech.com>
Date: Mon, 27 Apr 2015 19:52:11 +0300
Subject: Handle new INDI client function in 1.1
---
kstars/indi/clientmanager.cpp | 16 ++++++++++++++++
kstars/indi/clientmanager.h | 9 ++++++++-
2 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/kstars/indi/clientmanager.cpp b/kstars/indi/clientmanager.cpp
index a9b60fa..0832971 100644
--- a/kstars/indi/clientmanager.cpp
+++ b/kstars/indi/clientmanager.cpp
@@ -114,6 +114,22 @@ void ClientManager::removeProperty(INDI::Property *prop)
emit removeINDIProperty(prop);
}
+#ifdef INDI_VERSION_MAJOR
+#if (INDI_VERSION_MAJOR >= 1 && INDI_VERSION_MINOR >= 1)
+void ClientManager::removeDevice(INDI::BaseDevice *dp)
+{
+ foreach(DriverInfo *di, managedDrivers)
+ {
+ if (di->getUniqueLabel() == dp->getDeviceName())
+ {
+ emit removeINDIDevice(di->getDevice(dp->getDeviceName()));
+ break;
+ }
+ }
+}
+#endif
+#endif
+
void ClientManager::newBLOB(IBLOB *bp)
{
emit newINDIBLOB(bp);
diff --git a/kstars/indi/clientmanager.h b/kstars/indi/clientmanager.h
index 56bc3c4..5f687a0 100644
--- a/kstars/indi/clientmanager.h
+++ b/kstars/indi/clientmanager.h
@@ -12,9 +12,10 @@
*/
#include <baseclient.h>
-
#include <QObject>
+#include "config-kstars.h"
+
class DeviceInfo;
class DriverInfo;
class ServerManager;
@@ -45,6 +46,11 @@ protected:
virtual void newDevice(INDI::BaseDevice *dp);
virtual void newProperty(INDI::Property *prop);
virtual void removeProperty(INDI::Property *prop);
+ #ifdef INDI_VERSION_MAJOR
+ #if (INDI_VERSION_MAJOR >= 1 && INDI_VERSION_MINOR >= 1)
+ virtual void removeDevice(INDI::BaseDevice *dp);
+ #endif
+ #endif
virtual void newBLOB(IBLOB *bp);
virtual void newSwitch(ISwitchVectorProperty *svp);
virtual void newNumber(INumberVectorProperty *);
@@ -65,6 +81,7 @@ signals:
void connectionFailure(ClientManager *);
void newINDIDevice(DeviceInfo *dv);
+ void removeINDIDevice(DeviceInfo *dv);
void newINDIProperty(INDI::Property *prop);
void removeINDIProperty(INDI::Property *prop);
--
cgit v0.11.2
--- a/kstars/CMakeLists.txt
+++ b/kstars/CMakeLists.txt
@@ -502,7 +502,9 @@
target_link_libraries(KStarsLib ${CFITSIO_LIBRARIES})
endif (CFITSIO_FOUND)
if (INDI_FOUND)
- target_link_libraries(KStarsLib ${CMAKE_THREAD_LIBS_INIT} ${INDI_LIBRARIES} ${INDI_CLIENT_LIBRARIES} z)
+ find_package(Nova REQUIRED)
+ include_directories(${NOVA_INCLUDE_DIR})
+ target_link_libraries(KStarsLib ${CMAKE_THREAD_LIBS_INIT} ${INDI_LIBRARIES} ${INDI_CLIENT_LIBRARIES} ${NOVA_LIBRARIES} z)
endif (INDI_FOUND)
if (WCSLIB_FOUND)
target_link_libraries(KStarsLib ${WCSLIB_LIBRARIES})