1
/********************************************************************
3
Copyright (C) 2008 Lubos Lunak <l.lunak@suse.cz>
5
This program is free software; you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation; either version 2 of the License, or
8
(at your option) any later version.
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
15
You should have received a copy of the GNU General Public License
16
along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*********************************************************************/
19
#ifndef RANDRMONITOR_H
20
#define RANDRMONITOR_H
22
#include <kdedmodule.h>
27
#include <X11/extensions/Xrandr.h>
32
class RandrMonitorHelper;
34
class RandrMonitorModule
39
RandrMonitorModule(QObject* parent, const QList<QVariant>&);
40
virtual ~RandrMonitorModule();
41
void processX11Event( XEvent* e );
47
void getRandrInfo( XRROutputChangeNotifyEvent* e, QString* change, QRect* rect );
48
QStringList connectedMonitors() const;
49
void enableOutput( RandROutput* output, bool enable );
54
QStringList currentMonitors;
55
RandrMonitorHelper* helper;
59
class RandrMonitorHelper
64
RandrMonitorHelper( RandrMonitorModule* module );
66
virtual bool x11Event( XEvent* e );
68
RandrMonitorModule* module;
73
RandrMonitorHelper::RandrMonitorHelper( RandrMonitorModule* m )