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 KEPHAL_NOCONFIGURATIONS_H
22
#define KEPHAL_NOCONFIGURATIONS_H
24
#include "configurations.h"
29
class NoConfigurations;
32
* Dummy Configuration object for NoConfigurations to return
34
class SimpleConfiguration : public Configuration {
37
SimpleConfiguration(NoConfigurations * parent);
40
* @reimp Kephal::Configuration
44
* @reimp Kephal::Configuration
46
bool isModifiable() const;
48
* @reimp Kephal::Configuration
50
bool isActivated() const;
52
* @reimp Kephal::Configuration
54
QMap<int, QPoint> layout() const;
56
* @reimp Kephal::Configuration
58
int primaryScreen() const;
65
* Dummy Configurations to use when no real backend is available
67
class NoConfigurations : public Configurations {
70
NoConfigurations(QObject * parent);
72
QMap<QString, Configuration *> configurations();
73
Configuration * findConfiguration();
74
Configuration * activeConfiguration();
75
QList<Configuration *> alternateConfigurations();
76
QList<QPoint> possiblePositions(const Output * output);
77
bool move(Output * output, const QPoint & position);
78
bool resize(Output * output, const QSize & size);
79
bool rotate(Output * output, Rotation rotation);
80
bool changeRate(Output * output, float rate);
81
bool reflectX(Output * output, bool reflect);
82
bool reflectY(Output * output, bool reflect);
83
int screen(Output * output);
84
void applyOutputSettings();
85
void setPolling(bool polling);
91
SimpleConfiguration * m_config;
96
#endif // KEPHAL_NOCONFIGURATIONS_H