Projekt

Allgemein

Profil

Herunterladen (1,78 KB) Statistiken
| Zweig: | Markierung: | Revision:
/****************************************************************************
* 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

(15-15/17)