mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
d_a_e_fz work, doxygen revamp (#2127)
* initial freezard actor struct + setActionMode OK * daE_FZ_Draw * setReflectAngle * mBoundSoundset * daE_FZ_Execute & execute * demoDelete * daE_FZ_Delete & _delete * CreateHeap * useHeapInit * cc_set * mtx_set * action WIP * way_gake_check * executeRollMove * executeMove * draw WIP * executeDamage * checkpoint * create * checkpoint * daE_FZ_c::executeWait * checkpoint * daE_FZ_c::damage_check almost done * rm asm * rm headers * setup_profile WIP + doxygen update * fix merge issues * docs fix? * fix2 * doxygen updates * setup g_profile_E_FZ, profile setup script WIP * update github actions * update progress.md
This commit is contained in:
@@ -1,22 +1,19 @@
|
|||||||
name: run Doxygen to generate docs
|
name: Generate Doxygen Static Site
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v4
|
||||||
- name: generate docs
|
- name: generate docs
|
||||||
uses: mattnotmitt/doxygen-action@v1
|
uses: mattnotmitt/doxygen-action@v1
|
||||||
with:
|
with:
|
||||||
doxyfile-path: 'Doxyfile'
|
doxyfile-path: 'Doxyfile'
|
||||||
- name: deploy docs to github pages
|
- name: deploy docs to github pages
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
uses: peaceiris/actions-gh-pages@v4
|
||||||
with:
|
with:
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
publish_dir: ./docs/doxygen
|
publish_dir: ./docs/doxygen/html
|
||||||
|
|||||||
+10
-10
@@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
|
|||||||
.init | 97.972973% | 9280 | 9472
|
.init | 97.972973% | 9280 | 9472
|
||||||
.extab | 100.000000% | 96 | 96
|
.extab | 100.000000% | 96 | 96
|
||||||
.extabindex | 100.000000% | 96 | 96
|
.extabindex | 100.000000% | 96 | 96
|
||||||
.text | 48.455851% | 1742736 | 3596544
|
.text | 48.756584% | 1753552 | 3596544
|
||||||
.ctors | 100.000000% | 448 | 448
|
.ctors | 100.000000% | 448 | 448
|
||||||
.dtors | 100.000000% | 32 | 32
|
.dtors | 100.000000% | 32 | 32
|
||||||
.rodata | 100.000000% | 193856 | 193856
|
.rodata | 100.000000% | 193856 | 193856
|
||||||
.data | 100.000000% | 197632 | 197632
|
.data | 100.000000% | 197632 | 197632
|
||||||
.sdata | 100.000000% | 1408 | 1408
|
.sdata | 100.000000% | 1408 | 1408
|
||||||
.sdata2 | 100.000000% | 20832 | 20832
|
.sdata2 | 100.000000% | 20832 | 20832
|
||||||
Total | 53.888305% | 2166672 | 4020672
|
Total | 54.157315% | 2177488 | 4020672
|
||||||
|
|
||||||
## Total
|
## Total
|
||||||
|
|
||||||
Section | Percentage | Decompiled (bytes) | Total (bytes)
|
Section | Percentage | Decompiled (bytes) | Total (bytes)
|
||||||
---|---|---|---
|
---|---|---|---
|
||||||
main.dol | 53.888305% | 2166672 | 4020672
|
main.dol | 54.157315% | 2177488 | 4020672
|
||||||
RELs | 37.290880% | 4288572 | 11500324
|
RELs | 37.556090% | 4319072 | 11500324
|
||||||
Total | 41.590398% | 6455244 | 15520996
|
Total | 41.856592% | 6496560 | 15520996
|
||||||
|
|
||||||
## RELs
|
## RELs
|
||||||
|
|
||||||
@@ -74,8 +74,8 @@ d_a_demo_item | 33.863165% | 3920 | 11576
|
|||||||
d_a_disappear | 100.000000% | 2404 | 2404
|
d_a_disappear | 100.000000% | 2404 | 2404
|
||||||
d_a_dmidna | 100.000000% | 1888 | 1888
|
d_a_dmidna | 100.000000% | 1888 | 1888
|
||||||
d_a_do | 37.666220% | 14616 | 38804
|
d_a_do | 37.666220% | 14616 | 38804
|
||||||
d_a_door_boss | 66.342756% | 6008 | 9056
|
d_a_door_boss | 100.000000% | 9056 | 9056
|
||||||
d_a_door_bossL1 | 39.355114% | 7372 | 18732
|
d_a_door_bossL1 | 100.000000% | 18732 | 18732
|
||||||
d_a_door_bossL5 | 39.221790% | 4032 | 10280
|
d_a_door_bossL5 | 39.221790% | 4032 | 10280
|
||||||
d_a_door_dbdoor00 | 100.000000% | 7620 | 7620
|
d_a_door_dbdoor00 | 100.000000% | 7620 | 7620
|
||||||
d_a_door_knob00 | 37.500000% | 4608 | 12288
|
d_a_door_knob00 | 37.500000% | 4608 | 12288
|
||||||
@@ -107,7 +107,7 @@ d_a_e_fb | 31.127328% | 4948 | 15896
|
|||||||
d_a_e_fk | 32.965394% | 4420 | 13408
|
d_a_e_fk | 32.965394% | 4420 | 13408
|
||||||
d_a_e_fm | 24.588144% | 15164 | 61672
|
d_a_e_fm | 24.588144% | 15164 | 61672
|
||||||
d_a_e_fs | 31.823996% | 4976 | 15636
|
d_a_e_fs | 31.823996% | 4976 | 15636
|
||||||
d_a_e_fz | 30.508860% | 5372 | 17608
|
d_a_e_fz | 35.756474% | 6296 | 17608
|
||||||
d_a_e_ga | 43.014395% | 2032 | 4724
|
d_a_e_ga | 43.014395% | 2032 | 4724
|
||||||
d_a_e_gb | 26.939571% | 8292 | 30780
|
d_a_e_gb | 26.939571% | 8292 | 30780
|
||||||
d_a_e_ge | 24.669967% | 7176 | 29088
|
d_a_e_ge | 24.669967% | 7176 | 29088
|
||||||
@@ -136,7 +136,7 @@ d_a_e_ms | 28.208138% | 5768 | 20448
|
|||||||
d_a_e_nest | 100.000000% | 19932 | 19932
|
d_a_e_nest | 100.000000% | 19932 | 19932
|
||||||
d_a_e_nz | 32.041969% | 4764 | 14868
|
d_a_e_nz | 32.041969% | 4764 | 14868
|
||||||
d_a_e_oc | 22.586920% | 11148 | 49356
|
d_a_e_oc | 22.586920% | 11148 | 49356
|
||||||
d_a_e_oct_bg | 30.217151% | 6568 | 21736
|
d_a_e_oct_bg | 100.000000% | 21736 | 21736
|
||||||
d_a_e_ot | 32.497589% | 5392 | 16592
|
d_a_e_ot | 32.497589% | 5392 | 16592
|
||||||
d_a_e_ph | 100.000000% | 23872 | 23872
|
d_a_e_ph | 100.000000% | 23872 | 23872
|
||||||
d_a_e_pm | 21.505129% | 11236 | 52248
|
d_a_e_pm | 21.505129% | 11236 | 52248
|
||||||
@@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244
|
|||||||
d_a_warp_bug | 100.000000% | 2024 | 2024
|
d_a_warp_bug | 100.000000% | 2024 | 2024
|
||||||
d_a_ykgr | 44.400631% | 2252 | 5072
|
d_a_ykgr | 44.400631% | 2252 | 5072
|
||||||
f_pc_profile_lst | 100.000000% | 28156 | 28156
|
f_pc_profile_lst | 100.000000% | 28156 | 28156
|
||||||
Total | 37.290880% | 4288572 | 11500324
|
Total | 37.556090% | 4319072 | 11500324
|
||||||
|
|||||||
@@ -1,37 +0,0 @@
|
|||||||
lbl_806C0C28:
|
|
||||||
/* 806C0C28 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C0C2C 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C0C30 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C0C34 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 806C0C38 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 806C0C3C 3C 60 80 6C */ lis r3, d_a_e_fz__stringBase0@ha /* 0x806C19F4@ha */
|
|
||||||
/* 806C0C40 38 63 19 F4 */ addi r3, r3, d_a_e_fz__stringBase0@l /* 0x806C19F4@l */
|
|
||||||
/* 806C0C44 38 80 00 03 */ li r4, 3
|
|
||||||
/* 806C0C48 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
|
||||||
/* 806C0C4C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
|
||||||
/* 806C0C50 3C A5 00 02 */ addis r5, r5, 2
|
|
||||||
/* 806C0C54 38 C0 00 80 */ li r6, 0x80
|
|
||||||
/* 806C0C58 38 A5 C2 F8 */ addi r5, r5, -15624
|
|
||||||
/* 806C0C5C 4B 97 B6 91 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
|
|
||||||
/* 806C0C60 38 80 00 00 */ li r4, 0
|
|
||||||
/* 806C0C64 3C A0 11 02 */ lis r5, 0x1102 /* 0x11020203@ha */
|
|
||||||
/* 806C0C68 38 A5 02 03 */ addi r5, r5, 0x0203 /* 0x11020203@l */
|
|
||||||
/* 806C0C6C 4B 95 3F E9 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
|
|
||||||
/* 806C0C70 90 7F 05 B4 */ stw r3, 0x5b4(r31)
|
|
||||||
/* 806C0C74 80 9F 05 B4 */ lwz r4, 0x5b4(r31)
|
|
||||||
/* 806C0C78 28 04 00 00 */ cmplwi r4, 0
|
|
||||||
/* 806C0C7C 40 82 00 0C */ bne lbl_806C0C88
|
|
||||||
/* 806C0C80 38 60 00 00 */ li r3, 0
|
|
||||||
/* 806C0C84 48 00 00 18 */ b lbl_806C0C9C
|
|
||||||
lbl_806C0C88:
|
|
||||||
/* 806C0C88 38 7F 05 B8 */ addi r3, r31, 0x5b8
|
|
||||||
/* 806C0C8C 38 A0 00 01 */ li r5, 1
|
|
||||||
/* 806C0C90 4B 94 D8 AD */ bl create__21mDoExt_invisibleModelFP8J3DModelUc
|
|
||||||
/* 806C0C94 30 03 FF FF */ addic r0, r3, -1
|
|
||||||
/* 806C0C98 7C 60 19 10 */ subfe r3, r0, r3
|
|
||||||
lbl_806C0C9C:
|
|
||||||
/* 806C0C9C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 806C0CA0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C0CA4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0CA8 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C0CAC 4E 80 00 20 */ blr
|
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
lbl_806C0B94:
|
|
||||||
/* 806C0B94 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C0B98 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C0B9C 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C0BA0 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 806C0BA4 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 806C0BA8 38 7F 05 AC */ addi r3, r31, 0x5ac
|
|
||||||
/* 806C0BAC 3C 80 80 6C */ lis r4, d_a_e_fz__stringBase0@ha /* 0x806C19F4@ha */
|
|
||||||
/* 806C0BB0 38 84 19 F4 */ addi r4, r4, d_a_e_fz__stringBase0@l /* 0x806C19F4@l */
|
|
||||||
/* 806C0BB4 4B 96 C4 55 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
|
|
||||||
/* 806C0BB8 88 1F 0C 21 */ lbz r0, 0xc21(r31)
|
|
||||||
/* 806C0BBC 28 00 00 00 */ cmplwi r0, 0
|
|
||||||
/* 806C0BC0 41 82 00 10 */ beq lbl_806C0BD0
|
|
||||||
/* 806C0BC4 38 00 00 00 */ li r0, 0
|
|
||||||
/* 806C0BC8 3C 60 80 6C */ lis r3, data_806C1BA0@ha /* 0x806C1BA0@ha */
|
|
||||||
/* 806C0BCC 98 03 1B A0 */ stb r0, data_806C1BA0@l(r3) /* 0x806C1BA0@l */
|
|
||||||
lbl_806C0BD0:
|
|
||||||
/* 806C0BD0 80 1F 00 F0 */ lwz r0, 0xf0(r31)
|
|
||||||
/* 806C0BD4 28 00 00 00 */ cmplwi r0, 0
|
|
||||||
/* 806C0BD8 41 82 00 18 */ beq lbl_806C0BF0
|
|
||||||
/* 806C0BDC 38 7F 05 C0 */ addi r3, r31, 0x5c0
|
|
||||||
/* 806C0BE0 81 9F 05 C0 */ lwz r12, 0x5c0(r31)
|
|
||||||
/* 806C0BE4 81 8C 00 08 */ lwz r12, 8(r12)
|
|
||||||
/* 806C0BE8 7D 89 03 A6 */ mtctr r12
|
|
||||||
/* 806C0BEC 4E 80 04 21 */ bctrl
|
|
||||||
lbl_806C0BF0:
|
|
||||||
/* 806C0BF0 38 60 00 01 */ li r3, 1
|
|
||||||
/* 806C0BF4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 806C0BF8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C0BFC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0C00 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C0C04 4E 80 00 20 */ blr
|
|
||||||
@@ -226,14 +226,14 @@ lbl_806C1020:
|
|||||||
/* 806C102C 38 84 0F 38 */ addi r4, r4, 0xf38
|
/* 806C102C 38 84 0F 38 */ addi r4, r4, 0xf38
|
||||||
/* 806C1030 4B 9B 5A 7D */ bl CrrPos__9dBgS_AcchFR4dBgS
|
/* 806C1030 4B 9B 5A 7D */ bl CrrPos__9dBgS_AcchFR4dBgS
|
||||||
/* 806C1034 38 7D 09 80 */ addi r3, r29, 0x980
|
/* 806C1034 38 7D 09 80 */ addi r3, r29, 0x980
|
||||||
/* 806C1038 3C 80 80 6C */ lis r4, data_806C1A38@ha /* 0x806C1A38@ha */
|
/* 806C1038 3C 80 80 6C */ lis r4, cc_fz_src@ha /* 0x806C1A38@ha */
|
||||||
/* 806C103C 38 84 1A 38 */ addi r4, r4, data_806C1A38@l /* 0x806C1A38@l */
|
/* 806C103C 38 84 1A 38 */ addi r4, r4, cc_fz_src@l /* 0x806C1A38@l */
|
||||||
/* 806C1040 4B 9C 39 F5 */ bl Set__8dCcD_SphFRC11dCcD_SrcSph
|
/* 806C1040 4B 9C 39 F5 */ bl Set__8dCcD_SphFRC11dCcD_SrcSph
|
||||||
/* 806C1044 38 1D 09 44 */ addi r0, r29, 0x944
|
/* 806C1044 38 1D 09 44 */ addi r0, r29, 0x944
|
||||||
/* 806C1048 90 1D 09 C4 */ stw r0, 0x9c4(r29)
|
/* 806C1048 90 1D 09 C4 */ stw r0, 0x9c4(r29)
|
||||||
/* 806C104C 38 7D 0A B8 */ addi r3, r29, 0xab8
|
/* 806C104C 38 7D 0A B8 */ addi r3, r29, 0xab8
|
||||||
/* 806C1050 3C 80 80 6C */ lis r4, data_806C1A78@ha /* 0x806C1A78@ha */
|
/* 806C1050 3C 80 80 6C */ lis r4, cc_fz_at_src@ha /* 0x806C1A78@ha */
|
||||||
/* 806C1054 38 84 1A 78 */ addi r4, r4, data_806C1A78@l /* 0x806C1A78@l */
|
/* 806C1054 38 84 1A 78 */ addi r4, r4, cc_fz_at_src@l /* 0x806C1A78@l */
|
||||||
/* 806C1058 4B 9C 39 DD */ bl Set__8dCcD_SphFRC11dCcD_SrcSph
|
/* 806C1058 4B 9C 39 DD */ bl Set__8dCcD_SphFRC11dCcD_SrcSph
|
||||||
/* 806C105C 38 1D 09 44 */ addi r0, r29, 0x944
|
/* 806C105C 38 1D 09 44 */ addi r0, r29, 0x944
|
||||||
/* 806C1060 90 1D 0A FC */ stw r0, 0xafc(r29)
|
/* 806C1060 90 1D 0A FC */ stw r0, 0xafc(r29)
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
lbl_806C13D8:
|
|
||||||
/* 806C13D8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C13DC 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C13E0 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C13E4 4B FF F8 ED */ bl create__8daE_FZ_cFv
|
|
||||||
/* 806C13E8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C13EC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C13F0 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C13F4 4E 80 00 20 */ blr
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
lbl_806C0C08:
|
|
||||||
/* 806C0C08 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C0C0C 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C0C10 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C0C14 4B FF FF 81 */ bl _delete__8daE_FZ_cFv
|
|
||||||
/* 806C0C18 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C0C1C 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0C20 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C0C24 4E 80 00 20 */ blr
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
lbl_806BEAD8:
|
|
||||||
/* 806BEAD8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806BEADC 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806BEAE0 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806BEAE4 4B FF FE F1 */ bl draw__8daE_FZ_cFv
|
|
||||||
/* 806BEAE8 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806BEAEC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806BEAF0 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806BEAF4 4E 80 00 20 */ blr
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
lbl_806C0B00:
|
|
||||||
/* 806C0B00 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C0B04 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C0B08 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C0B0C 4B FF FD B9 */ bl execute__8daE_FZ_cFv
|
|
||||||
/* 806C0B10 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C0B14 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0B18 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C0B1C 4E 80 00 20 */ blr
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
lbl_806C0B20:
|
|
||||||
/* 806C0B20 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 806C0B24 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C0B28 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 806C0B2C 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 806C0B30 4B CA 16 A9 */ bl _savegpr_28
|
|
||||||
/* 806C0B34 7C 7C 1B 78 */ mr r28, r3
|
|
||||||
/* 806C0B38 3B A0 00 00 */ li r29, 0
|
|
||||||
/* 806C0B3C 3B E0 00 00 */ li r31, 0
|
|
||||||
/* 806C0B40 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
|
||||||
/* 806C0B44 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
|
||||||
lbl_806C0B48:
|
|
||||||
/* 806C0B48 80 7E 5D 3C */ lwz r3, 0x5d3c(r30)
|
|
||||||
/* 806C0B4C 38 63 02 10 */ addi r3, r3, 0x210
|
|
||||||
/* 806C0B50 38 1F 07 1C */ addi r0, r31, 0x71c
|
|
||||||
/* 806C0B54 7C 9C 00 2E */ lwzx r4, r28, r0
|
|
||||||
/* 806C0B58 4B 98 AD 5D */ bl forceOnEventMove__Q213dPa_control_c7level_cFUl
|
|
||||||
/* 806C0B5C 3B BD 00 01 */ addi r29, r29, 1
|
|
||||||
/* 806C0B60 2C 1D 00 03 */ cmpwi r29, 3
|
|
||||||
/* 806C0B64 3B FF 00 04 */ addi r31, r31, 4
|
|
||||||
/* 806C0B68 41 80 FF E0 */ blt lbl_806C0B48
|
|
||||||
/* 806C0B6C 7F 83 E3 78 */ mr r3, r28
|
|
||||||
/* 806C0B70 4B 95 91 0D */ bl fopAcM_delete__FP10fopAc_ac_c
|
|
||||||
/* 806C0B74 39 61 00 20 */ addi r11, r1, 0x20
|
|
||||||
/* 806C0B78 4B CA 16 AD */ bl _restgpr_28
|
|
||||||
/* 806C0B7C 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 806C0B80 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0B84 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 806C0B88 4E 80 00 20 */ blr
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
lbl_806BEBA0:
|
|
||||||
/* 806BEBA0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
||||||
/* 806BEBA4 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806BEBA8 90 01 00 24 */ stw r0, 0x24(r1)
|
|
||||||
/* 806BEBAC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
||||||
/* 806BEBB0 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 806BEBB4 C0 23 05 2C */ lfs f1, 0x52c(r3)
|
|
||||||
/* 806BEBB8 4B CA 34 F5 */ bl __cvt_fp2unsigned
|
|
||||||
/* 806BEBBC 7C 65 1B 78 */ mr r5, r3
|
|
||||||
/* 806BEBC0 28 05 00 01 */ cmplwi r5, 1
|
|
||||||
/* 806BEBC4 40 80 00 08 */ bge lbl_806BEBCC
|
|
||||||
/* 806BEBC8 38 A0 00 01 */ li r5, 1
|
|
||||||
lbl_806BEBCC:
|
|
||||||
/* 806BEBCC 3C 60 00 07 */ lis r3, 0x0007 /* 0x00070320@ha */
|
|
||||||
/* 806BEBD0 38 03 03 20 */ addi r0, r3, 0x0320 /* 0x00070320@l */
|
|
||||||
/* 806BEBD4 90 01 00 08 */ stw r0, 8(r1)
|
|
||||||
/* 806BEBD8 38 7F 05 C0 */ addi r3, r31, 0x5c0
|
|
||||||
/* 806BEBDC 38 81 00 08 */ addi r4, r1, 8
|
|
||||||
/* 806BEBE0 38 C0 FF FF */ li r6, -1
|
|
||||||
/* 806BEBE4 81 9F 05 C0 */ lwz r12, 0x5c0(r31)
|
|
||||||
/* 806BEBE8 81 8C 00 14 */ lwz r12, 0x14(r12)
|
|
||||||
/* 806BEBEC 7D 89 03 A6 */ mtctr r12
|
|
||||||
/* 806BEBF0 4E 80 04 21 */ bctrl
|
|
||||||
/* 806BEBF4 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
||||||
/* 806BEBF8 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
||||||
/* 806BEBFC 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806BEC00 38 21 00 20 */ addi r1, r1, 0x20
|
|
||||||
/* 806BEC04 4E 80 00 20 */ blr
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
lbl_806C06DC:
|
|
||||||
/* 806C06DC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C06E0 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C06E4 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C06E8 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 806C06EC 7C 7F 1B 78 */ mr r31, r3
|
|
||||||
/* 806C06F0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
|
||||||
/* 806C06F4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
|
||||||
/* 806C06F8 C0 3F 04 D0 */ lfs f1, 0x4d0(r31)
|
|
||||||
/* 806C06FC C0 5F 04 D4 */ lfs f2, 0x4d4(r31)
|
|
||||||
/* 806C0700 C0 7F 04 D8 */ lfs f3, 0x4d8(r31)
|
|
||||||
/* 806C0704 4B C8 61 E5 */ bl PSMTXTrans
|
|
||||||
/* 806C0708 38 7F 04 E4 */ addi r3, r31, 0x4e4
|
|
||||||
/* 806C070C 4B 94 C8 39 */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
|
|
||||||
/* 806C0710 3C 60 80 6C */ lis r3, l_HIO@ha /* 0x806C1BB0@ha */
|
|
||||||
/* 806C0714 38 63 1B B0 */ addi r3, r3, l_HIO@l /* 0x806C1BB0@l */
|
|
||||||
/* 806C0718 C0 23 00 0C */ lfs f1, 0xc(r3)
|
|
||||||
/* 806C071C FC 40 08 90 */ fmr f2, f1
|
|
||||||
/* 806C0720 FC 60 08 90 */ fmr f3, f1
|
|
||||||
/* 806C0724 4B 94 C7 15 */ bl scaleM__14mDoMtx_stack_cFfff
|
|
||||||
/* 806C0728 C0 3F 07 00 */ lfs f1, 0x700(r31)
|
|
||||||
/* 806C072C FC 40 08 90 */ fmr f2, f1
|
|
||||||
/* 806C0730 FC 60 08 90 */ fmr f3, f1
|
|
||||||
/* 806C0734 4B 94 C7 05 */ bl scaleM__14mDoMtx_stack_cFfff
|
|
||||||
/* 806C0738 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
|
||||||
/* 806C073C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
|
||||||
/* 806C0740 80 9F 05 B4 */ lwz r4, 0x5b4(r31)
|
|
||||||
/* 806C0744 38 84 00 24 */ addi r4, r4, 0x24
|
|
||||||
/* 806C0748 4B C8 5D 69 */ bl PSMTXCopy
|
|
||||||
/* 806C074C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 806C0750 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C0754 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0758 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C075C 4E 80 00 20 */ blr
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
lbl_806BEAF8:
|
|
||||||
/* 806BEAF8 90 83 06 F4 */ stw r4, 0x6f4(r3)
|
|
||||||
/* 806BEAFC 90 A3 06 F8 */ stw r5, 0x6f8(r3)
|
|
||||||
/* 806BEB00 4E 80 00 20 */ blr
|
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
lbl_806BEB04:
|
|
||||||
/* 806BEB04 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806BEB08 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806BEB0C 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806BEB10 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
||||||
/* 806BEB14 93 C1 00 08 */ stw r30, 8(r1)
|
|
||||||
/* 806BEB18 7C 7E 1B 78 */ mr r30, r3
|
|
||||||
/* 806BEB1C A8 63 07 08 */ lha r3, 0x708(r3)
|
|
||||||
/* 806BEB20 A8 1E 04 DE */ lha r0, 0x4de(r30)
|
|
||||||
/* 806BEB24 7C 03 00 50 */ subf r0, r3, r0
|
|
||||||
/* 806BEB28 7C 1F 07 34 */ extsh r31, r0
|
|
||||||
/* 806BEB2C 7F E3 FB 78 */ mr r3, r31
|
|
||||||
/* 806BEB30 4B CA 65 A1 */ bl abs
|
|
||||||
/* 806BEB34 2C 03 48 00 */ cmpwi r3, 0x4800
|
|
||||||
/* 806BEB38 40 81 00 24 */ ble lbl_806BEB5C
|
|
||||||
/* 806BEB3C A8 7E 04 DE */ lha r3, 0x4de(r30)
|
|
||||||
/* 806BEB40 3C 63 00 01 */ addis r3, r3, 1
|
|
||||||
/* 806BEB44 38 63 80 00 */ addi r3, r3, -32768
|
|
||||||
/* 806BEB48 A8 1E 07 08 */ lha r0, 0x708(r30)
|
|
||||||
/* 806BEB4C 54 00 08 3C */ slwi r0, r0, 1
|
|
||||||
/* 806BEB50 7C 03 00 50 */ subf r0, r3, r0
|
|
||||||
/* 806BEB54 B0 1E 04 DE */ sth r0, 0x4de(r30)
|
|
||||||
/* 806BEB58 48 00 00 30 */ b lbl_806BEB88
|
|
||||||
lbl_806BEB5C:
|
|
||||||
/* 806BEB5C 2C 1F 38 00 */ cmpwi r31, 0x3800
|
|
||||||
/* 806BEB60 40 81 00 14 */ ble lbl_806BEB74
|
|
||||||
/* 806BEB64 A8 7E 07 08 */ lha r3, 0x708(r30)
|
|
||||||
/* 806BEB68 38 03 38 00 */ addi r0, r3, 0x3800
|
|
||||||
/* 806BEB6C B0 1E 04 DE */ sth r0, 0x4de(r30)
|
|
||||||
/* 806BEB70 48 00 00 18 */ b lbl_806BEB88
|
|
||||||
lbl_806BEB74:
|
|
||||||
/* 806BEB74 2C 1F C8 00 */ cmpwi r31, -14336
|
|
||||||
/* 806BEB78 40 80 00 10 */ bge lbl_806BEB88
|
|
||||||
/* 806BEB7C A8 7E 07 08 */ lha r3, 0x708(r30)
|
|
||||||
/* 806BEB80 38 03 C8 00 */ addi r0, r3, -14336
|
|
||||||
/* 806BEB84 B0 1E 04 DE */ sth r0, 0x4de(r30)
|
|
||||||
lbl_806BEB88:
|
|
||||||
/* 806BEB88 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
||||||
/* 806BEB8C 83 C1 00 08 */ lwz r30, 8(r1)
|
|
||||||
/* 806BEB90 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806BEB94 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806BEB98 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806BEB9C 4E 80 00 20 */ blr
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
lbl_806C0CB0:
|
|
||||||
/* 806C0CB0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
||||||
/* 806C0CB4 7C 08 02 A6 */ mflr r0
|
|
||||||
/* 806C0CB8 90 01 00 14 */ stw r0, 0x14(r1)
|
|
||||||
/* 806C0CBC 4B FF FF 6D */ bl CreateHeap__8daE_FZ_cFv
|
|
||||||
/* 806C0CC0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
||||||
/* 806C0CC4 7C 08 03 A6 */ mtlr r0
|
|
||||||
/* 806C0CC8 38 21 00 10 */ addi r1, r1, 0x10
|
|
||||||
/* 806C0CCC 4E 80 00 20 */ blr
|
|
||||||
@@ -0,0 +1,157 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
Doxygen Awesome
|
||||||
|
https://github.com/jothepro/doxygen-awesome-css
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2021 - 2023 jothepro
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class DoxygenAwesomeDarkModeToggle extends HTMLElement {
|
||||||
|
// SVG icons from https://fonts.google.com/icons
|
||||||
|
// Licensed under the Apache 2.0 license:
|
||||||
|
// https://www.apache.org/licenses/LICENSE-2.0.html
|
||||||
|
static lightModeIcon = `<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#FCBF00"><rect fill="none" height="24" width="24"/><circle cx="12" cy="12" opacity=".3" r="3"/><path d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"/></svg>`
|
||||||
|
static darkModeIcon = `<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#FE9700"><rect fill="none" height="24" width="24"/><path d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27 C17.45,17.19,14.93,19,12,19c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z" opacity=".3"/><path d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"/></svg>`
|
||||||
|
static title = "Toggle Light/Dark Mode"
|
||||||
|
|
||||||
|
static prefersLightModeInDarkModeKey = "prefers-light-mode-in-dark-mode"
|
||||||
|
static prefersDarkModeInLightModeKey = "prefers-dark-mode-in-light-mode"
|
||||||
|
|
||||||
|
static _staticConstructor = function() {
|
||||||
|
DoxygenAwesomeDarkModeToggle.enableDarkMode(DoxygenAwesomeDarkModeToggle.userPreference)
|
||||||
|
// Update the color scheme when the browsers preference changes
|
||||||
|
// without user interaction on the website.
|
||||||
|
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
|
||||||
|
DoxygenAwesomeDarkModeToggle.onSystemPreferenceChanged()
|
||||||
|
})
|
||||||
|
// Update the color scheme when the tab is made visible again.
|
||||||
|
// It is possible that the appearance was changed in another tab
|
||||||
|
// while this tab was in the background.
|
||||||
|
document.addEventListener("visibilitychange", visibilityState => {
|
||||||
|
if (document.visibilityState === 'visible') {
|
||||||
|
DoxygenAwesomeDarkModeToggle.onSystemPreferenceChanged()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}()
|
||||||
|
|
||||||
|
static init() {
|
||||||
|
$(function() {
|
||||||
|
$(document).ready(function() {
|
||||||
|
const toggleButton = document.createElement('doxygen-awesome-dark-mode-toggle')
|
||||||
|
toggleButton.title = DoxygenAwesomeDarkModeToggle.title
|
||||||
|
toggleButton.updateIcon()
|
||||||
|
|
||||||
|
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
|
||||||
|
toggleButton.updateIcon()
|
||||||
|
})
|
||||||
|
document.addEventListener("visibilitychange", visibilityState => {
|
||||||
|
if (document.visibilityState === 'visible') {
|
||||||
|
toggleButton.updateIcon()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
document.getElementById("MSearchBox").parentNode.appendChild(toggleButton)
|
||||||
|
})
|
||||||
|
$(window).resize(function(){
|
||||||
|
document.getElementById("MSearchBox").parentNode.appendChild(toggleButton)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
this.onclick=this.toggleDarkMode
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns `true` for dark-mode, `false` for light-mode system preference
|
||||||
|
*/
|
||||||
|
static get systemPreference() {
|
||||||
|
return window.matchMedia('(prefers-color-scheme: dark)').matches
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns `true` for dark-mode, `false` for light-mode user preference
|
||||||
|
*/
|
||||||
|
static get userPreference() {
|
||||||
|
return (!DoxygenAwesomeDarkModeToggle.systemPreference && localStorage.getItem(DoxygenAwesomeDarkModeToggle.prefersDarkModeInLightModeKey)) ||
|
||||||
|
(DoxygenAwesomeDarkModeToggle.systemPreference && !localStorage.getItem(DoxygenAwesomeDarkModeToggle.prefersLightModeInDarkModeKey))
|
||||||
|
}
|
||||||
|
|
||||||
|
static set userPreference(userPreference) {
|
||||||
|
DoxygenAwesomeDarkModeToggle.darkModeEnabled = userPreference
|
||||||
|
if(!userPreference) {
|
||||||
|
if(DoxygenAwesomeDarkModeToggle.systemPreference) {
|
||||||
|
localStorage.setItem(DoxygenAwesomeDarkModeToggle.prefersLightModeInDarkModeKey, true)
|
||||||
|
} else {
|
||||||
|
localStorage.removeItem(DoxygenAwesomeDarkModeToggle.prefersDarkModeInLightModeKey)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(!DoxygenAwesomeDarkModeToggle.systemPreference) {
|
||||||
|
localStorage.setItem(DoxygenAwesomeDarkModeToggle.prefersDarkModeInLightModeKey, true)
|
||||||
|
} else {
|
||||||
|
localStorage.removeItem(DoxygenAwesomeDarkModeToggle.prefersLightModeInDarkModeKey)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DoxygenAwesomeDarkModeToggle.onUserPreferenceChanged()
|
||||||
|
}
|
||||||
|
|
||||||
|
static enableDarkMode(enable) {
|
||||||
|
if(enable) {
|
||||||
|
DoxygenAwesomeDarkModeToggle.darkModeEnabled = true
|
||||||
|
document.documentElement.classList.add("dark-mode")
|
||||||
|
document.documentElement.classList.remove("light-mode")
|
||||||
|
} else {
|
||||||
|
DoxygenAwesomeDarkModeToggle.darkModeEnabled = false
|
||||||
|
document.documentElement.classList.remove("dark-mode")
|
||||||
|
document.documentElement.classList.add("light-mode")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static onSystemPreferenceChanged() {
|
||||||
|
DoxygenAwesomeDarkModeToggle.darkModeEnabled = DoxygenAwesomeDarkModeToggle.userPreference
|
||||||
|
DoxygenAwesomeDarkModeToggle.enableDarkMode(DoxygenAwesomeDarkModeToggle.darkModeEnabled)
|
||||||
|
}
|
||||||
|
|
||||||
|
static onUserPreferenceChanged() {
|
||||||
|
DoxygenAwesomeDarkModeToggle.enableDarkMode(DoxygenAwesomeDarkModeToggle.darkModeEnabled)
|
||||||
|
}
|
||||||
|
|
||||||
|
toggleDarkMode() {
|
||||||
|
DoxygenAwesomeDarkModeToggle.userPreference = !DoxygenAwesomeDarkModeToggle.userPreference
|
||||||
|
this.updateIcon()
|
||||||
|
}
|
||||||
|
|
||||||
|
updateIcon() {
|
||||||
|
if(DoxygenAwesomeDarkModeToggle.darkModeEnabled) {
|
||||||
|
this.innerHTML = DoxygenAwesomeDarkModeToggle.darkModeIcon
|
||||||
|
} else {
|
||||||
|
this.innerHTML = DoxygenAwesomeDarkModeToggle.lightModeIcon
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
customElements.define("doxygen-awesome-dark-mode-toggle", DoxygenAwesomeDarkModeToggle);
|
||||||
@@ -0,0 +1,85 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
Doxygen Awesome
|
||||||
|
https://github.com/jothepro/doxygen-awesome-css
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2022 - 2023 jothepro
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class DoxygenAwesomeFragmentCopyButton extends HTMLElement {
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
this.onclick=this.copyContent
|
||||||
|
}
|
||||||
|
static title = "Copy to clipboard"
|
||||||
|
static copyIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg>`
|
||||||
|
static successIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>`
|
||||||
|
static successDuration = 980
|
||||||
|
static init() {
|
||||||
|
$(function() {
|
||||||
|
$(document).ready(function() {
|
||||||
|
if(navigator.clipboard) {
|
||||||
|
const fragments = document.getElementsByClassName("fragment")
|
||||||
|
for(const fragment of fragments) {
|
||||||
|
const fragmentWrapper = document.createElement("div")
|
||||||
|
fragmentWrapper.className = "doxygen-awesome-fragment-wrapper"
|
||||||
|
const fragmentCopyButton = document.createElement("doxygen-awesome-fragment-copy-button")
|
||||||
|
fragmentCopyButton.innerHTML = DoxygenAwesomeFragmentCopyButton.copyIcon
|
||||||
|
fragmentCopyButton.title = DoxygenAwesomeFragmentCopyButton.title
|
||||||
|
|
||||||
|
fragment.parentNode.replaceChild(fragmentWrapper, fragment)
|
||||||
|
fragmentWrapper.appendChild(fragment)
|
||||||
|
fragmentWrapper.appendChild(fragmentCopyButton)
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
copyContent() {
|
||||||
|
const content = this.previousSibling.cloneNode(true)
|
||||||
|
// filter out line number from file listings
|
||||||
|
content.querySelectorAll(".lineno, .ttc").forEach((node) => {
|
||||||
|
node.remove()
|
||||||
|
})
|
||||||
|
let textContent = content.textContent
|
||||||
|
// remove trailing newlines that appear in file listings
|
||||||
|
let numberOfTrailingNewlines = 0
|
||||||
|
while(textContent.charAt(textContent.length - (numberOfTrailingNewlines + 1)) == '\n') {
|
||||||
|
numberOfTrailingNewlines++;
|
||||||
|
}
|
||||||
|
textContent = textContent.substring(0, textContent.length - numberOfTrailingNewlines)
|
||||||
|
navigator.clipboard.writeText(textContent);
|
||||||
|
this.classList.add("success")
|
||||||
|
this.innerHTML = DoxygenAwesomeFragmentCopyButton.successIcon
|
||||||
|
window.setTimeout(() => {
|
||||||
|
this.classList.remove("success")
|
||||||
|
this.innerHTML = DoxygenAwesomeFragmentCopyButton.copyIcon
|
||||||
|
}, DoxygenAwesomeFragmentCopyButton.successDuration);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
customElements.define("doxygen-awesome-fragment-copy-button", DoxygenAwesomeFragmentCopyButton)
|
||||||
@@ -0,0 +1,81 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
Doxygen Awesome
|
||||||
|
https://github.com/jothepro/doxygen-awesome-css
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2022 - 2023 jothepro
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class DoxygenAwesomeInteractiveToc {
|
||||||
|
static topOffset = 38
|
||||||
|
static hideMobileMenu = true
|
||||||
|
static headers = []
|
||||||
|
|
||||||
|
static init() {
|
||||||
|
window.addEventListener("load", () => {
|
||||||
|
let toc = document.querySelector(".contents > .toc")
|
||||||
|
if(toc) {
|
||||||
|
toc.classList.add("interactive")
|
||||||
|
if(!DoxygenAwesomeInteractiveToc.hideMobileMenu) {
|
||||||
|
toc.classList.add("open")
|
||||||
|
}
|
||||||
|
document.querySelector(".contents > .toc > h3")?.addEventListener("click", () => {
|
||||||
|
if(toc.classList.contains("open")) {
|
||||||
|
toc.classList.remove("open")
|
||||||
|
} else {
|
||||||
|
toc.classList.add("open")
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
document.querySelectorAll(".contents > .toc > ul a").forEach((node) => {
|
||||||
|
let id = node.getAttribute("href").substring(1)
|
||||||
|
DoxygenAwesomeInteractiveToc.headers.push({
|
||||||
|
node: node,
|
||||||
|
headerNode: document.getElementById(id)
|
||||||
|
})
|
||||||
|
|
||||||
|
document.getElementById("doc-content")?.addEventListener("scroll", () => {
|
||||||
|
DoxygenAwesomeInteractiveToc.update()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
DoxygenAwesomeInteractiveToc.update()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
static update() {
|
||||||
|
let active = DoxygenAwesomeInteractiveToc.headers[0]?.node
|
||||||
|
DoxygenAwesomeInteractiveToc.headers.forEach((header) => {
|
||||||
|
let position = header.headerNode.getBoundingClientRect().top
|
||||||
|
header.node.classList.remove("active")
|
||||||
|
header.node.classList.remove("aboveActive")
|
||||||
|
if(position < DoxygenAwesomeInteractiveToc.topOffset) {
|
||||||
|
active = header.node
|
||||||
|
active?.classList.add("aboveActive")
|
||||||
|
}
|
||||||
|
})
|
||||||
|
active?.classList.add("active")
|
||||||
|
active?.classList.remove("aboveActive")
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
Doxygen Awesome
|
||||||
|
https://github.com/jothepro/doxygen-awesome-css
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2022 - 2023 jothepro
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
class DoxygenAwesomeParagraphLink {
|
||||||
|
// Icon from https://fonts.google.com/icons
|
||||||
|
// Licensed under the Apache 2.0 license:
|
||||||
|
// https://www.apache.org/licenses/LICENSE-2.0.html
|
||||||
|
static icon = `<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M17 7h-4v2h4c1.65 0 3 1.35 3 3s-1.35 3-3 3h-4v2h4c2.76 0 5-2.24 5-5s-2.24-5-5-5zm-6 8H7c-1.65 0-3-1.35-3-3s1.35-3 3-3h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-2zm-3-4h8v2H8z"/></svg>`
|
||||||
|
static title = "Permanent Link"
|
||||||
|
static init() {
|
||||||
|
$(function() {
|
||||||
|
$(document).ready(function() {
|
||||||
|
document.querySelectorAll(".contents a.anchor[id], .contents .groupheader > a[id]").forEach((node) => {
|
||||||
|
let anchorlink = document.createElement("a")
|
||||||
|
anchorlink.setAttribute("href", `#${node.getAttribute("id")}`)
|
||||||
|
anchorlink.setAttribute("title", DoxygenAwesomeParagraphLink.title)
|
||||||
|
anchorlink.classList.add("anchorlink")
|
||||||
|
node.classList.add("anchor")
|
||||||
|
anchorlink.innerHTML = DoxygenAwesomeParagraphLink.icon
|
||||||
|
node.parentElement.appendChild(anchorlink)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user