86 of=gui->progressStartFn;
87 gui->progressStartFn=f;
98 of=gui->progressAdvanceFn;
99 gui->progressAdvanceFn=f;
110 of=gui->progressSetTotalFn;
111 gui->progressSetTotalFn=f;
122 of=gui->progressLogFn;
123 gui->progressLogFn=f;
134 of=gui->progressEndFn;
135 gui->progressEndFn=f;
160 of=gui->getPasswordFn;
161 gui->getPasswordFn=f;
173 of=gui->setPasswordStatusFn;
174 gui->setPasswordStatusFn=f;
200 of=gui->waitForSocketsFn;
201 gui->waitForSocketsFn=f;
226 of=gui->execDialogFn;
239 of=gui->openDialogFn;
252 of=gui->closeDialogFn;
253 gui->closeDialogFn=f;
278 of=gui->readDialogPrefsFn;
279 gui->readDialogPrefsFn=f;
291 of=gui->writeDialogPrefsFn;
292 gui->writeDialogPrefsFn=f;
304 of=gui->getFileNameFn;
305 gui->getFileNameFn=f;
331 of=gui->keyDataFromTextOpenSslFn;
332 gui->keyDataFromTextOpenSslFn=f;
353 if (gui && gui->messageBoxFn)
354 return gui->messageBoxFn(gui, flags, title, text, b1, b2, b3, guiid);
371 if (gui && gui->inputBoxFn)
372 return gui->inputBoxFn(gui, flags, title, text, buffer, minLen, maxLen, guiid);
386 if (gui && gui->showBoxFn)
387 return gui->showBoxFn(gui, flags, title, text, guiid);
398 if (gui && gui->hideBoxFn)
399 return gui->hideBoxFn(gui,
id);
413 if (gui && gui->progressStartFn)
414 return gui->progressStartFn(gui, progressFlags, title, text, total, guiid);
425 if (gui && gui->progressAdvanceFn)
426 return gui->progressAdvanceFn(gui,
id, progress);
437 if (gui && gui->progressSetTotalFn)
438 return gui->progressSetTotalFn(gui,
id, total);
451 if (gui && gui->progressLogFn)
452 return gui->progressLogFn(gui,
id, level, text);
460 const char *
fmt, ...)
463 char msgbuffer[2048];
468 rv=vsnprintf(msgbuffer,
sizeof(msgbuffer),
fmt, list);
469 if (rv<0 || rv>=(
int)(
sizeof(msgbuffer))) {
471 rv, (
int)(
sizeof(msgbuffer)));
485 if (gui && gui->progressEndFn)
486 return gui->progressEndFn(gui,
id);
501 if (gui && gui->printFn)
502 return gui->printFn(gui, docTitle, docType, descr, text, guiid);
514 if (gui && gui->logHookFn) {
517 strcasecmp(logDomain,
"gwenhywfar")==0)
526 if (gui->inLogHook==0) {
529 rv=gui->logHookFn(gui, logDomain, priority, s);
546 unsigned char *buffer,
547 unsigned int bufLength)
552 if (gui && gui->keyDataFromTextOpenSslFn)
553 return gui->keyDataFromTextOpenSslFn(gui, text, buffer, bufLength);
564 if (gui && gui->execDialogFn)
565 return gui->execDialogFn(gui, dlg, guiid);
576 if (gui && gui->openDialogFn)
577 return gui->openDialogFn(gui, dlg, guiid);
588 if (gui && gui->closeDialogFn)
589 return gui->closeDialogFn(gui, dlg);
600 if (gui && gui->runDialogFn)
601 return gui->runDialogFn(gui, dlg, untilEnd);
611 const char *patterns,
618 if (gui && gui->getFileNameFn)
619 return gui->getFileNameFn(gui, caption, fnt, flags, patterns, pathBuffer, guiid);
632 if (gui && gui->readDialogPrefsFn)
633 return gui->readDialogPrefsFn(gui, groupName, altName, pDb);
645 if (gui && gui->writeDialogPrefsFn)
646 return gui->writeDialogPrefsFn(gui, groupName, db);
653 const char *defaultProto,
660 if (gui && gui->getSyncIoFn)
661 return gui->getSyncIoFn(gui, url, defaultProto, defaultPort, pSio);
675 if (gui && gui->waitForSocketsFn)
676 return gui->waitForSocketsFn(gui, readSockets, writeSockets, guiid, msecs);
701 I18N(
"Waiting for Data"),
702 "Waiting for data to become available",
GWENHYWFAR_API const char * fmt
struct GWEN_DB_NODE GWEN_DB_NODE
#define DBG_DEBUG(dbg_logger, format, args...)
#define DBG_WARN(dbg_logger, format, args...)
struct GWEN_DIALOG GWEN_DIALOG
#define GWEN_ERROR_NOT_IMPLEMENTED
#define GWEN_ERROR_TIMEOUT
#define GWEN_ERROR_USER_ABORTED
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
GWENHYWFAR_API int GWEN_SocketSet_GetSocketCount(GWEN_SOCKETSET *ssp)
GWENHYWFAR_API void GWEN_SocketSet_free(GWEN_SOCKETSET *ssp)
GWENHYWFAR_API int GWEN_SocketSet_AddSocket(GWEN_SOCKETSET *ssp, const GWEN_SOCKET *sp)
GWENHYWFAR_API GWEN_SOCKETSET * GWEN_SocketSet_new(void)
GWENHYWFAR_API int GWEN_Socket_Select(GWEN_SOCKETSET *rs, GWEN_SOCKETSET *ws, GWEN_SOCKETSET *xs, int timeout)
GWEN_GUI * GWEN_Gui_GetGui(void)
#define GWEN_GUI_PROGRESS_DELAY
#define GWEN_GUI_PROGRESS_SHOW_PROGRESS
#define GWEN_GUI_CPU_TIMEOUT
#define GWEN_GUI_PROGRESS_SHOW_ABORT
#define GWEN_GUI_PROGRESS_ALLOW_EMBED
int GWENHYWFAR_CB(* GWEN_GUI_EXEC_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_SETPASSWORDSTATUS_FN)(GWEN_GUI *gui, const char *token, const char *pin, GWEN_GUI_PASSWORD_STATUS status, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_GETSYNCIO_FN)(GWEN_GUI *gui, const char *url, const char *defaultProto, int defaultPort, GWEN_SYNCIO **pSio)
int GWENHYWFAR_CB(* GWEN_GUI_PRINT_FN)(GWEN_GUI *gui, const char *docTitle, const char *docType, const char *descr, const char *text, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_INPUTBOX_FN)(GWEN_GUI *gui, uint32_t flags, const char *title, const char *text, char *buffer, int minLen, int maxLen, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_GET_FILENAME_FN)(GWEN_GUI *gui, const char *caption, GWEN_GUI_FILENAME_TYPE fnt, uint32_t flags, const char *patterns, GWEN_BUFFER *pathBuffer, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_CHECKCERT_FN)(GWEN_GUI *gui, const GWEN_SSLCERTDESCR *cert, GWEN_SYNCIO *sio, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_RUN_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, int timeout)
int GWENHYWFAR_CB(* GWEN_GUI_PROGRESS_LOG_FN)(GWEN_GUI *gui, uint32_t id, GWEN_LOGGER_LEVEL level, const char *text)
uint32_t GWENHYWFAR_CB(* GWEN_GUI_SHOWBOX_FN)(GWEN_GUI *gui, uint32_t flags, const char *title, const char *text, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_CLOSE_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg)
int GWENHYWFAR_CB(* GWEN_GUI_PROGRESS_END_FN)(GWEN_GUI *gui, uint32_t id)
uint32_t GWENHYWFAR_CB(* GWEN_GUI_PROGRESS_START_FN)(GWEN_GUI *gui, uint32_t progressFlags, const char *title, const char *text, uint64_t total, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_LOG_HOOK_FN)(GWEN_GUI *gui, const char *logDomain, GWEN_LOGGER_LEVEL priority, const char *s)
void GWENHYWFAR_CB(* GWEN_GUI_HIDEBOX_FN)(GWEN_GUI *gui, uint32_t id)
int GWENHYWFAR_CB(* GWEN_GUI_READ_DIALOG_PREFS_FN)(GWEN_GUI *gui, const char *groupName, const char *altName, GWEN_DB_NODE **pDb)
int GWENHYWFAR_CB(* GWEN_GUI_OPEN_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_PROGRESS_ADVANCE_FN)(GWEN_GUI *gui, uint32_t id, uint64_t progress)
int GWENHYWFAR_CB(* GWEN_GUI_WRITE_DIALOG_PREFS_FN)(GWEN_GUI *gui, const char *groupName, GWEN_DB_NODE *db)
int GWENHYWFAR_CB(* GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN)(GWEN_GUI *gui, const char *text, unsigned char *buffer, unsigned int bufLength)
int GWENHYWFAR_CB(* GWEN_GUI_PROGRESS_SETTOTAL_FN)(GWEN_GUI *gui, uint32_t id, uint64_t total)
int GWENHYWFAR_CB(* GWEN_GUI_MESSAGEBOX_FN)(GWEN_GUI *gui, uint32_t flags, const char *title, const char *text, const char *b1, const char *b2, const char *b3, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_GETPASSWORD_FN)(GWEN_GUI *gui, uint32_t flags, const char *token, const char *title, const char *text, char *buffer, int minLen, int maxLen, GWEN_GUI_PASSWORD_METHOD methodId, GWEN_DB_NODE *methodParams, uint32_t guiid)
int GWENHYWFAR_CB(* GWEN_GUI_WAITFORSOCKETS_FN)(GWEN_GUI *gui, GWEN_SOCKET_LIST2 *readSockets, GWEN_SOCKET_LIST2 *writeSockets, int msecs, uint32_t guiid)
int GWEN_Gui_CloseDialog(GWEN_DIALOG *dlg)
int GWEN_Gui_ReadDialogPrefs(const char *groupName, const char *altName, GWEN_DB_NODE **pDb)
GWEN_GUI_RUN_DIALOG_FN GWEN_Gui_SetRunDialogFn(GWEN_GUI *gui, GWEN_GUI_RUN_DIALOG_FN f)
GWEN_GUI_GET_FILENAME_FN GWEN_Gui_SetGetFileNameFn(GWEN_GUI *gui, GWEN_GUI_GET_FILENAME_FN f)
GWEN_GUI_PROGRESS_START_FN GWEN_Gui_SetProgressStartFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_START_FN f)
GWEN_GUI_OPEN_DIALOG_FN GWEN_Gui_SetOpenDialogFn(GWEN_GUI *gui, GWEN_GUI_OPEN_DIALOG_FN f)
GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN GWEN_Gui_SetKeyDataFromTextOpenSslFn(GWEN_GUI *gui, GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN f)
GWEN_GUI_WAITFORSOCKETS_FN GWEN_Gui_SetWaitForSocketsFn(GWEN_GUI *gui, GWEN_GUI_WAITFORSOCKETS_FN f)
GWEN_GUI_CLOSE_DIALOG_FN GWEN_Gui_SetCloseDialogFn(GWEN_GUI *gui, GWEN_GUI_CLOSE_DIALOG_FN f)
GWEN_GUI_CHECKCERT_FN GWEN_Gui_SetCheckCertFn(GWEN_GUI *gui, GWEN_GUI_CHECKCERT_FN f)
int GWEN_Gui_WriteDialogPrefs(const char *groupName, GWEN_DB_NODE *db)
int GWEN_Gui_InputBox(uint32_t flags, const char *title, const char *text, char *buffer, int minLen, int maxLen, uint32_t guiid)
uint32_t GWEN_Gui_ProgressStart(uint32_t progressFlags, const char *title, const char *text, uint64_t total, uint32_t guiid)
uint32_t GWEN_Gui_ShowBox(uint32_t flags, const char *title, const char *text, uint32_t guiid)
int GWEN_Gui_RunDialog(GWEN_DIALOG *dlg, int untilEnd)
GWEN_GUI_GETPASSWORD_FN GWEN_Gui_SetGetPasswordFn(GWEN_GUI *gui, GWEN_GUI_GETPASSWORD_FN f)
int GWEN_Gui_ProgressEnd(uint32_t id)
int GWEN_Gui_GetSyncIo(const char *url, const char *defaultProto, int defaultPort, GWEN_SYNCIO **pSio)
GWEN_GUI_WRITE_DIALOG_PREFS_FN GWEN_Gui_SetWriteDialogPrefsFn(GWEN_GUI *gui, GWEN_GUI_WRITE_DIALOG_PREFS_FN f)
int GWEN_Gui_MessageBox(uint32_t flags, const char *title, const char *text, const char *b1, const char *b2, const char *b3, uint32_t guiid)
GWEN_GUI_SETPASSWORDSTATUS_FN GWEN_Gui_SetSetPasswordStatusFn(GWEN_GUI *gui, GWEN_GUI_SETPASSWORDSTATUS_FN f)
GWEN_GUI_READ_DIALOG_PREFS_FN GWEN_Gui_SetReadDialogPrefsFn(GWEN_GUI *gui, GWEN_GUI_READ_DIALOG_PREFS_FN f)
void GWEN_Gui_HideBox(uint32_t id)
GWEN_GUI_EXEC_DIALOG_FN GWEN_Gui_SetExecDialogFn(GWEN_GUI *gui, GWEN_GUI_EXEC_DIALOG_FN f)
int GWEN_Gui_ProgressAdvance(uint32_t id, uint32_t progress)
GWEN_GUI_LOG_HOOK_FN GWEN_Gui_SetLogHookFn(GWEN_GUI *gui, GWEN_GUI_LOG_HOOK_FN f)
int GWEN_Gui_Print(const char *docTitle, const char *docType, const char *descr, const char *text, uint32_t guiid)
int GWEN_Gui_LogHook(const char *logDomain, GWEN_LOGGER_LEVEL priority, const char *s)
int GWEN_Gui_WaitForSockets(GWEN_SOCKET_LIST2 *readSockets, GWEN_SOCKET_LIST2 *writeSockets, uint32_t guiid, int msecs)
GWEN_GUI_PRINT_FN GWEN_Gui_SetPrintFn(GWEN_GUI *gui, GWEN_GUI_PRINT_FN f)
GWEN_GUI_PROGRESS_ADVANCE_FN GWEN_Gui_SetProgressAdvanceFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_ADVANCE_FN f)
int GWEN_Gui_GetFileName(const char *caption, GWEN_GUI_FILENAME_TYPE fnt, uint32_t flags, const char *patterns, GWEN_BUFFER *pathBuffer, uint32_t guiid)
int GWEN_Gui_KeyDataFromText_OpenSSL(const char *text, unsigned char *buffer, unsigned int bufLength)
GWEN_GUI_PROGRESS_END_FN GWEN_Gui_SetProgressEndFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_END_FN f)
GWEN_GUI_PROGRESS_LOG_FN GWEN_Gui_SetProgressLogFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_LOG_FN f)
int GWEN_Gui_ProgressLog(uint32_t id, GWEN_LOGGER_LEVEL level, const char *text)
GWEN_GUI_GETSYNCIO_FN GWEN_Gui_SetGetSyncIoFn(GWEN_GUI *gui, GWEN_GUI_GETSYNCIO_FN f)
GWEN_GUI_HIDEBOX_FN GWEN_Gui_SetHideBoxFn(GWEN_GUI *gui, GWEN_GUI_HIDEBOX_FN f)
int GWEN_Gui_ExecDialog(GWEN_DIALOG *dlg, uint32_t guiid)
int GWEN_Gui_OpenDialog(GWEN_DIALOG *dlg, uint32_t guiid)
int GWEN_Gui_ProgressSetTotal(uint32_t id, uint64_t total)
GWEN_GUI_INPUTBOX_FN GWEN_Gui_SetInputBoxFn(GWEN_GUI *gui, GWEN_GUI_INPUTBOX_FN f)
GWEN_GUI_SHOWBOX_FN GWEN_Gui_SetShowBoxFn(GWEN_GUI *gui, GWEN_GUI_SHOWBOX_FN f)
GWEN_GUI_PROGRESS_SETTOTAL_FN GWEN_Gui_SetProgressSetTotalFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_SETTOTAL_FN f)
int GWEN_Gui_ProgressLog2(uint32_t id, GWEN_LOGGER_LEVEL level, const char *fmt,...)
GWEN_GUI_MESSAGEBOX_FN GWEN_Gui_SetMessageBoxFn(GWEN_GUI *gui, GWEN_GUI_MESSAGEBOX_FN f)
#define GWEN_TIMEOUT_FOREVER
#define GWEN_TIMEOUT_NONE
struct GWEN_SOCKETSETSTRUCT GWEN_SOCKETSET
struct GWEN_SOCKET GWEN_SOCKET
GWEN_SOCKET * GWEN_Socket_List2Iterator_Next(GWEN_SOCKET_LIST2_ITERATOR *li)
struct GWEN_SOCKET_LIST2_ITERATOR GWEN_SOCKET_LIST2_ITERATOR
void GWEN_Socket_List2Iterator_free(GWEN_SOCKET_LIST2_ITERATOR *li)
struct GWEN_SOCKET_LIST2 GWEN_SOCKET_LIST2
GWEN_SOCKET * GWEN_Socket_List2Iterator_Data(GWEN_SOCKET_LIST2_ITERATOR *li)
GWEN_SOCKET_LIST2_ITERATOR * GWEN_Socket_List2_First(GWEN_SOCKET_LIST2 *l)
struct GWEN_SYNCIO GWEN_SYNCIO