/usr/include/gwenhywfar4/gwenhywfar/gui_be.h is in libgwenhywfar-core-dev 4.20.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 | /***************************************************************************
begin : Tue Oct 02 2002
copyright : (C) 2002-2017 by Martin Preuss
email : martin@libchipcard.de
***************************************************************************
* *
* This library is free software; you can redistribute it and/or *
* modify it under the terms of the GNU Lesser General Public *
* License as published by the Free Software Foundation; either *
* version 2.1 of the License, or (at your option) any later version. *
* *
* This library is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
* Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU Lesser General Public *
* License along with this library; if not, write to the Free Software *
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, *
* MA 02111-1307 USA *
* *
***************************************************************************/
#ifndef GWENHYWFAR_GUI_GUI_BE_H
#define GWENHYWFAR_GUI_GUI_BE_H
#include <gwenhywfar/gui.h>
#ifdef __cplusplus
extern "C" {
#endif
GWENHYWFAR_API
void GWEN_Gui_SetName(GWEN_GUI *gui, const char *name);
/** @name Helper Functions
*
*/
/*@{*/
/**
* This function converts the given text from UTF-8 to the character
* set selected by @ref GWEN_Gui_SetCharSet before writing it to the
* given buffer.
*/
GWENHYWFAR_API
int GWEN_Gui_ConvertFromUtf8(const GWEN_GUI *gui, const char *text, int len, GWEN_BUFFER *tbuf);
/**
* This function converts the given text from UTF-8 to the character
* set selected by @ref GWEN_Gui_SetCharSet before writing it to the
* specified stream. It is intended to be used instead of fprintf()
* for all output to the terminal (stdout, stderr).
*/
GWENHYWFAR_API
int GWEN_Gui_StdPrintf(const GWEN_GUI *gui, FILE *stream,
const char *fmt, ...) GWEN_FORMAT(printf, 3, 4);
/**
* This function extracts the raw text (i.e. the part outside a HTML
* element) so it can, for example, be fed to @ref GWEN_Gui_StdPrintf
* afterwards.
*/
GWENHYWFAR_API
void GWEN_Gui_GetRawText(const GWEN_GUI *gui, const char *text, GWEN_BUFFER *tbuf);
/*@}*/
/** @name Dialog Related Functions
*
*/
/*@{*/
/**
* The implementation should call this function if it implements the dialog framework.
* It sets the obsoleted callbacks to use the GWEN_DIALOG framework.
*/
GWENHYWFAR_API
void GWEN_Gui_UseDialogs(GWEN_GUI *gui);
/**
* Let the application read a GWEN_DB. This function is used by the platform-independent
* dialogs to read GUI settings (e.g. width, height etc).
*
* This is implemented by AB_Gui, an extension of the GWEN_GUI in AqBanking using
* AqBanking's shared configuration module to load/save dialog settings.
*
* @return 0 on success, error code on error
* @param groupName name of the db to load
* @param altName alternative name in case there is no group of the name @b groupName
* @param pDb pointer to receive the GWEN_DB read
*/
GWENHYWFAR_API
int GWEN_Gui_ReadDialogPrefs(const char *groupName,
const char *altName,
GWEN_DB_NODE **pDb);
/**
* Let the application write a GWEN_DB. This function is used by the platform-independent
* dialogs to write GUI settings (e.g. width, height etc).
*
* @return 0 on success, error code on error
* @param groupName name of the db to save
* @param pDb pointer to receive the GWEN_DB read
*/
GWENHYWFAR_API
int GWEN_Gui_WriteDialogPrefs(const char *groupName,
GWEN_DB_NODE *db);
/*@}*/
/** @name Prototypes For Standard Virtual User Interaction Functions
*
*/
/*@{*/
/**
* This function is used to make the application print something.
* The same restrictions noted above apply to the text parameter (utf-8,
* maybe containing HTML).
* Please see @ref GWEN_Gui_Print for details.
*/
typedef 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);
/**
* This function retrieves a pasword or pin.
*/
typedef 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);
/**
* This functions sets the status of a password.
*/
typedef int GWENHYWFAR_CB (*GWEN_GUI_SETPASSWORDSTATUS_FN)(GWEN_GUI *gui,
const char *token,
const char *pin,
GWEN_GUI_PASSWORD_STATUS status,
uint32_t guiid);
/**
* This function is called at the beginning of @ref GWEN_Logger_Log() and my be used
* to intercept log messages in general (e.g. to divert them to an internal
* log mechanism of the application).
* @return 1 if the message has been handled by the application,
* 0 if the message should be handled as usual
* @param gui pointer to the gui which receives this call
* @param logDomain name of the logging domain (e.g. GWEN_LOGDOMAIN)
* @param priority see @ref GWEN_Logger_Log
* @param s the message to be logged (this is the raw message from the caller)
*
*/
typedef int GWENHYWFAR_CB (*GWEN_GUI_LOG_HOOK_FN)(GWEN_GUI *gui,
const char *logDomain,
GWEN_LOGGER_LEVEL priority, const char *s);
/*@}*/
/** @name Prototypes For Virtual Helper Functions
*
*/
/*@{*/
typedef int GWENHYWFAR_CB (*GWEN_GUI_WAITFORSOCKETS_FN)(GWEN_GUI *gui,
GWEN_SOCKET_LIST2 *readSockets,
GWEN_SOCKET_LIST2 *writeSockets,
int msecs,
uint32_t guiid);
typedef int GWENHYWFAR_CB (*GWEN_GUI_CHECKCERT_FN)(GWEN_GUI *gui,
const GWEN_SSLCERTDESCR *cert,
GWEN_SYNCIO *sio,
uint32_t guiid);
typedef 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);
typedef int GWENHYWFAR_CB (*GWEN_GUI_GETSYNCIO_FN)(GWEN_GUI *gui,
const char *url,
const char *defaultProto,
int defaultPort,
GWEN_SYNCIO **pSio);
typedef int GWENHYWFAR_CB (*GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN)(GWEN_GUI *gui,
const char *text,
unsigned char *buffer,
unsigned int bufLength);
/*@}*/
/** @name Prototypes For Virtual Dialog Functions
*
*/
/*@{*/
typedef int GWENHYWFAR_CB (*GWEN_GUI_EXEC_DIALOG_FN)(GWEN_GUI *gui,
GWEN_DIALOG *dlg,
uint32_t guiid);
typedef int GWENHYWFAR_CB (*GWEN_GUI_OPEN_DIALOG_FN)(GWEN_GUI *gui,
GWEN_DIALOG *dlg,
uint32_t guiid);
typedef int GWENHYWFAR_CB (*GWEN_GUI_CLOSE_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg);
typedef int GWENHYWFAR_CB (*GWEN_GUI_RUN_DIALOG_FN)(GWEN_GUI *gui, GWEN_DIALOG *dlg, int timeout);
typedef int GWENHYWFAR_CB (*GWEN_GUI_READ_DIALOG_PREFS_FN)(GWEN_GUI *gui,
const char *groupName,
const char *altName,
GWEN_DB_NODE **pDb);
typedef int GWENHYWFAR_CB (*GWEN_GUI_WRITE_DIALOG_PREFS_FN)(GWEN_GUI *gui,
const char *groupName,
GWEN_DB_NODE *db);
/*@}*/
/** @name Setters For Virtual User Interaction Functions
*
* The functions in this group set the corresponding callback function
* pointers.
*/
/*@{*/
GWENHYWFAR_API
GWEN_GUI_PRINT_FN GWEN_Gui_SetPrintFn(GWEN_GUI *gui, GWEN_GUI_PRINT_FN f);
GWENHYWFAR_API
GWEN_GUI_GETPASSWORD_FN GWEN_Gui_SetGetPasswordFn(GWEN_GUI *gui, GWEN_GUI_GETPASSWORD_FN f);
GWENHYWFAR_API
GWEN_GUI_SETPASSWORDSTATUS_FN GWEN_Gui_SetSetPasswordStatusFn(GWEN_GUI *gui, GWEN_GUI_SETPASSWORDSTATUS_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_WAITFORSOCKETS_FN GWEN_Gui_SetWaitForSocketsFn(GWEN_GUI *gui, GWEN_GUI_WAITFORSOCKETS_FN f);
GWENHYWFAR_API
GWEN_GUI_CHECKCERT_FN GWEN_Gui_SetCheckCertFn(GWEN_GUI *gui, GWEN_GUI_CHECKCERT_FN f);
GWENHYWFAR_API
GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN GWEN_Gui_SetKeyDataFromTextOpenSslFn(GWEN_GUI *gui,
GWEN_GUI_KEYDATAFROMTEXT_OPENSSL_FN f);
GWENHYWFAR_API
GWEN_GUI_EXEC_DIALOG_FN GWEN_Gui_SetExecDialogFn(GWEN_GUI *gui, GWEN_GUI_EXEC_DIALOG_FN f);
GWENHYWFAR_API
GWEN_GUI_OPEN_DIALOG_FN GWEN_Gui_SetOpenDialogFn(GWEN_GUI *gui, GWEN_GUI_OPEN_DIALOG_FN f);
GWENHYWFAR_API
GWEN_GUI_CLOSE_DIALOG_FN GWEN_Gui_SetCloseDialogFn(GWEN_GUI *gui, GWEN_GUI_CLOSE_DIALOG_FN f);
GWENHYWFAR_API
GWEN_GUI_RUN_DIALOG_FN GWEN_Gui_SetRunDialogFn(GWEN_GUI *gui, GWEN_GUI_RUN_DIALOG_FN f);
GWENHYWFAR_API
GWEN_GUI_READ_DIALOG_PREFS_FN GWEN_Gui_SetReadDialogPrefsFn(GWEN_GUI *gui,
GWEN_GUI_READ_DIALOG_PREFS_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_GET_FILENAME_FN GWEN_Gui_SetGetFileNameFn(GWEN_GUI *gui, GWEN_GUI_GET_FILENAME_FN f);
GWENHYWFAR_API
GWEN_GUI_GETSYNCIO_FN GWEN_Gui_SetGetSyncIoFn(GWEN_GUI *gui, GWEN_GUI_GETSYNCIO_FN f);
/*@}*/
/** @name Prototypes For Virtual Lowlevel User Interaction Functions
*
* Please note that these virtual functions are now obsolete
* since the dialog framework is now able to handle them.
*
* If these functions are unchanged then the current dialog framework implementation
* will handle them. Currently there are implementations for FOX1.6, QT3 and QT4.
*/
/*@{*/
/**
* Please see @ref GWEN_Gui_MessageBox for details.
*
*/
typedef 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);
/**
* Please see @ref GWEN_Gui_InputBox for details.
*
*/
typedef 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);
/**
* Please see @ref GWEN_Gui_ShowBox for details.
*
*/
typedef uint32_t (*GWEN_GUI_SHOWBOX_FN)(GWEN_GUI *gui,
uint32_t flags,
const char *title,
const char *text,
uint32_t guiid);
/**
* Please see @ref GWEN_Gui_HideBox for details.
*
*/
typedef void (*GWEN_GUI_HIDEBOX_FN)(GWEN_GUI *gui, uint32_t id);
/**
* Please see @ref GWEN_Gui_ProgressStart for details.
*
*/
typedef 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);
/**
* Please see @ref GWEN_Gui_ProgressAdvance for details.
*
*/
typedef int (*GWEN_GUI_PROGRESS_ADVANCE_FN)(GWEN_GUI *gui,
uint32_t id,
uint64_t progress);
/**
* Please see @ref GWEN_Gui_ProgressSetTotal for details.
*
*/
typedef int (*GWEN_GUI_PROGRESS_SETTOTAL_FN)(GWEN_GUI *gui,
uint32_t id,
uint64_t total);
/**
* Please see @ref GWEN_Gui_ProgressLog for details.
*
*/
typedef int (*GWEN_GUI_PROGRESS_LOG_FN)(GWEN_GUI *gui,
uint32_t id,
GWEN_LOGGER_LEVEL level,
const char *text);
/**
* Please see @ref GWEN_Gui_ProgressEnd for details.
*
*/
typedef int (*GWEN_GUI_PROGRESS_END_FN)(GWEN_GUI *gui, uint32_t id);
/*@}*/
/** @name Obsolete Setters For Virtual User Interaction Functions
*
* These are obsoleted by the GWEN_DIALOG framework.
*
* If your GWEN_GUI implementation supports the GWEN_DIALOG framework (as
* the provided FOX16, QT3 and QT4 implementations do) it should call
* @ref GWEN_Gui_UseDialogs to make GWEN_GUI uses platform independent
* dialogs for the functions in this group.
*/
/*@{*/
GWENHYWFAR_API
GWEN_GUI_MESSAGEBOX_FN GWEN_Gui_SetMessageBoxFn(GWEN_GUI *gui,
GWEN_GUI_MESSAGEBOX_FN f);
GWENHYWFAR_API
GWEN_GUI_INPUTBOX_FN GWEN_Gui_SetInputBoxFn(GWEN_GUI *gui,
GWEN_GUI_INPUTBOX_FN f);
GWENHYWFAR_API
GWEN_GUI_SHOWBOX_FN GWEN_Gui_SetShowBoxFn(GWEN_GUI *gui,
GWEN_GUI_SHOWBOX_FN f);
GWENHYWFAR_API
GWEN_GUI_HIDEBOX_FN GWEN_Gui_SetHideBoxFn(GWEN_GUI *gui,
GWEN_GUI_HIDEBOX_FN f);
GWENHYWFAR_API
GWEN_GUI_PROGRESS_START_FN GWEN_Gui_SetProgressStartFn(GWEN_GUI *gui,
GWEN_GUI_PROGRESS_START_FN f);
GWENHYWFAR_API
GWEN_GUI_PROGRESS_ADVANCE_FN GWEN_Gui_SetProgressAdvanceFn(GWEN_GUI *gui,
GWEN_GUI_PROGRESS_ADVANCE_FN f);
GWENHYWFAR_API
GWEN_GUI_PROGRESS_SETTOTAL_FN GWEN_Gui_SetProgressSetTotalFn(GWEN_GUI *gui,
GWEN_GUI_PROGRESS_SETTOTAL_FN f);
GWENHYWFAR_API
GWEN_GUI_PROGRESS_LOG_FN GWEN_Gui_SetProgressLogFn(GWEN_GUI *gui,
GWEN_GUI_PROGRESS_LOG_FN f);
GWENHYWFAR_API
GWEN_GUI_PROGRESS_END_FN GWEN_Gui_SetProgressEndFn(GWEN_GUI *gui,
GWEN_GUI_PROGRESS_END_FN f);
/*@}*/
#ifdef __cplusplus
}
#endif
#endif
|