diff src/ui/bmi/AUIEditor.h @ 3:67bfe9f274f6

src/ui: import of src/ui3 from Magnetite
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 16 Oct 2020 06:33:10 +0000
parents
children c0052fe355d3
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ui/bmi/AUIEditor.h	Fri Oct 16 06:33:10 2020 +0000
@@ -0,0 +1,160 @@
+#ifndef MMI_AUIEDITOR_H
+#define MMI_AUIEDITOR_H
+
+/*******************************************************************************
+
+          CONDAT (UK)
+
+********************************************************************************
+
+ This software product is the property of Condat (UK) Ltd and may not be
+ disclosed to any third party without the express permission of the owner.
+
+********************************************************************************
+
+ $Project name:	Basic MMI
+ $Project code:	BMI (6349)
+ $Module:		MMI
+ $File:			AUIEditor.h
+ $Revision:		1.0
+
+ $Author:		Condat(UK)
+ $Date:			30/01/02
+
+********************************************************************************
+
+ Description: Global header file for AUI Editor
+
+ REQUIRES: ATBCommon.h, ATBDisplay.h, ATBEditor.h
+
+********************************************************************************
+ $History: AUIEditor.h
+
+  30/01/02      Original Condat(UK) BMI version.
+
+ $End
+
+*******************************************************************************/
+
+
+
+
+/*******************************************************************************
+
+                    Type definitions
+
+*******************************************************************************/
+
+/*
+ * Definitions from common editor function
+ */
+#define INFO_TIMEOUT			1
+#define INFO_KCD_LEFT			2
+#define INFO_KCD_RIGHT			3
+#define INFO_KCD_HUP			4
+#define INFO_KCD_UP				5
+#define INFO_KCD_DOWN			6
+#define INFO_KCD_0_9			7
+#define INFO_KCD_ALTERNATELEFT  8
+#define INFO_KCD_STAR			9
+#define INFO_KCD_SELECT			10
+#define INFO_EMERGENCY			99
+
+#define ED_PREDTEXT_MAX			16				/* Maximum length of predicted text string */
+#define ED_SCROLLBAR_WIDTH		4				/* Width of scrollbar */
+
+#define MAX_RO_EDITOR_LEN		1000
+
+#ifndef FOREVER
+#define TIMER_EXIT				0x0BB8			/* Default SMS timer period - 3 secs.  */
+#define SHORT_SECS				0x01F4			/* Information dialogue display times. */
+#define THREE_SECS				0x0BB8			/* 3000 milliseconds.                  */
+#define FIVE_SECS				0x1388          /* 5000 milliseconds.                  */
+#define TEN_SECS    			0x2710          /* 10000 milliseconds.                 */
+#define TWO_MIN					0x1D4C0         /* 2 min                               */
+#define FOREVER					0xFFFF          /* Infinite time period.               */
+#endif /* FOREVER */
+
+
+/****************************************************************************/
+/*																			*/
+/* TYPES																	*/
+/*																			*/
+/****************************************************************************/
+
+/* External & internal events */
+
+typedef enum
+{
+    E_ED_INIT,
+    E_ED_DESTROY,/*MC SPR 1752*/
+    E_ED_DEINIT,
+    E_ED_UPDATE,
+    E_ED_INSERT
+} E_ED_EVENTS;
+
+/* Callback type */
+
+typedef void (*T_AUI_EDIT_CB) (T_MFW_HND, USHORT, SHORT);
+
+
+/****************************************************************************/
+/*																			*/
+/* STRUCTURES																*/
+/*																			*/
+/****************************************************************************/
+
+/* T_AUI_EDITOR_DATA */
+ 
+typedef struct
+{
+	T_ED_ATTR		editor_attr;		/* The editor attributes */
+	int				zone_id;			/* Type of editor window */
+    
+	USHORT			Identifier;			/* Identifier passed on to callback function */
+	ULONG			timeout;			/* Time before editor calls callback */
+	T_AUI_EDIT_CB	Callback;			/* Callback function */
+	BOOL			destroyEditor;		/* TRUE if editor is to be destroyed on exit */
+	UBYTE			min_enter;			/* Minimum number of characters necessary to enter */
+	BOOL			change_rsk_on_empty; /* TRUE if text of right soft key changes when buffer is empty*/
+	
+	USHORT         TitleId;				/* Text ID for the title of the editor */
+	UBYTE          	*TitleString;		/* String for title of editor (ignored if TitleId is non-null) */
+	USHORT			LeftSoftKey;		/* Text ID for left soft key */
+	USHORT			AltLeftSoftKey;		/* Text ID for soft key to appear before min_enter characters entered */
+	USHORT			RightSoftKey;		/* Text ID for right soft key */
+	USHORT			AltRightSoftKey;	/* Text ID for soft key to appear when buffer is empty */
+	/* SPR#2672 - SH - Removed array */
+} T_AUI_EDITOR_DATA;
+
+
+/****************************************************************************/
+/*																			*/
+/* FUNCTION PROTOTYPES														*/
+/*																			*/
+/****************************************************************************/
+
+/* General-purpose Editor */
+
+T_MFW_HND	AUI_edit_Start(T_MFW_HND parent, T_AUI_EDITOR_DATA *editor_data);
+T_MFW_HND	AUI_edit_QuickStart(T_MFW_HND win, USHORT TitleId, UBYTE *TitleString, USHORT *buffer, USHORT len, T_AUI_EDITOR_DATA *editor_info, T_AUI_EDIT_CB editor_cb);
+void		AUI_edit_Destroy(T_MFW_HND window);
+void		AUI_edit_InsertString(T_MFW_HND win, UBYTE *string, T_ATB_DCS dcs);
+void 		AUI_edit_InsertChar(T_MFW_HND win, USHORT character);
+
+/* AUI Editor tools */
+
+void AUI_edit_GetSpecificWindowSize(T_ED_ATTR* attr, int zone_id );
+void AUI_edit_CalculateWindow(T_ED_ATTR* attr, int *zone_id );	/* SPR#1559 - SH - Change zone_id to a pointer to int */
+void AUI_edit_SetDefault(T_AUI_EDITOR_DATA *editor_data);
+void AUI_edit_SetDisplay(T_AUI_EDITOR_DATA *editor_data, int zone_id, int colour, UBYTE font );
+void AUI_edit_SetEvents(T_AUI_EDITOR_DATA *editor_data, USHORT Identifier, BOOL destroyEditor, ULONG timeout, T_AUI_EDIT_CB Callback);
+void AUI_edit_SetMode(T_AUI_EDITOR_DATA *editor_data, USHORT mode, USHORT cursor );
+void AUI_edit_SetBuffer(T_AUI_EDITOR_DATA *editor_data, UBYTE dcs, UBYTE *text, USHORT size);
+void AUI_edit_SetTextStr(T_AUI_EDITOR_DATA *editor_data, USHORT LeftSoftKey, USHORT RightSoftKey, USHORT TitleId, UBYTE *TitleString);
+void AUI_edit_SetAltTextStr(T_AUI_EDITOR_DATA *editor_data, UBYTE min_enter, USHORT AltLeftSoftKey, BOOL change_rsk_on_empty, USHORT AltRightSoftKey);
+void AUI_edit_SetFormatStr(T_AUI_EDITOR_DATA *editor_data, char *formatstr, BOOL preformat, char filler);
+void AUI_edit_SetFormatAttr(T_AUI_EDITOR_DATA *editor_data, UBYTE attr);
+void AUI_edit_SetAttr(T_ED_ATTR *attr, int zone_id, ULONG colour, UBYTE font, USHORT mode, USHORT cursor, T_ATB_DCS dcs, UBYTE *text, USHORT size);
+void AUI_Edit_Display_Only(T_MFW_HND win, int LSK, int RSK, char *string1, char *string2, int Title);
+#endif /* _DEF_MMI_ED_EDITOR */