File indexing completed on 2024-06-16 04:47:06

0001 /*
0002     SPDX-FileCopyrightText: 2007 Thomas Baumgart <ipwizard@users.sourceforge.net>
0003     SPDX-License-Identifier: GPL-2.0-or-later
0004 */
0005 
0006 #ifndef KGENERALLOANINFOPAGE_H
0007 #define KGENERALLOANINFOPAGE_H
0008 
0009 // ----------------------------------------------------------------------------
0010 // QT Includes
0011 
0012 #include <QWidget>
0013 
0014 // ----------------------------------------------------------------------------
0015 // KDE Includes
0016 
0017 // ----------------------------------------------------------------------------
0018 // Project Includes
0019 
0020 #include "wizardpage.h"
0021 
0022 class MyMoneyAccount;
0023 
0024 namespace NewAccountWizard
0025 {
0026 class Wizard;
0027 
0028 class GeneralLoanInfoPagePrivate;
0029 class GeneralLoanInfoPage : public QWidget, public WizardPage<Wizard>
0030 {
0031     Q_OBJECT
0032     Q_DISABLE_COPY(GeneralLoanInfoPage)
0033 
0034 public:
0035     explicit GeneralLoanInfoPage(Wizard* parent);
0036     ~GeneralLoanInfoPage() override;
0037 
0038     KMyMoneyWizardPage* nextPage() const override;
0039     virtual bool isComplete() const override;
0040     void enterPage() override;
0041     MyMoneyAccount parentAccount();
0042 
0043     QWidget* initialFocusWidget() const override;
0044 
0045     /**
0046     * Returns @p true if the user decided to record all payments, @p false otherwise.
0047     */
0048     bool recordAllPayments() const;
0049 
0050 private Q_SLOTS:
0051     void slotLoadWidgets();
0052 
0053 private:
0054     Q_DECLARE_PRIVATE_D(WizardPage<Wizard>::d_ptr, GeneralLoanInfoPage)
0055     friend class Wizard;
0056     friend class AccountSummaryPage;
0057     friend class LoanDetailsPage;
0058     friend class LoanPaymentPage;
0059     friend class LoanSchedulePage;
0060     friend class WizardPrivate;
0061 };
0062 } // namespace
0063 
0064 #endif