1 /********************************************************************
2 KWin - the KDE window manager
3 This file is part of the KDE project.
5 Copyright (C) 2008 Lubos Lunak <l.lunak@suse.cz>
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *********************************************************************/
21 #ifndef CCSM_MONITOR_H
22 #define CCSM_MONITOR_H
24 #include <qactiongroup.h>
25 #include <qgraphicsitem.h>
42 Monitor( QWidget
* parent
);
43 void setEdge( int edge
, bool set
);
44 bool edge( int edge
) const;
46 void addEdgeItem( int edge
, const QString
& item
);
47 void selectEdgeItem( int edge
, int index
);
48 int selectedEdgeItem( int edge
) const;
63 void edgeSelectionChanged( int edge
, int index
);
65 virtual void resizeEvent( QResizeEvent
* e
);
68 void popup( Corner
* c
, QPoint pos
);
69 void flip( Corner
* c
, QPoint pos
);
72 QGraphicsScene
* scene
;
73 QGraphicsRectItem
* items
[ 8 ];
75 QVector
< QAction
* > popup_actions
[ 8 ];
76 QActionGroup
* grp
[ 8 ];
80 : public QGraphicsRectItem
85 virtual void contextMenuEvent( QGraphicsSceneContextMenuEvent
* e
);
86 virtual void mousePressEvent( QGraphicsSceneMouseEvent
* e
);