]> git.sven.stormbind.net Git - sven/vym.git/blobdiff - src/dbus/adaptormodel.cpp
New upstream version 2.9.22
[sven/vym.git] / src / dbus / adaptormodel.cpp
diff --git a/src/dbus/adaptormodel.cpp b/src/dbus/adaptormodel.cpp
new file mode 100644 (file)
index 0000000..fe39a47
--- /dev/null
@@ -0,0 +1,65 @@
+#include "adaptormodel.h"
+#include <QtCore/QMetaObject>
+#include <QtCore/QString>
+#include <QtCore/QVariant>
+
+#include "branchitem.h"
+#include "command.h"
+#include "mainwindow.h"
+#include "vymmodel.h"
+
+extern QString vymInstanceName;
+extern Main *mainWindow;
+
+extern QList<Command *> modelCommands;
+
+AdaptorModel::AdaptorModel(QObject *obj) : QDBusAbstractAdaptor(obj)
+{
+    model = static_cast<VymModel *>(obj);
+    setAutoRelaySignals(true);
+}
+
+void AdaptorModel::setModel(VymModel *vm) { model = vm; }
+
+QString AdaptorModel::caption() { return m_caption; }
+
+void AdaptorModel::setCaption(const QString &newCaption)
+{
+    m_caption = newCaption;
+}
+
+QDBusVariant AdaptorModel::branchCount()
+{
+    BranchItem *selbi = model->getSelectedBranch();
+    if (selbi)
+        return QDBusVariant(selbi->branchCount());
+    else
+        return QDBusVariant(-1);
+}
+
+QDBusVariant AdaptorModel::execute(const QString &s)
+{
+    return QDBusVariant(model->execute(s));
+}
+
+QDBusVariant AdaptorModel::errorLevel()
+{
+    return QDBusVariant(); // model->parser.errorLevel() );     // FIXME-4
+                           // really still needed? parser no longer used.
+}
+
+QDBusVariant AdaptorModel::errorDescription()
+{
+    return QDBusVariant(); // model->parser.errorDescription() );// FIXME-4
+                           // really still needed? parser no longer used.
+}
+
+QDBusVariant AdaptorModel::listCommands()
+{
+    QStringList list;
+
+    foreach (Command *command, modelCommands)
+        list << command->getName();
+
+    return QDBusVariant(list.join(","));
+}