|
/****************************************************************************
|
|
* This file is part of the project AqFinance.
|
|
* AqFinance (c) by 2009 Martin Preuss, all rights reserved.
|
|
*
|
|
* The license for this file can be found in the file COPYING which you
|
|
* should have received along with this file.
|
|
****************************************************************************/
|
|
|
|
#ifndef FF_MODULE_HPP
|
|
#define FF_MODULE_HPP
|
|
|
|
|
|
#include <aqfinance/engine/book/ae_book.h>
|
|
|
|
#include <fx.h>
|
|
|
|
#include <list>
|
|
|
|
|
|
class FF_ModuleManager;
|
|
class FF_App;
|
|
|
|
|
|
class FF_Module {
|
|
public:
|
|
enum {
|
|
MODULE_BANKACCOUNTS=1,
|
|
MODULE_OUTBOX,
|
|
MODULE_TRANSFERS,
|
|
MODULE_ACCOUNTS,
|
|
MODULE_PARTNERS,
|
|
MODULE_BUSINESS,
|
|
MODULE_VEHICLES
|
|
};
|
|
|
|
FF_Module(FF_ModuleManager *mm,
|
|
int id,
|
|
const FXString &label);
|
|
virtual ~FF_Module();
|
|
|
|
int getId() const { return m_id;};
|
|
|
|
const FXString &getLabel() const { return m_label;};
|
|
FXIcon *getIcon() const { return m_icon;};
|
|
|
|
virtual void init(FXComposite *parentForView);
|
|
virtual void fini();
|
|
|
|
virtual void enter();
|
|
virtual void leave();
|
|
|
|
virtual void reset();
|
|
|
|
virtual void dbOpened(AE_BOOK *bk);
|
|
virtual void dbClosing();
|
|
virtual void dbClosed();
|
|
virtual void dbReload(AE_BOOK_TABLE_TYPE tt);
|
|
|
|
virtual bool dbCheckDeleteObject(FXComposite *parent,
|
|
AE_BOOK_TABLE_TYPE tt,
|
|
AQDB_ID id);
|
|
|
|
virtual void jobListUpdated();
|
|
virtual void aboutToSendJobs();
|
|
|
|
FXWindow *getModulePage() const { return m_modulePage;};
|
|
|
|
FF_App *getApp();
|
|
|
|
virtual void dump(int indent);
|
|
|
|
protected:
|
|
FF_ModuleManager *m_moduleManager;
|
|
int m_id;
|
|
FXString m_label;
|
|
FXIcon *m_icon;
|
|
|
|
FXWindow *m_modulePage;
|
|
};
|
|
|
|
|
|
typedef std::list<FF_Module*> FF_ModulePtrList;
|
|
|
|
|
|
#endif
|
|
|