gwenhywfar  4.10.0beta
gui_be.h
Go to the documentation of this file.
1 /***************************************************************************
2  begin : Tue Oct 02 2002
3  copyright : (C) 2002-2010 by Martin Preuss
4  email : martin@libchipcard.de
5 
6  ***************************************************************************
7  * *
8  * This library is free software; you can redistribute it and/or *
9  * modify it under the terms of the GNU Lesser General Public *
10  * License as published by the Free Software Foundation; either *
11  * version 2.1 of the License, or (at your option) any later version. *
12  * *
13  * This library is distributed in the hope that it will be useful, *
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
16  * Lesser General Public License for more details. *
17  * *
18  * You should have received a copy of the GNU Lesser General Public *
19  * License along with this library; if not, write to the Free Software *
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, *
21  * MA 02111-1307 USA *
22  * *
23  ***************************************************************************/
24 
25 #ifndef GWENHYWFAR_GUI_GUI_BE_H
26 #define GWENHYWFAR_GUI_GUI_BE_H
27 
28 
29 #include <gwenhywfar/gui.h>
30 
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 
37 
39 void GWEN_Gui_SetName(GWEN_GUI *gui, const char *name);
40 
41 
47 int GWEN_Gui_ConvertFromUtf8(const GWEN_GUI *gui,
48  const char *text,
49  int len,
50  GWEN_BUFFER *tbuf);
51 
57 void GWEN_Gui_GetRawText(const GWEN_GUI *gui, const char *text, GWEN_BUFFER *tbuf);
58 
59 
60 
61 
66 
67 
75  const char *docTitle,
76  const char *docType,
77  const char *descr,
78  const char *text,
79  uint32_t guiid);
80 
85  uint32_t flags,
86  const char *token,
87  const char *title,
88  const char *text,
89  char *buffer,
90  int minLen,
91  int maxLen,
92  uint32_t guiid);
93 
98  const char *token,
99  const char *pin,
101  uint32_t guiid);
102 
103 
117  const char *logDomain,
118  GWEN_LOGGER_LEVEL priority, const char *s);
119 
121  GWEN_SOCKET_LIST2 *readSockets,
122  GWEN_SOCKET_LIST2 *writeSockets,
123  int msecs,
124  uint32_t guiid);
125 
127  const GWEN_SSLCERTDESCR *cert,
128  GWEN_SYNCIO *sio,
129  uint32_t guiid);
130 
132  const char *text,
133  unsigned char *buffer,
134  unsigned int bufLength);
135 
137  GWEN_DIALOG *dlg,
138  uint32_t guiid);
139 
140 
142  GWEN_DIALOG *dlg,
143  uint32_t guiid);
144 
146 
147 typedef int GWENHYWFAR_CB (*GWEN_GUI_RUN_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, int timeout);
148 
149 
150 typedef int GWENHYWFAR_CB (*GWEN_GUI_READ_DIALOG_PREFS_FN)(GWEN_GUI *gui, const char *groupName, const char *altName,
151  GWEN_DB_NODE **pDb);
152 
153 typedef int GWENHYWFAR_CB (*GWEN_GUI_WRITE_DIALOG_PREFS_FN)(GWEN_GUI *gui, const char *groupName,
154  GWEN_DB_NODE *db);
155 
156 
158  const char *caption,
160  uint32_t flags,
161  const char *patterns,
162  GWEN_BUFFER *pathBuffer,
163  uint32_t guiid);
164 
165 typedef int GWENHYWFAR_CB (*GWEN_GUI_GETSYNCIO_FN)(GWEN_GUI *gui, const char *url,
166  const char *defaultProto,
167  int defaultPort,
168  GWEN_SYNCIO **pSio);
169 
170 
183 
184 
187 
190 
194 
195 
198 
199 
202 
205 
210 
213 
214 
217 
220 
223 
224 
228 
232 
233 
236 
237 
240 
241 
252 
258 void GWEN_Gui_UseDialogs(GWEN_GUI *gui);
259 
260 
277 int GWEN_Gui_ReadDialogPrefs(const char *groupName,
278  const char *altName,
279  GWEN_DB_NODE **pDb);
280 
292 int GWEN_Gui_WriteDialogPrefs(const char *groupName,
293  GWEN_DB_NODE *db);
294 
295 
314 typedef int (*GWEN_GUI_MESSAGEBOX_FN)(GWEN_GUI *gui,
315  uint32_t flags,
316  const char *title,
317  const char *text,
318  const char *b1,
319  const char *b2,
320  const char *b3,
321  uint32_t guiid);
322 
327 typedef int (*GWEN_GUI_INPUTBOX_FN)(GWEN_GUI *gui,
328  uint32_t flags,
329  const char *title,
330  const char *text,
331  char *buffer,
332  int minLen,
333  int maxLen,
334  uint32_t guiid);
335 
340 typedef uint32_t (*GWEN_GUI_SHOWBOX_FN)(GWEN_GUI *gui,
341  uint32_t flags,
342  const char *title,
343  const char *text,
344  uint32_t guiid);
345 
350 typedef void (*GWEN_GUI_HIDEBOX_FN)(GWEN_GUI *gui, uint32_t id);
351 
356 typedef uint32_t
358  uint32_t progressFlags,
359  const char *title,
360  const char *text,
361  uint64_t total,
362  uint32_t guiid);
363 
369  uint32_t id,
370  uint64_t progress);
371 
372 
378  uint32_t id,
379  uint64_t total);
380 
385 typedef int (*GWEN_GUI_PROGRESS_LOG_FN)(GWEN_GUI *gui,
386  uint32_t id,
387  GWEN_LOGGER_LEVEL level,
388  const char *text);
393 typedef int (*GWEN_GUI_PROGRESS_END_FN)(GWEN_GUI *gui, uint32_t id);
408 
421 
425 
429 
433 
437 
441 
442 
446 #ifdef __cplusplus
447 }
448 #endif
449 
450 
451 #endif
452 
struct GWEN_SSLCERTDESCR GWEN_SSLCERTDESCR
int GWENHYWFAR_CB(* GWEN_GUI_READ_DIALOG_PREFS_FN)(GWEN_GUI *gui, const char *groupName, const char *altName, GWEN_DB_NODE **pDb)
Definition: gui_be.h:150
GWENHYWFAR_API GWEN_GUI_OPEN_DIALOG_FN GWEN_Gui_SetOpenDialogFn(GWEN_GUI *gui, GWEN_GUI_OPEN_DIALOG_FN f)
GWENHYWFAR_API GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN GWEN_Gui_SetKeyDataFromTextOpenSslFn(GWEN_GUI *gui, GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN f)
struct GWEN_DB_NODE GWEN_DB_NODE
Definition: db.h:228
struct GWEN_SOCKET_LIST2 GWEN_SOCKET_LIST2
Definition: listdoc.h:772
GWENHYWFAR_API GWEN_GUI_CHECKCERT_FN GWEN_Gui_SetCheckCertFn(GWEN_GUI *gui, GWEN_GUI_CHECKCERT_FN f)
int GWENHYWFAR_CB(* GWEN_GUI_WAITFORSOCKETS_FN)(GWEN_GUI *gui, GWEN_SOCKET_LIST2 *readSockets, GWEN_SOCKET_LIST2 *writeSockets, int msecs, uint32_t guiid)
Definition: gui_be.h:120
GWENHYWFAR_API int GWEN_Gui_ConvertFromUtf8(const GWEN_GUI *gui, const char *text, int len, GWEN_BUFFER *tbuf)
GWEN_LOGGER_LEVEL
Definition: logger.h:64
int(* GWEN_GUI_PROGRESS_SETTOTAL_FN)(GWEN_GUI *gui, uint32_t id, uint64_t total)
Definition: gui_be.h:377
int GWENHYWFAR_CB(* GWEN_GUI_SETPASSWORDSTATUS_FN)(GWEN_GUI *gui, const char *token, const char *pin, GWEN_GUI_PASSWORD_STATUS status, uint32_t guiid)
Definition: gui_be.h:97
GWENHYWFAR_API GWEN_GUI_GET_FILENAME_FN GWEN_Gui_SetGetFileNameFn(GWEN_GUI *gui, GWEN_GUI_GET_FILENAME_FN f)
void(* GWEN_GUI_HIDEBOX_FN)(GWEN_GUI *gui, uint32_t id)
Definition: gui_be.h:350
GWENHYWFAR_API GWEN_GUI_EXEC_DIALOG_FN GWEN_Gui_SetExecDialogFn(GWEN_GUI *gui, GWEN_GUI_EXEC_DIALOG_FN f)
int(* GWEN_GUI_PROGRESS_ADVANCE_FN)(GWEN_GUI *gui, uint32_t id, uint64_t progress)
Definition: gui_be.h:368
GWENHYWFAR_API GWEN_GUI_GETPASSWORD_FN GWEN_Gui_SetGetPasswordFn(GWEN_GUI *gui, GWEN_GUI_GETPASSWORD_FN f)
uint32_t(* GWEN_GUI_SHOWBOX_FN)(GWEN_GUI *gui, uint32_t flags, const char *title, const char *text, uint32_t guiid)
Definition: gui_be.h:340
struct GWEN_DIALOG GWEN_DIALOG
Definition: dialog.h:54
int GWENHYWFAR_CB(* GWEN_GUI_CLOSE_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg)
Definition: gui_be.h:145
GWENHYWFAR_API GWEN_GUI_SHOWBOX_FN GWEN_Gui_SetShowBoxFn(GWEN_GUI *gui, GWEN_GUI_SHOWBOX_FN f)
int(* 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)
Definition: gui_be.h:314
GWENHYWFAR_API void GWEN_Gui_UseDialogs(GWEN_GUI *gui)
GWEN_GUI_FILENAME_TYPE
Definition: gui.h:803
GWEN_GUI_PASSWORD_STATUS
Definition: gui.h:323
struct GWEN_SYNCIO GWEN_SYNCIO
Definition: syncio.h:41
GWENHYWFAR_API GWEN_GUI_PROGRESS_START_FN GWEN_Gui_SetProgressStartFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_START_FN f)
#define GWENHYWFAR_CB
Definition: gwenhywfarapi.h:89
GWENHYWFAR_API void GWEN_Gui_SetName(GWEN_GUI *gui, const char *name)
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, uint32_t guiid)
Definition: gui_be.h:84
GWENHYWFAR_API int GWEN_Gui_WriteDialogPrefs(const char *groupName, GWEN_DB_NODE *db)
int GWENHYWFAR_CB(* GWEN_GUI_EXEC_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, uint32_t guiid)
Definition: gui_be.h:136
GWENHYWFAR_API GWEN_GUI_CLOSE_DIALOG_FN GWEN_Gui_SetCloseDialogFn(GWEN_GUI *gui, GWEN_GUI_CLOSE_DIALOG_FN f)
GWENHYWFAR_API GWEN_GUI_LOG_HOOK_FN GWEN_Gui_SetLogHookFn(GWEN_GUI *gui, GWEN_GUI_LOG_HOOK_FN f)
GWENHYWFAR_API GWEN_GUI_WRITE_DIALOG_PREFS_FN GWEN_Gui_SetWriteDialogPrefsFn(GWEN_GUI *gui, GWEN_GUI_WRITE_DIALOG_PREFS_FN f)
GWENHYWFAR_API GWEN_GUI_RUN_DIALOG_FN GWEN_Gui_SetRunDialogFn(GWEN_GUI *gui, GWEN_GUI_RUN_DIALOG_FN f)
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)
Definition: gui_be.h:157
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
Definition: buffer.h:41
#define GWENHYWFAR_API
Definition: gwenhywfarapi.h:67
GWENHYWFAR_API GWEN_GUI_PROGRESS_LOG_FN GWEN_Gui_SetProgressLogFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_LOG_FN f)
GWENHYWFAR_API GWEN_GUI_GETSYNCIO_FN GWEN_Gui_SetGetSyncIoFn(GWEN_GUI *gui, GWEN_GUI_GETSYNCIO_FN f)
int GWENHYWFAR_CB(* GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN)(GWEN_GUI *gui, const char *text, unsigned char *buffer, unsigned int bufLength)
Definition: gui_be.h:131
int GWENHYWFAR_CB(* GWEN_GUI_LOG_HOOK_FN)(GWEN_GUI *gui, const char *logDomain, GWEN_LOGGER_LEVEL priority, const char *s)
Definition: gui_be.h:116
GWENHYWFAR_API GWEN_GUI_PROGRESS_ADVANCE_FN GWEN_Gui_SetProgressAdvanceFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_ADVANCE_FN f)
int GWENHYWFAR_CB(* GWEN_GUI_WRITE_DIALOG_PREFS_FN)(GWEN_GUI *gui, const char *groupName, GWEN_DB_NODE *db)
Definition: gui_be.h:153
GWENHYWFAR_API void GWEN_Gui_GetRawText(const GWEN_GUI *gui, const char *text, GWEN_BUFFER *tbuf)
int(* GWEN_GUI_PROGRESS_END_FN)(GWEN_GUI *gui, uint32_t id)
Definition: gui_be.h:393
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)
Definition: gui_be.h:74
GWENHYWFAR_API GWEN_GUI_INPUTBOX_FN GWEN_Gui_SetInputBoxFn(GWEN_GUI *gui, GWEN_GUI_INPUTBOX_FN f)
int(* 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)
Definition: gui_be.h:327
int GWENHYWFAR_CB(* GWEN_GUI_CHECKCERT_FN)(GWEN_GUI *gui, const GWEN_SSLCERTDESCR *cert, GWEN_SYNCIO *sio, uint32_t guiid)
Definition: gui_be.h:126
GWENHYWFAR_API GWEN_GUI_READ_DIALOG_PREFS_FN GWEN_Gui_SetReadDialogPrefsFn(GWEN_GUI *gui, GWEN_GUI_READ_DIALOG_PREFS_FN f)
struct GWEN_GUI GWEN_GUI
Definition: gui.h:113
GWENHYWFAR_API GWEN_GUI_PRINT_FN GWEN_Gui_SetPrintFn(GWEN_GUI *gui, GWEN_GUI_PRINT_FN f)
int GWENHYWFAR_CB(* GWEN_GUI_GETSYNCIO_FN)(GWEN_GUI *gui, const char *url, const char *defaultProto, int defaultPort, GWEN_SYNCIO **pSio)
Definition: gui_be.h:165
GWENHYWFAR_API int GWEN_Gui_ReadDialogPrefs(const char *groupName, const char *altName, GWEN_DB_NODE **pDb)
int GWENHYWFAR_CB(* GWEN_GUI_RUN_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, int timeout)
Definition: gui_be.h:147
int GWENHYWFAR_CB(* GWEN_GUI_OPEN_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, uint32_t guiid)
Definition: gui_be.h:141
GWENHYWFAR_API GWEN_GUI_HIDEBOX_FN GWEN_Gui_SetHideBoxFn(GWEN_GUI *gui, GWEN_GUI_HIDEBOX_FN f)
GWENHYWFAR_API GWEN_GUI_SETPASSWORDSTATUS_FN GWEN_Gui_SetSetPasswordStatusFn(GWEN_GUI *gui, GWEN_GUI_SETPASSWORDSTATUS_FN f)
GWENHYWFAR_API GWEN_GUI_PROGRESS_END_FN GWEN_Gui_SetProgressEndFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_END_FN f)
GWENHYWFAR_API GWEN_GUI_WAITFORSOCKETS_FN GWEN_Gui_SetWaitForSocketsFn(GWEN_GUI *gui, GWEN_GUI_WAITFORSOCKETS_FN f)
GWENHYWFAR_API GWEN_GUI_PROGRESS_SETTOTAL_FN GWEN_Gui_SetProgressSetTotalFn(GWEN_GUI *gui, GWEN_GUI_PROGRESS_SETTOTAL_FN f)
int(* GWEN_GUI_PROGRESS_LOG_FN)(GWEN_GUI *gui, uint32_t id, GWEN_LOGGER_LEVEL level, const char *text)
Definition: gui_be.h:385
GWENHYWFAR_API GWEN_GUI_MESSAGEBOX_FN GWEN_Gui_SetMessageBoxFn(GWEN_GUI *gui, GWEN_GUI_MESSAGEBOX_FN f)
uint32_t(* GWEN_GUI_PROGRESS_START_FN)(GWEN_GUI *gui, uint32_t progressFlags, const char *title, const char *text, uint64_t total, uint32_t guiid)
Definition: gui_be.h:357