1 /* This file is part of the KDE project
2 Copyright (C) 1999 Simon Hausmann <hausmann@kde.org>
3 (C) 1999 David Faure <faure@kde.org>
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
10 This library 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 GNU
13 Library General Public License for more details.
15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 Boston, MA 02110-1301, USA.
20 #ifndef __kparts_event_h__
21 #define __kparts_event_h__
23 #include <QtGui/QKeyEvent>
25 #include <kparts/kparts_export.h>
35 * Base class for all KParts events.
37 class KPARTS_EXPORT Event
: public QEvent
40 Event( const char *eventName
);
42 virtual const char *eventName() const;
44 static bool test( const QEvent
*event
);
45 static bool test( const QEvent
*event
, const char *name
);
48 EventPrivate
* const d
;
51 class GUIActivateEventPrivate
;
53 * This event is sent to a Part when its GUI has been activated or deactivated.
54 * This is related to PartActivateEvent, but the difference is that
55 * GUIActivateEvent happens later (when the GUI is actually built),
56 * only for parts that have GUI elements, and only if using KParts::MainWindow.
57 * @see KParts::Part::guiActivateEvent()
59 class KPARTS_EXPORT GUIActivateEvent
: public Event
62 GUIActivateEvent( bool activated
);
63 virtual ~GUIActivateEvent();
65 bool activated() const;
67 static bool test( const QEvent
*event
);
70 GUIActivateEventPrivate
* const d
;
73 class PartActivateEventPrivate
;
75 * This event is sent by the part manager when the active part changes.
76 * Each time the active part changes, it will send first a PartActivateEvent
77 * with activated=false, part=oldActivePart, widget=oldActiveWidget
78 * and then another PartActivateEvent
79 * with activated=true, part=newPart, widget=newWidget.
80 * @see KParts::Part::partActivateEvent
82 class KPARTS_EXPORT PartActivateEvent
: public Event
85 PartActivateEvent( bool activated
, Part
*part
, QWidget
*widget
);
86 virtual ~PartActivateEvent();
87 bool activated() const;
90 QWidget
*widget() const;
92 static bool test( const QEvent
*event
);
95 PartActivateEventPrivate
* const d
;
98 class PartSelectEventPrivate
;
100 * This event is sent when a part is selected or deselected.
101 * @see KParts::PartManager::setSelectionPolicy
103 class KPARTS_EXPORT PartSelectEvent
: public Event
106 PartSelectEvent( bool selected
, Part
*part
, QWidget
*widget
);
107 virtual ~PartSelectEvent();
108 bool selected() const;
111 QWidget
*widget() const;
113 static bool test( const QEvent
*event
);
116 PartSelectEventPrivate
* const d
;