⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menu_insertitem.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\menu_insertitem.o --depend=.\Obj\menu_insertitem.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\Config -I..\..\GUI\Core -I..\..\GUI\Font -I..\..\GUI\ConvertColor -I..\..\GUI\AntiAlias -I..\..\GUI\ConvertMono -I..\..\GUI\JPEG -I..\..\GUI\MemDev -I..\..\GUI\MultiLayer -I..\..\GUI\Widget -I..\..\GUI\WM -IC:\Keil\ARM\INC\ST\STM32F10x ..\..\GUI\Widget\MENU_InsertItem.c]
                          THUMB

                          AREA ||i.MENU_InsertItem||, CODE, READONLY, ALIGN=1

                  MENU_InsertItem PROC
;;;34     */
;;;35     void MENU_InsertItem(MENU_Handle hObj, U16 ItemId, const MENU_ITEM_DATA* pItemData) {
000000  b5f7              PUSH     {r0-r2,r4-r7,lr}
;;;36       if (hObj && pItemData) {
000002  f9bd0000          LDRSH    r0,[sp,#0]
000006  4615              MOV      r5,r2                 ;35
000008  2800              CMP      r0,#0
00000a  d01e              BEQ      |L1.74|
00000c  2d00              CMP      r5,#0
00000e  d01c              BEQ      |L1.74|
;;;37         int Index;
;;;38         WM_LOCK();
;;;39         Index = MENU__FindItem(hObj, ItemId, &hObj);
000010  466a              MOV      r2,sp
000012  f7fffffe          BL       MENU__FindItem
000016  1e04              SUBS     r4,r0,#0
;;;40         if (Index >= 0) {
000018  db17              BLT      |L1.74|
;;;41           MENU_Obj* pObj;
;;;42           pObj = MENU_H2P(hObj);
00001a  f9bd0000          LDRSH    r0,[sp,#0]
00001e  f7fffffe          BL       GUI_ALLOC_h2p
000022  4606              MOV      r6,r0
;;;43           if (GUI_ARRAY_InsertBlankItem(&pObj->ItemArray, Index) != 0) {
000024  3058              ADDS     r0,r0,#0x58
000026  4621              MOV      r1,r4
000028  4607              MOV      r7,r0
00002a  f7fffffe          BL       GUI_ARRAY_InsertBlankItem
00002e  2800              CMP      r0,#0
000030  d00b              BEQ      |L1.74|
;;;44             if (MENU__SetItem(hObj, pObj, Index, pItemData) == 0) {
000032  462b              MOV      r3,r5
000034  4622              MOV      r2,r4
000036  4631              MOV      r1,r6
000038  f9bd0000          LDRSH    r0,[sp,#0]
00003c  f7fffffe          BL       MENU__SetItem
000040  b920              CBNZ     r0,|L1.76|
;;;45               GUI_ARRAY_DeleteItem(&pObj->ItemArray, Index);
000042  4621              MOV      r1,r4
000044  4638              MOV      r0,r7
000046  f7fffffe          BL       GUI_ARRAY_DeleteItem
                  |L1.74|
;;;46             } else {
;;;47               MENU__ResizeMenu(hObj, pObj);
;;;48             }
;;;49           }
;;;50         }
;;;51         WM_UNLOCK();
;;;52       }
;;;53     }
00004a  bdfe              POP      {r1-r7,pc}
                  |L1.76|
00004c  4631              MOV      r1,r6                 ;47
00004e  f9bd0000          LDRSH    r0,[sp,#0]            ;47
000052  f7fffffe          BL       MENU__ResizeMenu
000056  bdfe              POP      {r1-r7,pc}
;;;54     
                          ENDP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -