mirror of
https://github.com/QB64-Phoenix-Edition/QB64pe.git
synced 2024-07-06 19:50:22 +00:00
Moved qb64.bas to source\qb64.bas
Split qb64.bas into $included components: notably settings, version, gloabal, ide (& wiki downloader), subs/functions (and extensions including user mods and opengl) Moved 'user mods' to source\subs_functions\extensions Removed legacy functionality of the QB64 update system (including compression functions) QB64.BAS can be compiled independent of its IDE $includes (just comment them out) QUI commeted out (needs minor revision) Updated version to 1.000 (just ran out of numbers)
This commit is contained in:
parent
b9f23d7a7a
commit
d6d4eb0c28
|
@ -1,2 +0,0 @@
|
|||
'$INCLUDE:'internal/source/User Mods/Luke Stuff-ID_Includes.bi'
|
||||
'$INCLUDE:'internal/source/User Mods/Steve Stuff-ID_Includes.bi'
|
61
source/global/constants.bas
Normal file
61
source/global/constants.bas
Normal file
|
@ -0,0 +1,61 @@
|
|||
'String SPacer/delimiter constants
|
||||
'sp is used as the primary string spacer
|
||||
'sp2 & sp3 are used when further delimiation is required
|
||||
'for instance, sp2 is used for embedding spacing info for auto-layout by an IDE
|
||||
DIM SHARED sp AS STRING * 1, sp2 AS STRING * 1, sp3 AS STRING * 1
|
||||
sp = CHR$(13): sp2 = CHR$(10): sp3 = CHR$(26)
|
||||
DIM SHARED sp_asc AS LONG, sp2_asc AS LONG, sp3_asc AS LONG
|
||||
sp_asc = ASC(sp): sp2_asc = ASC(sp2): sp3_asc = ASC(sp3)
|
||||
IF Debug THEN sp = CHR$(250): sp2 = CHR$(249): sp3 = "³" 'makes debug output more readable
|
||||
|
||||
'ASCII codes
|
||||
CONST ASC_BACKSLASH = 92
|
||||
CONST ASC_FORWARDSLASH = 47
|
||||
CONST ASC_LEFTBRACKET = 40
|
||||
CONST ASC_RIGHTBRACKET = 41
|
||||
CONST ASC_FULLSTOP = 46
|
||||
CONST ASC_COLON = 58
|
||||
CONST ASC_SEMICOLON = 59
|
||||
CONST ASC_UNDERSCORE = 95
|
||||
CONST ASC_QUOTE = 34
|
||||
CONST ASC_LEFTSQUAREBRACKET = 91
|
||||
CONST ASC_RIGHTSQUAREBRACKET = 93
|
||||
CONST ASC_QUESTIONMARK = 63
|
||||
|
||||
'_KEYDOWN/_KEYHIT codes
|
||||
CONST KEY_LSHIFT = 100304
|
||||
CONST KEY_RSHIFT = 100303
|
||||
CONST KEY_LCTRL = 100306
|
||||
CONST KEY_RCTRL = 100305
|
||||
CONST KEY_LALT = 100308
|
||||
CONST KEY_RALT = 100307
|
||||
CONST KEY_LAPPLE = 100310
|
||||
CONST KEY_RAPPLE = 100309
|
||||
CONST KEY_F1 = 15104
|
||||
CONST KEY_F2 = 15360
|
||||
CONST KEY_F3 = 15616
|
||||
CONST KEY_F4 = 15872
|
||||
CONST KEY_F5 = 16128
|
||||
CONST KEY_F6 = 16384
|
||||
CONST KEY_F7 = 16640
|
||||
CONST KEY_F8 = 16896
|
||||
CONST KEY_F9 = 17152
|
||||
CONST KEY_F10 = 17408
|
||||
CONST KEY_F11 = 34048
|
||||
CONST KEY_F12 = 34304
|
||||
CONST KEY_INSERT = 20992
|
||||
CONST KEY_DELETE = 21248
|
||||
CONST KEY_HOME = 18176
|
||||
CONST KEY_END = 20224
|
||||
CONST KEY_PAGEUP = 18688
|
||||
CONST KEY_PAGEDOWN = 20736
|
||||
CONST KEY_LEFT = 19200
|
||||
CONST KEY_RIGHT = 19712
|
||||
CONST KEY_UP = 18432
|
||||
CONST KEY_DOWN = 20480
|
||||
CONST KEY_ESC = 27
|
||||
CONST KEY_ENTER = 13
|
||||
|
||||
DIM SHARED CHR_QUOTE AS STRING: CHR_QUOTE = CHR$(34)
|
||||
DIM SHARED CHR_TAB AS STRING: CHR_TAB = CHR$(9)
|
||||
DIM SHARED CRLF AS STRING: CRLF = CHR$(13) + CHR$(10) 'carriage return+line feed
|
2
source/global/settings.bas
Normal file
2
source/global/settings.bas
Normal file
|
@ -0,0 +1,2 @@
|
|||
'Used for debugging the compiler's code (not the code it compiles) [for temporary/advanced usage]
|
||||
CONST Debug = 0
|
2
source/global/version.bas
Normal file
2
source/global/version.bas
Normal file
|
@ -0,0 +1,2 @@
|
|||
DIM SHARED Version AS STRING
|
||||
Version$ = "1.000"
|
199
source/ide/ide_global.bas
Normal file
199
source/ide/ide_global.bas
Normal file
|
@ -0,0 +1,199 @@
|
|||
'Allow the window to be resized
|
||||
$RESIZE:ON
|
||||
|
||||
_CONTROLCHR OFF
|
||||
|
||||
'$INCLUDE:'wiki\wiki_global.bas'
|
||||
|
||||
DIM SHARED AltSpecial AS _BYTE
|
||||
|
||||
DIM SHARED IDEBuildModeChanged
|
||||
DIM SHARED IdeInfo AS STRING
|
||||
|
||||
|
||||
|
||||
DIM SHARED IdeSystem AS LONG
|
||||
'1=Entering text into the main IDE window
|
||||
'2=Entering text into the quick search bar
|
||||
'3=Scrolling within the help window
|
||||
IdeSystem = 1
|
||||
|
||||
DIM SHARED IdeRecentLink(1 TO 4, 1 TO 2) AS STRING
|
||||
DIM SHARED IdeOpenFile AS STRING 'makes IdeOpen directly open the file passed
|
||||
|
||||
TYPE IdeBmkType
|
||||
y AS LONG 'the vertical line
|
||||
x AS LONG 'the horizontal position to move cursor to
|
||||
reserved AS LONG
|
||||
reserved2 AS LONG
|
||||
END TYPE
|
||||
REDIM SHARED IdeBmk(1) AS IdeBmkType
|
||||
DIM SHARED IdeBmkN
|
||||
|
||||
'GetInput global variables
|
||||
DIM SHARED iCHECKLATER 'the values will be checked later
|
||||
DIM SHARED iCHANGED
|
||||
DIM SHARED mX, mY
|
||||
DIM SHARED mB, mB2
|
||||
DIM SHARED mOB, mOB2
|
||||
DIM SHARED mCLICK, mCLICK2
|
||||
DIM SHARED mRELEASE, mRELEASE2
|
||||
DIM SHARED mWHEEL
|
||||
DIM SHARED KB '_KEYHIT value (or 0)
|
||||
DIM SHARED K$ 'INKEY$ equivalent of _KEYHIT's return (or "")
|
||||
DIM SHARED KSTATECHANGED
|
||||
DIM SHARED KSHIFT
|
||||
DIM SHARED KCTRL 'the control key
|
||||
DIM SHARED KCONTROL 'PC-CTRL or MAC-APPLE KEY
|
||||
DIM SHARED KALT, KOALT, KALTPRESS, KALTRELEASE
|
||||
|
||||
DIM SHARED block_chr(255) AS INTEGER
|
||||
block_chr(10) = 1
|
||||
block_chr(13) = 1
|
||||
|
||||
'setup optional codepages
|
||||
DIM SHARED idecpindex
|
||||
CONST idecpnum& = 27
|
||||
DIM SHARED idecpname(1 TO idecpnum) AS STRING
|
||||
DIM SHARED idecp(1 TO idecpnum) AS STRING
|
||||
'
|
||||
idecpname$(1) = "micsft_pc_cp437"
|
||||
idecp$(1) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E4000000E0000000E5000000E7000000EA000000EB000000E8000000EF000000EE000000EC000000C4000000C5000000C9000000E6000000C6000000F4000000F6000000F2000000FB000000F9000000FF000000D6000000DC000000A2000000A3000000A5000020A700000192000000E1000000ED000000F3000000FA000000F1000000D1000000AA000000BA000000BF00002310000000AC000000BD000000BC000000A1000000AB000000BB0000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(2) = "micsft_pc_cp737"
|
||||
idecp$(2) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F0000039100000392000003930000039400000395000003960000039700000398000003990000039A0000039B0000039C0000039D0000039E0000039F000003A0000003A1000003A3000003A4000003A5000003A6000003A7000003A8000003A9000003B1000003B2000003B3000003B4000003B5000003B6000003B7000003B8000003B9000003BA000003BB000003BC000003BD000003BE000003BF000003C0000003C1000003C3000003C2000003C4000003C5000003C6000003C7000003C80000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003C9000003AC000003AD000003AE000003CA000003AF000003CC000003CD000003CB000003CE0000038600000388000003890000038A0000038C0000038E0000038F000000B10000226500002264000003AA000003AB000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(3) = "micsft_pc_cp775"
|
||||
idecp$(3) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F00000106000000FC000000E900000101000000E400000123000000E500000107000001420000011300000156000001570000012B00000179000000C4000000C5000000C9000000E6000000C60000014D000000F600000122000000A20000015A0000015B000000D6000000DC000000F8000000A3000000D8000000D7000000A4000001000000012A000000F30000017B0000017C0000017A0000201D000000A6000000A9000000AE000000AC000000BD000000BC00000141000000AB000000BB0000259100002592000025930000250200002524000001040000010C00000118000001160000256300002551000025570000255D0000012E000001600000251000002514000025340000252C0000251C000025000000253C000001720000016A0000255A00002554000025690000256600002560000025500000256C0000017D000001050000010D00000119000001170000012F00000161000001730000016B0000017E000025180000250C00002588000025840000258C0000259000002580000000D3000000DF0000014C00000143000000F5000000D5000000B50000014400000136000001370000013B0000013C00000146000001120000014500002019000000AD000000B10000201C000000BE000000B6000000A7000000F70000201E000000B000002219000000B7000000B9000000B3000000B2000025A0000000A0"
|
||||
idecpname$(4) = "micsft_pc_cp850"
|
||||
idecp$(4) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E4000000E0000000E5000000E7000000EA000000EB000000E8000000EF000000EE000000EC000000C4000000C5000000C9000000E6000000C6000000F4000000F6000000F2000000FB000000F9000000FF000000D6000000DC000000F8000000A3000000D8000000D700000192000000E1000000ED000000F3000000FA000000F1000000D1000000AA000000BA000000BF000000AE000000AC000000BD000000BC000000A1000000AB000000BB0000259100002592000025930000250200002524000000C1000000C2000000C0000000A90000256300002551000025570000255D000000A2000000A50000251000002514000025340000252C0000251C000025000000253C000000E3000000C30000255A00002554000025690000256600002560000025500000256C000000A4000000F0000000D0000000CA000000CB000000C800000131000000CD000000CE000000CF000025180000250C0000258800002584000000A6000000CC00002580000000D3000000DF000000D4000000D2000000F5000000D5000000B5000000FE000000DE000000DA000000DB000000D9000000FD000000DD000000AF000000B4000000AD000000B100002017000000BE000000B6000000A7000000F7000000B8000000B0000000A8000000B7000000B9000000B3000000B2000025A0000000A0"
|
||||
idecpname$(5) = "micsft_pc_cp852"
|
||||
idecp$(5) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E40000016F00000107000000E700000142000000EB0000015000000151000000EE00000179000000C400000106000000C9000001390000013A000000F4000000F60000013D0000013E0000015A0000015B000000D6000000DC000001640000016500000141000000D70000010D000000E1000000ED000000F3000000FA00000104000001050000017D0000017E0000011800000119000000AC0000017A0000010C0000015F000000AB000000BB0000259100002592000025930000250200002524000000C1000000C20000011A0000015E0000256300002551000025570000255D0000017B0000017C0000251000002514000025340000252C0000251C000025000000253C00000102000001030000255A00002554000025690000256600002560000025500000256C000000A400000111000001100000010E000000CB0000010F00000147000000CD000000CE0000011B000025180000250C0000258800002584000001620000016E00002580000000D3000000DF000000D4000001430000014400000148000001600000016100000154000000DA0000015500000170000000FD000000DD00000163000000B4000000AD000002DD000002DB000002C7000002D8000000A7000000F7000000B8000000B0000000A8000002D9000001710000015800000159000025A0000000A0"
|
||||
idecpname$(6) = "micsft_pc_cp855"
|
||||
idecp$(6) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F0000045200000402000004530000040300000451000004010000045400000404000004550000040500000456000004060000045700000407000004580000040800000459000004090000045A0000040A0000045B0000040B0000045C0000040C0000045E0000040E0000045F0000040F0000044E0000042E0000044A0000042A0000043000000410000004310000041100000446000004260000043400000414000004350000041500000444000004240000043300000413000000AB000000BB0000259100002592000025930000250200002524000004450000042500000438000004180000256300002551000025570000255D00000439000004190000251000002514000025340000252C0000251C000025000000253C0000043A0000041A0000255A00002554000025690000256600002560000025500000256C000000A40000043B0000041B0000043C0000041C0000043D0000041D0000043E0000041E0000043F000025180000250C00002588000025840000041F0000044F000025800000042F0000044000000420000004410000042100000442000004220000044300000423000004360000041600000432000004120000044C0000042C00002116000000AD0000044B0000042B000004370000041700000448000004280000044D0000042D00000449000004290000044700000427000000A7000025A0000000A0"
|
||||
idecpname$(7) = "micsft_pc_cp857"
|
||||
idecp$(7) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E4000000E0000000E5000000E7000000EA000000EB000000E8000000EF000000EE00000131000000C4000000C5000000C9000000E6000000C6000000F4000000F6000000F2000000FB000000F900000130000000D6000000DC000000F8000000A3000000D80000015E0000015F000000E1000000ED000000F3000000FA000000F1000000D10000011E0000011F000000BF000000AE000000AC000000BD000000BC000000A1000000AB000000BB0000259100002592000025930000250200002524000000C1000000C2000000C0000000A90000256300002551000025570000255D000000A2000000A50000251000002514000025340000252C0000251C000025000000253C000000E3000000C30000255A00002554000025690000256600002560000025500000256C000000A4000000BA000000AA000000CA000000CB000000C800000000000000CD000000CE000000CF000025180000250C0000258800002584000000A6000000CC00002580000000D3000000DF000000D4000000D2000000F5000000D5000000B500000000000000D7000000DA000000DB000000D9000000EC000000FF000000AF000000B4000000AD000000B100000000000000BE000000B6000000A7000000F7000000B8000000B0000000A8000000B7000000B9000000B3000000B2000025A0000000A0"
|
||||
idecpname$(8) = "micsft_pc_cp860"
|
||||
idecp$(8) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E3000000E0000000C1000000E7000000EA000000CA000000E8000000CD000000D4000000EC000000C3000000C2000000C9000000C0000000C8000000F4000000F5000000F2000000DA000000F9000000CC000000D5000000DC000000A2000000A3000000D9000020A7000000D3000000E1000000ED000000F3000000FA000000F1000000D1000000AA000000BA000000BF000000D2000000AC000000BD000000BC000000A1000000AB000000BB0000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(9) = "micsft_pc_cp861"
|
||||
idecp$(9) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E4000000E0000000E5000000E7000000EA000000EB000000E8000000D0000000F0000000DE000000C4000000C5000000C9000000E6000000C6000000F4000000F6000000FE000000FB000000DD000000FD000000D6000000DC000000F8000000A3000000D8000020A700000192000000E1000000ED000000F3000000FA000000C1000000CD000000D3000000DA000000BF00002310000000AC000000BD000000BC000000A1000000AB000000BB0000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(10) = "micsft_pc_cp862"
|
||||
idecp$(10) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000005D0000005D1000005D2000005D3000005D4000005D5000005D6000005D7000005D8000005D9000005DA000005DB000005DC000005DD000005DE000005DF000005E0000005E1000005E2000005E3000005E4000005E5000005E6000005E7000005E8000005E9000005EA000000A2000000A3000000A5000020A700000192000000E1000000ED000000F3000000FA000000F1000000D1000000AA000000BA000000BF00002310000000AC000000BD000000BC000000A1000000AB000000BB0000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(11) = "micsft_pc_cp863"
|
||||
idecp$(11) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000C2000000E0000000B6000000E7000000EA000000EB000000E8000000EF000000EE00002017000000C0000000A7000000C9000000C8000000CA000000F4000000CB000000CF000000FB000000F9000000A4000000D4000000DC000000A2000000A3000000D9000000DB00000192000000A6000000B4000000F3000000FA000000A8000000B8000000B3000000AF000000CE00002310000000AC000000BD000000BC000000BE000000AB000000BB0000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(12) = "micsft_pc_cp864"
|
||||
idecp$(12) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F00000020000000210000002200000023000000240000066A000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000B0000000B7000022190000221A0000259200002500000025020000253C000025240000252C0000251C00002534000025100000250C0000251400002518000003B20000221E000003C6000000B1000000BD000000BC00002248000000AB000000BB0000FEF70000FEF800000000000000000000FEFB0000FEFC00000000000000A0000000AD0000FE82000000A3000000A40000FE8400000000000000000000FE8E0000FE8F0000FE950000FE990000060C0000FE9D0000FEA10000FEA5000006600000066100000662000006630000066400000665000006660000066700000668000006690000FED10000061B0000FEB10000FEB50000FEB90000061F000000A20000FE800000FE810000FE830000FE850000FECA0000FE8B0000FE8D0000FE910000FE930000FE970000FE9B0000FE9F0000FEA30000FEA70000FEA90000FEAB0000FEAD0000FEAF0000FEB30000FEB70000FEBB0000FEBF0000FEC10000FEC50000FECB0000FECF000000A6000000AC000000F7000000D70000FEC9000006400000FED30000FED70000FEDB0000FEDF0000FEE30000FEE70000FEEB0000FEED0000FEEF0000FEF30000FEBD0000FECC0000FECE0000FECD0000FEE10000FE7D000006510000FEE50000FEE90000FEEC0000FEF00000FEF20000FED00000FED50000FEF50000FEF60000FEDD0000FED90000FEF1000025A000000000"
|
||||
idecpname$(13) = "micsft_pc_cp865"
|
||||
idecp$(13) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000000C7000000FC000000E9000000E2000000E4000000E0000000E5000000E7000000EA000000EB000000E8000000EF000000EE000000EC000000C4000000C5000000C9000000E6000000C6000000F4000000F6000000F2000000FB000000F9000000FF000000D6000000DC000000F8000000A3000000D8000020A700000192000000E1000000ED000000F3000000FA000000F1000000D1000000AA000000BA000000BF00002310000000AC000000BD000000BC000000A1000000AB000000A40000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
idecpname$(14) = "micsft_pc_cp866"
|
||||
idecp$(14) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000004100000041100000412000004130000041400000415000004160000041700000418000004190000041A0000041B0000041C0000041D0000041E0000041F000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B0000042C0000042D0000042E0000042F000004300000043100000432000004330000043400000435000004360000043700000438000004390000043A0000043B0000043C0000043D0000043E0000043F0000259100002592000025930000250200002524000025610000256200002556000025550000256300002551000025570000255D0000255C0000255B0000251000002514000025340000252C0000251C000025000000253C0000255E0000255F0000255A00002554000025690000256600002560000025500000256C00002567000025680000256400002565000025590000255800002552000025530000256B0000256A000025180000250C00002588000025840000258C0000259000002580000004400000044100000442000004430000044400000445000004460000044700000448000004490000044A0000044B0000044C0000044D0000044E0000044F0000040100000451000004040000045400000407000004570000040E0000045E000000B000002219000000B70000221A00002116000000A4000025A0000000A0"
|
||||
idecpname$(15) = "micsft_pc_cp869"
|
||||
idecp$(15) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F0000000000000000000000000000000000000000000000000000038600000000000000B7000000AC000000A600002018000020190000038800002015000003890000038A000003AA0000038C00000000000000000000038E000003AB000000A90000038F000000B2000000B3000003AC000000A3000003AD000003AE000003AF000003CA00000390000003CC000003CD00000391000003920000039300000394000003950000039600000397000000BD0000039800000399000000AB000000BB00002591000025920000259300002502000025240000039A0000039B0000039C0000039D0000256300002551000025570000255D0000039E0000039F0000251000002514000025340000252C0000251C000025000000253C000003A0000003A10000255A00002554000025690000256600002560000025500000256C000003A3000003A4000003A5000003A6000003A7000003A8000003A9000003B1000003B2000003B3000025180000250C0000258800002584000003B4000003B500002580000003B6000003B7000003B8000003B9000003BA000003BB000003BC000003BD000003BE000003BF000003C0000003C1000003C3000003C2000003C400000384000000AD000000B1000003C5000003C6000003C7000000A7000003C800000385000000B0000000A8000003C9000003CB000003B0000003CE000025A0000000A0"
|
||||
idecpname$(16) = "micsft_pc_cp874"
|
||||
idecp$(16) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC0000000000000000000000000000000000002026000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002018000020190000201C0000201D0000202200002013000020140000000000000000000000000000000000000000000000000000000000000000000000A000000E0100000E0200000E0300000E0400000E0500000E0600000E0700000E0800000E0900000E0A00000E0B00000E0C00000E0D00000E0E00000E0F00000E1000000E1100000E1200000E1300000E1400000E1500000E1600000E1700000E1800000E1900000E1A00000E1B00000E1C00000E1D00000E1E00000E1F00000E2000000E2100000E2200000E2300000E2400000E2500000E2600000E2700000E2800000E2900000E2A00000E2B00000E2C00000E2D00000E2E00000E2F00000E3000000E3100000E3200000E3300000E3400000E3500000E3600000E3700000E3800000E3900000E3A0000000000000000000000000000000000000E3F00000E4000000E4100000E4200000E4300000E4400000E4500000E4600000E4700000E4800000E4900000E4A00000E4B00000E4C00000E4D00000E4E00000E4F00000E5000000E5100000E5200000E5300000E5400000E5500000E5600000E5700000E5800000E5900000E5A00000E5B00000000000000000000000000000000"
|
||||
idecpname$(17) = "micsft_windows_cp1250"
|
||||
idecp$(17) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000000000000201E000020260000202000002021000000000000203000000160000020390000015A000001640000017D000001790000000000002018000020190000201C0000201D0000202200002013000020140000000000002122000001610000203A0000015B000001650000017E0000017A000000A0000002C7000002D800000141000000A400000104000000A6000000A7000000A8000000A90000015E000000AB000000AC000000AD000000AE0000017B000000B0000000B1000002DB00000142000000B4000000B5000000B6000000B7000000B8000001050000015F000000BB0000013D000002DD0000013E0000017C00000154000000C1000000C200000102000000C40000013900000106000000C70000010C000000C900000118000000CB0000011A000000CD000000CE0000010E000001100000014300000147000000D3000000D400000150000000D6000000D7000001580000016E000000DA00000170000000DC000000DD00000162000000DF00000155000000E1000000E200000103000000E40000013A00000107000000E70000010D000000E900000119000000EB0000011B000000ED000000EE0000010F000001110000014400000148000000F3000000F400000151000000F6000000F7000001590000016F000000FA00000171000000FC000000FD00000163000002D9"
|
||||
idecpname$(18) = "micsft_windows_cp1251"
|
||||
idecp$(18) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F00000402000004030000201A000004530000201E000020260000202000002021000020AC0000203000000409000020390000040A0000040C0000040B0000040F0000045200002018000020190000201C0000201D0000202200002013000020140000000000002122000004590000203A0000045A0000045C0000045B0000045F000000A00000040E0000045E00000408000000A400000490000000A6000000A700000401000000A900000404000000AB000000AC000000AD000000AE00000407000000B0000000B1000004060000045600000491000000B5000000B6000000B7000004510000211600000454000000BB00000458000004050000045500000457000004100000041100000412000004130000041400000415000004160000041700000418000004190000041A0000041B0000041C0000041D0000041E0000041F000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B0000042C0000042D0000042E0000042F000004300000043100000432000004330000043400000435000004360000043700000438000004390000043A0000043B0000043C0000043D0000043E0000043F000004400000044100000442000004430000044400000445000004460000044700000448000004490000044A0000044B0000044C0000044D0000044E0000044F"
|
||||
idecpname$(19) = "micsft_windows_cp1252"
|
||||
idecp$(19) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000001920000201E000020260000202000002021000002C600002030000001600000203900000152000000000000017D000000000000000000002018000020190000201C0000201D000020220000201300002014000002DC00002122000001610000203A00000153000000000000017E00000178000000A0000000A1000000A2000000A3000000A4000000A5000000A6000000A7000000A8000000A9000000AA000000AB000000AC000000AD000000AE000000AF000000B0000000B1000000B2000000B3000000B4000000B5000000B6000000B7000000B8000000B9000000BA000000BB000000BC000000BD000000BE000000BF000000C0000000C1000000C2000000C3000000C4000000C5000000C6000000C7000000C8000000C9000000CA000000CB000000CC000000CD000000CE000000CF000000D0000000D1000000D2000000D3000000D4000000D5000000D6000000D7000000D8000000D9000000DA000000DB000000DC000000DD000000DE000000DF000000E0000000E1000000E2000000E3000000E4000000E5000000E6000000E7000000E8000000E9000000EA000000EB000000EC000000ED000000EE000000EF000000F0000000F1000000F2000000F3000000F4000000F5000000F6000000F7000000F8000000F9000000FA000000FB000000FC000000FD000000FE000000FF"
|
||||
idecpname$(20) = "micsft_windows_cp1253"
|
||||
idecp$(20) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000001920000201E00002026000020200000202100000000000020300000000000002039000000000000000000000000000000000000000000002018000020190000201C0000201D0000202200002013000020140000000000002122000000000000203A00000000000000000000000000000000000000A00000038500000386000000A3000000A4000000A5000000A6000000A7000000A8000000A900000000000000AB000000AC000000AD000000AE00002015000000B0000000B1000000B2000000B300000384000000B5000000B6000000B700000388000003890000038A000000BB0000038C000000BD0000038E0000038F000003900000039100000392000003930000039400000395000003960000039700000398000003990000039A0000039B0000039C0000039D0000039E0000039F000003A0000003A100000000000003A3000003A4000003A5000003A6000003A7000003A8000003A9000003AA000003AB000003AC000003AD000003AE000003AF000003B0000003B1000003B2000003B3000003B4000003B5000003B6000003B7000003B8000003B9000003BA000003BB000003BC000003BD000003BE000003BF000003C0000003C1000003C2000003C3000003C4000003C5000003C6000003C7000003C8000003C9000003CA000003CB000003CC000003CD000003CE00000000"
|
||||
idecpname$(21) = "micsft_windows_cp1254"
|
||||
idecp$(21) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000001920000201E000020260000202000002021000002C6000020300000016000002039000001520000000000000000000000000000000000002018000020190000201C0000201D000020220000201300002014000002DC00002122000001610000203A00000153000000000000000000000178000000A0000000A1000000A2000000A3000000A4000000A5000000A6000000A7000000A8000000A9000000AA000000AB000000AC000000AD000000AE000000AF000000B0000000B1000000B2000000B3000000B4000000B5000000B6000000B7000000B8000000B9000000BA000000BB000000BC000000BD000000BE000000BF000000C0000000C1000000C2000000C3000000C4000000C5000000C6000000C7000000C8000000C9000000CA000000CB000000CC000000CD000000CE000000CF0000011E000000D1000000D2000000D3000000D4000000D5000000D6000000D7000000D8000000D9000000DA000000DB000000DC000001300000015E000000DF000000E0000000E1000000E2000000E3000000E4000000E5000000E6000000E7000000E8000000E9000000EA000000EB000000EC000000ED000000EE000000EF0000011F000000F1000000F2000000F3000000F4000000F5000000F6000000F7000000F8000000F9000000FA000000FB000000FC000001310000015F000000FF"
|
||||
idecpname$(22) = "micsft_windows_cp1255"
|
||||
idecp$(22) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000001920000201E000020260000202000002021000002C6000020300000000000002039000000000000000000000000000000000000000000002018000020190000201C0000201D000020220000201300002014000002DC00002122000000000000203A00000000000000000000000000000000000000A0000000A1000000A2000000A3000020AA000000A5000000A6000000A7000000A8000000A9000000D7000000AB000000AC000000AD000000AE000000AF000000B0000000B1000000B2000000B3000000B4000000B5000000B6000000B7000000B8000000B9000000F7000000BB000000BC000000BD000000BE000000BF000005B0000005B1000005B2000005B3000005B4000005B5000005B6000005B7000005B8000005B900000000000005BB000005BC000005BD000005BE000005BF000005C0000005C1000005C2000005C3000005F0000005F1000005F2000005F3000005F400000000000000000000000000000000000000000000000000000000000005D0000005D1000005D2000005D3000005D4000005D5000005D6000005D7000005D8000005D9000005DA000005DB000005DC000005DD000005DE000005DF000005E0000005E1000005E2000005E3000005E4000005E5000005E6000005E7000005E8000005E9000005EA00000000000000000000200E0000200F00000000"
|
||||
idecpname$(23) = "micsft_windows_cp1256"
|
||||
idecp$(23) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC0000067E0000201A000001920000201E000020260000202000002021000002C600002030000006790000203900000152000006860000069800000688000006AF00002018000020190000201C0000201D000020220000201300002014000006A900002122000006910000203A000001530000200C0000200D000006BA000000A00000060C000000A2000000A3000000A4000000A5000000A6000000A7000000A8000000A9000006BE000000AB000000AC000000AD000000AE000000AF000000B0000000B1000000B2000000B3000000B4000000B5000000B6000000B7000000B8000000B90000061B000000BB000000BC000000BD000000BE0000061F000006C10000062100000622000006230000062400000625000006260000062700000628000006290000062A0000062B0000062C0000062D0000062E0000062F00000630000006310000063200000633000006340000063500000636000000D70000063700000638000006390000063A00000640000006410000064200000643000000E000000644000000E200000645000006460000064700000648000000E7000000E8000000E9000000EA000000EB000006490000064A000000EE000000EF0000064B0000064C0000064D0000064E000000F40000064F00000650000000F700000651000000F900000652000000FB000000FC0000200E0000200F000006D2"
|
||||
idecpname$(24) = "micsft_windows_cp1257"
|
||||
idecp$(24) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000000000000201E0000202600002020000020210000000000002030000000000000203900000000000000A8000002C7000000B80000000000002018000020190000201C0000201D0000202200002013000020140000000000002122000000000000203A00000000000000AF000002DB00000000000000A000000000000000A2000000A3000000A400000000000000A6000000A7000000D8000000A900000156000000AB000000AC000000AD000000AE000000C6000000B0000000B1000000B2000000B3000000B4000000B5000000B6000000B7000000F8000000B900000157000000BB000000BC000000BD000000BE000000E6000001040000012E0000010000000106000000C4000000C500000118000001120000010C000000C9000001790000011600000122000001360000012A0000013B000001600000014300000145000000D30000014C000000D5000000D6000000D700000172000001410000015A0000016A000000DC0000017B0000017D000000DF000001050000012F0000010100000107000000E4000000E500000119000001130000010D000000E90000017A0000011700000123000001370000012B0000013C000001610000014400000146000000F30000014D000000F5000000F6000000F700000173000001420000015B0000016B000000FC0000017C0000017E000002D9"
|
||||
idecpname$(25) = "micsft_windows_cp1258"
|
||||
idecp$(25) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC000000000000201A000001920000201E000020260000202000002021000002C6000020300000000000002039000001520000000000000000000000000000000000002018000020190000201C0000201D000020220000201300002014000002DC00002122000000000000203A00000153000000000000000000000178000000A0000000A1000000A2000000A3000000A4000000A5000000A6000000A7000000A8000000A9000000AA000000AB000000AC000000AD000000AE000000AF000000B0000000B1000000B2000000B3000000B4000000B5000000B6000000B7000000B8000000B9000000BA000000BB000000BC000000BD000000BE000000BF000000C0000000C1000000C200000102000000C4000000C5000000C6000000C7000000C8000000C9000000CA000000CB00000300000000CD000000CE000000CF00000110000000D100000309000000D3000000D4000001A0000000D6000000D7000000D8000000D9000000DA000000DB000000DC000001AF00000303000000DF000000E0000000E1000000E200000103000000E4000000E5000000E6000000E7000000E8000000E9000000EA000000EB00000301000000ED000000EE000000EF00000111000000F100000323000000F3000000F4000001A1000000F6000000F7000000F8000000F9000000FA000000FB000000FC000001B0000020AB000000FF"
|
||||
idecpname$(26) = "micsft_windows_cp874"
|
||||
idecp$(26) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000020AC0000000000000000000000000000000000002026000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002018000020190000201C0000201D0000202200002013000020140000000000000000000000000000000000000000000000000000000000000000000000A000000E0100000E0200000E0300000E0400000E0500000E0600000E0700000E0800000E0900000E0A00000E0B00000E0C00000E0D00000E0E00000E0F00000E1000000E1100000E1200000E1300000E1400000E1500000E1600000E1700000E1800000E1900000E1A00000E1B00000E1C00000E1D00000E1E00000E1F00000E2000000E2100000E2200000E2300000E2400000E2500000E2600000E2700000E2800000E2900000E2A00000E2B00000E2C00000E2D00000E2E00000E2F00000E3000000E3100000E3200000E3300000E3400000E3500000E3600000E3700000E3800000E3900000E3A0000000000000000000000000000000000000E3F00000E4000000E4100000E4200000E4300000E4400000E4500000E4600000E4700000E4800000E4900000E4A00000E4B00000E4C00000E4D00000E4E00000E4F00000E5000000E5100000E5200000E5300000E5400000E5500000E5600000E5700000E5800000E5900000E5A00000E5B00000000000000000000000000000000"
|
||||
idecpname$(27) = "MIK"
|
||||
idecp$(27) = "000000000000000100000002000000030000000400000005000000060000000700000008000000090000000A0000000B0000000C0000000D0000000E0000000F000000100000001100000012000000130000001400000015000000160000001700000018000000190000001A0000001B0000001C0000001D0000001E0000001F000000200000002100000022000000230000002400000025000000260000002700000028000000290000002A0000002B0000002C0000002D0000002E0000002F000000300000003100000032000000330000003400000035000000360000003700000038000000390000003A0000003B0000003C0000003D0000003E0000003F000000400000004100000042000000430000004400000045000000460000004700000048000000490000004A0000004B0000004C0000004D0000004E0000004F000000500000005100000052000000530000005400000055000000560000005700000058000000590000005A0000005B0000005C0000005D0000005E0000005F000000600000006100000062000000630000006400000065000000660000006700000068000000690000006A0000006B0000006C0000006D0000006E0000006F000000700000007100000072000000730000007400000075000000760000007700000078000000790000007A0000007B0000007C0000007D0000007E0000007F000004100000041100000412000004130000041400000415000004160000041700000418000004190000041A0000041B0000041C0000041D0000041E0000041F000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B0000042C0000042D0000042E0000042F000004300000043100000432000004330000043400000435000004360000043700000438000004390000043A0000043B0000043C0000043D0000043E0000043F000004400000044100000442000004430000044400000445000004460000044700000448000004490000044A0000044B0000044C0000044D0000044E0000044F00002514000025340000252C0000251C000025000000253C00002563000025510000255A00002554000025690000256600002560000025500000256C00002510000025910000259200002593000025020000252400002116000000A7000025570000255D000025180000250C00002588000025840000258C0000259000002580000003B1000000DF00000393000003C0000003A3000003C3000000B5000003C4000003A600000398000003A9000003B40000221E000003C6000003B50000222900002261000000B100002265000022640000232000002321000000F700002248000000B000002219000000B70000221A0000207F000000B2000025A0000000A0"
|
||||
|
||||
DIM SHARED idecurrentlinelayout AS STRING
|
||||
DIM SHARED idecurrentlinelayouti AS LONG
|
||||
DIM SHARED idelayoutallow AS LONG
|
||||
|
||||
|
||||
'IDE MODULE: shared data & definitions
|
||||
DIM SHARED mousex AS INTEGER
|
||||
DIM SHARED mousey AS INTEGER
|
||||
DIM SHARED mousewheel AS INTEGER
|
||||
DIM SHARED mousebutton1 AS INTEGER
|
||||
DIM SHARED mousebutton2 AS INTEGER
|
||||
DIM SHARED mousevisible AS INTEGER
|
||||
DIM SHARED mousepassed AS INTEGER
|
||||
'---------------------------------------------------
|
||||
DIM SHARED idesubwindow, idehelp
|
||||
DIM SHARED ideexit
|
||||
DIM SHARED idet AS STRING, idel, ideli, iden
|
||||
DIM SHARED ideundopos, ideundobase, ideundoflag
|
||||
DIM SHARED idelaunched, idecompiling
|
||||
DIM SHARED idecompiledline 'stores the number of the last line sent to the compiler, used only to know which line to send next
|
||||
DIM SHARED idecompiledline$ 'stores the last line sent to the compiler
|
||||
DIM SHARED idesx, idesy, idecx, idecy
|
||||
DIM SHARED ideselect, ideselectx1, ideselecty1, idemouseselect, idembmonitor
|
||||
DIM SHARED ideunsaved
|
||||
DIM SHARED ideroot AS STRING
|
||||
DIM SHARED idetxt(1000) AS STRING
|
||||
DIM SHARED idetxtlast AS INTEGER
|
||||
DIM SHARED idehl
|
||||
DIM SHARED idealtcode(255) AS INTEGER
|
||||
DIM SHARED ideprogname AS STRING
|
||||
DIM SHARED idepath AS STRING
|
||||
DIM SHARED idefindtext AS STRING
|
||||
DIM SHARED idefindcasesens AS INTEGER
|
||||
DIM SHARED idefindwholeword AS INTEGER
|
||||
DIM SHARED idefindbackwards AS INTEGER
|
||||
DIM SHARED idefindinvert AS INTEGER
|
||||
DIM SHARED idechangeto AS STRING
|
||||
DIM SHARED idechangemade AS INTEGER
|
||||
DIM SHARED ideinsert AS INTEGER
|
||||
DIM SHARED idepathsep AS STRING * 1
|
||||
|
||||
'--------------------------------------------------------------------------------
|
||||
TYPE idedbptype
|
||||
x AS LONG
|
||||
y AS LONG
|
||||
w AS LONG
|
||||
h AS LONG
|
||||
nam AS LONG
|
||||
END TYPE
|
||||
'--------------------------------------------------------------------------------
|
||||
TYPE idedbotype
|
||||
par AS idedbptype
|
||||
x AS LONG
|
||||
y AS LONG
|
||||
w AS LONG
|
||||
h AS LONG
|
||||
typ AS LONG
|
||||
nam AS LONG
|
||||
txt AS LONG
|
||||
dft AS LONG
|
||||
cx AS LONG
|
||||
cy AS LONG
|
||||
foc AS LONG
|
||||
sel AS LONG 'selected item no.
|
||||
stx AS LONG 'selected item in string form
|
||||
v1 AS LONG
|
||||
num AS LONG
|
||||
END TYPE
|
||||
'--------------------------------------------------------------------------------
|
||||
DIM SHARED idefocusline 'simply stores the location of the line to highlight in red
|
||||
DIM SHARED ideautorun
|
||||
DIM SHARED menu$(1 TO 10, 0 TO 20)
|
||||
DIM SHARED menusize(1 TO 10)
|
||||
DIM SHARED menus AS INTEGER
|
||||
DIM SHARED menubar$
|
||||
DIM SHARED ideundocombo, ideundocombochr, idenoundo, idemergeundo
|
||||
DIM SHARED idealthighlight, ideentermenu
|
||||
DIM SHARED ideautolayout, ideautoindent, ideautoindentsize, idebackupsize
|
||||
DIM SHARED idewx, idewy, idecustomfont, idecustomfontfile$, idecustomfontheight, idecustomfonthandle
|
||||
DIM SHARED iderunmode
|
||||
'IDE MODULE SECTION END: shared data & definitions
|
||||
|
||||
DIM SHARED IdeAndroidMenu
|
||||
DIM SHARED IdeAndroidStartScript AS STRING
|
||||
DIM SHARED IdeAndroidMakeScript AS STRING
|
9898
source/ide/ide_methods.bas
Normal file
9898
source/ide/ide_methods.bas
Normal file
File diff suppressed because it is too large
Load diff
48
source/ide/wiki/wiki_global.bas
Normal file
48
source/ide/wiki/wiki_global.bas
Normal file
|
@ -0,0 +1,48 @@
|
|||
DIM SHARED Cache_Folder AS STRING
|
||||
Cache_Folder$ = "internal\help"
|
||||
IF _DIREXISTS(Cache_Folder$) = 0 THEN MKDIR Cache_Folder$
|
||||
DIM SHARED Help_sx, Help_sy, Help_cx, Help_cy
|
||||
DIM SHARED Help_Select, Help_cx1, Help_cy1, Help_SelX1, Help_SelX2, Help_SelY1, Help_SelY2
|
||||
DIM SHARED Help_MSelect
|
||||
Help_sx = 1: Help_sy = 1: Help_cx = 1: Help_cy = 1
|
||||
DIM SHARED Help_wx1, Help_wy1, Help_wx2, Help_wy2 'defines the text section of the help window on-screen
|
||||
DIM SHARED Help_ww, Help_wh 'width & height of text region
|
||||
DIM SHARED help_h, help_w 'width & height
|
||||
DIM SHARED Help_Txt$ '[chr][col][link-byte1][link-byte2]
|
||||
DIM SHARED Help_Txt_Len
|
||||
DIM SHARED Help_Line$ 'index of first txt element of a line
|
||||
DIM SHARED Help_Link$ 'the link info [sep][type:]...[sep]
|
||||
DIM SHARED Help_Link_Sep$: Help_Link_Sep$ = CHR$(13)
|
||||
DIM SHARED Help_LinkN
|
||||
DIM SHARED Help_NewLineIndent
|
||||
DIM SHARED Help_Underline
|
||||
'Link Types:
|
||||
' PAGE:wikipagename
|
||||
DIM SHARED Help_Pos, Help_Wrap_Pos
|
||||
DIM SHARED Help_BG_Col
|
||||
DIM SHARED Help_Col_Normal: Help_Col_Normal = 7
|
||||
DIM SHARED Help_Col_Link: Help_Col_Link = 9
|
||||
DIM SHARED Help_Col_Bold: Help_Col_Bold = 15
|
||||
DIM SHARED Help_Col_Italic: Help_Col_Italic = 15
|
||||
DIM SHARED Help_Col_Section: Help_Col_Section = 8
|
||||
DIM SHARED Help_Bold, Help_Italic
|
||||
DIM SHARED Help_LockWrap
|
||||
REDIM SHARED Help_LineLen(1)
|
||||
REDIM SHARED Back$(1)
|
||||
REDIM SHARED Back_Name$(1)
|
||||
TYPE Help_Back_Type
|
||||
sx AS LONG
|
||||
sy AS LONG
|
||||
cx AS LONG
|
||||
cy AS LONG
|
||||
END TYPE
|
||||
REDIM SHARED Help_Back(1) AS Help_Back_Type
|
||||
Back$(1) = "QB64 Help Menu"
|
||||
Back_Name$(1) = Back2BackName$(Back$(1))
|
||||
Help_Back(1).sx = 1: Help_Back(1).sy = 1: Help_Back(1).cx = 1: Help_Back(1).cy = 1
|
||||
DIM SHARED Help_Back_Pos
|
||||
Help_Back_Pos = 1
|
||||
DIM SHARED Help_Search_Time AS DOUBLE
|
||||
DIM SHARED Help_Search_Str AS STRING
|
||||
DIM SHARED Help_PageLoaded AS STRING
|
||||
DIM SHARED Help_Recaching, Help_IgnoreCache
|
764
source/ide/wiki/wiki_methods.bas
Normal file
764
source/ide/wiki/wiki_methods.bas
Normal file
|
@ -0,0 +1,764 @@
|
|||
FUNCTION Back2BackName$ (a$)
|
||||
IF a$ = "Keyword Reference - Alphabetical" THEN Back2BackName$ = "Alphabetical": EXIT FUNCTION
|
||||
IF a$ = "Keyword Reference - By usage" THEN Back2BackName$ = "By Usage": EXIT FUNCTION
|
||||
IF a$ = "QB64 Help Menu" THEN Back2BackName$ = "Help": EXIT FUNCTION
|
||||
IF a$ = "QB64 FAQ" THEN Back2BackName$ = "FAQ": EXIT FUNCTION
|
||||
Back2BackName$ = a$
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION Wiki$ (PageName$)
|
||||
Help_PageLoaded$ = PageName$
|
||||
PageName2$ = PageName$
|
||||
|
||||
DO WHILE INSTR(PageName2$, " ")
|
||||
ASC(PageName2$, INSTR(PageName2$, " ")) = 95
|
||||
LOOP
|
||||
DO WHILE INSTR(PageName2$, "&")
|
||||
i = INSTR(PageName2$, "&")
|
||||
PageName2$ = LEFT$(PageName2$, i - 1) + "%26" + RIGHT$(PageName2$, LEN(PageName2$) - i)
|
||||
LOOP
|
||||
DO WHILE INSTR(PageName2$, "/")
|
||||
i = INSTR(PageName2$, "/")
|
||||
PageName2$ = LEFT$(PageName2$, i - 1) + "%2F" + RIGHT$(PageName2$, LEN(PageName2$) - i)
|
||||
LOOP
|
||||
|
||||
'Is this page in the cache?
|
||||
IF Help_IgnoreCache = 0 THEN
|
||||
IF _FILEEXISTS(Cache_Folder$ + "/" + PageName2$ + ".txt") THEN
|
||||
fh = FREEFILE
|
||||
OPEN Cache_Folder$ + "/" + PageName2$ + ".txt" FOR BINARY AS #fh
|
||||
a$ = SPACE$(LOF(fh))
|
||||
GET #fh, , a$
|
||||
CLOSE #fh
|
||||
Wiki$ = a$
|
||||
EXIT FUNCTION
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF Help_Recaching = 0 THEN
|
||||
a$ = "Downloading '" + PageName$ + "' page..."
|
||||
IF LEN(a$) > 60 THEN a$ = LEFT$(a$, 57) + "úúú"
|
||||
IF LEN(a$) < 60 THEN a$ = a$ + SPACE$(60 - LEN(a$))
|
||||
|
||||
COLOR 0, 3: LOCATE idewy + idesubwindow, 2
|
||||
PRINT a$;
|
||||
|
||||
PCOPY 3, 0
|
||||
END IF
|
||||
|
||||
url$ = "www.qb64.net/wiki/index.php?title=" + PageName2$ + "&action=edit"
|
||||
|
||||
url2$ = url$
|
||||
x = INSTR(url2$, "/")
|
||||
IF x THEN url2$ = LEFT$(url$, x - 1)
|
||||
c = _OPENCLIENT("TCP/IP:80:" + url2$)
|
||||
IF c = 0 THEN EXIT FUNCTION
|
||||
e$ = CHR$(13) + CHR$(10)
|
||||
url3$ = RIGHT$(url$, LEN(url$) - x + 1)
|
||||
x$ = "GET " + url3$ + " HTTP/1.1" + e$
|
||||
x$ = x$ + "Host: " + url2$ + e$ + e$
|
||||
PUT #c, , x$
|
||||
t! = TIMER
|
||||
|
||||
DO
|
||||
_DELAY 0.1
|
||||
GET #c, , a2$
|
||||
IF LEN(a2$) THEN
|
||||
a$ = a$ + a2$
|
||||
IF INSTR(a$, "</body>") THEN
|
||||
CLOSE #c
|
||||
s1$ = "readonly=" + CHR$(34) + "readonly" + CHR$(34) + ">"
|
||||
s2$ = "</textarea>"
|
||||
s1 = INSTR(a$, s1$): IF s1 = 0 THEN EXIT FUNCTION
|
||||
s1 = s1 + LEN(s1$)
|
||||
s2 = INSTR(a$, s2$): IF s2 = 0 THEN EXIT FUNCTION
|
||||
s2 = s2 - 1
|
||||
IF s1 > s2 THEN EXIT FUNCTION
|
||||
a$ = MID$(a$, s1, s2 - s1 + 1)
|
||||
fh = FREEFILE
|
||||
E = 0
|
||||
ON ERROR GOTO qberror_test
|
||||
OPEN Cache_Folder$ + "/" + PageName2$ + ".txt" FOR OUTPUT AS #fh 'clear old content
|
||||
ON ERROR GOTO qberror
|
||||
IF E = 0 THEN
|
||||
CLOSE #fh
|
||||
ON ERROR GOTO qberror_test
|
||||
OPEN Cache_Folder$ + "/" + PageName2$ + ".txt" FOR BINARY AS #fh
|
||||
ON ERROR GOTO qberror
|
||||
IF E = 0 THEN
|
||||
PUT #fh, , a$
|
||||
CLOSE #fh
|
||||
END IF
|
||||
END IF
|
||||
Wiki$ = a$
|
||||
EXIT FUNCTION
|
||||
END IF
|
||||
END IF
|
||||
LOOP UNTIL ABS(TIMER - t!) > 20
|
||||
CLOSE #c
|
||||
END FUNCTION
|
||||
|
||||
SUB Help_AddTxt (t$, col, link)
|
||||
|
||||
IF t$ = CHR$(13) THEN Help_NewLine: EXIT SUB
|
||||
|
||||
FOR i = 1 TO LEN(t$)
|
||||
|
||||
c = ASC(t$, i)
|
||||
|
||||
|
||||
IF Help_BG_Col = 0 AND Help_LockWrap = 0 THEN
|
||||
|
||||
'addtxt handles all wrapping issues
|
||||
IF c = 32 THEN
|
||||
|
||||
IF Help_Pos = Help_ww THEN Help_NewLine: GOTO special
|
||||
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = 32
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = col + Help_BG_Col * 16
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = link AND 255
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = link \ 256
|
||||
|
||||
Help_Wrap_Pos = Help_Txt_Len 'pos to backtrack to when wrapping content
|
||||
Help_Pos = Help_Pos + 1
|
||||
GOTO special
|
||||
END IF
|
||||
|
||||
IF Help_Pos > Help_ww THEN
|
||||
IF Help_Wrap_Pos THEN 'attempt to wrap
|
||||
'backtrack, insert new line, continue
|
||||
|
||||
b$ = MID$(Help_Txt$, Help_Wrap_Pos + 1, Help_Txt_Len - Help_Wrap_Pos)
|
||||
|
||||
Help_Txt_Len = Help_Wrap_Pos
|
||||
|
||||
Help_NewLine
|
||||
|
||||
MID$(Help_Txt$, Help_Txt_Len + 1, LEN(b$)) = b$: Help_Txt_Len = Help_Txt_Len + LEN(b$)
|
||||
|
||||
Help_Pos = Help_Pos + LEN(b$) \ 4
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END IF 'bg_col=0
|
||||
|
||||
c = ASC(t$, i)
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = c
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = col + Help_BG_Col * 16
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = link AND 255
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = link \ 256
|
||||
|
||||
Help_Pos = Help_Pos + 1
|
||||
special:
|
||||
NEXT
|
||||
|
||||
END SUB
|
||||
|
||||
SUB Help_NewLine
|
||||
IF Help_Pos > help_w THEN help_w = Help_Pos
|
||||
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = 13
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = col + Help_BG_Col * 16
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = 0
|
||||
Help_Txt_Len = Help_Txt_Len + 1: ASC(Help_Txt$, Help_Txt_Len) = 0
|
||||
|
||||
help_h = help_h + 1
|
||||
Help_Line$ = Help_Line$ + MKL$(Help_Txt_Len + 1)
|
||||
Help_Wrap_Pos = 0
|
||||
|
||||
IF Help_Underline THEN
|
||||
Help_Underline = 0
|
||||
w = Help_Pos
|
||||
Help_Pos = 1
|
||||
Help_AddTxt STRING$(w - 1, 196), Help_Col, 0
|
||||
Help_NewLine
|
||||
END IF
|
||||
Help_Pos = 1
|
||||
|
||||
IF Help_NewLineIndent THEN
|
||||
Help_AddTxt SPACE$(Help_NewLineIndent), Help_Col, 0
|
||||
END IF
|
||||
|
||||
|
||||
END SUB
|
||||
|
||||
SUB Help_PreView
|
||||
|
||||
OPEN "help_preview.txt" FOR OUTPUT AS #1
|
||||
FOR i = 1 TO LEN(Help_Txt$) STEP 4
|
||||
c = ASC(Help_Txt$, i)
|
||||
c$ = CHR$(c)
|
||||
IF c = 13 THEN c$ = CHR$(13) + CHR$(10)
|
||||
PRINT #1, c$;
|
||||
NEXT
|
||||
CLOSE #1
|
||||
|
||||
CLS
|
||||
FOR i = 1 TO LEN(Help_Txt$) STEP 4
|
||||
c = ASC(Help_Txt$, i)
|
||||
col = ASC(Help_Txt$, i + 1)
|
||||
IF c = 13 THEN
|
||||
COLOR col AND 15, col \ 16
|
||||
PRINT SPACE$(help_w - POS(0));
|
||||
COLOR 7, 0
|
||||
PRINT SPACE$(_WIDTH - POS(0) + 1);
|
||||
COLOR col AND 15, col \ 16
|
||||
SLEEP
|
||||
ELSE
|
||||
COLOR col AND 15, col \ 16
|
||||
PRINT CHR$(c);
|
||||
END IF
|
||||
NEXT
|
||||
END SUB
|
||||
|
||||
|
||||
FUNCTION Help_Col 'helps to calculate the default color
|
||||
col = Help_Col_Normal
|
||||
IF Help_Italic THEN col = Help_Col_Italic
|
||||
IF Help_Bold THEN col = Help_Col_Bold 'Note: Bold overrides italic
|
||||
Help_Col = col
|
||||
END FUNCTION
|
||||
|
||||
|
||||
|
||||
SUB WikiParse (a$)
|
||||
'PRINT "Parsing...": _DISPLAY
|
||||
|
||||
'wiki page interpret
|
||||
|
||||
'clear info
|
||||
help_h = 0: help_w = 0: Help_Line$ = "": Help_Link$ = "": Help_LinkN = 0
|
||||
Help_Txt$ = SPACE$(1000000)
|
||||
Help_Txt_Len = 0
|
||||
|
||||
Help_Pos = 1: Help_Wrap_Pos = 0
|
||||
Help_Line$ = MKL$(1)
|
||||
Help_LockWrap = 0
|
||||
Help_Bold = 0: Help_Italic = 0
|
||||
Help_Underline = 0
|
||||
Help_BG_Col = 0
|
||||
|
||||
link = 0: elink = 0: cb = 0
|
||||
|
||||
col = Help_Col
|
||||
|
||||
'Syntax Notes:
|
||||
' '''=bold
|
||||
' ''=italic
|
||||
' {{macroname|macroparam}} or simply {{macroname}}
|
||||
' eg. {{KW|PRINT}}=a key word, a link to a page
|
||||
' {{Cl|PRINT}}=a key word in a code example, will be printed in bold and aqua
|
||||
' {{Parameter|expression}}=a parameter, in italics
|
||||
' {{PageSyntax}} {{PageDescription}} {{PageExamples}}
|
||||
' {{CodeStart}} {{CodeEnd}} {{OutputStart}} {{OutputEnd}}
|
||||
' {{PageSeeAlso}} {{PageNavigation}}
|
||||
' [[SPACE$]]=a link to wikipage called "SPACE$"
|
||||
' [[INTEGER|integer]]=a link, link's name is on left and text to appear is on right
|
||||
' *=a dot point
|
||||
' **=a sub(ie. further indented) dot point
|
||||
' "=a quotation mark
|
||||
' :=indent (if beginning a new line)
|
||||
' CHR$(10)=new line character
|
||||
|
||||
DIM c$(16)
|
||||
FOR ii = 1 TO 16
|
||||
c$(ii) = SPACE$(ii)
|
||||
NEXT
|
||||
|
||||
n = LEN(a$)
|
||||
i = 1
|
||||
DO WHILE i <= n
|
||||
|
||||
c = ASC(a$, i): c$ = CHR$(c)
|
||||
FOR i1 = 1 TO 16
|
||||
ii = i
|
||||
FOR i2 = 1 TO i1
|
||||
IF ii < n THEN
|
||||
ASC(c$(i1), i2) = ASC(a$, ii)
|
||||
ELSE
|
||||
ASC(c$(i1), i2) = 32
|
||||
END IF
|
||||
ii = ii + 1
|
||||
NEXT
|
||||
NEXT
|
||||
|
||||
IF c = 38 THEN '"&"
|
||||
|
||||
s$ = "<code>": IF c$(LEN(s$)) = s$ THEN i = i + LEN(s$) - 1: GOTO Special
|
||||
s$ = "</code>": IF c$(LEN(s$)) = s$ THEN i = i + LEN(s$) - 1: GOTO Special
|
||||
|
||||
s$ = """
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
c$ = CHR$(34): c = ASC(c$)
|
||||
GOTO SpecialChr
|
||||
END IF
|
||||
|
||||
s$ = "&"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
c$ = "&": c = ASC(c$)
|
||||
GOTO SpecialChr
|
||||
END IF
|
||||
|
||||
s$ = "<center>"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
s$ = "</center>"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
s$ = "<p style="
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
FOR ii = i TO LEN(a$) - 3
|
||||
IF MID$(a$, ii, 4) = ">" THEN i = ii + 3: EXIT FOR
|
||||
NEXT
|
||||
GOTO Special
|
||||
END IF
|
||||
s$ = "</p"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
FOR ii = i TO LEN(a$) - 3
|
||||
IF MID$(a$, ii, 4) = ">" THEN i = ii + 3: EXIT FOR
|
||||
NEXT
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
s$ = ">"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
c$ = ">": c = ASC(c$)
|
||||
GOTO SpecialChr
|
||||
END IF
|
||||
s$ = "<"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
c$ = "<": c = ASC(c$)
|
||||
GOTO SpecialChr
|
||||
END IF
|
||||
|
||||
IF c$(2) = CHR$(194) + CHR$(160) THEN 'some kind of white-space formatting unicode combo
|
||||
i = i + 1
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
SpecialChr:
|
||||
|
||||
END IF 'c=38 '"&"
|
||||
|
||||
'Links
|
||||
IF c = 91 THEN '"["
|
||||
IF c$(2) = "[[" AND link = 0 THEN
|
||||
i = i + 1
|
||||
link = 1
|
||||
link$ = ""
|
||||
GOTO Special
|
||||
END IF
|
||||
END IF
|
||||
IF link = 1 THEN
|
||||
IF c$(2) = "]]" OR c$(2) = "}}" THEN
|
||||
i = i + 1
|
||||
link = 0
|
||||
text$ = link$
|
||||
i2 = INSTR(link$, "|")
|
||||
IF i2 THEN
|
||||
text$ = RIGHT$(link$, LEN(link$) - i2)
|
||||
link$ = LEFT$(link$, i2 - 1)
|
||||
END IF
|
||||
|
||||
IF INSTR(link$, "#") THEN 'local page links not supported yet
|
||||
Help_AddTxt text$, 8, 0
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
Help_LinkN = Help_LinkN + 1
|
||||
Help_Link$ = Help_Link$ + "PAGE:" + link$ + Help_Link_Sep$
|
||||
|
||||
IF Help_BG_Col = 0 THEN
|
||||
Help_AddTxt text$, Help_Col_Link, Help_LinkN
|
||||
ELSE
|
||||
Help_AddTxt text$, Help_Col_Bold, Help_LinkN
|
||||
END IF
|
||||
GOTO Special
|
||||
END IF
|
||||
link$ = link$ + c$
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
|
||||
'External links
|
||||
IF c = 91 THEN '"["
|
||||
IF c$(6) = "[http:" AND elink = 0 THEN
|
||||
elink = 2
|
||||
elink$ = ""
|
||||
GOTO Special
|
||||
END IF
|
||||
END IF
|
||||
IF elink = 2 THEN
|
||||
IF c$ = " " THEN
|
||||
elink = 1
|
||||
GOTO Special
|
||||
END IF
|
||||
elink$ = elink$ + c$
|
||||
GOTO Special
|
||||
END IF
|
||||
IF elink >= 1 THEN
|
||||
IF c$ = "]" THEN
|
||||
elink = 0
|
||||
elink$ = " " + elink$
|
||||
Help_LockWrap = 1: Help_Wrap_Pos = 0
|
||||
Help_AddTxt elink$, 8, 0
|
||||
Help_LockWrap = 0
|
||||
elink$ = ""
|
||||
GOTO Special
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF c = 123 THEN '"{"
|
||||
IF c$(5) = "{{KW|" THEN 'this is really a link!
|
||||
i = i + 4
|
||||
link = 1
|
||||
link$ = ""
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(5) = "{{Cl|" THEN 'this is really a link too (in code example)
|
||||
i = i + 4
|
||||
link = 1
|
||||
link$ = ""
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(2) = "{{" THEN
|
||||
i = i + 1
|
||||
cb = 1
|
||||
cb$ = ""
|
||||
GOTO Special
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF cb = 1 THEN
|
||||
IF c$ = "|" OR c$(2) = "}}" THEN
|
||||
IF c$(2) = "}}" THEN i = i + 1
|
||||
cb = 0
|
||||
|
||||
IF cb$ = "PageSyntax" THEN Help_AddTxt "Syntax:" + CHR$(13), Help_Col_Section, 0
|
||||
IF cb$ = "PageDescription" THEN Help_AddTxt "Descripton:" + CHR$(13), Help_Col_Section, 0
|
||||
IF cb$ = "PageExamples" THEN Help_AddTxt "Code Examples:" + CHR$(13), Help_Col_Section, 0
|
||||
IF cb$ = "PageSeeAlso" THEN Help_AddTxt "See also:" + CHR$(13), Help_Col_Section, 0
|
||||
|
||||
IF cb$ = "CodeStart" THEN
|
||||
Help_NewLine
|
||||
Help_BG_Col = 1
|
||||
'Skip non-meaningful content before section begins
|
||||
ws = 1
|
||||
FOR ii = i + 1 TO LEN(a$)
|
||||
IF ASC(a$, ii) = 10 THEN EXIT FOR
|
||||
IF ASC(a$, ii) <> 32 AND ASC(a$, ii) <> 39 THEN ws = 0
|
||||
NEXT
|
||||
IF ws THEN i = ii
|
||||
END IF
|
||||
IF cb$ = "CodeEnd" THEN Help_BG_Col = 0
|
||||
IF cb$ = "OutputStart" THEN
|
||||
Help_NewLine
|
||||
Help_BG_Col = 2
|
||||
'Skip non-meaningful content before section begins
|
||||
ws = 1
|
||||
FOR ii = i + 1 TO LEN(a$)
|
||||
IF ASC(a$, ii) = 10 THEN EXIT FOR
|
||||
IF ASC(a$, ii) <> 32 AND ASC(a$, ii) <> 39 THEN ws = 0
|
||||
NEXT
|
||||
IF ws THEN i = ii
|
||||
END IF
|
||||
IF cb$ = "OutputEnd" THEN Help_BG_Col = 0
|
||||
|
||||
GOTO Special
|
||||
|
||||
END IF
|
||||
|
||||
cb$ = cb$ + c$ 'reading maro name
|
||||
GOTO Special
|
||||
END IF 'cb=1
|
||||
|
||||
IF c$(2) = "}}" THEN 'probably the end of a text section of macro'd text
|
||||
i = i + 1
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
|
||||
|
||||
IF c$(4) = " == " THEN
|
||||
i = i + 3
|
||||
Help_Underline = 1
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(3) = "== " THEN
|
||||
i = i + 2
|
||||
Help_Underline = 1
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(3) = " ==" THEN
|
||||
i = i + 2
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(2) = "==" THEN
|
||||
i = i + 1
|
||||
Help_Underline = 1
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
|
||||
IF c$(3) = "'''" THEN
|
||||
i = i + 2
|
||||
IF Help_Bold = 0 THEN Help_Bold = 1 ELSE Help_Bold = 0
|
||||
col = Help_Col
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
IF c$(2) = "''" THEN
|
||||
i = i + 1
|
||||
IF Help_Italic = 0 THEN Help_Italic = 1 ELSE Help_Italic = 0
|
||||
col = Help_Col
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
IF nl = 1 THEN
|
||||
|
||||
IF c$(3) = "** " THEN
|
||||
i = i + 2
|
||||
Help_AddTxt " þ ", col, 0
|
||||
Help_NewLineIndent = Help_NewLineIndent + 6
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(2) = "* " THEN
|
||||
i = i + 1
|
||||
Help_AddTxt "þ ", col, 0
|
||||
Help_NewLineIndent = Help_NewLineIndent + 2
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$(2) = "**" THEN
|
||||
i = i + 1
|
||||
Help_AddTxt " þ ", col, 0
|
||||
Help_NewLineIndent = Help_NewLineIndent + 6
|
||||
GOTO Special
|
||||
END IF
|
||||
IF c$ = "*" THEN
|
||||
Help_AddTxt "þ ", col, 0
|
||||
Help_NewLineIndent = Help_NewLineIndent + 2
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
END IF
|
||||
|
||||
s$ = "{|"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + 1
|
||||
FOR ii = i TO LEN(a$) - 1
|
||||
IF MID$(a$, ii, 2) = "|}" THEN i = ii + 1: EXIT FOR
|
||||
NEXT
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
IF c$(3) = CHR$(226) + CHR$(128) + CHR$(166) THEN '...
|
||||
i = i + 2
|
||||
Help_AddTxt "...", col, 0
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
IF c$ = CHR$(226) THEN 'UNICODE UTF8 extender "â", it's a very good bet the following 2 characters will be 2 bytes of UNICODE
|
||||
i = i + 2
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
IF c$ = ":" AND nl = 1 THEN
|
||||
Help_AddTxt " ", col, 0
|
||||
Help_NewLineIndent = Help_NewLineIndent + 4
|
||||
i = i + 1: GOTO special2
|
||||
END IF
|
||||
|
||||
s$ = "__NOTOC__" + CHR$(10)
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
GOTO Special
|
||||
END IF
|
||||
s$ = "__NOTOC__"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
s$ = "<div"
|
||||
IF c$(LEN(s$)) = s$ THEN
|
||||
i = i + LEN(s$) - 1
|
||||
FOR ii = i TO LEN(a$) - 1
|
||||
IF MID$(a$, ii, 12) = "</div>" THEN i = ii + 11: EXIT FOR
|
||||
NEXT
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
|
||||
IF c$(4) = "----" THEN
|
||||
i = i + 3
|
||||
Help_AddTxt "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ", 8, 0
|
||||
GOTO Special
|
||||
END IF
|
||||
|
||||
|
||||
|
||||
IF c$ = CHR$(10) THEN
|
||||
Help_NewLineIndent = 0
|
||||
|
||||
IF Help_Txt_Len >= 8 THEN
|
||||
IF ASC(Help_Txt$, Help_Txt_Len - 3) = 13 AND ASC(Help_Txt$, Help_Txt_Len - 7) = 13 THEN GOTO skipdoubleblanks
|
||||
END IF
|
||||
|
||||
Help_AddTxt CHR$(13), col, 0
|
||||
|
||||
skipdoubleblanks:
|
||||
nl = 1
|
||||
i = i + 1: GOTO special2
|
||||
END IF
|
||||
|
||||
Help_AddTxt CHR$(c), col, 0
|
||||
|
||||
Special:
|
||||
i = i + 1
|
||||
nl = 0
|
||||
special2:
|
||||
LOOP
|
||||
|
||||
'Trim Help_Txt$
|
||||
Help_Txt$ = LEFT$(Help_Txt$, Help_Txt_Len) + CHR$(13) 'chr13 stops reads past end of content
|
||||
|
||||
'generate preview file
|
||||
'OPEN "help_preview.txt" FOR OUTPUT AS #1
|
||||
'FOR i = 1 TO LEN(Help_Txt$) STEP 4
|
||||
' c = ASC(Help_Txt$, i)
|
||||
' c$ = CHR$(c)
|
||||
' IF c = 13 THEN c$ = CHR$(13) + CHR$(10)
|
||||
' PRINT #1, c$;
|
||||
'NEXT
|
||||
'CLOSE #1
|
||||
|
||||
'PRINT "Finished parsing!": _DISPLAY
|
||||
|
||||
|
||||
IF Help_PageLoaded$ = "Keyword Reference - Alphabetical" THEN
|
||||
|
||||
fh = FREEFILE
|
||||
OPEN "internal\help\links.bin" FOR OUTPUT AS #fh
|
||||
a$ = SPACE$(1000)
|
||||
FOR cy = 1 TO help_h
|
||||
'isolate and REVERSE select link
|
||||
l = CVL(MID$(Help_Line$, (cy - 1) * 4 + 1, 4))
|
||||
x = l
|
||||
x2 = 1
|
||||
c = ASC(Help_Txt$, x)
|
||||
oldlnk = 0
|
||||
lnkx1 = 0: lnkx2 = 0
|
||||
DO UNTIL c = 13
|
||||
ASC(a$, x2) = c
|
||||
lnk = CVI(MID$(Help_Txt$, x + 2, 2))
|
||||
IF oldlnk = 0 AND lnk <> 0 THEN lnkx1 = x2
|
||||
IF (lnk = 0 OR ASC(Help_Txt$, x + 4) = 13) AND lnkx1 <> 0 THEN
|
||||
lnkx2 = x2: IF lnk = 0 THEN lnkx2 = lnkx2 - 1
|
||||
|
||||
IF lnkx1 <> 3 THEN GOTO ignorelink
|
||||
IF ASC(a$, 1) <> 254 THEN GOTO ignorelink
|
||||
|
||||
'retrieve lnk info
|
||||
lnk2 = lnk: IF lnk2 = 0 THEN lnk2 = oldlnk
|
||||
l1 = 1
|
||||
FOR lx = 1 TO lnk2 - 1
|
||||
l1 = INSTR(l1, Help_Link$, Help_Link_Sep$) + 1
|
||||
NEXT
|
||||
l2 = INSTR(l1, Help_Link$, Help_Link_Sep$) - 1
|
||||
l$ = MID$(Help_Link$, l1, l2 - l1 + 1)
|
||||
'assume PAGE
|
||||
l$ = RIGHT$(l$, LEN(l$) - 5)
|
||||
|
||||
a2$ = MID$(a$, lnkx1, lnkx2 - lnkx1 + 1)
|
||||
|
||||
IF INSTR(a2$, "(") THEN a2$ = LEFT$(a2$, INSTR(a2$, "(") - 1)
|
||||
IF INSTR(a2$, " ") THEN a2$ = LEFT$(a2$, INSTR(a2$, " ") - 1)
|
||||
IF INSTR(a2$, "...") THEN
|
||||
a3$ = RIGHT$(a2$, LEN(a2$) - INSTR(a2$, "...") - 2)
|
||||
|
||||
skip = 0
|
||||
|
||||
IF UCASE$(LEFT$(a3$, 3)) <> "_GL" THEN
|
||||
FOR ci = 1 TO LEN(a3$)
|
||||
ca = ASC(a3$, ci)
|
||||
IF ca >= 97 AND ca <= 122 THEN skip = 1
|
||||
IF ca = 44 THEN skip = 1
|
||||
NEXT
|
||||
END IF
|
||||
|
||||
IF skip = 0 THEN PRINT #fh, a3$ + "," + l$
|
||||
|
||||
a2$ = LEFT$(a2$, INSTR(a2$, "...") - 1)
|
||||
END IF
|
||||
|
||||
|
||||
skip = 0
|
||||
IF UCASE$(LEFT$(a2$, 3)) <> "_GL" THEN
|
||||
FOR ci = 1 TO LEN(a2$)
|
||||
ca = ASC(a2$, ci)
|
||||
IF ca >= 97 AND ca <= 122 THEN skip = 1
|
||||
IF ca = 44 THEN skip = 1
|
||||
NEXT
|
||||
END IF
|
||||
IF skip = 0 THEN PRINT #fh, a2$ + "," + l$
|
||||
oa2$ = a2$
|
||||
|
||||
a2$ = l$
|
||||
IF INSTR(a2$, "(") THEN a2$ = LEFT$(a2$, INSTR(a2$, "(") - 1)
|
||||
IF INSTR(a2$, " ") THEN a2$ = LEFT$(a2$, INSTR(a2$, " ") - 1)
|
||||
IF INSTR(a2$, "...") THEN
|
||||
a3$ = RIGHT$(a2$, LEN(a2$) - INSTR(a2$, "...") - 2)
|
||||
|
||||
skip = 0
|
||||
IF UCASE$(LEFT$(a3$, 3)) <> "_GL" THEN
|
||||
FOR ci = 1 TO LEN(a3$)
|
||||
ca = ASC(a3$, ci)
|
||||
IF ca >= 97 AND ca <= 122 THEN skip = 1
|
||||
IF ca = 44 THEN skip = 1
|
||||
NEXT
|
||||
END IF
|
||||
IF skip = 0 THEN PRINT #fh, a3$ + "," + l$
|
||||
|
||||
a2$ = LEFT$(a2$, INSTR(a2$, "...") - 1)
|
||||
END IF
|
||||
|
||||
skip = 0
|
||||
IF UCASE$(LEFT$(a2$, 3)) <> "_GL" THEN
|
||||
FOR ci = 1 TO LEN(a2$)
|
||||
ca = ASC(a2$, ci)
|
||||
IF ca >= 97 AND ca <= 122 THEN skip = 1
|
||||
IF ca = 44 THEN skip = 1
|
||||
NEXT
|
||||
END IF
|
||||
IF skip = 0 AND a2$ <> oa2$ THEN PRINT #fh, a2$ + "," + l$
|
||||
|
||||
ignorelink:
|
||||
|
||||
lnkx1 = 0: lnkx2 = 0
|
||||
END IF
|
||||
x = x + 4: c = ASC(Help_Txt$, x)
|
||||
x2 = x2 + 1
|
||||
oldlnk = lnk
|
||||
LOOP
|
||||
NEXT
|
||||
CLOSE #fh
|
||||
|
||||
END IF
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
END SUB
|
File diff suppressed because it is too large
Load diff
2
source/subs_functions/extensions/extension_list.bas
Normal file
2
source/subs_functions/extensions/extension_list.bas
Normal file
|
@ -0,0 +1,2 @@
|
|||
'$INCLUDE:'Luke Stuff-ID_Includes.bas'
|
||||
'$INCLUDE:'Steve Stuff-ID_Includes.bas'
|
15
source/subs_functions/extensions/opengl/opengl_global.bas
Normal file
15
source/subs_functions/extensions/opengl/opengl_global.bas
Normal file
|
@ -0,0 +1,15 @@
|
|||
TYPE GL_idstruct
|
||||
cn AS STRING * 64 'case sensitive version of n
|
||||
subfunc AS INTEGER 'if function=1, sub=2
|
||||
callname AS STRING * 64
|
||||
args AS INTEGER
|
||||
arg AS STRING * 80 'similar to t
|
||||
ret AS LONG 'the value it returns if it is a function (again like t)
|
||||
END TYPE
|
||||
REDIM SHARED GL_COMMANDS(2000) AS GL_idstruct
|
||||
DIM SHARED GL_HELPER_CODE AS STRING
|
||||
DIM SHARED GL_COMMANDS_LAST
|
||||
REDIM SHARED GL_DEFINES(2000) AS STRING 'average ~600 entries
|
||||
REDIM SHARED GL_DEFINES_VALUE(2000) AS _INTEGER64
|
||||
DIM SHARED GL_DEFINES_LAST
|
||||
DIM SHARED GL_KIT: GL_KIT = 0
|
405
source/subs_functions/extensions/opengl/opengl_methods.bas
Normal file
405
source/subs_functions/extensions/opengl/opengl_methods.bas
Normal file
|
@ -0,0 +1,405 @@
|
|||
FUNCTION gl2qb_type_convert$ (a$, symbol$, typ, ctyp$)
|
||||
symbol$ = ""
|
||||
|
||||
'unsigned int
|
||||
IF a$ = "GLenum" THEN b$ = "_UNSIGNED LONG": symbol$ = "~&": typ = ULONGTYPE - ISPOINTER: ctyp$ = "uint32"
|
||||
IF a$ = "GLbitfield" THEN b$ = "_UNSIGNED LONG": symbol$ = "~&": typ = ULONGTYPE - ISPOINTER: ctyp$ = "uint32"
|
||||
IF a$ = "GLuint" THEN b$ = "_UNSIGNED LONG": symbol$ = "~&": typ = ULONGTYPE - ISPOINTER: ctyp$ = "uint32"
|
||||
|
||||
'int
|
||||
IF a$ = "GLint" THEN b$ = "LONG": symbol$ = "&": typ = LONGTYPE - ISPOINTER: ctyp$ = "int32"
|
||||
IF a$ = "GLsizei" THEN b$ = "LONG": symbol$ = "&": typ = LONGTYPE - ISPOINTER: ctyp$ = "int32"
|
||||
|
||||
'unsigned char
|
||||
IF a$ = "GLboolean" THEN b$ = "_UNSIGNED _BYTE": symbol$ = "~%%": typ = UBYTETYPE - ISPOINTER: ctyp$ = "uint8"
|
||||
IF a$ = "GLubyte" THEN b$ = "_UNSIGNED _BYTE": symbol$ = "~%%": typ = UBYTETYPE - ISPOINTER: ctyp$ = "uint8"
|
||||
|
||||
'char
|
||||
IF a$ = "GLbyte" THEN b$ = "_BYTE": symbol$ = "%%": typ = BYTETYPE - ISPOINTER: ctyp$ = "int8"
|
||||
|
||||
'unsigned short
|
||||
IF a$ = "GLushort" THEN b$ = "_UNSIGNED INTEGER": symbol$ = "~%": typ = UINTEGERTYPE - ISPOINTER: ctyp$ = "uint16"
|
||||
|
||||
'short
|
||||
IF a$ = "GLshort" THEN b$ = "INTEGER": symbol$ = "%": typ = INTEGERTYPE - ISPOINTER: ctyp$ = "int16"
|
||||
|
||||
'float
|
||||
IF a$ = "GLfloat" THEN b$ = "SINGLE": symbol$ = "!": typ = SINGLETYPE - ISPOINTER: ctyp$ = "float"
|
||||
IF a$ = "GLclampf" THEN b$ = "SINGLE": symbol$ = "!": typ = SINGLETYPE - ISPOINTER: ctyp$ = "float"
|
||||
|
||||
'double
|
||||
IF a$ = "GLdouble" THEN b$ = "DOUBLE": symbol$ = "#": typ = DOUBLETYPE - ISPOINTER: ctyp$ = "double"
|
||||
IF a$ = "GLclampd" THEN b$ = "DOUBLE": symbol$ = "#": typ = DOUBLETYPE - ISPOINTER: ctyp$ = "double"
|
||||
|
||||
'void
|
||||
IF a$ = "GLvoid" THEN b$ = "_OFFSET": symbol$ = "&&": typ = OFFSETTYPE - ISPOINTER: ctyp$ = "ptrszint"
|
||||
|
||||
'typedef unsigned int GLenum;
|
||||
'typedef unsigned char GLboolean;
|
||||
'typedef unsigned int GLbitfield;
|
||||
'typedef signed char GLbyte;
|
||||
'typedef short GLshort;
|
||||
'typedef int GLint;
|
||||
'typedef int GLsizei;
|
||||
'typedef unsigned char GLubyte;
|
||||
'typedef unsigned short GLushort;
|
||||
'typedef unsigned int GLuint;
|
||||
'typedef float GLfloat;
|
||||
'typedef float GLclampf;
|
||||
'typedef double GLdouble;
|
||||
'typedef double GLclampd;
|
||||
'typedef void GLvoid;
|
||||
|
||||
IF b$ = "" THEN PRINT "Unknown type:" + a$: END
|
||||
gl2qb_type_convert$ = b$
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION readchunk$ (a$, last_character$)
|
||||
a$ = LTRIM$(RTRIM$(a$))
|
||||
FOR x = 1 TO LEN(a$)
|
||||
c = ASC(a$, x)
|
||||
IF c = 32 OR c = 44 OR c = 40 OR c = 41 THEN last_character$ = CHR$(c): readchunk$ = LEFT$(a$, x - 1): a$ = LTRIM$(RIGHT$(a$, LEN(a$) - x)): EXIT FUNCTION
|
||||
NEXT
|
||||
readchunk$ = a$: last_character$ = "": a$ = ""
|
||||
END FUNCTION
|
||||
|
||||
|
||||
SUB gl_scan_header
|
||||
|
||||
IF GL_KIT THEN hk = FREEFILE: OPEN "internal\c\parts\core\gl_header_for_parsing\temp\gl_kit.bas" FOR OUTPUT AS #hk
|
||||
IF GL_KIT THEN PRINT #hk, "DECLARE LIBRARY"
|
||||
|
||||
d = 0: a2$ = ""
|
||||
h = FREEFILE
|
||||
OPEN "internal\c\parts\core\gl_header_for_parsing\gl.h" FOR INPUT AS #h
|
||||
DO UNTIL EOF(h)
|
||||
LINE INPUT #h, a$
|
||||
IF LEN(a$) THEN
|
||||
a$ = LTRIM$(RTRIM$(a$))
|
||||
IF LEFT$(a$, 8) = "#define " THEN
|
||||
a2$ = ""
|
||||
a$ = a$ + " "
|
||||
FOR x = 1 TO LEN(a$)
|
||||
c = ASC(a$, x)
|
||||
IF c = 32 THEN
|
||||
FOR x2 = 1 TO LEN(a2$)
|
||||
c2 = ASC(a2$, x2)
|
||||
IF c2 >= 65 AND c2 <= 90 THEN GOTO define_ok
|
||||
IF c2 >= 48 AND c2 <= 57 AND x2 <> 1 THEN GOTO define_ok
|
||||
IF c2 = 95 THEN GOTO define_ok
|
||||
GOTO define_not_ok
|
||||
define_ok:
|
||||
NEXT
|
||||
value$ = LTRIM$(RTRIM$(RIGHT$(a$, LEN(a$) - x)))
|
||||
IF LEN(value$) = 0 THEN GOTO define_not_ok
|
||||
|
||||
IF LEFT$(value$, 2) = "0x" THEN
|
||||
value&& = VAL("&H" + RIGHT$(value$, LEN(value$) - 2) + "&&")
|
||||
'PRINT a2$, value&&
|
||||
d = d + 1: GL_DEFINES(d) = a2$: GL_DEFINES_VALUE(d) = value&&
|
||||
ELSEIF ASC(value$) >= 48 AND ASC(value$) <= 57 THEN
|
||||
value&& = VAL(value$)
|
||||
'PRINT a2$, value&&
|
||||
d = d + 1: GL_DEFINES(d) = a2$: GL_DEFINES_VALUE(d) = value&&
|
||||
ELSE
|
||||
'PRINT a2$, value$, "?"
|
||||
FOR i = 1 TO d
|
||||
IF GL_DEFINES(i) = value$ THEN
|
||||
d = d + 1: GL_DEFINES(d) = a2$: GL_DEFINES_VALUE(d) = GL_DEFINES_VALUE(i)
|
||||
'PRINT a2$, GL_DEFINES_VALUE(i)
|
||||
EXIT FOR
|
||||
END IF
|
||||
NEXT
|
||||
END IF
|
||||
GOTO got_define
|
||||
define_not_ok:
|
||||
a2$ = ""
|
||||
ELSE
|
||||
a2$ = a2$ + CHR$(c)
|
||||
END IF
|
||||
NEXT
|
||||
got_define:
|
||||
END IF '#define
|
||||
|
||||
|
||||
IF RIGHT$(a$, 1) = ";" THEN
|
||||
a2$ = readchunk(a$, l$): IF a2$ <> "WINGDIAPI" GOTO discard
|
||||
ret_type$ = readchunk(a$, l$)
|
||||
IF ret_type$ = "const" THEN ret_type$ = readchunk(a$, l$)
|
||||
|
||||
is_func = 0: IF ret_type$ <> "void" THEN is_func = 1
|
||||
|
||||
a2$ = readchunk(a$, l$)
|
||||
IF a2$ = "*APIENTRY" THEN ret_type$ = ret_type$ + "*": a2$ = "APIENTRY"
|
||||
IF a2$ <> "APIENTRY" THEN GOTO discard
|
||||
|
||||
GL_COMMANDS_LAST = GL_COMMANDS_LAST + 1
|
||||
c = GL_COMMANDS_LAST
|
||||
|
||||
hc$ = ""
|
||||
hd$ = ""
|
||||
need_helper_function = 0
|
||||
|
||||
IF is_func THEN
|
||||
GL_COMMANDS(c).subfunc = 1
|
||||
IF GL_KIT THEN PRINT #hk, "FUNCTION ";
|
||||
ELSE
|
||||
GL_COMMANDS(c).subfunc = 2
|
||||
IF GL_KIT THEN PRINT #hk, "SUB ";
|
||||
END IF
|
||||
|
||||
proc_name$ = readchunk(a$, l$)
|
||||
|
||||
GL_COMMANDS(c).cn = "_" + proc_name$: IF GL_KIT THEN PRINT #hk, proc_name$;
|
||||
GL_COMMANDS(c).callname = proc_name$
|
||||
|
||||
GL_COMMANDS(c).ret = 0
|
||||
IF is_func THEN
|
||||
pointer = 0: IF RIGHT$(ret_type$, 1) = "*" THEN pointer = 1
|
||||
IF pointer THEN
|
||||
t$ = "_OFFSET": s$ = "&&"
|
||||
GL_COMMANDS(c).ret = OFFSETTYPE - ISPOINTER
|
||||
hd$ = hd$ + "ptrszint "
|
||||
need_helper_function = 1
|
||||
ELSE
|
||||
t$ = gl2qb_type_convert(ret_type$, s$, typ, ctyp$)
|
||||
GL_COMMANDS(c).ret = typ
|
||||
hd$ = hd$ + ctyp$ + " "
|
||||
END IF
|
||||
IF GL_KIT THEN PRINT #hk, s$;
|
||||
hc$ = hc$ + "return (" + ctyp$ + ")(" + ret_type$ + ")"
|
||||
ELSE
|
||||
hd$ = hd$ + "void "
|
||||
END IF
|
||||
|
||||
IF GL_KIT THEN PRINT #hk, "(";
|
||||
|
||||
hc$ = hc$ + proc_name$ + "("
|
||||
hd$ = hd$ + "call_" + proc_name$ + "("
|
||||
|
||||
|
||||
GL_COMMANDS(c).args = 0
|
||||
GL_COMMANDS(c).arg = ""
|
||||
|
||||
DO
|
||||
|
||||
var_type$ = readchunk(a$, l$)
|
||||
IF var_type$ = "" AND l$ = "(" THEN var_type$ = readchunk(a$, l$) 'space between fun name and "("?
|
||||
IF var_type$ = "const" THEN var_type$ = readchunk(a$, l$)
|
||||
IF var_type$ = "void" OR var_type$ = "" THEN GOTO no_arguments
|
||||
IF l$ <> "," AND l$ <> ")" THEN
|
||||
var_name$ = readchunk(a$, l$)
|
||||
IF LEFT$(var_name$, 1) = "*" THEN var_type$ = var_type$ + "*": var_name$ = RIGHT$(var_name$, LEN(var_name$) - 1)
|
||||
IF LEFT$(var_name$, 1) = "*" THEN var_type$ = var_type$ + "*": var_name$ = RIGHT$(var_name$, LEN(var_name$) - 1)
|
||||
'Note: could be a poiner to a pointer
|
||||
ELSE
|
||||
var_name$ = "no_name"
|
||||
END IF
|
||||
|
||||
var_type_backup$ = var_type$
|
||||
|
||||
pointer = 0
|
||||
|
||||
IF RIGHT$(var_type$, 1) = "*" THEN
|
||||
var_type$ = LEFT$(var_type$, LEN(var_type$) - 1)
|
||||
pointer = 1
|
||||
END IF
|
||||
IF RIGHT$(var_type$, 1) = "*" THEN
|
||||
var_type$ = LEFT$(var_type$, LEN(var_type$) - 1)
|
||||
pointer = 2
|
||||
END IF
|
||||
|
||||
IF pointer = 2 THEN
|
||||
qb_type$ = "_OFFSET" 'it's the offset of an offset
|
||||
ELSE
|
||||
qb_type$ = gl2qb_type_convert$(var_type$, s$, typ, ctyp$)
|
||||
END IF
|
||||
|
||||
'IF pointer THEN need_helper_function = 1
|
||||
need_helper_function = 1
|
||||
|
||||
IF GL_KIT THEN
|
||||
IF pointer = 0 THEN PRINT #hk, "BYVAL ";
|
||||
PRINT #hk, var_name$ + " AS " + qb_type$;
|
||||
IF l$ <> ")" THEN PRINT #hk, ",";
|
||||
END IF
|
||||
|
||||
IF pointer = 0 THEN
|
||||
arg$ = MKL$(typ)
|
||||
END IF
|
||||
IF pointer = 1 THEN 'all pointers convert to BYVAL _OFFSET
|
||||
arg$ = MKL$(OFFSETTYPE - ISPOINTER)
|
||||
ctyp$ = "ptrszint"
|
||||
END IF
|
||||
IF pointer = 2 THEN 'all pointers-to-pointers convert to xxx"BYREF"xxx BYVAL _OFFSET
|
||||
arg$ = MKL$(OFFSETTYPE - ISPOINTER)
|
||||
ctyp$ = "ptrszint"
|
||||
'***this is important or you lose the ability to specify any offset, only the offset of a variable of type
|
||||
' _OFFSET
|
||||
' arg$ = MKL$(OFFSETTYPE)
|
||||
' ctyp$ = "ptrszint*"
|
||||
END IF
|
||||
|
||||
GL_COMMANDS(c).args = GL_COMMANDS(c).args + 1
|
||||
|
||||
MID$(GL_COMMANDS(c).arg, (GL_COMMANDS(c).args - 1) * 4 + 1, 4) = arg$
|
||||
'z$ = GL_COMMANDS(c).arg
|
||||
'MID$(z$, (GL_COMMANDS(c).args - 1) * 4 + 1, 4) = arg$
|
||||
'GL_COMMANDS(c).arg = z$
|
||||
|
||||
letter$ = CHR$(96 + GL_COMMANDS(c).args)
|
||||
|
||||
hc$ = hc$ + "(" + var_type_backup$ + ")" + letter$
|
||||
hd$ = hd$ + ctyp$ + " " + letter$
|
||||
|
||||
|
||||
|
||||
IF l$ <> ")" THEN hc$ = hc$ + ",": hd$ = hd$ + ","
|
||||
|
||||
LOOP UNTIL l$ = ")"
|
||||
no_arguments:
|
||||
|
||||
|
||||
hd$ = hd$ + "){"
|
||||
hc$ = hc$ + ");"
|
||||
IF GL_KIT THEN PRINT #hk, ")"
|
||||
h$ = hd$ + CRLF + "if (!sub_gl_called) error(270);" + CRLF + hc$ + CRLF + "}" + CRLF
|
||||
|
||||
IF need_helper_function THEN 'do we need the helper function for this command?
|
||||
GL_HELPER_CODE = GL_HELPER_CODE + h$
|
||||
GL_COMMANDS(c).callname = "call_" + proc_name$
|
||||
END IF
|
||||
|
||||
|
||||
IF proc_name$ = "glGetString" THEN
|
||||
GL_COMMANDS(c).ret = STRINGTYPE
|
||||
GL_COMMANDS(c).callname = "( char* )" + RTRIM$(GL_COMMANDS(c).callname)
|
||||
END IF
|
||||
|
||||
|
||||
|
||||
|
||||
END IF
|
||||
|
||||
END IF
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
discard:
|
||||
LOOP
|
||||
CLOSE #h
|
||||
|
||||
IF GL_KIT THEN PRINT #hk, "END DECLARE"
|
||||
|
||||
GL_DEFINES_LAST = d
|
||||
REDIM _PRESERVE GL_DEFINES(d) AS STRING
|
||||
'PRINT "Defines:"; GL_DEFINES_LAST
|
||||
|
||||
REDIM _PRESERVE GL_COMMANDS(GL_COMMANDS_LAST) AS GL_idstruct
|
||||
'PRINT "Commands:"; GL_COMMANDS_LAST
|
||||
|
||||
IF GL_KIT THEN
|
||||
FOR i = 1 TO GL_DEFINES_LAST
|
||||
PRINT #hk, "CONST " + GL_DEFINES(i) + "="; GL_DEFINES_VALUE(i)
|
||||
NEXT
|
||||
END IF
|
||||
|
||||
'FOR i = 1 TO GL_COMMANDS_LAST
|
||||
' PRINT ".cn="; GL_COMMANDS(i).cn
|
||||
' PRINT ".callname="; GL_COMMANDS(i).callname
|
||||
' PRINT ".subfunc="; GL_COMMANDS(i).subfunc
|
||||
' PRINT ".args="; GL_COMMANDS(i).args
|
||||
' _CONTROLCHR OFF
|
||||
' PRINT ".arg=[" + RTRIM$(GL_COMMANDS(i).arg) + "]"
|
||||
' _CONTROLCHR ON
|
||||
' PRINT ".ret="; GL_COMMANDS(i).ret
|
||||
'NEXT
|
||||
|
||||
IF GL_KIT THEN CLOSE #hk
|
||||
|
||||
|
||||
fh = FREEFILE
|
||||
OPEN "internal\c\parts\core\gl_header_for_parsing\temp\gl_helper_code.h" FOR OUTPUT AS #fh
|
||||
PRINT #fh, GL_HELPER_CODE
|
||||
CLOSE #fh
|
||||
|
||||
|
||||
END SUB
|
||||
|
||||
SUB gl_include_content
|
||||
|
||||
'add constants
|
||||
FOR d = 1 TO GL_DEFINES_LAST
|
||||
IF ASC(GL_DEFINES(d)) <> 95 THEN
|
||||
GL_DEFINES(d) = "_" + GL_DEFINES(d)
|
||||
END IF
|
||||
constlast = constlast + 1
|
||||
IF constlast > constmax THEN
|
||||
constmax = constmax * 2
|
||||
REDIM _PRESERVE constname(constmax) AS STRING
|
||||
REDIM _PRESERVE constcname(constmax) AS STRING
|
||||
REDIM _PRESERVE constnamesymbol(constmax) AS STRING 'optional name symbol
|
||||
REDIM _PRESERVE consttype(constmax) AS LONG 'variable type number
|
||||
REDIM _PRESERVE constinteger(constmax) AS _INTEGER64
|
||||
REDIM _PRESERVE constuinteger(constmax) AS _UNSIGNED _INTEGER64
|
||||
REDIM _PRESERVE constfloat(constmax) AS _FLOAT
|
||||
REDIM _PRESERVE conststring(constmax) AS STRING
|
||||
REDIM _PRESERVE constsubfunc(constmax) AS LONG
|
||||
REDIM _PRESERVE constdefined(constmax) AS LONG
|
||||
END IF
|
||||
i = constlast
|
||||
constname(i) = GL_DEFINES(d)
|
||||
constcname(i) = GL_DEFINES(d)
|
||||
constnamesymbol(i) = "&&"
|
||||
consttype(i) = INTEGER64TYPE - ISPOINTER
|
||||
constinteger(i) = GL_DEFINES_VALUE(d)
|
||||
constsubfunc(i) = 0 'global
|
||||
constdefined(i) = 1
|
||||
'add to hash table
|
||||
HashAdd constcname(i), HASHFLAG_CONSTANT, i
|
||||
NEXT
|
||||
|
||||
|
||||
'add subs/functions
|
||||
FOR c = 1 TO GL_COMMANDS_LAST
|
||||
DIM g AS GL_idstruct
|
||||
' TYPE GL_idstruct
|
||||
' cn AS STRING * 64 'case sensitive version of n
|
||||
' subfunc AS INTEGER 'if function=1, sub=2
|
||||
' callname AS STRING * 64
|
||||
' args AS INTEGER
|
||||
' arg AS STRING * 80 'similar to t
|
||||
' ret AS LONG 'the value it returns if it is a function (again like t)
|
||||
' END TYPE
|
||||
g = GL_COMMANDS(c)
|
||||
|
||||
reginternalsubfunc = 1
|
||||
clearid
|
||||
id.ccall = 1 '*** important for handling string returns correctly ***
|
||||
id.n = RTRIM$(g.cn)
|
||||
s = g.subfunc
|
||||
id.subfunc = s
|
||||
id.callname = RTRIM$(g.callname)
|
||||
id.args = g.args
|
||||
id.arg = g.arg
|
||||
id.ret = g.ret
|
||||
regid
|
||||
reginternalsubfunc = 0
|
||||
NEXT
|
||||
|
||||
'add inline function definitions
|
||||
|
||||
'SUB gluPerspective (BYVAL fovy#, BYVAL aspect#, BYVAL zNear#, BYVAL zFar#)
|
||||
reginternalsubfunc = 1
|
||||
clearid
|
||||
id.n = "_gluPerspective"
|
||||
id.subfunc = 2 'sub
|
||||
id.callname = "gluPerspective"
|
||||
id.args = 4
|
||||
id.arg = MKL$(DOUBLETYPE - ISPOINTER) + MKL$(DOUBLETYPE - ISPOINTER) + MKL$(DOUBLETYPE - ISPOINTER) + MKL$(DOUBLETYPE - ISPOINTER)
|
||||
regid
|
||||
reginternalsubfunc = 0
|
||||
|
||||
END SUB
|
2733
source/subs_functions/subs_functions.bas
Normal file
2733
source/subs_functions/subs_functions.bas
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue