📄 framewin_settitlevis.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\framewin_settitlevis.o --depend=.\Obj\framewin_settitlevis.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\FRAMEWIN_SetTitleVis.c]
THUMB
AREA ||i.FRAMEWIN_SetTitleVis||, CODE, READONLY, ALIGN=1
FRAMEWIN_SetTitleVis PROC
;;;63 */
;;;64 void FRAMEWIN_SetTitleVis(FRAMEWIN_Handle hObj, int Show) {
000000 e92d41f0 PUSH {r4-r8,lr}
000004 ea5f0800 MOVS r8,r0
000008 460d MOV r5,r1
;;;65 if (hObj) {
00000a d043 BEQ |L1.148|
;;;66 FRAMEWIN_Obj* pObj;
;;;67 int State;
;;;68 WM_LOCK();
;;;69 pObj = FRAMEWIN_H2P(hObj);
00000c 4640 MOV r0,r8
00000e f7fffffe BL GUI_ALLOC_h2p
000012 4604 MOV r4,r0
;;;70 State = pObj->Widget.State;
000014 8cc0 LDRH r0,[r0,#0x26]
;;;71 if (Show) {
;;;72 State |= FRAMEWIN_SF_TITLEVIS;
000016 4601 MOV r1,r0
000018 b115 CBZ r5,|L1.32|
00001a f0410720 ORR r7,r1,#0x20
00001e e001 B |L1.36|
|L1.32|
;;;73 } else {
;;;74 State &= ~FRAMEWIN_SF_TITLEVIS;
000020 f0210720 BIC r7,r1,#0x20
|L1.36|
;;;75 }
;;;76 if (pObj->Widget.State != State) {
000024 42b8 CMP r0,r7
000026 d035 BEQ |L1.148|
;;;77 pObj->Widget.State = State;
000028 84e7 STRH r7,[r4,#0x26]
;;;78 FRAMEWIN__UpdatePositions(pObj);
00002a 4620 MOV r0,r4
00002c f7fffffe BL FRAMEWIN__UpdatePositions
000030 f9b45018 LDRSH r5,[r4,#0x18]
000034 e01b B |L1.110|
|L1.54|
000036 4628 MOV r0,r5
000038 f7fffffe BL GUI_ALLOC_h2p
00003c 4606 MOV r6,r0
00003e f9b00002 LDRSH r0,[r0,#2]
000042 f9b41002 LDRSH r1,[r4,#2]
000046 1a40 SUBS r0,r0,r1
000048 f9b41042 LDRSH r1,[r4,#0x42]
00004c 4281 CMP r1,r0
00004e d10c BNE |L1.106|
000050 f9b4004c LDRSH r0,[r4,#0x4c]
000054 42a8 CMP r0,r5
000056 d008 BEQ |L1.106|
000058 8ce0 LDRH r0,[r4,#0x26]
00005a 0680 LSLS r0,r0,#26
00005c 4628 MOV r0,r5
00005e d502 BPL |L1.102|
000060 f7fffffe BL WM_ShowWindow
000064 e001 B |L1.106|
|L1.102|
000066 f7fffffe BL WM_HideWindow
|L1.106|
00006a f9b6501a LDRSH r5,[r6,#0x1a]
|L1.110|
00006e 2d00 CMP r5,#0
000070 d1e1 BNE |L1.54|
;;;79 _ShowHideButtons(pObj);
;;;80 if (pObj->Flags & FRAMEWIN_SF_MINIMIZED) {
000072 f8b4005c LDRH r0,[r4,#0x5c]
000076 0640 LSLS r0,r0,#25
000078 d507 BPL |L1.138|
;;;81 if (State & FRAMEWIN_SF_TITLEVIS) {
00007a 06b8 LSLS r0,r7,#26
;;;82 WM_ShowWindow(hObj);
00007c 4640 MOV r0,r8
00007e d502 BPL |L1.134|
000080 f7fffffe BL WM_ShowWindow
000084 e001 B |L1.138|
|L1.134|
;;;83 } else {
;;;84 WM_HideWindow(hObj);
000086 f7fffffe BL WM_HideWindow
|L1.138|
;;;85 }
;;;86 }
;;;87 FRAMEWIN_Invalidate(hObj);
00008a 4640 MOV r0,r8
00008c e8bd41f0 POP {r4-r8,lr}
000090 f7ffbffe B.W WM_InvalidateWindow
|L1.148|
;;;88 }
;;;89 WM_UNLOCK();
;;;90 }
;;;91 }
000094 e8bd81f0 POP {r4-r8,pc}
;;;92
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -