File indexing completed on 2024-05-12 16:44:09

0001 /*
0002     SPDX-FileCopyrightText: 2006 Thomas Baumgart <tbaumgart@kde.org>
0003     SPDX-FileCopyrightText: 2017-2018 Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com>
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef TRANSACTIONEDITORCONTAINER_H
0008 #define TRANSACTIONEDITORCONTAINER_H
0009 
0010 // ----------------------------------------------------------------------------
0011 // QT Includes
0012 
0013 #include <QTableWidget>
0014 
0015 // ----------------------------------------------------------------------------
0016 // KDE Includes
0017 
0018 // ----------------------------------------------------------------------------
0019 // Project Includes
0020 
0021 namespace KMyMoneyRegister {
0022 class Transaction;
0023 }
0024 
0025 class TransactionEditorContainer : public QTableWidget
0026 {
0027     Q_OBJECT
0028     Q_DISABLE_COPY(TransactionEditorContainer)
0029 
0030 public:
0031     explicit TransactionEditorContainer(QWidget* parent);
0032     virtual ~TransactionEditorContainer();
0033 
0034     virtual void arrangeEditWidgets(QMap<QString, QWidget*>& editWidgets, KMyMoneyRegister::Transaction* t) = 0;
0035     virtual void removeEditWidgets(QMap<QString, QWidget*>& editWidgets) = 0;
0036     virtual void tabOrder(QWidgetList& tabOrderWidgets, KMyMoneyRegister::Transaction* t) const = 0;
0037     // FIXME remove tabbar
0038     // virtual int action(QMap<QString, QWidget*>& editWidgets) const = 0;
0039     // virtual void setProtectedAction(QMap<QString, QWidget*>& editWidgets, ProtectedAction action) = 0;
0040 
0041 Q_SIGNALS:
0042     void geometriesUpdated();
0043 
0044 protected Q_SLOTS:
0045     void updateGeometries() final override;
0046 };
0047 
0048 #endif