FreeCalypso > hg > fc-magnetite
view src/aci2/bmi/mmiEditor.h @ 636:57e67ca2e1cb
pcmdata.c: default +CGMI to "FreeCalypso" and +CGMM to model
The present change has no effect whatsoever on Falconia-made and Openmoko-made
devices on which /pcm/CGMI and /pcm/CGMM files have been programmed in FFS
with sensible ID strings by the respective factories, but what should AT+CGMI
and AT+CGMM queries return when the device is a Huawei GTM900 or Tango modem
that has been converted to FreeCalypso with a firmware change? Before the
present change they would return compiled-in defaults of "<manufacturer>" and
"<model>", respectively; with the present change the firmware will self-identify
as "FreeCalypso GTM900-FC" or "FreeCalypso Tango" on the two respective targets.
This firmware identification will become important if someone incorporates an
FC-converted GTM900 or Tango modem into a ZeroPhone-style smartphone where some
high-level software like ofono will be talking to the modem and will need to
properly identify this modem as FreeCalypso, as opposed to some other AT command
modem flavor with different quirks.
In technical terms, the compiled-in default for the AT+CGMI query (which will
always be overridden by the /pcm/CGMI file in FFS if one is present) is now
"FreeCalypso" in all configs on all targets; the compiled-in default for the
AT+CGMM query (likewise always overridden by /pcm/CGMM if present) is
"GTM900-FC" if CONFIG_TARGET_GTM900 or "Tango" if CONFIG_TARGET_TANGO or the
original default of "<model>" otherwise.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Sun, 19 Jan 2020 20:14:58 +0000 |
| parents | 3c2acfa1a72f |
| children |
line wrap: on
line source
#ifndef _DEF_MMI_EDITOR_H_ #define _DEF_MMI_EDITOR_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: MmiEditor.h $Revision: 1.0 $Author: Condat(UK) $Date: 25/10/00 ******************************************************************************** Description: This provides the root mofule for the basic MMI ******************************************************************************** $History: MmiMmi.h 25/10/00 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_EMERGENCY 99 #define DIGITS_MODE 0 #define ALPHA_MODE 1 #define READ_ONLY_MODE 2 #define T9_MODE 3 #define CALC_MODE 4 #define PIN_SECURITY 5 #define FORMAT_MODE 6 // SH - formatted input mode for WAP #define PROMPT_LENGTH 16 #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 */ /* * Parameter Decription: * ---------------- * mode -> sets mode to digits or alpha; * (ALPHA_MODE | DIGITS_MODE | READ_ONLY_MODE | T9_MODE) * Callback -> Routine to be called, if the user presses left- or right- or clear-key or a timeout occurs * (parameter = INFO_KCD_LEFT, INFO_KCD_ALTERNATELEFT, INFO_KCD_RIGHT, INFO_KCD_HUP, * INFO_TIMEOUT) * timeout -> after this timeout the Callback will be executed * (optional, set to FOREVER if unused) * (timeout is refreshed on every key-press) * Identifier -> passed back to the creator as a parameter of Callback (optional) * hide -> hide the entered string (currently not supported), * TextId -> If you want to use a label... * (optional, set to 0 if unused) * TextString -> if no TextId is provided this will be used as alternative label * (optional, set to NULL if unused) * min_enter -> minimum number of chars to be entered in buffer, * min_enter= 0x00 means no min. limit * min_enter = editor_attr.size-1 means fixed lenght * LeftSoftKey -> SoftKey to be shown if number of entered chars >= min_enter * AlternateLeftSoftKey -> SoftKey to be shown if number of entered chars < min_enter * RightSoftKey -> SoftKey to be shown unconditionally * (in order to hide/disable a Softkey set it to TxtNull) * NOTE: The buffer to be edited shall provide sufficient space to hold the terminating zero character. * NOTE: We assume that the buffer to be edited is provided by the caller and valid throughout the lifetime of the editor. * Thus we do NOT copy the buffer into local temporary space. * NOTE: If digits-mode and hide are concurrently enabled, entering of '+' is not possible * NOTE: In read-only mode the cursor is set to the top of the buffer and all normal keys are ignored. * However Softkeys and long-clear are functional. * NOTE: There's an exception from the normal behaviour if (mode == DIGITS) and (size == 2). * In this case called "single digit key request" the editor is left immediately on any normal key * by calling <Callback> with parameter INFO_KCD_LEFT. */ /* * External types */ typedef enum { E_EDITOR_INIT, E_EDITOR_DEINIT, E_EDITOR_UPDATE, E_EDITOR_CURSOR_END /*SPR 1392*/ } e_editor_events; typedef void (*T_EDIT_CB) (T_MFW_HND, USHORT, USHORT); typedef struct { T_MFW_EDT_ATTR editor_attr; BOOL hide; USHORT LeftSoftKey; USHORT AlternateLeftSoftKey; USHORT RightSoftKey; USHORT Identifier; UBYTE mode; USHORT TextId; char *TextString; UBYTE min_enter; ULONG timeout; T_EDIT_CB Callback; UBYTE destroyEditor; char *FormatString; // SH - Formatting string for formatted input int formatIndex; // SH - Position in formatting string int fieldIndex; // SH - position within a delimited field } T_EDITOR_DATA; //Zone data for drawing windows #define ZONE_FULL_HEIGHT 0x000F #define ZONE_TOPHALF_HEIGHT 0x000C #define ZONE_MIDDLE_HEIGHT 0x0006 #define ZONE_BOTTOMHALF_HEIGHT 0x0003 #define ZONE_FULL_WIDTH 0x00F0 #define ZONE_LEFTHALF_WIDTH 0x00C0 #define ZONE_MIDDLE_WIDTH 0x0060 #define ZONE_RIGHTHALF_WIDTH 0x0030 #define ZONE_ICONS 0x0100 #define ZONE_TITLE 0x0200 #define ZONE_CASE_ABC 0x0400 #define ZONE_SOFTKEYS 0x1000 #define ZONE_FULLSCREEN (ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH) #define ZONE_FULLICONS (ZONE_ICONS|ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH) #define ZONE_FULLTITLE (ZONE_TITLE|ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH) #define ZONE_FULLSOFTKEYS (ZONE_SOFTKEYS|ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH) #define ZONE_FULL_SK_TITLE (ZONE_TITLE|ZONE_SOFTKEYS|ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH) #define ZONE_FULL_SK_TITLE_ALPHA (ZONE_TITLE|ZONE_SOFTKEYS|ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH | ZONE_CASE_ABC) #define ZONE_WAP_EDITOR (ZONE_TITLE|ZONE_SOFTKEYS|ZONE_FULL_HEIGHT | ZONE_FULL_WIDTH) //Specific editor sizes #define ZONE_SMALL_EDITOR (0xFF00) /* editor for small (one line) editors */ #define ZONE_BORDER_EDITOR (0xFE00) /* editors with a border to the left/right - sim toolkit */ #define ZONE_BOTTOM_LINE (0xFD00) /* editors for the bottom line */ #define ZONE_BOTTOM_LINE_FIND (0xFC00) /* editors on the bottom line after "Find:" */ /* PROTOTYPES */ extern T_MFW_HND editor_start (T_MFW_HND parent, T_EDITOR_DATA * editor_data); extern T_MFW_HND editor_start_common(T_MFW_HND win, char * buffer, U16 len, T_EDITOR_DATA * editor_info, T_EDIT_CB editor_cb); int showeZiTextIcon(MfwMnu* m, MfwMnuItem* i); int Easy_Activate(MfwMnu* m, MfwMnuItem* i); int Easy_DeActivate(MfwMnu* m, MfwMnuItem* i); //API - 01/10/02 - Concatenation Switch Function Definition int Concatenate_DeActivate(MfwMnu* m, MfwMnuItem* i); int Concatenate_Activate(MfwMnu* m, MfwMnuItem* i); int Concatenate_Status(MfwMnu* m, MfwMnuItem* i); extern void editor_destroy (T_MFW_HND window); extern void editor_attr_init(MfwEdtAttr* attr, int zone_id, U8 mode, U8 *controls, char *text, U16 size, int colour); extern void editor_data_init( T_EDITOR_DATA* editor_info, T_EDIT_CB callback,USHORT lsk, USHORT rsk, USHORT txtId, USHORT min_num_char, UBYTE mode, ULONG timeout); #endif /* _DEF_MMI_EDITOR */
