view src/aci2/bmi/mmiMenu.h @ 673:62a5285e014a

Lorekeeping: allow tpudrv-leonardo.lib on Leonardo/Tango Back in 2015 the Mother's idea was to produce a FreeCalypso development board that would be a clone of TI Leonardo, including the original quadband RFFE; one major additional stipulation was that this board needed to be able to run original unmodified TCS211-20070608 firmware with all blobs intact, with only minimal binary patches to main.lib and tpudrv.lib. The necessary patched libs were produced at that time in the tcs211-patches repository. That plan was changed and we produced FCDEV3B instead, with Openmoko's triband RFFE instead of Leonardo quadband, but when FC Magnetite started in 2016, a TPUDRV_blob= provision was still made, allowing the possibility of patching OM's tpudrv.lib for a restored Leonardo RFFE. Now in 2020 we have FC Tango which is essentially a verbatim clone of Leonardo core, including the original quadband RFFE. We have also deblobbed our firmware so much that we have absolutely no real need for a blob version of tpudrv.lib - but I thought it would be neat to put the ancient TPUDRV_blob= mechanism (classic config) to its originally intended use, just for the heck of it.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 29 May 2020 03:55:36 +0000
parents 3c2acfa1a72f
children
line wrap: on
line source

#ifndef _MMI_MENU_H_
#define _MMI_MENU_H_ 1

/*******************************************************************************

					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.h
 $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.h

	25/10/00			Original Condat(UK) BMI version.	
	   
 $End

*******************************************************************************/


/*******************************************************************************
                                                                              
                                Public Definitions
                                                                              
*******************************************************************************/

#define ALLOC_MEMORY mfwAlloc
#define FREE_MEMORY  mfwFree


typedef void ( *SimMenuFunc )( MfwHnd window );


/* Reason definitions
*/
// RAVI - COMMENTED - NOT USED IN ANY PLACE - 24-11-2005
//typedef enum
//{
//	MenuNone = MenuDummy,           /* no reason                */
//	MenuNormal,                     /* normal menu mode         */
//	MenuDone                        /* done with menu           */
//};


/* How is the menu being accessed
*/
//typedef enum
//{
//	MenuAccess,
//	HotKeyAccess
//};


/*******************************************************************************
                                                                              
                                Public Prototypes
                                                                              
*******************************************************************************/

/* Standard menu initialise, exit and handler routines
*/
void menuInit( MfwHnd parent );
void menuExit( void );
void menuEnter( void );


/* Following functinos are provided to allow dynamic menu
   construction tables to be generated by other modules
*/
EXTERN USHORT item_flag_none( struct MfwMnuTag * m, struct MfwMnuAttrTag * ma, struct MfwMnuItemTag * mi );
//xpradipg - Aug 4:changes for WAP2.0 Menu
EXTERN USHORT item_flag_WAP_2_0( struct MfwMnuTag * m, struct MfwMnuAttrTag * ma, struct MfwMnuItemTag * mi );
EXTERN USHORT item_flag_hide( T_MFW_MNU * m, T_MFW_MNU_ATTR * ma, T_MFW_MNU_ITEM * mi );
EXTERN int menuSimItemCallback( MfwMnu* m, MfwMnuItem* i );


/* Display the soft keys associated with the menu window
*/
void showMenuSoftkeys( void );


/* Returns 1 if the menu window has the focus, else returns 0.
*/
int menuIsFocussed( void );


/* Make the menu window (if it exists) the top window.
*/
void menuRaise( void );


/* If possible go <levels> steps up the menu tree.
*/
void menuPop( int levels );


/* Go to the root level and then exit the main menu in an orderly fasion.
   Can only be called when the user is logically somewhere in the main menu tree,
   e.g. _after_ fully exiting an application invoked by the main menu, and
   this includes DYI sub-menu(tree)s of the main menu.
*/
void menuDropOut( void );


/* Unhides the SIM toolkit menu item, using <label> as the label.
   If <label> is NULL, the default label is used.
   If the SIM toolkit menu item is invoked by the user, <simCallback>
   gets called with argument <simWindow>, unless <simCallback> is NULL.
*/
void menuEnableSimMenu( char *label, SimMenuFunc simCallback, MfwHnd simWindow );


/* Hides the SIM toolkit menu item.
*/
void menuDisableSimMenu( void );

/* From where was the menu accessed?
*/
void menuAccessFrom( U8 source );


/*******************************************************************************
                                                                              
                                Developmental
                                                                              
*******************************************************************************/

/* Following definitions are provided for development use only
*/
#ifdef MMI_UNDER_DEVELOPMENT

int  mmiMenuNotImplemented( MfwMnu* m, MfwMnuItem* i );
void mmiMenuNotImplementedCB( T_MFW_HND win, UBYTE identifier, UBYTE reason );

#endif



/*******************************************************************************
                                                                              
                                End of File
                                                                              
*******************************************************************************/

#endif