00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00017 #ifndef AQ_BANKING_CPP_H
00018 #define AQ_BANKING_CPP_H
00019
00020
00021 #include <aqbanking/banking.h>
00022 #include <list>
00023 #include <string>
00024
00025
00026 #define QBANKING_IMPORTER_FLAGS_COMPLETE_DAYS 0x00000001
00027 #define QBANKING_IMPORTER_FLAGS_OVERWRITE_DAYS 0x00000002
00028 #define QBANKING_IMPORTER_FLAGS_ASK_ALL_DUPES 0x00000004
00029 #define QBANKING_IMPORTER_FLAGS_FUZZY 0x00000008
00030 #define QBANKING_IMPORTER_FLAGS_AS_ORDERS 0x00000010
00031
00032
00045 class Banking {
00046 friend class Banking_Linker;
00047
00048 private:
00049 AB_BANKING *_banking;
00050
00051 public:
00052 Banking(const char *appname,
00053 const char *fname);
00054 virtual ~Banking();
00055
00056
00057 AB_BANKING *getCInterface();
00058
00059
00063 int init();
00064
00068 int fini();
00069
00070
00076 AB_PROVIDER *getProvider(const char *name);
00077
00078
00082 const char *getAppName();
00083
00091 std::list<AB_ACCOUNT*> getAccounts();
00092
00099 AB_ACCOUNT *getAccount(GWEN_TYPE_UINT32 uniqueId);
00100
00107 GWEN_DB_NODE *getAppData();
00108
00109 int getUserDataDir(GWEN_BUFFER *buf) const ;
00110 int getAppUserDataDir(GWEN_BUFFER *buf) const ;
00111
00112
00122 std::list<GWEN_PLUGIN_DESCRIPTION*> getProviderDescrs();
00123
00129 std::list<GWEN_PLUGIN_DESCRIPTION*> getWizardDescrs(const char *pn);
00130
00137 void clearPluginDescrs(std::list<GWEN_PLUGIN_DESCRIPTION*> &l);
00138
00139 int activateProvider(const char *pname);
00140 int deactivateProvider(const char *pname);
00141 std::list<std::string> getActiveProviders();
00142
00143 int suspendProvider(const char *pname);
00144 int resumeProvider(const char *pname);
00145
00146 std::string findWizard(const char *backend, const char *frontends);
00147
00171 int enqueueJob(AB_JOB *j);
00172
00178 int dequeueJob(AB_JOB *j);
00179
00187 int executeQueue();
00188
00193 std::list<AB_JOB*> getEnqueuedJobs();
00204 virtual int messageBox(GWEN_TYPE_UINT32 flags,
00205 const char *title,
00206 const char *text,
00207 const char *b1,
00208 const char *b2,
00209 const char *b3);
00210
00214 virtual int inputBox(GWEN_TYPE_UINT32 flags,
00215 const char *title,
00216 const char *text,
00217 char *buffer,
00218 int minLen,
00219 int maxLen);
00220
00224 virtual GWEN_TYPE_UINT32 showBox(GWEN_TYPE_UINT32 flags,
00225 const char *title,
00226 const char *text);
00230 virtual void hideBox(GWEN_TYPE_UINT32 id);
00231
00235 virtual GWEN_TYPE_UINT32 progressStart(const char *title,
00236 const char *text,
00237 GWEN_TYPE_UINT32 total);
00238
00242 virtual int progressAdvance(GWEN_TYPE_UINT32 id,
00243 GWEN_TYPE_UINT32 progress);
00247 virtual int progressLog(GWEN_TYPE_UINT32 id,
00248 AB_BANKING_LOGLEVEL level,
00249 const char *text);
00253 virtual int progressEnd(GWEN_TYPE_UINT32 id);
00254
00255
00259 virtual int print(const char *docTitle,
00260 const char *docType,
00261 const char *descr,
00262 const char *text);
00263
00267 virtual bool importContext(AB_IMEXPORTER_CONTEXT *ctx,
00268 GWEN_TYPE_UINT32 flags);
00269
00270 };
00271
00272
00273
00274
00275 #endif
00276
00277