1 /* -*- mode: C++; c-file-style: "gnu" -*-
2 * kmail: KDE mail client
3 * Copyright (C) 2000 Espen Sand, espen@kde.org
4 * Copyright (C) 2001-2003 Marc Mutz, mutz@kde.org
5 * Contains code segments and ideas from earlier kmail dialog code.
6 * Copyright (C) 2010 Volker Krause <vkrause@kde.org>
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License along
19 * with this program; if not, write to the Free Software Foundation, Inc.,
20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24 #ifndef IDENTITYPAGE_H
25 #define IDENTITYPAGE_H
27 #include <config-enterprise.h>
28 #include "kmail_export.h"
30 #include "configmodule.h"
31 #include "ui_identitypage.h"
33 namespace KPIMIdentities
{
34 class IdentityManager
;
39 class IdentityListView
;
40 class IdentityListViewItem
;
42 class KMAIL_EXPORT IdentityPage
: public ConfigModule
{
45 explicit IdentityPage( const KComponentData
&instance
, QWidget
*parent
= 0 );
48 QString
helpAnchor() const;
54 void slotNewIdentity();
55 void slotModifyIdentity();
56 void slotRemoveIdentity();
57 /** Connected to @p mRenameButton's clicked() signal. Just does a
58 QTreeWidget::editItem on the selected item */
59 void slotRenameIdentity();
60 /** connected to @p mIdentityList's renamed() signal. Validates the
61 new name and sets it in the KPIMIdentities::IdentityManager */
62 void slotRenameIdentity( KMail::IdentityListViewItem
*, const QString
& );
63 void slotContextMenu( KMail::IdentityListViewItem
*, const QPoint
& );
64 void slotSetAsDefault();
65 void slotIdentitySelectionChanged();
70 private: // data members
71 KMail::IdentityDialog
*mIdentityDialog
;
72 int mOldNumberOfIdentities
;
73 KPIMIdentities::IdentityManager
*mIdentityManager
;
75 Ui_IdentityPage mIPage
;