/*************************************************************************** konlinebankingsetupwizard.h ------------------- begin : Sat Jan 7 2006 copyright : (C) 2006 by Ace Jones email : acejones@users.sourceforge.net ***************************************************************************/ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef KONLINEBANKINGSETUPWIZARD_H #define KONLINEBANKINGSETUPWIZARD_H // ---------------------------------------------------------------------------- // Library Includes #include // ---------------------------------------------------------------------------- // TQt Includes #include #include #include // ---------------------------------------------------------------------------- // TDE Includes // ---------------------------------------------------------------------------- // Project Includes #include "konlinebankingsetupdecl.h" #include class OfxAppVersion; class OfxHeaderVersion; /** * @author Ace Jones */ /** * This class implementes a wizard for setting up an existing account * with online banking. * * The user is asked to choose his bank from the supported bank, and * his account. * * Currently works only with OFX Direct Connect, but I imagined that * other protocols could be included here. To accomodate this, we'd * add another page at the start of the wizard to ask which protocol * they wanted. * */ class KOnlineBankingSetupWizard : public KOnlineBankingSetupDecl { TQ_OBJECT public: class ListViewItem: public MyMoneyKeyValueContainer, public TQListViewItem { public: ListViewItem( TQListView* parent, const MyMoneyKeyValueContainer& kvps ); virtual void x(void); }; KOnlineBankingSetupWizard(TQWidget *parent=0, const char *name=0); ~KOnlineBankingSetupWizard(); bool chosenSettings( MyMoneyKeyValueContainer& settings ); bool isInit(void) const { return m_fInit; } public slots: void next(); protected: bool finishAccountPage(void); bool finishLoginPage(void); bool finishFiPage(void); bool post(const char* request, const char* url,const char* filename); static int ofxAccountCallback(struct OfxAccountData data, void * pv); static int ofxStatusCallback(struct OfxStatusData data, void * pv); private: /// \internal d-pointer class. class Private; /// \internal d-pointer instance. Private* const d; TQValueList m_bankInfo; TQValueList::const_iterator m_it_info; bool m_fDone; bool m_fInit; OfxAppVersion* m_appId; OfxHeaderVersion* m_headerVersion; }; #endif