on 316ca48 help sign in
unity8/plugins/Unity/Shell/DBusUnityShellService.cpp
59 lines 1.8 kB history raw
1/*
2 * Copyright (C) 2014 Canonical, Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it under
5 * the terms of the GNU Lesser General Public License version 3, as published by
6 * the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
10 * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
17// local
18#include "DBusUnityShellService.h"
20// Qt
21#include <QDBusConnection>
23DBusUnityShellService::DBusUnityShellService() : QObject()
25 QDBusConnection connection = QDBusConnection::sessionBus();
26 bool ok;
28 connection.registerService("com.canonical.Unity.Shell");
30 ok = connection.registerObject("/com/canonical/Unity/Shell", this,
31 QDBusConnection::ExportScriptableSignals
32 | QDBusConnection::ExportScriptableSlots
33 | QDBusConnection::ExportScriptableInvokables);
34 if (!ok) {
35 qWarning("Failed to register /com/canonical/Unity/Shell D-Bus object.");
36 }
38 m_rotationAngle = 0;
41DBusUnityShellService::~DBusUnityShellService()
43 QDBusConnection connection = QDBusConnection::sessionBus();
44 connection.unregisterService("com.canonical.Unity.Shell");
45 connection.unregisterObject("/com/canonical/Unity/Shell");
48void DBusUnityShellService::setRotationAngle(int angle)
50 if (angle != m_rotationAngle) {
51 m_rotationAngle = angle;
52 Q_EMIT RotationAngleChanged(angle);
53 }
56int DBusUnityShellService::GetRotationAngle()
58 return m_rotationAngle;