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
00031
00044 class Banking {
00045 friend class Banking_Linker;
00046
00047 private:
00048 AB_BANKING *_banking;
00049
00050 public:
00051 Banking(const char *appname,
00052 const char *fname);
00053 virtual ~Banking();
00054
00055
00056 AB_BANKING *getCInterface();
00057
00058
00062 int init();
00063
00067 int fini();
00068
00069
00075 AB_PROVIDER *getProvider(const char *name);
00076
00077
00081 const char *getAppName();
00082
00090 std::list<AB_ACCOUNT*> getAccounts();
00091
00098 AB_ACCOUNT *getAccount(GWEN_TYPE_UINT32 uniqueId);
00099
00106 GWEN_DB_NODE *getAppData();
00107
00108 int getUserDataDir(GWEN_BUFFER *buf) const ;
00109 int getAppUserDataDir(GWEN_BUFFER *buf) const ;
00110
00111
00121 std::list<GWEN_PLUGIN_DESCRIPTION*> getProviderDescrs();
00122
00128 std::list<GWEN_PLUGIN_DESCRIPTION*> getWizardDescrs(const char *pn);
00129
00136 void clearPluginDescrs(std::list<GWEN_PLUGIN_DESCRIPTION*> &l);
00137
00138 int activateProvider(const char *pname);
00139 int deactivateProvider(const char *pname);
00140 std::list<std::string> getActiveProviders();
00141
00142 int suspendProvider(const char *pname);
00143 int resumeProvider(const char *pname);
00144
00145 std::string findWizard(const char *backend, const char *frontends);
00146
00170 int enqueueJob(AB_JOB *j);
00171
00177 int dequeueJob(AB_JOB *j);
00178
00186 int executeQueue();
00187
00192 std::list<AB_JOB*> getEnqueuedJobs();
00203 virtual int messageBox(GWEN_TYPE_UINT32 flags,
00204 const char *title,
00205 const char *text,
00206 const char *b1,
00207 const char *b2,
00208 const char *b3);
00209
00213 virtual int inputBox(GWEN_TYPE_UINT32 flags,
00214 const char *title,
00215 const char *text,
00216 char *buffer,
00217 int minLen,
00218 int maxLen);
00219
00223 virtual GWEN_TYPE_UINT32 showBox(GWEN_TYPE_UINT32 flags,
00224 const char *title,
00225 const char *text);
00229 virtual void hideBox(GWEN_TYPE_UINT32 id);
00230
00234 virtual GWEN_TYPE_UINT32 progressStart(const char *title,
00235 const char *text,
00236 GWEN_TYPE_UINT32 total);
00237
00241 virtual int progressAdvance(GWEN_TYPE_UINT32 id,
00242 GWEN_TYPE_UINT32 progress);
00246 virtual int progressLog(GWEN_TYPE_UINT32 id,
00247 AB_BANKING_LOGLEVEL level,
00248 const char *text);
00252 virtual int progressEnd(GWEN_TYPE_UINT32 id);
00253
00254
00258 virtual int print(const char *docTitle,
00259 const char *docType,
00260 const char *descr,
00261 const char *text);
00262
00266 virtual bool importContext(AB_IMEXPORTER_CONTEXT *ctx,
00267 GWEN_TYPE_UINT32 flags);
00268
00269 };
00270
00271
00272
00273
00274 #endif
00275
00276