FreeCalypso > hg > fc-tourmaline
view src/ui/bmi/mmiMenu.c @ 72:7bf39f5e834d
backlight control on Luna: switch PWL instead of LEDB
This change is preliminary toward upcoming rework of backlight control
logic in our UI firmware. LEDB does not exist on Tango-based platforms
(it is not brought out on Tango modules), thus turning it on and off
produces absolutely no effect beyond making L1 disable deep sleep
when LEDB is turned on. However, both iWOW DSK and our upcoming
FC Caramel2 boards have a PWL LED, so let's switch that LED on and off
to indicate the state of the UI firmware's backlight control.
Note that we are NOT switching the actual Luna LCD backlight here,
even though it is trivially controlled with a GPIO. The reason for
this seemingly strange choice is that we don't want to turn this
development board LCD backlight off until we bring the higher-level
backlight control logic up to par, including new logic to "swallow"
the first keypress that turns on the darkened LCD.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 24 Oct 2020 07:39:54 +0000 |
parents | 67bfe9f274f6 |
children | c0052fe355d3 |
line wrap: on
line source
/******************************************************************************* 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: Menus $File: MmiMenu.c $Revision: 1.0 $Author: Condat(UK) $Date: 25/10/00 ******************************************************************************** Description: This provides the implementation of the main menu handling for the basic MMI ******************************************************************************** $History: MmiMenu.c 25/10/00 Original Condat(UK) BMI version. $End *******************************************************************************/ /******************************************************************************* Include files *******************************************************************************/ #define ENTITY_MFW /* includes */ #include <string.h> #include <stdio.h> #include <stdlib.h> #if defined (NEW_FRAME) #include "typedefs.h" #include "vsi.h" #include "pei.h" #include "custom.h" #include "gsm.h" #else #include "STDDEFS.H" #include "custom.h" #include "gsm.h" #include "vsi.h" #endif #include "mfw_sys.h" #include "prim.h" #include "mfw_mfw.h" #include "mfw_win.h" #include "mfw_kbd.h" #include "mfw_lng.h" /* SPR#1428 - SH - New Editor changes */ #ifndef NEW_EDITOR #include "mfw_edt.h" #endif #include "mfw_icn.h" #include "mfw_mnu.h" #include "mfw_phb.h" #include "mfw_sim.h" #include "mfw_nm.h" #include "mfw_tim.h" #include "mfw_sms.h" #include "mfw_icn.h" #include "mfw_sat.h" #include "dspl.h" #include "ksd.h" #include "psa.h" #include "MmiMmi.h" #include "MmiMain.h" #include "MmiStart.h" #include "MmiDummy.h" #include "MmiDialogs.h" #include "MmiLists.h" #include "mmiSmsBroadcast.h" #include "MmiMenu.h" #include "MmiSimToolkit.h" #include "MmiSounds.h" #include "MmiSettings.h" #include "MmiServices.h" #include "MmiPins.h" #include "Mmiicons.h" #include "MmiNetwork.h" #include "MmiUserData.h" #include "MmiSoftKeys.h" #include "MmiTimeDate.h" #include "MmiIdle.h" #include "cus_aci.h" #include "prim.h" #ifndef PCM_2_FFS #include "pcm.h" #endif /******************************************************************************* Private definitions *******************************************************************************/ /* next define used for code that might be removed */ #define KEEP 0 /******************************************************************************* Global Data Elements *******************************************************************************/ /* Menus display area */ /******************************************************************************* Module Global Data Elements *******************************************************************************/ MfwHnd MenuWin = (MfwHnd) 0; static MfwHnd win=0; /* our window */ /* x0039928 -Lint warning removal static MfwHnd kbd; static MfwHnd kbdLong; */ static SimMenuFunc SimCallback; static MfwHnd SimWindow; /* x0039928 - Lint warning removal static MmiState nextState; static BOOL fromHotKey; static BOOL flagHotKey; static const int OperatorIndex = 1; */ /******************************************************************************* Local function prototypes *******************************************************************************/ /******************************************************************************* $Function: menuSimItemCallback $Description: invokes the SimCallback function if it is allocated $Returns: MfwResOk, always $Arguments: m, menu being activated, i, item in menu *******************************************************************************/ int menuSimItemCallback( MfwMnu* m, MfwMnuItem* i) { if( SimCallback != NULL ) SimCallback(SimWindow); return MfwResOk; } /******************************************************************************* Public Routines *******************************************************************************/ /******************************************************************************* $Function: item_flag_none $Description: Attribut function for menu entries. This function shall be used for all cases of no specific attributes (default) $Returns: zero always $Arguments: m, ma, mi - not used *******************************************************************************/ USHORT item_flag_none( struct MfwMnuTag *m, struct MfwMnuAttrTag *ma, struct MfwMnuItemTag *mi ) { return 0; } //xpradipg - Aug 4:changes for WAP2.0 Menu #if defined (FF_WAP) && defined (FF_GPF_TCPIP) USHORT item_flag_WAP_2_0( struct MfwMnuTag *m, struct MfwMnuAttrTag *ma, struct MfwMnuItemTag *mi ) { return (HTTP_Selected()?0:1); } #endif /******************************************************************************* $Function: item_flag_hide $Description: Attribut function for menu entries. This function shall be used for all cases of hiding menu entries. $Returns: MNU_ITEM_HIDE always $Arguments: m, ma, mi - not used *******************************************************************************/ USHORT item_flag_hide( T_MFW_MNU *m, T_MFW_MNU_ATTR *ma, T_MFW_MNU_ITEM *mi ) { return MNU_ITEM_HIDE; } /******************************************************************************* $Function: menuIsFocussed $Description: Returns 1 if the menu window has the focus, else returns 0. $Returns: Returns 1 if the menu window has the focus, else returns 0. $Arguments: None *******************************************************************************/ int menuIsFocussed( void ) { return winIsFocussed( win ); } /******************************************************************************* $Function: menuEnableSimMenu $Description: Unhides the SIM toolkit menu item, using <label> as the label. If <label> is 0, the default label is used. If the SIM toolkit menu item is invoked by the user, <simCallback> gets called with argument <window>, unless <simCallback> is 0. $Returns: None $Arguments: label, simCallBack, simWindow as indicated above *******************************************************************************/ void menuEnableSimMenu( char *label, SimMenuFunc simCallback, MfwHnd simWindow ) { TRACE_FUNCTION("menuEnableSimMenu"); SimCallback = simCallback; /* parameter to callback */ SimWindow = simWindow; } /******************************************************************************* $Function: menuDisableSimMenu $Description: Hides the SIM toolkit menu item $Returns: None $Arguments: None *******************************************************************************/ void menuDisableSimMenu(void) { TRACE_FUNCTION("menuDisableSimMenu"); } /******************************************************************************* End Of File *******************************************************************************/