2 * Copyright 2008 Aike J Sommer <dev@aikesommer.name>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as
6 * published by the Free Software Foundation; either version 2,
7 * or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details
14 * You should have received a copy of the GNU Library General Public
15 * License along with this program; if not, write to the
16 * Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 #ifndef DBUSAPI_CONFIGURATIONS_H
22 #define DBUSAPI_CONFIGURATIONS_H
26 #include <QStringList>
36 class DBusAPIConfigurations
: public QObject
39 Q_CLASSINFO("D-Bus Interface", "org.kde.Kephal.Configurations")
42 DBusAPIConfigurations(QObject
* parent
);
45 QStringList
configurations();
46 QStringList
alternateConfigurations();
47 QString
activeConfiguration();
49 int numAvailablePositions(QString output
);
50 QPoint
availablePosition(QString output
, int index
);
51 bool move(QString output
, QPoint position
);
52 bool resize(QString output
, QSize size
);
53 bool rotate(QString output
, int rotation
);
54 bool changeRate(QString output
, qreal rate
);
55 bool reflectX(QString output
, bool reflect
);
56 bool reflectY(QString output
, bool reflect
);
57 int screen(QString output
);
59 bool isModifiable(QString config
);
60 bool isActivated(QString config
);
61 void activate(QString config
);
62 int primaryScreen(QString config
);
64 void setPolling(bool polling
);
71 void configurationActivated(QString name
);
72 void confirmTimeout(int seconds
);
77 void configurationActivatedSlot(Kephal::Configuration
* configuration
);
80 QMap
<QString
, QList
<QPoint
> > m_outputAvailablePositions
;
84 #endif // DBUSAPI_CONFIGURATIONS_H