MTK623510A 资源添加的

时间:2022-11-27 07:49:17

1.文件格式
  plutommi/mmi/firstapp
  plutommi/mmi/firstapp/firstappinc
                        firstappdefs.h
                        firstappprot.h
                        firstappgprot.h
                        firstappresdef.h
  plutommi/mmi/firstapp/firstappsrc
                        firstappsrc.c
  plutommi/mmi/firstapp/firstappres
                        firstapp.res
                        ref_list_firstapp.txt
2.文件加入项目
  修改make/plutommi/mmi_app文件
    A.mmi_app.lis 加入 "plutommi/mmi/firstapp/firstappsrc/firstappsrc.c"
    B.mmi_app.inc 加入 "plutommi/mmi/firstapp/firstappinc"
    C.mmi_app.pth 加入 "plutommi/mmi/firstapp/firstappsrc"
    D.plutommi/customer/resgenerator/makefile
      -I "../../MMI/firstappinc"/
3.添加应用程序ID
   A.在plutommi/mmi/inc/mmi_res_rangde_def.h(MMIDATATYPE.H)
   
    RESOURCE_BASE_ENUM_BEGIN()
   
    RESOURCE_BASE_ENUM_END()

   B.
   #ifdef __mmi_firstapp__
   RESCOUR_BASE_RANGE(APP_FIRSTAPP,50),
   #endif
  
   C.
   #ifdef __mmi_firstapp__
   #define FIRSTAPP_BASE((U16)GET_RESTOURE_BASE(APP_FIRSTAPP))
   #define FIRSTAPP_BASE_MAX((U16)GET_RESOURCE_MAX(APP_FIRSTAP))
   RESCOURCE_BASE_TABLE_ITEM_PATH(APP_FIRESTAPP,".//MMI/FIRSTAPP//FRISTAPPRES//")
   #endif

4.添加资源
  .res .txt
#include "mmi_features.h"
#include "custresdef.h"

<?xml version="1.0" encoding = "UTF-8"?>
<APP ID ="APP_FIRSTAPP">
  <STRING ID = "STR_ID_APP_FIRSTAPP_HELLO"/>
  <IMAGE ID ="IMG_ID_APP_FIRSTAPP">CUST_IMG_PATH"////MainLCD////FIRSTAPP//HELLO.BMP"</IMAGE>
  <SCREEN ID ="SCR_ID_APP_FIRSTAPP_HELLO"/>
</APP>

<!--Menu Item Area-->
<MENUITEM id="" str="" img="">
<!--Menu Tree Area-->
<MENU id="" type="" img="">

A.
type = APP_MAIN(右键)                  //Easy to make app main screen fancy.   
                                       //Must have notify attribute for main menu
       APP_SUB
need:ID STR IMG
<MENU ID="APP_MAIN" STR="" IMG="">
<MENUITEM_ID>XXXX</MENUITEM_ID>
</MENU>
B.OPTION                               //Could appoint default menuitem for CSK
<MENITEM ID="MENU_ID_TEST_OPEN" STR ="STR_ID_TEST_OPEN"/>
<MENITEM ID="MENU_ID_TEST_CLOSE" STR ="STR_ID_TEST_CLOSE" GROUP ="MENU_GROUP_BT,MENU_GROUP_EMALIT"/>
<MENITEM ID="MENU_ID_TEST_COPY" STR ="STR_ID_TEST_COPY" GROUP ="MENU_GROUP_EDITOR"/>
<MENITEM ID="MENU_ID_TEST_PASTE" STR ="STR_ID_TEST_PASTE" GROUP ="MENU_GROUP_EDITOR"/>
<MENITEM ID="MENU_ID_TEST_CUT" STR ="STR_ID_TEST_CUT" GROUP ="MENU_GROUP_EDITOR"/>
 
<MENU ID="MENU_ID_TEST_EDIT_SUBMENU" TYPE="OPTION" STR ="STRID_TEST_EDIT" GROUP ="MENU_GROUP_EDITOR">
  <MENUITEM_ID>MENU_ID_TEST_COPY<MENUITEM_ID>
  <MENUITEM_ID>MENU_ID_TEST_PASTE<MENUITEM_ID>
  <MENUITEM_ID>MENU_ID_TEST_CUT<MENUITEM_ID>
</MENU>

<MENU ID="TEST_APP_OPTION" TYPE="OPTION" STR="STR_ID_TEST_OPTION">
  <MENUITEM_ID>MENU_ID_TEST_OPEN</MENUITEM_ID>
  <MENUITEM_ID DEFAULE ="TRUE">MENU_ID_TEST_CLOSE</MENUITEM_ID>
  <MENUITEM_ID TYPE="SPEARATOR"></MENUITEM_ID>
  <MENUITEM_ID>MENU_ID_TEST_EDIT_SUBMENU</MENUITEM_ID>
</MENU>
C.
Original menu (Compatible)
– compatibility to the Pluto Resource.
• When convert res_xxx.c to xxx.res directly, will use this kind
of menu.
– Used without common UI
• App need to get menu and use category to show it
Copyright © MediaTek Inc. All rights reserved. 2010/10/1 17
– Still need Events.c support
– Highlight handler
– Hint handler
MEDIATEK Confidential Supercon_WCX
MEDIATEK Confidential
<MENUITEM ID="MENU_ID_TEST_OPEN" STR ="STR_ID_TEST_OPEN" IMG="IMG_ID_TEST_OPTN"

HIGHLIGHT="MMI_TEST_OPEN_HILITE HINT ="MMI_TEST_OPEN_HINT""/>
<MENU ID="MENU_ID_TEST_OPTION" STR="STR_ID_TEST_OPTION" IMG="IMG_ID_TEST_OPTION">
   <MENUITEM_ID>MEMU_ID_TEST_OPEN</MENUITEM_ID>
</MENU>


RES FILE
[*.RES]
    -->RESGEN_XML.EXE -C will search all paths in MMIDataType.c Copy *res to temp/res and renname as *.c
       resgen_xml_copy.log
[plutommi/Customer/ResGeneratortemp/res/*.c]
    -->USE GCC -e to make *.c to get .i files,.i files will remove all compile options
       resgen_xml_files.log
[plutommi/Customer/ResGeneratortemp/res/*.i]
    -->run resgen_xml.exe -p will search and parse all .i files,and output to a temp
       resgen_xml.log
[plutommi/Customer/ResGeneratortemp/res_out]
   -->last setp of resgen_xml.exe -p,will compare all files in temp folder with destionation folder's files
      only copy &overwrite different files
      resgen_xml.log
[plutommi/Customer/CUSTOMERINC]
[plutommi/Customer/CUSTRESOURCE]
[plutommi/Customer/ResGenerator/debug/res]


XML constructs
– Tag
    • Open
    • Close
– Attributes
– Values
– Data
Form 1
<tag attrib1="value1" attrib2="value2"/>
Form 2
<tag attrib1="value1" attrib2="value2"> data </tag>
Form 3
<tag1 attrib1="value1" attrib2="value2">
<child-tag2 attrib1="value1" attrib2="value2"> data </child-tag2>
<child-tag3 attrib1="value1" attrib2="value2"/>
</tag1>


Tag maps
▪ APP
– INCLUDE
– STRING
– IMAGE
– MEDIA
– AUDIO
– ENFB
   • IMAGE
   • MEDIA
– SCREEN
– TIMER

– EVENT
– MENUITEM
– MENUSET
   • MENUITEM
   • MENUITEM_ID
– MENU
   • MENU
   • MENUITEM
   • MENUITEM_ID
   • MENUSET_ID
– MAINMENUITEM

1.STRING <STRING ID="" SCOPE="XML" FLAG="MULTIBIN" FORCE_TYPE="" GROUP="">
2.IMAGE  <IMAGE ID="" FLAG="" GROUP="">CUST_ADD_PATH</IMAGE>
3.AUDIO  <AUDIO ID="" FLAG="">CUST_ADD_PATH</AUDIO>
4.<MULIT_IMAGE ID_START="" ID_END="" MAX_COUNT="MAX">
  CUST_ADD_PATH"//MAINLCD////CSBROWSER////*.GIF"
  </MULIT_IMAGE>
5.<SCREEN ID=""/>
6.<TIMER ID=""/>