summaryrefslogtreecommitdiffstats
path: root/interfaces/include
diff options
context:
space:
mode:
authorBocklage, Jens <Jens_Bocklage@mentor.com>2017-01-18 15:25:38 +0100
committerBocklage, Jens <Jens_Bocklage@mentor.com>2017-01-18 15:25:38 +0100
commit0592a405aa68f3baf6773795efa5522e4ee16779 (patch)
treea154927827fee732c65947f4eae171658f63fb77 /interfaces/include
parent6fcde5166305cd40b5816c4495290984ca925ab6 (diff)
Initial source commit
Taken from https://gerrit.automotivelinux.org/gerrit/p/staging/HomeScreen.git Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
Diffstat (limited to 'interfaces/include')
-rw-r--r--interfaces/include/appframework.hpp66
-rw-r--r--interfaces/include/daynightmode.hpp29
-rw-r--r--interfaces/include/homescreen.hpp23
-rw-r--r--interfaces/include/inputevent.hpp30
-rw-r--r--interfaces/include/popup.hpp31
-rw-r--r--interfaces/include/proximity.hpp22
-rw-r--r--interfaces/include/statusbar.hpp22
-rw-r--r--interfaces/include/windowmanager.hpp82
8 files changed, 305 insertions, 0 deletions
diff --git a/interfaces/include/appframework.hpp b/interfaces/include/appframework.hpp
new file mode 100644
index 0000000..98ec317
--- /dev/null
+++ b/interfaces/include/appframework.hpp
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef APPFRAMEWORK_HPP
+#define APPFRAMEWORK_HPP
+
+#include <QtCore/QSharedDataPointer>
+#include <QtDBus/QDBusArgument>
+
+class AppInfo
+{
+ Q_GADGET
+ Q_PROPERTY(QString id READ id)
+ Q_PROPERTY(QString version READ version)
+ Q_PROPERTY(int width READ width)
+ Q_PROPERTY(int height READ height)
+ Q_PROPERTY(QString name READ name)
+ Q_PROPERTY(QString description READ description)
+ Q_PROPERTY(QString shortname READ shortname)
+ Q_PROPERTY(QString author READ author)
+ Q_PROPERTY(QString iconPath READ iconPath)
+public:
+ AppInfo();
+ AppInfo(const AppInfo &other);
+ virtual ~AppInfo();
+ AppInfo &operator =(const AppInfo &other);
+ void swap(AppInfo &other) { qSwap(d, other.d); }
+
+ QString id() const;
+ QString version() const;
+ int width() const;
+ int height() const;
+ QString name() const;
+ QString description() const;
+ QString shortname() const;
+ QString author() const;
+ QString iconPath() const;
+
+ void read(const QJsonObject &json);
+
+ friend QDBusArgument &operator <<(QDBusArgument &argument, const AppInfo &appInfo);
+ friend const QDBusArgument &operator >>(const QDBusArgument &argument, AppInfo &appInfo);
+
+private:
+ class Private;
+ QSharedDataPointer<Private> d;
+};
+
+Q_DECLARE_SHARED(AppInfo)
+Q_DECLARE_METATYPE(AppInfo)
+Q_DECLARE_METATYPE(QList<AppInfo>)
+
+#endif // APPFRAMEWORK_HPP
diff --git a/interfaces/include/daynightmode.hpp b/interfaces/include/daynightmode.hpp
new file mode 100644
index 0000000..2d858bb
--- /dev/null
+++ b/interfaces/include/daynightmode.hpp
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef DAYNIGHTMODE_H
+#define DAYNIGHTMODE_H
+
+namespace SystemDayNight {
+ typedef enum DayNightMode
+ {
+ DAYNIGHTMODE_UNDEFINED = -1,
+ DAYNIGHTMODE_DAY = 0,
+ DAYNIGHTMODE_NIGHT = 1
+ } eDayNightMode;
+}
+
+#endif // DAYNIGHTMODE_H
diff --git a/interfaces/include/homescreen.hpp b/interfaces/include/homescreen.hpp
new file mode 100644
index 0000000..728962b
--- /dev/null
+++ b/interfaces/include/homescreen.hpp
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef HOMESCREEN_H
+#define HOMESCREEN_H
+
+#include "inputevent.hpp"
+
+#endif // HOMESCREEN_H
+
diff --git a/interfaces/include/inputevent.hpp b/interfaces/include/inputevent.hpp
new file mode 100644
index 0000000..8c6bf58
--- /dev/null
+++ b/interfaces/include/inputevent.hpp
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef INPUTEVENT_H
+#define INPUTEVENT_H
+
+namespace InputEvent {
+ typedef enum HardKey
+ {
+ HARDKEY_UNDEFINED,
+ HARDKEY_NAV,
+ HARDKEY_MEDIA
+ } eHardKey;
+}
+
+#endif // INPUTEVENT_H
+
diff --git a/interfaces/include/popup.hpp b/interfaces/include/popup.hpp
new file mode 100644
index 0000000..9caa837
--- /dev/null
+++ b/interfaces/include/popup.hpp
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef POPUP_H
+#define POPUP_H
+
+namespace SystemPopup {
+ typedef enum PopupType
+ {
+ POPUPTYPE_UNDEFINED,
+ POPUPTYPE_INFO,
+ POPUPTYPE_WARNING,
+ POPUPTYPE_ERROR
+ } ePopupType;
+}
+
+#endif // POPUP_H
+
diff --git a/interfaces/include/proximity.hpp b/interfaces/include/proximity.hpp
new file mode 100644
index 0000000..898217f
--- /dev/null
+++ b/interfaces/include/proximity.hpp
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef PROXIMITY_H
+#define PROXIMITY_H
+
+
+#endif // PROXIMITY_H
+
diff --git a/interfaces/include/statusbar.hpp b/interfaces/include/statusbar.hpp
new file mode 100644
index 0000000..ecdcede
--- /dev/null
+++ b/interfaces/include/statusbar.hpp
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef STATUSBAR_H
+#define STATUSBAR_H
+
+
+
+#endif // STATUSBAR_H
diff --git a/interfaces/include/windowmanager.hpp b/interfaces/include/windowmanager.hpp
new file mode 100644
index 0000000..dd268dd
--- /dev/null
+++ b/interfaces/include/windowmanager.hpp
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2016, 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef WINDOWMANAGER_H
+#define WINDOWMANAGER_H
+
+#include <QtDBus>
+
+#define WINDOWMANAGER_NO_ERROR 0
+#define WINDOWMANAGER_ERROR_ID_ALREADY_DEFINED 1
+#define WINDOWMANAGER_ERROR_NAME_ALREADY_DEFINED 2
+#define WINDOWMANAGER_ERROR_ID_NOT_FOUND 3
+#define WINDOWMANAGER_ERROR_NAME_NOT_FOUND 4
+#define WINDOWMANAGER_ERROR_ID_IN_USE 5
+
+class SimplePoint
+{
+public:
+ SimplePoint();
+ virtual ~SimplePoint();
+
+ int x;
+ int y;
+
+ friend QDBusArgument &operator <<(QDBusArgument &argument, const SimplePoint &mSimplePoint);
+ friend const QDBusArgument &operator >>(const QDBusArgument &argument, SimplePoint &mSimplePoint);
+};
+
+
+class LayoutArea
+{
+public:
+ LayoutArea();
+ virtual ~LayoutArea();
+
+ int x;
+ int y;
+ int width;
+ int height;
+
+ friend QDBusArgument &operator <<(QDBusArgument &argument, const LayoutArea &mLayoutArea);
+ friend const QDBusArgument &operator >>(const QDBusArgument &argument, LayoutArea &mLayoutArea);
+};
+
+class Layout
+{
+public:
+ Layout();
+ Layout(int layoutId, const QString &layoutName, const QList<LayoutArea> &surfaceAreas);
+ virtual ~Layout();
+
+ int id;
+ QString name;
+ QList<LayoutArea> layoutAreas;
+
+ friend QDBusArgument &operator <<(QDBusArgument &argument, const Layout &mLayout);
+ friend const QDBusArgument &operator >>(const QDBusArgument &argument, Layout &mLayout);
+};
+
+Q_DECLARE_METATYPE(SimplePoint)
+Q_DECLARE_METATYPE(QList<SimplePoint>)
+
+Q_DECLARE_METATYPE(LayoutArea)
+Q_DECLARE_METATYPE(QList<LayoutArea>)
+
+Q_DECLARE_METATYPE(Layout)
+Q_DECLARE_METATYPE(QList<Layout>)
+
+#endif // WINDOWMANAGER_H