Messagelib

aggregationconfigbutton.h
1 /* SPDX-FileCopyrightText: 2009 James Bendig <[email protected]>
2 
3  SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
4 */
5 #pragma once
6 
7 #include "messagelist_export.h"
8 #include <QPushButton>
9 
10 namespace MessageList
11 {
12 namespace Utils
13 {
14 class AggregationComboBox;
15 class AggregationConfigButtonPrivate;
16 
17 /**
18  * A specialized QPushButton that displays the aggregation
19  * configure dialog when pressed.
20  */
21 class MESSAGELIST_EXPORT AggregationConfigButton : public QPushButton
22 {
23  Q_OBJECT
24 
25 public:
26  /** Constructor.
27  * @param parent The parent widget for the button.
28  * @param aggregationComboBox Optional AggregationComboBox to be kept in sync
29  * with changes made by the configure dialog.
30  */
31  explicit AggregationConfigButton(QWidget *parent, const AggregationComboBox *aggregationComboBox = nullptr);
32  ~AggregationConfigButton() override;
33 
34 Q_SIGNALS:
35  /**
36  * A signal emitted when configure dialog has been successfully completed.
37  */
38  void configureDialogCompleted();
39 
40 private:
41  std::unique_ptr<AggregationConfigButtonPrivate> const d;
42 };
43 } // namespace Utils
44 } // namespace MessageList
A specialized QPushButton that displays the aggregation configure dialog when pressed.
A specialized QComboBox that lists all message list aggregations.
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Sat May 21 2022 03:53:35 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.