📄 listbox_itemdisabled.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\listbox_itemdisabled.o --depend=.\Obj\listbox_itemdisabled.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\LISTBOX_ItemDisabled.c]
THUMB
AREA ||i.LISTBOX_GetItemDisabled||, CODE, READONLY, ALIGN=1
LISTBOX_GetItemDisabled PROC
;;;38 */
;;;39 int LISTBOX_GetItemDisabled(LISTBOX_Handle hObj, unsigned Index) {
000000 b570 PUSH {r4-r6,lr}
000002 460d MOV r5,r1
;;;40 int Ret = 0;
000004 2400 MOVS r4,#0
;;;41 if (hObj) {
000006 b190 CBZ r0,|L1.46|
;;;42 unsigned NumItems;
;;;43 LISTBOX_Obj* pObj;
;;;44 WM_LOCK();
;;;45 pObj = LISTBOX_H2P(hObj);
000008 f7fffffe BL GUI_ALLOC_h2p
00000c 4606 MOV r6,r0
;;;46 NumItems = LISTBOX__GetNumItems(pObj);
00000e f7fffffe BL LISTBOX__GetNumItems
;;;47 if (Index < NumItems) {
000012 4285 CMP r5,r0
000014 d20b BCS |L1.46|
;;;48 WM_HMEM hItem = GUI_ARRAY_GethItem(&pObj->ItemArray, Index);
000016 4629 MOV r1,r5
000018 f1060028 ADD r0,r6,#0x28
00001c f7fffffe BL GUI_ARRAY_GethItem
;;;49 if (hItem) {
000020 b128 CBZ r0,|L1.46|
;;;50 LISTBOX_ITEM * pItem = (LISTBOX_ITEM *)GUI_ALLOC_h2p(hItem);
000022 f7fffffe BL GUI_ALLOC_h2p
;;;51 if (pItem->Status & LISTBOX_ITEM_DISABLED) {
000026 7900 LDRB r0,[r0,#4]
000028 0780 LSLS r0,r0,#30
00002a d500 BPL |L1.46|
;;;52 Ret = 1;
00002c 2401 MOVS r4,#1
|L1.46|
;;;53 }
;;;54 }
;;;55 }
;;;56 WM_UNLOCK();
;;;57 }
;;;58 return Ret;
00002e 4620 MOV r0,r4
;;;59 }
000030 bd70 POP {r4-r6,pc}
;;;60
ENDP
AREA ||i.LISTBOX_SetItemDisabled||, CODE, READONLY, ALIGN=1
LISTBOX_SetItemDisabled PROC
;;;64 */
;;;65 void LISTBOX_SetItemDisabled(LISTBOX_Handle hObj, unsigned Index, int OnOff) {
000000 e92d41f0 PUSH {r4-r8,lr}
000004 0005 MOVS r5,r0
000006 460e MOV r6,r1
000008 4617 MOV r7,r2
;;;66 if (hObj) {
00000a d024 BEQ |L2.86|
;;;67 unsigned NumItems;
;;;68 LISTBOX_Obj* pObj;
;;;69 WM_LOCK();
;;;70 pObj = LISTBOX_H2P(hObj);
00000c 4628 MOV r0,r5
00000e f7fffffe BL GUI_ALLOC_h2p
000012 4604 MOV r4,r0
;;;71 NumItems = LISTBOX__GetNumItems(pObj);
000014 f7fffffe BL LISTBOX__GetNumItems
;;;72 if (Index < NumItems) {
000018 4286 CMP r6,r0
00001a d21c BCS |L2.86|
;;;73 WM_HMEM hItem = GUI_ARRAY_GethItem(&pObj->ItemArray, Index);
00001c 4631 MOV r1,r6
00001e f1040028 ADD r0,r4,#0x28
000022 f7fffffe BL GUI_ARRAY_GethItem
;;;74 if (hItem) {
000026 2800 CMP r0,#0
000028 d015 BEQ |L2.86|
;;;75 LISTBOX_ITEM * pItem = (LISTBOX_ITEM *)GUI_ALLOC_h2p(hItem);
00002a f7fffffe BL GUI_ALLOC_h2p
;;;76 if (OnOff) {
;;;77 if (!(pItem->Status & LISTBOX_ITEM_DISABLED)) {
00002e 7901 LDRB r1,[r0,#4]
000030 078a LSLS r2,r1,#30
000032 b127 CBZ r7,|L2.62|
000034 2a00 CMP r2,#0
000036 db0e BLT |L2.86|
;;;78 pItem->Status |= LISTBOX_ITEM_DISABLED;
000038 f0410102 ORR r1,r1,#2
;;;79 LISTBOX__InvalidateItem(hObj, pObj, Index);
00003c e003 B |L2.70|
|L2.62|
;;;80 }
;;;81 } else {
;;;82 if (pItem->Status & LISTBOX_ITEM_DISABLED) {
00003e 2a00 CMP r2,#0
000040 da09 BGE |L2.86|
;;;83 pItem->Status &= ~LISTBOX_ITEM_DISABLED;
000042 f0210102 BIC r1,r1,#2
|L2.70|
000046 7101 STRB r1,[r0,#4]
;;;84 LISTBOX__InvalidateItem(hObj, pObj, Index);
000048 4632 MOV r2,r6
00004a 4621 MOV r1,r4
00004c 4628 MOV r0,r5
00004e e8bd41f0 POP {r4-r8,lr}
000052 f7ffbffe B.W LISTBOX__InvalidateItem
|L2.86|
;;;85 }
;;;86 }
;;;87 }
;;;88 }
;;;89 WM_UNLOCK();
;;;90 }
;;;91 }
000056 e8bd81f0 POP {r4-r8,pc}
;;;92
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -