dialog.h File Reference
`#include <gwenhywfar/inherit.h>`
`#include <gwenhywfar/list1.h>`
`#include <gwenhywfar/list2.h>`
`#include <gwenhywfar/xml.h>`
`#include <gwenhywfar/db.h>`

Go to the source code of this file.

## Macros

#define | GWEN_WIDGET_FLAGS_DECOR_CLOSE 0x00400000L
#define | GWEN_WIDGET_FLAGS_DECOR_MAXIMIZE 0x00800000L
#define | GWEN_WIDGET_FLAGS_DECOR_MENU 0x00200000L
#define | GWEN_WIDGET_FLAGS_DECOR_MINIMIZE 0x01000000L
#define | GWEN_WIDGET_FLAGS_DECOR_SHRINKABLE 0x04000000L
#define | GWEN_WIDGET_FLAGS_DECOR_STRETCHABLE 0x02000000L
#define | GWEN_WIDGET_FLAGS_DEFAULT_WIDGET 0x08000000L
#define | GWEN_WIDGET_FLAGS_EQUAL_HEIGHT 0x00020000L
#define | GWEN_WIDGET_FLAGS_EQUAL_WIDTH 0x00040000L
#define | GWEN_WIDGET_FLAGS_FILLX 0x80000000L
#define | GWEN_WIDGET_FLAGS_FILLY 0x40000000L
#define | GWEN_WIDGET_FLAGS_FIXED_HEIGHT 0x00080000L
#define | GWEN_WIDGET_FLAGS_FIXED_WIDTH 0x00100000L
#define | GWEN_WIDGET_FLAGS_FRAME_GROOVE 0x00000020L
#define | GWEN_WIDGET_FLAGS_FRAME_RAISED 0x00000080L
#define | GWEN_WIDGET_FLAGS_FRAME_SUNKEN 0x00000100L
#define | GWEN_WIDGET_FLAGS_FRAME_THICK 0x00000040L
#define | GWEN_WIDGET_FLAGS_HANDLE_KEYS 0x00000200L
#define | GWEN_WIDGET_FLAGS_JUSTIFY_BOTTOM 0x00002000L
#define | GWEN_WIDGET_FLAGS_JUSTIFY_CENTERX 0x00001000L
#define | GWEN_WIDGET_FLAGS_JUSTIFY_CENTERY 0x00000800L
#define | GWEN_WIDGET_FLAGS_JUSTIFY_LEFT 0x00010000L
#define | GWEN_WIDGET_FLAGS_JUSTIFY_RIGHT 0x00008000L
#define | GWEN_WIDGET_FLAGS_JUSTIFY_TOP 0x00004000L
#define | GWEN_WIDGET_FLAGS_NO_WORDWRAP 0x00000400L
#define | GWEN_WIDGET_FLAGS_NONE 0x00000000L
#define | GWEN_WIDGET_FLAGS_PASSWORD 0x10000000L
#define | GWEN_WIDGET_FLAGS_READONLY 0x20000000L

## Typedefs

typedef struct GWEN_DIALOG | GWEN_DIALOG
typedef int GWENHYWFAR_CB(* | GWEN_DIALOG_SIGNALHANDLER) (GWEN_DIALOG *dlg, GWEN_DIALOG_EVENTTYPE t, const char *sender)
typedef int GWENHYWFAR_CB(* | GWEN_DIALOG_SIGNALHANDLER2) (GWEN_DIALOG *dlg, GWEN_DIALOG_EVENTTYPE t, const char *sender, int intArg, const char *stringArg)

## Enumerations

enum | { GWEN_DialogEvent_ResultHandled =0 , GWEN_DialogEvent_ResultNotHandled , GWEN_DialogEvent_ResultAccept , GWEN_DialogEvent_ResultReject }
enum | GWEN_DIALOG_EVENTTYPE { GWEN_DialogEvent_TypeInit =0 , GWEN_DialogEvent_TypeFini , GWEN_DialogEvent_TypeValueChanged , GWEN_DialogEvent_TypeActivated , GWEN_DialogEvent_TypeEnabled , GWEN_DialogEvent_TypeDisabled , GWEN_DialogEvent_TypeClose , GWEN_DialogEvent_TypeKeyPressed , GWEN_DialogEvent_TypeKeyReleased , GWEN_DialogEvent_TypeLast }

enum

GWEN_DIALOG_PROPERTY {
GWEN_DialogProperty_None =0 , GWEN_DialogProperty_Title , GWEN_DialogProperty_Value , GWEN_DialogProperty_MinValue ,
GWEN_DialogProperty_MaxValue , GWEN_DialogProperty_Enabled , GWEN_DialogProperty_AddValue , GWEN_DialogProperty_ClearValues ,
GWEN_DialogProperty_ValueCount , GWEN_DialogProperty_ColumnWidth , GWEN_DialogProperty_Width , GWEN_DialogProperty_Height ,
GWEN_DialogProperty_SelectionMode , GWEN_DialogProperty_SelectionState , GWEN_DialogProperty_Focus , GWEN_DialogProperty_SortDirection ,
GWEN_DialogProperty_Sort , GWEN_DialogProperty_Visibility , GWEN_DialogProperty_ToolTip , GWEN_DialogProperty_WindowId ,
GWEN_DialogProperty_Unknown =-1
}

enum | GWEN_DIALOG_SELECTION_MODE { GWEN_Dialog_SelectionMode_None =0 , GWEN_Dialog_SelectionMode_Single , GWEN_Dialog_SelectionMode_Multi }
enum | GWEN_DIALOG_SORT_DIRECTION { GWEN_DialogSortDirection_None =0 , GWEN_DialogSortDirection_Up , GWEN_DialogSortDirection_Down }

## Functions

GWENHYWFAR_API void | GWEN_Dialog_AddMediaPath (GWEN_DIALOG *dlg, const char *s)
GWENHYWFAR_API void | GWEN_Dialog_AddMediaPathsFromPathManager (GWEN_DIALOG *dlg, const char *destlib, const char *pathName, const char *relPath)
GWENHYWFAR_API int | GWEN_Dialog_AddSubDialog (GWEN_DIALOG *dlg, const char *parentWidgetName, GWEN_DIALOG *subdlg)
GWENHYWFAR_API GWEN_DIALOG * | GWEN_Dialog_CreateAndLoadWithPath (const char *dialogId, const char *pmLibName, const char *pmDataDir, const char *fileName)
GWENHYWFAR_API void | GWEN_Dialog_free (GWEN_DIALOG *dlg)
GWENHYWFAR_API uint32_t | GWEN_Dialog_GetGuiId (const GWEN_DIALOG *dlg)
GWENHYWFAR_API const char * | GWEN_Dialog_GetId (const GWEN_DIALOG *dlg)
GWENHYWFAR_API GWEN_DIALOG * | GWEN_Dialog_new (const char *dialogId)
GWENHYWFAR_API int | GWEN_Dialog_ReadXml (GWEN_DIALOG *dlg, GWEN_XMLNODE *node)
GWENHYWFAR_API int | GWEN_Dialog_ReadXmlFile (GWEN_DIALOG *dlg, const char *fname)
GWENHYWFAR_API int | GWEN_Dialog_RemoveWidget (GWEN_DIALOG *dlg, const char *name)
GWENHYWFAR_API GWEN_DIALOG_SIGNALHANDLER | GWEN_Dialog_SetSignalHandler (GWEN_DIALOG *dlg, GWEN_DIALOG_SIGNALHANDLER fn)
GWENHYWFAR_API GWEN_DIALOG_SIGNALHANDLER2 | GWEN_Dialog_SetSignalHandler2 (GWEN_DIALOG *dlg, GWEN_DIALOG_SIGNALHANDLER2 fn)
Functions Available After Init Event
Functions in this group can only be called while in a GWEN_Gui_ExecDialog loop or between calls to GWEN_Gui_OpenDialog() and GWEN_Gui_CloseDialog() because these functions directly manipulate GUI widgets which are only valid in the intervals mentioned above.
GWENHYWFAR_API const char * | GWEN_Dialog_GetCharProperty (GWEN_DIALOG *dlg, const char *name, GWEN_DIALOG_PROPERTY prop, int index, const char *defaultValue)
GWENHYWFAR_API int | GWEN_Dialog_GetIntProperty (GWEN_DIALOG *dlg, const char *name, GWEN_DIALOG_PROPERTY prop, int index, int defaultValue)
GWENHYWFAR_API int | GWEN_Dialog_SetCharProperty (GWEN_DIALOG *dlg, const char *name, GWEN_DIALOG_PROPERTY prop, int index, const char *value, int doSignal)
GWENHYWFAR_API int | GWEN_Dialog_SetIntProperty (GWEN_DIALOG *dlg, const char *name, GWEN_DIALOG_PROPERTY prop, int index, int value, int doSignal)
Functions Available After Construction
These functions manipulate the descriptions of dialogs and widgets, the don't operate on the GUI widgets. That's why they are immediately available after construction.
GWENHYWFAR_API void | GWEN_Dialog_AddWidgetFlags (GWEN_DIALOG *dlg, const char *name, uint32_t fl)
GWENHYWFAR_API GWEN_DB_NODE * | GWEN_Dialog_GetPreferences (const GWEN_DIALOG *dlg)
GWENHYWFAR_API int | GWEN_Dialog_GetWidgetColumns (const GWEN_DIALOG *dlg, const char *name)
GWENHYWFAR_API uint32_t | GWEN_Dialog_GetWidgetFlags (const GWEN_DIALOG *dlg, const char *name)
GWENHYWFAR_API int | GWEN_Dialog_GetWidgetRows (const GWEN_DIALOG *dlg, const char *name)
GWENHYWFAR_API const char * | GWEN_Dialog_GetWidgetText (const GWEN_DIALOG *dlg, const char *name)
GWENHYWFAR_API void | GWEN_Dialog_SetWidgetColumns (GWEN_DIALOG *dlg, const char *name, int i)
GWENHYWFAR_API void | GWEN_Dialog_SetWidgetFlags (GWEN_DIALOG *dlg, const char *name, uint32_t fl)
GWENHYWFAR_API void | GWEN_Dialog_SetWidgetRows (GWEN_DIALOG *dlg, const char *name, int i)
GWENHYWFAR_API void | GWEN_Dialog_SetWidgetText (GWEN_DIALOG *dlg, const char *name, const char *t)
GWENHYWFAR_API void | GWEN_Dialog_SubWidgetFlags (GWEN_DIALOG *dlg, const char *name, uint32_t fl)
Localisation
GWENHYWFAR_API const char * | GWEN_Dialog_GetI18nDomain (const GWEN_DIALOG *dlg)
GWENHYWFAR_API void | GWEN_Dialog_SetI18nDomain (GWEN_DIALOG *dlg, const char *s)
GWENHYWFAR_API const char * | GWEN_Dialog_TranslateString (const GWEN_DIALOG *dlg, const char *s)
Convenience Functions
GWENHYWFAR_API char * | GWEN_Dialog_ListGetFirstColumnData (GWEN_DIALOG *dlg, const char *widgetName, int row)
GWENHYWFAR_API int | GWEN_Dialog_ListGetItemMatchingFirstColumn (GWEN_DIALOG *dlg, const char *widgetName, const char *dataToMatch)
GWENHYWFAR_API void | GWEN_Dialog_ListReadColumnSettings (GWEN_DIALOG *dlg, const char *widgetName, const char *variablePrefix, int maxColumns, int minColumnSize, GWEN_DB_NODE *dbPrefs)
GWENHYWFAR_API void | GWEN_Dialog_ListWriteColumnSettings (GWEN_DIALOG *dlg, const char *widgetName, const char *variablePrefix, int maxColumns, int minColumnSize, GWEN_DB_NODE *dbPrefs)

## Macro Definition Documentation

## GWEN_WIDGET_FLAGS_DECOR_CLOSE

#define GWEN_WIDGET_FLAGS_DECOR_CLOSE 0x00400000L

Definition at line 71 of file dialog.h.

## GWEN_WIDGET_FLAGS_DECOR_MAXIMIZE

#define GWEN_WIDGET_FLAGS_DECOR_MAXIMIZE 0x00800000L

Definition at line 70 of file dialog.h.

## GWEN_WIDGET_FLAGS_DECOR_MENU

#define GWEN_WIDGET_FLAGS_DECOR_MENU 0x00200000L

Definition at line 72 of file dialog.h.

## GWEN_WIDGET_FLAGS_DECOR_MINIMIZE

#define GWEN_WIDGET_FLAGS_DECOR_MINIMIZE 0x01000000L

Definition at line 69 of file dialog.h.

## GWEN_WIDGET_FLAGS_DECOR_SHRINKABLE

#define GWEN_WIDGET_FLAGS_DECOR_SHRINKABLE 0x04000000L

Definition at line 67 of file dialog.h.

## GWEN_WIDGET_FLAGS_DECOR_STRETCHABLE

#define GWEN_WIDGET_FLAGS_DECOR_STRETCHABLE 0x02000000L

Definition at line 68 of file dialog.h.

## GWEN_WIDGET_FLAGS_DEFAULT_WIDGET

#define GWEN_WIDGET_FLAGS_DEFAULT_WIDGET 0x08000000L

Definition at line 65 of file dialog.h.

## GWEN_WIDGET_FLAGS_EQUAL_HEIGHT

#define GWEN_WIDGET_FLAGS_EQUAL_HEIGHT 0x00020000L

Definition at line 77 of file dialog.h.

## GWEN_WIDGET_FLAGS_EQUAL_WIDTH

#define GWEN_WIDGET_FLAGS_EQUAL_WIDTH 0x00040000L

Definition at line 76 of file dialog.h.

## GWEN_WIDGET_FLAGS_FILLX

#define GWEN_WIDGET_FLAGS_FILLX 0x80000000L

Definition at line 61 of file dialog.h.

## GWEN_WIDGET_FLAGS_FILLY

#define GWEN_WIDGET_FLAGS_FILLY 0x40000000L

Definition at line 62 of file dialog.h.

## GWEN_WIDGET_FLAGS_FIXED_HEIGHT

#define GWEN_WIDGET_FLAGS_FIXED_HEIGHT 0x00080000L

Definition at line 75 of file dialog.h.

## GWEN_WIDGET_FLAGS_FIXED_WIDTH

#define GWEN_WIDGET_FLAGS_FIXED_WIDTH 0x00100000L

Definition at line 74 of file dialog.h.

## GWEN_WIDGET_FLAGS_FRAME_GROOVE

#define GWEN_WIDGET_FLAGS_FRAME_GROOVE 0x00000020L

Definition at line 93 of file dialog.h.

## GWEN_WIDGET_FLAGS_FRAME_RAISED

#define GWEN_WIDGET_FLAGS_FRAME_RAISED 0x00000080L

Definition at line 91 of file dialog.h.

## GWEN_WIDGET_FLAGS_FRAME_SUNKEN

#define GWEN_WIDGET_FLAGS_FRAME_SUNKEN 0x00000100L

Definition at line 90 of file dialog.h.

## GWEN_WIDGET_FLAGS_FRAME_THICK

#define GWEN_WIDGET_FLAGS_FRAME_THICK 0x00000040L

Definition at line 92 of file dialog.h.

## GWEN_WIDGET_FLAGS_HANDLE_KEYS

#define GWEN_WIDGET_FLAGS_HANDLE_KEYS 0x00000200L

Definition at line 88 of file dialog.h.

## GWEN_WIDGET_FLAGS_JUSTIFY_BOTTOM

#define GWEN_WIDGET_FLAGS_JUSTIFY_BOTTOM 0x00002000L

Definition at line 82 of file dialog.h.

## GWEN_WIDGET_FLAGS_JUSTIFY_CENTERX

#define GWEN_WIDGET_FLAGS_JUSTIFY_CENTERX 0x00001000L

Definition at line 83 of file dialog.h.

## GWEN_WIDGET_FLAGS_JUSTIFY_CENTERY

#define GWEN_WIDGET_FLAGS_JUSTIFY_CENTERY 0x00000800L

Definition at line 84 of file dialog.h.

## GWEN_WIDGET_FLAGS_JUSTIFY_LEFT

#define GWEN_WIDGET_FLAGS_JUSTIFY_LEFT 0x00010000L

Definition at line 79 of file dialog.h.

## GWEN_WIDGET_FLAGS_JUSTIFY_RIGHT

#define GWEN_WIDGET_FLAGS_JUSTIFY_RIGHT 0x00008000L

Definition at line 80 of file dialog.h.

## GWEN_WIDGET_FLAGS_JUSTIFY_TOP

#define GWEN_WIDGET_FLAGS_JUSTIFY_TOP 0x00004000L

Definition at line 81 of file dialog.h.

## GWEN_WIDGET_FLAGS_NO_WORDWRAP

#define GWEN_WIDGET_FLAGS_NO_WORDWRAP 0x00000400L

Definition at line 86 of file dialog.h.

## GWEN_WIDGET_FLAGS_NONE

#define GWEN_WIDGET_FLAGS_NONE 0x00000000L

Definition at line 60 of file dialog.h.

## GWEN_WIDGET_FLAGS_PASSWORD

#define GWEN_WIDGET_FLAGS_PASSWORD 0x10000000L

Definition at line 64 of file dialog.h.

## GWEN_WIDGET_FLAGS_READONLY

#define GWEN_WIDGET_FLAGS_READONLY 0x20000000L

Definition at line 63 of file dialog.h.

## Typedef Documentation

## GWEN_DIALOG

typedef struct GWEN_DIALOG GWEN_DIALOG

Definition at line 54 of file dialog.h.

## GWEN_DIALOG_SIGNALHANDLER

typedef int GWENHYWFAR_CB(* GWEN_DIALOG_SIGNALHANDLER) (GWEN_DIALOG *dlg, GWEN_DIALOG_EVENTTYPE t, const char *sender)

The signal handler should return one of the event result code (see GWEN_DialogEvent_ResultHandled and following) or a GWEN_ERROR code.

Definition at line 132 of file dialog.h.

## GWEN_DIALOG_SIGNALHANDLER2

typedef int GWENHYWFAR_CB(* GWEN_DIALOG_SIGNALHANDLER2) (GWEN_DIALOG *dlg, GWEN_DIALOG_EVENTTYPE t, const char *sender, int intArg, const char *stringArg)

New signal handler definition. This one allows conveying arguments. The meaning of the arguments depends on the signal.

Definition at line 140 of file dialog.h.

## Enumeration Type Documentation

## anonymous enum

anonymous enum

These are the predefined result codes to be returned by a signal handler. (Note: this is not a typedef because the signal handler has to be able to return GWEN_ERROR codes as well).

Enumerator
GWEN_DialogEvent_ResultHandled |
GWEN_DialogEvent_ResultNotHandled |
GWEN_DialogEvent_ResultAccept |
GWEN_DialogEvent_ResultReject |

Definition at line 119 of file dialog.h.

## GWEN_DIALOG_EVENTTYPE

enum GWEN_DIALOG_EVENTTYPE

Enumerator
GWEN_DialogEvent_TypeInit |
GWEN_DialogEvent_TypeFini |
GWEN_DialogEvent_TypeValueChanged |
GWEN_DialogEvent_TypeActivated |
GWEN_DialogEvent_TypeEnabled |
GWEN_DialogEvent_TypeDisabled |
GWEN_DialogEvent_TypeClose |
GWEN_DialogEvent_TypeKeyPressed |
GWEN_DialogEvent_TypeKeyReleased |
GWEN_DialogEvent_TypeLast |

Definition at line 98 of file dialog.h.

## GWEN_DIALOG_PROPERTY

enum GWEN_DIALOG_PROPERTY

Enumerator
GWEN_DialogProperty_None |
GWEN_DialogProperty_Title |
GWEN_DialogProperty_Value |
GWEN_DialogProperty_MinValue |
GWEN_DialogProperty_MaxValue |
GWEN_DialogProperty_Enabled |
GWEN_DialogProperty_AddValue |
GWEN_DialogProperty_ClearValues |
GWEN_DialogProperty_ValueCount |
GWEN_DialogProperty_ColumnWidth |
GWEN_DialogProperty_Width |
GWEN_DialogProperty_Height |
GWEN_DialogProperty_SelectionMode |
GWEN_DialogProperty_SelectionState |
GWEN_DialogProperty_Focus |
GWEN_DialogProperty_SortDirection | value=direction, index=column
GWEN_DialogProperty_Sort |
GWEN_DialogProperty_Visibility |
GWEN_DialogProperty_ToolTip |
GWEN_DialogProperty_WindowId |
GWEN_DialogProperty_Unknown |

Definition at line 260 of file dialog.h.

## GWEN_DIALOG_SELECTION_MODE

enum GWEN_DIALOG_SELECTION_MODE

Enumerator
GWEN_Dialog_SelectionMode_None |
GWEN_Dialog_SelectionMode_Single |
GWEN_Dialog_SelectionMode_Multi |

Definition at line 289 of file dialog.h.

## GWEN_DIALOG_SORT_DIRECTION

enum GWEN_DIALOG_SORT_DIRECTION

Enumerator
GWEN_DialogSortDirection_None |
GWEN_DialogSortDirection_Up |
GWEN_DialogSortDirection_Down |

Definition at line 296 of file dialog.h.

## Function Documentation

## GWEN_Dialog_AddMediaPath()

GWENHYWFAR_API void GWEN_Dialog_AddMediaPath | ( | GWEN_DIALOG * | dlg,
|  | const char * | s )

Add a path where to find media such as icons, images etc when used e.g. with pushbuttons or images.

References GWENHYWFAR_API.

## GWEN_Dialog_AddMediaPathsFromPathManager()

GWENHYWFAR_API void GWEN_Dialog_AddMediaPathsFromPathManager | ( | GWEN_DIALOG * | dlg,
|  | const char * | destlib,
|  | const char * | pathName,
|  | const char * | relPath )

Add paths from the given path manager. For each entry of the given path managers path list that entry is concatenated with the relPath argument (if not NULL) and added to the dialogs list of media paths.

Parameters

  dlg | dialog to which media paths are to be added
  destlib | see the argument of the same name in GWEN_PathManager_GetPaths
  pathName | see the argument of the same name in GWEN_PathManager_GetPaths
  relPath | optional relative path to be added to each entry of the given path manager's entry to form a media path for this dialog

References GWENHYWFAR_API.

## GWEN_Dialog_AddSubDialog()

GWENHYWFAR_API int GWEN_Dialog_AddSubDialog | ( | GWEN_DIALOG * | dlg,
|  | const char * | parentWidgetName,
|  | GWEN_DIALOG * | subdlg )

Inserts a sub-dialog into the given dialog. The widgets of the subdialog become children of the main dialog below the widget referenced to by parentName. Please take care that the subdialog doesn't contain widgets with the same name as the main dialog. This only works if GWEN_Gui_ExecDialog has not been called yet! Takes over ownership of the given subdialog.

References GWENHYWFAR_API.

## GWEN_Dialog_AddWidgetFlags()

GWENHYWFAR_API void GWEN_Dialog_AddWidgetFlags | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | uint32_t | fl )

References GWENHYWFAR_API.

## GWEN_Dialog_CreateAndLoadWithPath()

GWENHYWFAR_API GWEN_DIALOG * GWEN_Dialog_CreateAndLoadWithPath | ( | const char * | dialogId,
|  | const char * | pmLibName,
|  | const char * | pmDataDir,
|  | const char * | fileName )

Create a dialog and try to load its definition file.

Returns
  pointer to dialog object created and loaded

Parameters

  dialogId | name of the dialog to create
  pmLibName | library name as registered with GWEN_PATHMANAGER (used for GWEN_PathManager_FindFile)
  pmDataDir | datapath name as registered with GWEN_PATHMANAGER (used for GWEN_PathManager_FindFile)
  fileName | name of the file to load (relative to the destination, e.g. "aqbanking/backends/aqhbci/dialogs/dlg_ddvcard.dlg")

References GWENHYWFAR_API.

## GWEN_Dialog_free()

GWENHYWFAR_API void GWEN_Dialog_free | ( | GWEN_DIALOG * | dlg | ) |

References GWENHYWFAR_API.

## GWEN_Dialog_GetCharProperty()

GWENHYWFAR_API const char * GWEN_Dialog_GetCharProperty | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | GWEN_DIALOG_PROPERTY | prop,
|  | int | index,
|  | const char * | defaultValue )

Returns a string property.

If the pointer returned is not the `defaultValue` but rather a pointer generated by the dialog framework implementation then the pointer is only guaranteed to be valid until the next call with the same values of `name` and `property`.

Example: If you cycle through all entries of a listbox (by modifying `index`) each successive call overwrites the string previously returned. However, when you call this function once with the property GWEN_DialogProperty_Title and next time with a property of GWEN_DialogProperty_Value those two pointers will not influence each other.

Parameters

  dlg | pointer to the dialog to be inspected
  name | name of the widget of the dialog whose property is to be read. Use NULL or an empty string to select the dialog itself
  prop | property to read (see GWEN_DialogProperty_Title ff)
  index | (see GWEN_Dialog_SetIntProperty for an explanation)
  defaultValue | default value to be returned if the real value is unavailable (e.g. if the current value is an empty string)

References GWENHYWFAR_API.

## GWEN_Dialog_GetGuiId()

GWENHYWFAR_API uint32_t GWEN_Dialog_GetGuiId | ( | const GWEN_DIALOG * | dlg | ) |

References GWENHYWFAR_API.

## GWEN_Dialog_GetI18nDomain()

GWENHYWFAR_API const char * GWEN_Dialog_GetI18nDomain | ( | const GWEN_DIALOG * | dlg | ) |

Returns the I18N domain of the dialog. This is normally taken from the dialog description file (attribute "i18n" of the "dialog" element). This domain is used to localize strings of the dialog description file by using it as first argument to GWEN_I18N_Translate(). This allows for translation within the context of the dialog. AqBanking's dialogs use "aqbanking" as I18N domain, so the translation for its dialogs also appear in its pot files.

References GWENHYWFAR_API.

## GWEN_Dialog_GetId()

GWENHYWFAR_API const char * GWEN_Dialog_GetId | ( | const GWEN_DIALOG * | dlg | ) |

The dialog id is in most cases hardcoded into the describing XML file. It is the unique name of the dialog. This name is used to read/write dialog preferences.

References GWENHYWFAR_API.

## GWEN_Dialog_GetIntProperty()

GWENHYWFAR_API int GWEN_Dialog_GetIntProperty | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | GWEN_DIALOG_PROPERTY | prop,
|  | int | index,
|  | int | defaultValue )

This function returns the value of an integer property.

Parameters

  dlg | pointer to the dialog to be inspected
  name | name of the widget of the dialog whose property is to be read. Use NULL or an empty string to select the dialog itself
  prop | property to read (see GWEN_DialogProperty_Title ff)
  index | (see GWEN_Dialog_SetIntProperty for an explanation)
  defaultValue | default value to be returned if the real value is unavailable

References GWENHYWFAR_API.

## GWEN_Dialog_GetPreferences()

GWENHYWFAR_API GWEN_DB_NODE * GWEN_Dialog_GetPreferences | ( | const GWEN_DIALOG * | dlg | ) |

Returns a DB which can be used to read and store preference for the dialog. Most dialogs in AqBanking use this to remember the dialog geometry or the widths of columns in lists etc. This DB is automatically read from within the constructor (GWEN_Dialog_new) and written from within the destructor (GWEN_Dialog_free). This is achieved by calling the virtual functions GWEN_Gui_ReadDialogPrefs and GWEN_Gui_WriteDialogPrefs respectively. However, the current GWEN_GUI implementation must implement these functions. Fortunately, AqBanking's GUI implementation (use it with AB_Gui_Extend) does that. It reads/writes those dialog settings from/into its shared settings database.

References GWENHYWFAR_API.

## GWEN_Dialog_GetWidgetColumns()

GWENHYWFAR_API int GWEN_Dialog_GetWidgetColumns | ( | const GWEN_DIALOG * | dlg,
|  | const char * | name )

This is another attribute from the dialog description file. It is used with widgets like GWEN_Widget_TypeLineEdit to specify the widget width in number of characters. It is also used for GWEN_Widget_TypeGridLayout to specify the number of columns.

Parameters

  dlg | pointer to the dialog to be inspected
  name | name of the widget of the dialog whose attribute is to be read.

References GWENHYWFAR_API.

## GWEN_Dialog_GetWidgetFlags()

GWENHYWFAR_API uint32_t GWEN_Dialog_GetWidgetFlags | ( | const GWEN_DIALOG * | dlg,
|  | const char * | name )

References GWENHYWFAR_API.

## GWEN_Dialog_GetWidgetRows()

GWENHYWFAR_API int GWEN_Dialog_GetWidgetRows | ( | const GWEN_DIALOG * | dlg,
|  | const char * | name )

This is another attribute from the dialog description file. It is used with widgets GWEN_Widget_TypeGridLayout to specify the number of rows.

Parameters

  dlg | pointer to the dialog to be inspected
  name | name of the widget of the dialog whose attribute is to be read.

References GWENHYWFAR_API.

## GWEN_Dialog_GetWidgetText()

GWENHYWFAR_API const char * GWEN_Dialog_GetWidgetText | ( | const GWEN_DIALOG * | dlg,
|  | const char * | name )

References GWENHYWFAR_API.

## GWEN_Dialog_ListGetFirstColumnData()

GWENHYWFAR_API char * GWEN_Dialog_ListGetFirstColumnData | ( | GWEN_DIALOG * | dlg,
|  | const char * | widgetName,
|  | int | row )

Get the content of the first column of a given list entry (or whole content if only single column).

Returns
  NULL or pointer to the content (caller is responsible for freeing the pointer)

Parameters

  dlg | dialog containing the widget to handle
  widgetName | name of the widget to handle
  row | index of the list item (beginning with 0)

References GWENHYWFAR_API.

## GWEN_Dialog_ListGetItemMatchingFirstColumn()

GWENHYWFAR_API int GWEN_Dialog_ListGetItemMatchingFirstColumn | ( | GWEN_DIALOG * | dlg,
|  | const char * | widgetName,
|  | const char * | dataToMatch )

Return index of list element whose content of the first column matches the given string.

The idea is to have the first column of a list entry contain a unique id by which the list can be searched.

Returns
  -1 if none found, index otherwise (starting with 0)

Parameters

  dlg | dialog containing the widget to handle
  widgetName | name of the widget to handle
  dataToMatch | string to match against

## GWEN_Dialog_ListReadColumnSettings()

GWENHYWFAR_API void GWEN_Dialog_ListReadColumnSettings | ( | GWEN_DIALOG * | dlg,
|  | const char * | widgetName,
|  | const char * | variablePrefix,
|  | int | maxColumns,
|  | int | minColumnSize,
|  | GWEN_DB_NODE * | dbPrefs )

References GWENHYWFAR_API.

## GWEN_Dialog_ListWriteColumnSettings()

GWENHYWFAR_API void GWEN_Dialog_ListWriteColumnSettings | ( | GWEN_DIALOG * | dlg,
|  | const char * | widgetName,
|  | const char * | variablePrefix,
|  | int | maxColumns,
|  | int | minColumnSize,
|  | GWEN_DB_NODE * | dbPrefs )

Write current config of a list widget supporting columns (like GWEN_Widget_TypeListBox).

Parameters

  dlg | dialog containing the widget to handle
  widgetName | name of the widget to handle

  variablePrefix

  prefix for the different settings, this will be prepended to the variable names used in the given dbPrefs settings. The following variable names will be used:
  - columns: one value for each column stating the column width
  - sortbycolumn: Index of the column to sort the list by (in most cases indicated in the GUI)
  - sortdir: Sort direction (GWEN_DialogSortDirection_Up or GWEN_DialogSortDirection_Down)

  maxColumns | maximum number of columns to handle
  minColumnSize | minimum width of each column
  dbPrefs | GWEN_DB_NODE to store the settings in

References GWENHYWFAR_API.

## GWEN_Dialog_new()

GWENHYWFAR_API GWEN_DIALOG * GWEN_Dialog_new | ( | const char * | dialogId | ) |

References GWENHYWFAR_API.

## GWEN_Dialog_ReadXml()

GWENHYWFAR_API int GWEN_Dialog_ReadXml | ( | GWEN_DIALOG * | dlg,
|  | GWEN_XMLNODE * | node )

Read dialog description from the given XML element.

References GWENHYWFAR_API.

## GWEN_Dialog_ReadXmlFile()

GWENHYWFAR_API int GWEN_Dialog_ReadXmlFile | ( | GWEN_DIALOG * | dlg,
|  | const char * | fname )

Read dialog description from the given XML file.

References GWENHYWFAR_API.

## GWEN_Dialog_RemoveWidget()

GWENHYWFAR_API int GWEN_Dialog_RemoveWidget | ( | GWEN_DIALOG * | dlg,
|  | const char * | name )

References GWENHYWFAR_API.

## GWEN_Dialog_SetCharProperty()

GWENHYWFAR_API int GWEN_Dialog_SetCharProperty | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | GWEN_DIALOG_PROPERTY | prop,
|  | int | index,
|  | const char * | value,
|  | int | doSignal )

Modify a string property.

This might invalidate a pointer previously returned via GWEN_Dialog_GetCharProperty.

References GWENHYWFAR_API.

## GWEN_Dialog_SetI18nDomain()

GWENHYWFAR_API void GWEN_Dialog_SetI18nDomain | ( | GWEN_DIALOG * | dlg,
|  | const char * | s )

Set the I18N domain (see GWEN_Dialog_GetI18nDomain).

References GWENHYWFAR_API.

## GWEN_Dialog_SetIntProperty()

GWENHYWFAR_API int GWEN_Dialog_SetIntProperty | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | GWEN_DIALOG_PROPERTY | prop,
|  | int | index,
|  | int | value,
|  | int | doSignal )

This function sets the value of an integer property.

Parameters

  dlg | pointer to the dialog to be manipulated
  name | name of the widget of the dialog whose property is to be manipulated. Use NULL or an empty string to select the dialog itself
  prop | property to modify (see GWEN_DialogProperty_Title ff)
  index | for widgets with array like data this is the index into that array. Normally this value is 0. However, there are examples when this parameter does not equal 0. The property GWEN_DialogProperty_ColumnWidth of a GWEN_Widget_TypeListBox is such an example. Here the index selects the column whose width is to be changed.
  value | the value to set
  doSignal | some implementations send the GWEN_DialogEvent_TypeValueChanged signal when values are manipulated. Set this parameter to 0 if you don't need that. However, this is just a hint for the implementation, you should not rely on it actually being regarded by the implementation. So you might or might not get such a signal upon manipulation of a property.

References GWENHYWFAR_API.

## GWEN_Dialog_SetSignalHandler()

GWENHYWFAR_API GWEN_DIALOG_SIGNALHANDLER GWEN_Dialog_SetSignalHandler | ( | GWEN_DIALOG * | dlg,
|  | GWEN_DIALOG_SIGNALHANDLER | fn )

Sets the signal handler of the dialog. Please note that this doesn't set the signal handler of any sub-dialog, so each dialog will only receive its own signals.

References GWENHYWFAR_API.

## GWEN_Dialog_SetSignalHandler2()

GWENHYWFAR_API GWEN_DIALOG_SIGNALHANDLER2 GWEN_Dialog_SetSignalHandler2 | ( | GWEN_DIALOG * | dlg,
|  | GWEN_DIALOG_SIGNALHANDLER2 | fn )

Sets the new signal handler of the dialog. Please note that this doesn't set the signal handler of any sub-dialog, so each dialog will only receive its own signals.

## GWEN_Dialog_SetWidgetColumns()

GWENHYWFAR_API void GWEN_Dialog_SetWidgetColumns | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | int | i )

Set the number of columns (see GWEN_Dialog_GetWidgetColumns).

References GWENHYWFAR_API.

## GWEN_Dialog_SetWidgetFlags()

GWENHYWFAR_API void GWEN_Dialog_SetWidgetFlags | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | uint32_t | fl )

References GWENHYWFAR_API.

## GWEN_Dialog_SetWidgetRows()

GWENHYWFAR_API void GWEN_Dialog_SetWidgetRows | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | int | i )

Set the number of columns (see GWEN_Dialog_GetWidgetRows).

References GWENHYWFAR_API.

## GWEN_Dialog_SetWidgetText()

GWENHYWFAR_API void GWEN_Dialog_SetWidgetText | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | const char * | t )

References GWENHYWFAR_API.

## GWEN_Dialog_SubWidgetFlags()

GWENHYWFAR_API void GWEN_Dialog_SubWidgetFlags | ( | GWEN_DIALOG * | dlg,
|  | const char * | name,
|  | uint32_t | fl )

References GWENHYWFAR_API.

## GWEN_Dialog_TranslateString()

GWENHYWFAR_API const char * GWEN_Dialog_TranslateString | ( | const GWEN_DIALOG * | dlg,
|  | const char * | s )

Translates a string within the I18N domain of the dialog (see GWEN_Dialog_GetI18nDomain).

References GWENHYWFAR_API.