FreeCalypso > hg > fc-tourmaline
view src/ui/bmi/AUIEditor.h @ 261:841a848ba762
SPI SWE: clear any pending boot-time interrupts in spi_init()
Charger plug/unplug hw logic in the Iota ABB has no built-in debouncing,
thus electrical contact bounce on the charging power connection interface
produces a lot of charger plug/unplug interrupts. When we boot in
charging mode (charging power present at boot time and is presumably
the cause of Switch-ON), some bounce may occur between the initial
Iota Switch-ON action and Calypso firmware booting. By clearing any
accumulated ITSTATREG interrupts on boot, we prevent these pre-boot
interrupts from generating charger plug/unplug events to FCHG, which
would upset smooth from-boot charging.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 14 May 2021 02:49:05 +0000 |
parents | 1a17927dd8a2 |
children |
line wrap: on
line source
#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 */