File indexing completed on 2024-06-23 05:18:38

0001 /*
0002    SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "messagecomposer_export.h"
0010 #include <MessageComposer/ConvertSnippetVariablesUtil>
0011 #include <QObject>
0012 class QMenu;
0013 namespace MessageComposer
0014 {
0015 /**
0016  * @brief The ConvertSnippetVariableMenu class
0017  * @author Laurent Montel <montel@kde.org>
0018  */
0019 class MESSAGECOMPOSER_EXPORT ConvertSnippetVariableMenu : public QObject
0020 {
0021     Q_OBJECT
0022 public:
0023     explicit ConvertSnippetVariableMenu(bool onlyMenuForCustomizeAttachmentFileName, QWidget *parentWidget, QObject *parent = nullptr);
0024     ~ConvertSnippetVariableMenu() override;
0025     [[nodiscard]] QMenu *menu() const;
0026 
0027 Q_SIGNALS:
0028     void insertVariable(MessageComposer::ConvertSnippetVariablesUtil::VariableType type);
0029 
0030 private:
0031     MESSAGECOMPOSER_NO_EXPORT void initializeMenu(bool onlyMenuForCustomizeAttachmentFileName);
0032     QWidget *const mParentWidget;
0033     QMenu *mMenu = nullptr;
0034 };
0035 }