Messagelib

recipientseditorsidewidget.h
1 /*
2  SPDX-FileCopyrightText: 2010 Casey Link <[email protected]>
3  SPDX-FileCopyrightText: 2009-2010 Klaralvdalens Datakonsult AB, a KDAB Group company <[email protected]>
4 
5  Refactored from earlier code by:
6  SPDX-FileCopyrightText: 2010 Volker Krause <[email protected]>
7  SPDX-FileCopyrightText: 2004 Cornelius Schumacher <[email protected]>
8 
9  SPDX-License-Identifier: LGPL-2.0-or-later
10 */
11 
12 #pragma once
13 
14 #include "recipientseditor.h"
15 
16 class QLabel;
17 class QPushButton;
18 
19 namespace MessageComposer
20 {
21 class KWindowPositioner;
22 
23 class RecipientsPicker;
24 
25 class RecipientsEditorSideWidget : public QWidget
26 {
27  Q_OBJECT
28 public:
29  explicit RecipientsEditorSideWidget(RecipientsEditor *editor, QWidget *parent);
30  ~RecipientsEditorSideWidget() override;
31 
32  Q_REQUIRED_RESULT MessageComposer::RecipientsPicker *picker() const;
33 
34 public Q_SLOTS:
35  void setTotal(int recipients, int lines);
36  void setFocus();
37  void updateTotalToolTip();
38  void pickRecipient();
39 
40 Q_SIGNALS:
41  void pickedRecipient(const Recipient &, bool &);
42  void saveDistributionList();
43 
44 private:
45  RecipientsEditor *const mEditor;
46  QLabel *mTotalLabel = nullptr;
47  QPushButton *mDistributionListButton = nullptr;
48  QPushButton *mSelectButton = nullptr;
49  /** The RecipientsPicker is lazy loaded, never access it directly,
50  only through picker() */
51  mutable MessageComposer::RecipientsPicker *mRecipientPicker = nullptr;
52  /** lazy loaded, don't access directly, unless you've called picker() */
53  mutable MessageComposer::KWindowPositioner *mPickerPositioner = nullptr;
54 };
55 }
56 
Q_SIGNALSQ_SIGNALS
Q_OBJECTQ_OBJECT
Simple interface that both EncryptJob and SignEncryptJob implement so the composer can extract some e...
Q_SLOTSQ_SLOTS
void setFocus(Qt::FocusReason reason)
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Sat Dec 4 2021 23:12:54 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.