gwenhywfar  5.11.1beta
Macros | Typedefs | Enumerations | Functions
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_DIALOGGWEN_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_DIALOGGWEN_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_NODEGWEN_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 1 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

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

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

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

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.

◆ 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
dlgdialog to which media paths are to be added
destlibsee the argument of the same name in GWEN_PathManager_GetPaths
pathNamesee the argument of the same name in GWEN_PathManager_GetPaths
relPathoptional relative path to be added to each entry of the given path manager's entry to form a media path for this dialog

◆ 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.

◆ GWEN_Dialog_AddWidgetFlags()

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

◆ 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
dialogIdname of the dialog to create
pmLibNamelibrary name as registered with GWEN_PATHMANAGER (used for GWEN_PathManager_FindFile)
pmDataDirdatapath name as registered with GWEN_PATHMANAGER (used for GWEN_PathManager_FindFile)
fileNamename of the file to load (relative to the destination, e.g. "aqbanking/backends/aqhbci/dialogs/dlg_ddvcard.dlg")

◆ GWEN_Dialog_free()

GWENHYWFAR_API void GWEN_Dialog_free ( GWEN_DIALOG dlg)

◆ 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
dlgpointer to the dialog to be inspected
namename of the widget of the dialog whose property is to be read. Use NULL or an empty string to select the dialog itself
propproperty to read (see GWEN_DialogProperty_Title ff)
index(see GWEN_Dialog_SetIntProperty for an explanation)
defaultValuedefault value to be returned if the real value is unavailable (e.g. if the current value is an empty string)

◆ GWEN_Dialog_GetGuiId()

GWENHYWFAR_API uint32_t GWEN_Dialog_GetGuiId ( const GWEN_DIALOG dlg)

◆ 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.

◆ 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.

◆ 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
dlgpointer to the dialog to be inspected
namename of the widget of the dialog whose property is to be read. Use NULL or an empty string to select the dialog itself
propproperty to read (see GWEN_DialogProperty_Title ff)
index(see GWEN_Dialog_SetIntProperty for an explanation)
defaultValuedefault value to be returned if the real value is unavailable

◆ 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.

◆ 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
dlgpointer to the dialog to be inspected
namename of the widget of the dialog whose attribute is to be read.

◆ GWEN_Dialog_GetWidgetFlags()

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

◆ 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
dlgpointer to the dialog to be inspected
namename of the widget of the dialog whose attribute is to be read.

◆ GWEN_Dialog_GetWidgetText()

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

◆ 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
dlgdialog containing the widget to handle
widgetNamename of the widget to handle
rowindex of the list item (beginning with 0)

◆ 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
dlgdialog containing the widget to handle
widgetNamename of the widget to handle
dataToMatchstring 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 
)

◆ 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
dlgdialog containing the widget to handle
widgetNamename of the widget to handle
variablePrefixprefix 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)
maxColumnsmaximum number of columns to handle
minColumnSizeminimum width of each column
dbPrefsGWEN_DB_NODE to store the settings in

◆ GWEN_Dialog_new()

GWENHYWFAR_API GWEN_DIALOG* GWEN_Dialog_new ( const char *  dialogId)

◆ GWEN_Dialog_ReadXml()

GWENHYWFAR_API int GWEN_Dialog_ReadXml ( GWEN_DIALOG dlg,
GWEN_XMLNODE node 
)

Read dialog description from the given XML element.

◆ GWEN_Dialog_ReadXmlFile()

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

Read dialog description from the given XML file.

◆ GWEN_Dialog_RemoveWidget()

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

◆ 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.

◆ GWEN_Dialog_SetI18nDomain()

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

Set the I18N domain (see GWEN_Dialog_GetI18nDomain).

◆ 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
dlgpointer to the dialog to be manipulated
namename of the widget of the dialog whose property is to be manipulated. Use NULL or an empty string to select the dialog itself
propproperty to modify (see GWEN_DialogProperty_Title ff)
indexfor 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.
valuethe value to set
doSignalsome 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.

◆ 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.

◆ 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).

◆ GWEN_Dialog_SetWidgetFlags()

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

◆ 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).

◆ GWEN_Dialog_SetWidgetText()

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

◆ GWEN_Dialog_SubWidgetFlags()

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

◆ 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).