wm_show.txt

来自「STM32F103ZET6+UCOSII+UCGUI源码」· 文本 代码 · 共 82 行

TXT
82
字号
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\wm_show.o --depend=.\Obj\wm_show.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\WM\WM_Show.c]
                          THUMB

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

                  WM_InvalidateWindowDescs PROC
;;;37     */
;;;38     void WM_InvalidateWindowDescs(WM_HWIN hWin) {
000000  b570              PUSH     {r4-r6,lr}
000002  0004              MOVS     r4,r0
;;;39       WM_HWIN hChild;
;;;40       if (hWin) {
000004  d012              BEQ      |L1.44|
;;;41         WM_InvalidateWindow(hWin);    /* Invalidate window itself */
000006  4620              MOV      r0,r4
000008  f7fffffe          BL       WM_InvalidateWindow
;;;42         for (hChild = WM_GetFirstChild(hWin); hChild;) {
00000c  4620              MOV      r0,r4
00000e  f7fffffe          BL       WM_GetFirstChild
000012  4604              MOV      r4,r0
000014  e008              B        |L1.40|
                  |L1.22|
;;;43           WM_Obj* pChild = WM_H2P(hChild);
000016  4620              MOV      r0,r4
000018  f7fffffe          BL       GUI_ALLOC_h2p
00001c  4605              MOV      r5,r0
;;;44           WM_InvalidateWindowDescs(hChild);
00001e  4620              MOV      r0,r4
000020  f7fffffe          BL       WM_InvalidateWindowDescs
;;;45           hChild = pChild->hNext;
000024  f9b5401a          LDRSH    r4,[r5,#0x1a]
                  |L1.40|
000028  2c00              CMP      r4,#0                 ;42
00002a  d1f4              BNE      |L1.22|
                  |L1.44|
;;;46         }
;;;47       }
;;;48     }
00002c  bd70              POP      {r4-r6,pc}
;;;49     
                          ENDP


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

                  WM_ShowWindow PROC
;;;53     */
;;;54     void WM_ShowWindow(WM_HWIN hWin) {
000000  b510              PUSH     {r4,lr}
000002  0004              MOVS     r4,r0
;;;55       if (hWin) {
000004  d00d              BEQ      |L2.34|
;;;56         WM_Obj *pWin;
;;;57         WM_LOCK();
;;;58         pWin = WM_H2P(hWin);  
000006  4620              MOV      r0,r4
000008  f7fffffe          BL       GUI_ALLOC_h2p
;;;59         if ((pWin->Status & WM_SF_ISVIS) == 0) {  /* First check if this is necessary at all */
00000c  8b81              LDRH     r1,[r0,#0x1c]
00000e  078a              LSLS     r2,r1,#30
000010  d407              BMI      |L2.34|
;;;60           pWin->Status |= WM_SF_ISVIS;  /* Set Visibility flag */
000012  f0410102          ORR      r1,r1,#2
000016  8381              STRH     r1,[r0,#0x1c]
;;;61           WM_InvalidateWindowDescs(hWin);    /* Mark content as invalid */
000018  4620              MOV      r0,r4
00001a  e8bd4010          POP      {r4,lr}
00001e  f7ffbffe          B.W      WM_InvalidateWindowDescs
                  |L2.34|
;;;62           #if WM_SUPPORT_NOTIFY_VIS_CHANGED
;;;63             WM__NotifyVisChanged(hWin, &pWin->Rect);
;;;64           #endif
;;;65         }
;;;66         WM_UNLOCK();
;;;67       }
;;;68     }
000022  bd10              POP      {r4,pc}
;;;69     
                          ENDP

⌨️ 快捷键说明

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