[DEVELOPMENT ENVIRONMENT]

* BUG: Fix how documentation pages of code and libraries written in Gambas 
  are generated.
* NEW: Some little fixes in Gambas terminal fonts.

[GB.COMPRESS.ZLIB]
* BUG: Fix the driver that was not working anymore.

[GB.COMPRESS.BZLIB2]
* BUG: Fix the driver that was not working anymore.


git-svn-id: svn://localhost/gambas/trunk@5435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
This commit is contained in:
Benoît Minisini 2012-12-14 01:47:32 +00:00
parent effc601413
commit acbd6bd8a1
17 changed files with 1594 additions and 769 deletions

View File

@ -21,7 +21,7 @@ OS2Version: 0
OS2_WeightWidthSlopeOnly: 0
OS2_UseTypoMetrics: 1
CreationTime: 1353105747
ModificationTime: 1354194858
ModificationTime: 1355306602
PfmFamily: 17
TTFWeight: 700
TTFWidth: 5
@ -50,11 +50,11 @@ NameList: Adobe Glyph List
DisplaySize: 12
AntiAlias: 1
FitToEm: 1
WinInfo: 232 29 11
WinInfo: 319 29 11
OnlyBitmaps: 1
BeginPrivate: 0
EndPrivate
BeginChars: 65534 2227
BeginChars: 65534 2229
StartChar: char0
Encoding: 0 0 0
@ -10307,7 +10307,7 @@ StartChar: uni01A2
Encoding: 418 418 1289
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -10315,7 +10315,7 @@ StartChar: uni01A3
Encoding: 419 419 1290
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -10408,15 +10408,17 @@ EndChar
StartChar: Uhorn
Encoding: 431 431 1302
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uhorn
Encoding: 432 432 1303
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -10430,8 +10432,9 @@ EndChar
StartChar: uni01B2
Encoding: 434 434 1305
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -10567,7 +10570,7 @@ StartChar: uni01C4
Encoding: 452 452 1322
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -10575,7 +10578,7 @@ StartChar: uni01C5
Encoding: 453 453 1323
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -10583,7 +10586,7 @@ StartChar: uni01C6
Encoding: 454 454 1324
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -10701,15 +10704,17 @@ EndChar
StartChar: uni01D5
Encoding: 469 469 1339
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni01D6
Encoding: 470 470 1340
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -10765,29 +10770,33 @@ EndChar
StartChar: uni01DE
Encoding: 478 478 1348
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni01DF
Encoding: 479 479 1349
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni01E0
Encoding: 480 480 1350
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni01E1
Encoding: 481 481 1351
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -10809,15 +10818,17 @@ EndChar
StartChar: uni01E4
Encoding: 484 484 1354
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni01E5
Encoding: 485 485 1355
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -10983,15 +10994,17 @@ EndChar
StartChar: Aringacute
Encoding: 506 506 1376
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: aringacute
Encoding: 507 507 1377
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -11317,15 +11330,17 @@ EndChar
StartChar: uni022A
Encoding: 554 554 1418
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni022B
Encoding: 555 555 1419
Width: 1000
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
@ -17612,8 +17627,24 @@ VWidth: 0
Flags: W
LayerCount: 2
EndChar
StartChar: uni0230
Encoding: 560 560 2227
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
StartChar: uni0231
Encoding: 561 561 2228
Width: 500
VWidth: 0
Flags: HW
LayerCount: 2
EndChar
EndChars
BitmapFont: 12 2228 10 2 1 xos4
BitmapFont: 12 2229 10 2 1 xos4
BDFStartProperties: 24
COMMENT 1 "ter-u12b"
FONT 1 "-xos4-Gambas-Bold-R-Normal--12-120-72-72-C-60-ISO10646-1"
@ -20245,14 +20276,14 @@ BDFChar: 1300 429 6 0 4 0 8
0OS;X?smAM2uipY
BDFChar: 1301 430 6 0 5 -1 7
r%KfY0JG17(]XO9
BDFChar: 1302 431 12 0 0 0 0
z
BDFChar: 1303 432 12 0 0 0 0
z
BDFChar: 1302 431 6 0 5 0 8
%+s4bf\"j/Du]k<
BDFChar: 1303 432 6 0 5 0 6
%+s4bf[tEK
BDFChar: 1304 433 6 0 4 0 7
fML5Qf\"hq
BDFChar: 1305 434 12 0 0 0 0
z
BDFChar: 1305 434 6 0 5 0 8
%+s4bf_BE)+92BA
BDFChar: 1306 435 6 0 5 0 9
":35qG^(nr0JEJ,
BDFChar: 1307 436 6 0 5 -2 7
@ -20286,7 +20317,7 @@ BDFChar: 1320 450 6 0 5 0 7
BDFChar: 1321 451 6 2 3 0 7
^qdb$^];0c
BDFChar: 1322 452 6 0 5 0 9
'F<LTXJi)-nD"!D
'F<LlUo:5rr7h8P
BDFChar: 1323 453 6 0 5 0 7
eEFQ@XLRcT
BDFChar: 1324 454 6 0 5 0 7
@ -20319,10 +20350,10 @@ BDFChar: 1337 467 6 0 4 0 9
:a"ECf\"j/fPgfj
BDFChar: 1338 468 6 0 4 0 7
:a"ECf\"i$
BDFChar: 1339 469 6 0 0 0 0
z
BDFChar: 1340 470 12 0 0 0 0
z
BDFChar: 1339 469 6 0 4 0 9
Du`]7f\"j/fPgfj
BDFChar: 1340 470 6 0 4 0 9
Du`]7f\"j/fQ[Ar
BDFChar: 1341 471 12 0 0 0 0
z
BDFChar: 1342 472 12 0 0 0 0
@ -20337,22 +20368,22 @@ BDFChar: 1346 476 12 0 0 0 0
z
BDFChar: 1347 477 6 0 4 0 5
E7c$&fPgfj
BDFChar: 1348 478 12 0 0 0 0
z
BDFChar: 1349 479 12 0 0 0 0
z
BDFChar: 1350 480 12 0 0 0 0
z
BDFChar: 1351 481 6 0 0 0 0
z
BDFChar: 1348 478 6 0 4 0 9
Du`^Rf\#uOf[p0(
BDFChar: 1349 479 6 0 4 0 9
Du`]7E#<iPfQ[Ar
BDFChar: 1350 480 6 0 4 0 9
Du_#"f\#uOf[p0(
BDFChar: 1351 481 6 0 4 0 9
Du_!\E#<iPfQ[Ar
BDFChar: 1352 482 6 0 5 0 9
Dub:<f_jCSf\?H,
BDFChar: 1353 483 6 0 4 0 7
Duai*GjqAN
BDFChar: 1354 484 12 0 0 0 0
z
BDFChar: 1355 485 12 0 0 0 0
z
BDFChar: 1354 484 6 0 5 0 7
E7htYf\G+u
BDFChar: 1355 485 6 0 5 -2 5
GhC[(fQ\6P
BDFChar: 1356 486 6 0 4 0 9
:`s`0^qeUTfPgfj
BDFChar: 1357 487 6 0 4 -2 7
@ -20393,10 +20424,10 @@ BDFChar: 1374 504 6 0 4 0 9
5TlHHq"XXZfZ4$m
BDFChar: 1375 505 6 0 4 0 8
5Tg'rf\"j/fDkmO
BDFChar: 1376 506 12 0 0 0 0
z
BDFChar: 1377 507 12 0 0 0 0
z
BDFChar: 1376 506 6 0 4 0 9
&0OdlE7ih<f[p0(
BDFChar: 1377 507 6 0 4 0 9
&0OdlE#<iPfQ[Ar
BDFChar: 1378 508 6 0 5 0 9
&0QAQf_jCSf\?H,
BDFChar: 1379 509 6 0 4 0 7
@ -20462,9 +20493,9 @@ nCZCGf\"j/(`35Q
BDFChar: 1409 545 6 0 5 -2 7
+<Y(MW4_bI&.egA
BDFChar: 1410 546 6 0 4 0 7
E7f+PE7if^
BDFChar: 1411 547 6 0 4 0 7
E7f+PE7if^
f\"hqf\"hq
BDFChar: 1411 547 6 0 4 0 5
f[t/qfPgfj
BDFChar: 1412 548 6 0 4 -2 7
p_Xi%@)0SQ#S6t9
BDFChar: 1413 549 6 0 4 -2 5
@ -20477,10 +20508,10 @@ BDFChar: 1416 552 6 0 4 -2 7
pqX]7^qdb\+M[sW
BDFChar: 1417 553 6 0 4 -2 5
E7js$fPhtK
BDFChar: 1418 554 12 0 0 0 0
z
BDFChar: 1419 555 12 0 0 0 0
z
BDFChar: 1418 554 6 0 4 0 9
Du`^Rf\"j/fPgfj
BDFChar: 1419 555 6 0 4 0 9
Du`]7E7igqfPgfj
BDFChar: 1420 556 12 0 0 0 0
z
BDFChar: 1421 557 12 0 0 0 0
@ -22095,5 +22126,9 @@ BDFChar: 2225 9738 6 0 5 1 7
Gg+CUGdPZp
BDFChar: 2226 9739 6 0 5 1 7
bd;W=bfk;3
BDFChar: 2227 560 6 0 4 0 9
Du_#"f\"j/fPgfj
BDFChar: 2228 561 6 0 4 0 9
Du_!\E7igqfPgfj
EndBitmapFont
EndSplineFont

View File

@ -21,7 +21,7 @@ OS2Version: 0
OS2_WeightWidthSlopeOnly: 0
OS2_UseTypoMetrics: 1
CreationTime: 1353105779
ModificationTime: 1354195373
ModificationTime: 1355306991
PfmFamily: 17
TTFWeight: 500
TTFWidth: 5
@ -50,12 +50,12 @@ NameList: Adobe Glyph List
DisplaySize: 12
AntiAlias: 1
FitToEm: 1
WinInfo: 232 29 11
WinInfo: 7656 29 11
OnlyBitmaps: 1
BeginPrivate: 0
EndPrivate
TeXData: 1 0 0 524288 262144 174762 0 1048576 174762 783286 444596 497025 792723 393216 433062 380633 303038 157286 324010 404750 52429 2506097 1059062 262144
BeginChars: 65536 1980
BeginChars: 65536 1981
StartChar: uni0000
Encoding: 0 0 0
@ -9648,7 +9648,7 @@ StartChar: uni01E1
Encoding: 481 481 1200
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -13031,7 +13031,7 @@ StartChar: uni01D5
Encoding: 469 469 1628
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -13743,6 +13743,7 @@ StartChar: uni1E00
Encoding: 7680 7680 1717
Width: 1000
VWidth: 0
Flags: H
LayerCount: 2
EndChar
@ -13750,6 +13751,7 @@ StartChar: uni1E01
Encoding: 7681 7681 1718
Width: 1000
VWidth: 0
Flags: H
LayerCount: 2
EndChar
@ -15369,7 +15371,7 @@ StartChar: uni01E4
Encoding: 484 484 1922
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15687,7 +15689,7 @@ StartChar: uni01A2
Encoding: 418 418 1962
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15695,7 +15697,7 @@ StartChar: uni01A3
Encoding: 419 419 1963
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15703,7 +15705,7 @@ StartChar: uni01C5
Encoding: 453 453 1964
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15711,7 +15713,7 @@ StartChar: uni01C4
Encoding: 452 452 1965
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15719,7 +15721,7 @@ StartChar: uni01C6
Encoding: 454 454 1966
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15727,7 +15729,7 @@ StartChar: uni01DE
Encoding: 478 478 1967
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15735,7 +15737,7 @@ StartChar: uni01DF
Encoding: 479 479 1968
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15743,7 +15745,7 @@ StartChar: uni01E0
Encoding: 480 480 1969
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15751,7 +15753,7 @@ StartChar: aringacute
Encoding: 507 507 1970
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15759,7 +15761,7 @@ StartChar: Aringacute
Encoding: 506 506 1971
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15767,7 +15769,7 @@ StartChar: uni0230
Encoding: 560 560 1972
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15775,7 +15777,7 @@ StartChar: uni0231
Encoding: 561 561 1973
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15783,7 +15785,6 @@ StartChar: uni022C
Encoding: 556 556 1974
Width: 1000
VWidth: 0
Flags: H
LayerCount: 2
EndChar
@ -15791,7 +15792,6 @@ StartChar: uni022D
Encoding: 557 557 1975
Width: 1000
VWidth: 0
Flags: H
LayerCount: 2
EndChar
@ -15799,7 +15799,7 @@ StartChar: uni022A
Encoding: 554 554 1976
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15807,7 +15807,7 @@ StartChar: uni022B
Encoding: 555 555 1977
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15815,7 +15815,7 @@ StartChar: uni01D6
Encoding: 470 470 1978
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
@ -15823,11 +15823,18 @@ StartChar: uni01E5
Encoding: 485 485 1979
Width: 500
VWidth: 0
Flags: HW
Flags: W
LayerCount: 2
EndChar
StartChar: uni1EFA
Encoding: 7930 7930 1980
Width: 1000
VWidth: 0
LayerCount: 2
EndChar
EndChars
BitmapFont: 12 1980 10 2 1 xos4
BitmapFont: 12 1981 10 2 1 xos4
BDFStartProperties: 24
COMMENT 1 "ter-u12n"
FONT 1 "-xos4-Gambas-Medium-R-Normal--12-120-72-72-C-60-ISO10646-1"
@ -16014,7 +16021,7 @@ BDFChar: 77 108 6 1 3 0 7
BDFChar: 78 109 6 0 4 0 5
n>N:aW2K[r
BDFChar: 79 110 6 0 4 0 5
YfMWVLkl$2
n;)mVLkl$2
BDFChar: 80 111 6 0 4 0 5
E/9=+Li<=o
BDFChar: 81 112 6 0 4 -2 5
@ -16208,7 +16215,7 @@ TE)bm5X7Tm
BDFChar: 176 240 6 0 4 0 8
TKo/hLkpkCDu]k<
BDFChar: 177 241 6 0 4 0 9
8>qUMYfMWVLkl$2
8>qUMn;)mVLkl$2
BDFChar: 178 242 6 0 4 0 7
5Tk$%Lkpk+
BDFChar: 179 243 6 0 4 0 7
@ -19668,9 +19675,9 @@ E/4cR8-gob
BDFChar: 1908 545 6 0 5 -2 7
+<Y'bTW#5B&.egA
BDFChar: 1909 546 7 0 4 0 7
E/7=5:l'pH
BDFChar: 1910 547 7 0 4 0 7
E/7=5:l'pH
Lkpk+Lkpk+
BDFChar: 1910 547 7 0 4 0 5
Lkp#+Li<=o
BDFChar: 1911 564 6 0 4 -2 7
^d(.M5Yu.`+<UXa
BDFChar: 1912 565 6 0 5 -2 7
@ -19719,8 +19726,8 @@ BDFChar: 1933 432 6 0 5 0 6
"GhkiLkp9U
BDFChar: 1934 431 6 0 5 0 8
"GhkiLkpkCDu]k<
BDFChar: 1935 434 6 0 5 0 7
"Ghki:f&8W
BDFChar: 1935 434 6 0 5 0 8
"Ghki:f't2+92BA
BDFChar: 1936 427 6 1 4 -2 7
5X=6m5X7Rg&0LrQ
BDFChar: 1937 460 6 0 5 -2 8
@ -19809,5 +19816,7 @@ BDFChar: 1978 470 6 0 4 0 9
Du`]7LkpkCLj/n"
BDFChar: 1979 485 6 0 5 -2 5
G_h0GLj02E
BDFChar: 1980 7930 12 0 0 0 0
z
EndBitmapFont
EndSplineFont

View File

@ -34,41 +34,89 @@ msgstr ""
msgid "Next bookmark"
msgstr ""
#: CClassInfo.class:534 FMain.form:1374 FProperty.form:23
#: CClassInfo.class:548 FMain.form:1374 FProperty.form:23
msgid "Properties"
msgstr ""
#: CClassInfo.class:535
#: CClassInfo.class:549
msgid "Variables"
msgstr ""
#: CClassInfo.class:536
#: CClassInfo.class:550
msgid "Methods"
msgstr ""
#: CClassInfo.class:537
#: CClassInfo.class:551
msgid "Events"
msgstr ""
#: CClassInfo.class:565
#: CClassInfo.class:579
msgid "This class is static."
msgstr ""
#: CClassInfo.class:581
msgid ""
"This class can be used like an object by creating an hidden instance on "
"demand.<br>"
"demand."
msgstr ""
#: CClassInfo.class:566
msgid "This class is creatable.<br>"
#: CClassInfo.class:585
msgid "This class is &1."
msgstr ""
#: CClassInfo.class:590
#: CClassInfo.class:585
msgid "creatable"
msgstr ""
#: CClassInfo.class:594
msgid "This class can be used as a &1."
msgstr ""
#: CClassInfo.class:594
msgid "function"
msgstr ""
#: CClassInfo.class:599
msgid "This class acts like a &1 / &2 array."
msgstr ""
#: CClassInfo.class:599
msgid "read"
msgstr ""
#: CClassInfo.class:599
msgid "write"
msgstr ""
#: CClassInfo.class:601
msgid "This class acts like a &1 array."
msgstr ""
#: CClassInfo.class:601
msgid "write-only"
msgstr ""
#: CClassInfo.class:604 Project.module:1560
msgid "read-only"
msgstr ""
#: CClassInfo.class:609
msgid "This class is &1 with the FOR EACH keyword."
msgstr ""
#: CClassInfo.class:609
msgid "enumerable"
msgstr ""
#: CClassInfo.class:634
msgid "This class inherits &1."
msgstr ""
#: CClassInfo.class:605 MTheme.module:6
#: CClassInfo.class:649 MTheme.module:6
msgid "Symbols"
msgstr ""
#: CClassInfo.class:606
#: CClassInfo.class:650
msgid "Constants"
msgstr ""
@ -372,7 +420,7 @@ msgstr ""
msgid "Loading information on component &1..."
msgstr ""
#: CComponent.class:1485 FInfo.class:67
#: CComponent.class:1489 FInfo.class:67
msgid "Classes"
msgstr ""
@ -499,7 +547,7 @@ msgstr ""
#: FReportCoordChooser.form:26 FReportPaddingChooser.form:75 FSave.form:28
#: FSaveProjectAs.form:76 FSearch.class:865 FSelectExtraFile.form:43
#: FSelectIcon.form:87 FSnippet.form:57 FTableChooser.form:68 FText.form:41
#: FTextEditor.class:596 FTranslate.class:557 Project.module:468
#: FTextEditor.class:596 FTranslate.class:558 Project.module:468
msgid "Cancel"
msgstr ""
@ -835,7 +883,7 @@ msgstr ""
#: FConnectionEditor.form:109 FEditor.form:318 FForm.form:406
#: FHelpBrowser.form:67 FIconEditor.form:79 FImageEditor.form:62
#: FTextEditor.form:231 FTranslate.class:653
#: FTextEditor.form:231 FTranslate.class:654
msgid "Reload"
msgstr ""
@ -932,7 +980,7 @@ msgid "Export..."
msgstr ""
#: FConnectionEditor.form:465 FForm.form:257 FMain.class:209
#: FNewConnection.class:325 FOption.class:855 FTranslate.class:557
#: FNewConnection.class:325 FOption.class:855 FTranslate.class:558
msgid "Delete"
msgstr ""
@ -1072,7 +1120,7 @@ msgstr ""
msgid "CSV files"
msgstr ""
#: FConnectionEditor.class:1421 FTranslate.class:1206
#: FConnectionEditor.class:1421 FTranslate.class:1207
msgid "All files"
msgstr ""
@ -1403,7 +1451,7 @@ msgstr ""
msgid "Show search window"
msgstr ""
#: FDebugInfo.form:305 FSearch.class:486 FTranslate.class:518
#: FDebugInfo.form:305 FSearch.class:486 FTranslate.class:519
msgid "Search string cannot be found."
msgstr ""
@ -4328,67 +4376,67 @@ msgstr ""
msgid "Translation files"
msgstr ""
#: FTranslate.class:284
#: FTranslate.class:285
msgid "Cannot read translation file for language '&1'"
msgstr ""
#: FTranslate.class:445
#: FTranslate.class:446
msgid "Cannot save translation."
msgstr ""
#: FTranslate.class:557
#: FTranslate.class:558
msgid "Do you really want to delete this translation ?"
msgstr ""
#: FTranslate.class:653
#: FTranslate.class:654
msgid "Do you really want to reload this translation ?"
msgstr ""
#: FTranslate.class:667
#: FTranslate.class:668
msgid "Export a translation"
msgstr ""
#: FTranslate.class:855
#: FTranslate.class:856
msgid "Please select the translation file to import."
msgstr ""
#: FTranslate.class:893
#: FTranslate.class:894
msgid "No translation were picked up."
msgstr ""
#: FTranslate.class:895
#: FTranslate.class:896
msgid "One translation was picked up."
msgstr ""
#: FTranslate.class:897
#: FTranslate.class:898
msgid "&1 translations were picked up."
msgstr ""
#: FTranslate.class:906
#: FTranslate.class:907
msgid "Cannot import translation file."
msgstr ""
#: FTranslate.class:956
#: FTranslate.class:957
msgid "Translated string symbols do not match untranslated string ones."
msgstr ""
#: FTranslate.class:969
#: FTranslate.class:970
msgid "Everything seems to be correct."
msgstr ""
#: FTranslate.class:992
#: FTranslate.class:993
msgid "&1 strings. Everything is translated!"
msgstr ""
#: FTranslate.class:994
#: FTranslate.class:995
msgid "&1 strings. One is not translated. &3% done."
msgstr ""
#: FTranslate.class:996
#: FTranslate.class:997
msgid "&1 strings. &2 are not translated. &3% done."
msgstr ""
#: FTranslate.class:1121
#: FTranslate.class:1122
msgid "The 'msgmerge' command has failed"
msgstr ""
@ -5937,10 +5985,6 @@ msgstr ""
msgid "The following classes have circular inheritance:"
msgstr ""
#: Project.module:1560
msgid "read-only"
msgstr ""
#: Project.module:1562
msgid "ALPHA VERSION, USE AT YOUR OWN RISK! :-)"
msgstr ""

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -456,6 +456,13 @@ Private Sub SubstPart(sHtml As String, sPart As String, bShow As Boolean) As Str
End
Private Sub GetSymbolLink(hSymbol As CSymbolInfo, sName As String) As String
Return Subst("<a class=\"none\" href=\"&1\">&2</a>", Html(hSymbol.GetHelpURL()), sName)
End
Public Sub GetHelpHTML() As String
Dim sClass As String = Name
@ -469,11 +476,12 @@ Public Sub GetHelpHTML() As String
Dim hArray As String[]
Dim sParent As String
Dim sTitle As String
Dim bHasDynamic As Boolean
sHelp = Markup.Convert(GetHelpMarkup())
hClassInfo = CComponent.GetClassDescription(sClass)
cClassSymbols = CComponent.GetClassSymbols(sClass)
cClassSymbols = hClassInfo.Symbols 'CComponent.GetClassSymbols(sClass)
'If hClassInfo.Name = sClass Then hClassInfo.Name = hClassInfo.Parent ????? Do not modify the class info!
@ -484,11 +492,17 @@ Public Sub GetHelpHTML() As String
sSymbolName = hSymbol.Name
If Left(sSymbolName) = ":" Then sSymbolName = Mid$(sSymbolName, 2)
sComp = Subst("<a class=\"none\" href=\"&1\">&2</a>", Html(hSymbol.GetHelpURL()), sSymbolName)
sComp = GetSymbolLink(hSymbol, sSymbolName)
If hSymbol.NotPublic Or If hSymbol.IsHidden() Then Continue
If IsLetter(hSymbol.Kind) And If hSymbol.Kind = UCase(hSymbol.Kind) Then sComp = "<b>" & sComp & "</b>"
If IsLetter(hSymbol.Kind) Then
If hSymbol.Kind = UCase(hSymbol.Kind) Then
sComp = "<b>" & sComp & "</b>"
Else
bHasDynamic = True
Endif
Endif
If hSymbol.Class = sClass Then
@ -561,9 +575,39 @@ Public Sub GetHelpHTML() As String
Endif
Endif
If Not bHasDynamic Then sInfo &= ("This class is static.")
If hClassInfo.AutoCreatable Then sInfo = ("This class can be used like an object by creating an hidden instance on demand.<br>")
If hClassInfo.Creatable Then sInfo &= ("This class is creatable.<br>")
If hClassInfo.AutoCreatable Then sInfo &= ("This class can be used like an object by creating an hidden instance on demand.") & "<br>"
If hClassInfo.Creatable Then
hSymbol = cClassSymbols["_new"]
If hSymbol Then
sInfo &= Subst(("This class is &1."), GetSymbolLink(hSymbol, ("creatable")))
Else
sInfo &= Subst(("This class is &1."), ("creatable"))
Endif
sInfo &= "<br>"
Endif
hSymbol = cClassSymbols["_call"]
If hSymbol Then
sInfo &= Subst(("This class can be used as a &1."), GetSymbolLink(hSymbol, ("function"))) & "<br>"
Endif
If cClassSymbols.Exist("_put") Then
If cClassSymbols.Exist("_get") Then
sInfo &= Subst(("This class acts like a &1 / &2 array."), GetSymbolLink(cClassSymbols["_get"], ("read")), GetSymbolLink(cClassSymbols["_put"], ("write"))) & "<br>"
Else
sInfo &= Subst(("This class acts like a &1 array."), GetSymbolLink(cClassSymbols["_put"], ("write-only"))) & "<br>"
Endif
Else If cClassSymbols.Exist("_get") Then
sInfo &= Subst(("This class acts like a &1 array."), GetSymbolLink(cClassSymbols["_get"], ("read-only"))) & "<br>"
Endif
hSymbol = cClassSymbols["_next"]
If hSymbol Then
sInfo &= Subst(("This class is &1 with the FOR EACH keyword."), GetSymbolLink(hSymbol, ("enumerable"))) & "<br>"
Endif
If Not Component Or If Component = CComponent.PROJECT_NAME Then sWhere = "gambas://project/" & sClass & "?showfile"
sTitle = sClass

View File

@ -1320,6 +1320,8 @@ Static Public Function GetClassSymbols(sClass As String) As Collection
ScanClass(hPModule, cSymbol, True)
Endif
$hDumbClass.Parent = hPModule.ParentClass
$hDumbClass.Creatable = False
$hDumbClass.AutoCreatable = False
'$hDumbClass.ParentComponent = hPModule.ParentComponent
Else If hPClass Then
cSymbol = hPClass.Scan
@ -1336,6 +1338,8 @@ Static Public Function GetClassSymbols(sClass As String) As Collection
ScanClass(hPClass, cSymbol, False, IsNull(hPForm))
Endif
$hDumbClass.Parent = hPClass.ParentClass
$hDumbClass.Creatable = Not hPClass.NotCreatable
$hDumbClass.AutoCreatable = hPClass.AutoCreatable
Endif
$hDumbClass.Symbols = cSymbol

View File

@ -26,8 +26,8 @@ Public Editor As Editor '' The current Editor control.
Public Scan As Collection '' The result of the class symbol analyze.
Public ParentClass As String '' The parent class.
Public ParentComponent As String '' The component of the parent class.
Public AutoCreatable As Boolean '' If the class has "[CREATESTATIC|CREATE STATIC]".
Public NotCreatable As Boolean '' If the class has "[CREATEPRIVATE|CREATE PRIVATE]".
Public AutoCreatable As Boolean '' If the class has `CREATE STATIC`.
Public NotCreatable As Boolean '' If the class has `CREATE PRIVATE`.
Public Age As Integer '' The text age. It is incremented each time the text is modified
Property Read ReadOnly As Boolean '' If the editor is read-only.

View File

@ -381,7 +381,7 @@ Public Sub InitWebViewWith(hWebView As WebView, iType As Integer, sSymbol As Str
If hClass Then
If hClass.Component And If hClass.Component <> CComponent.PROJECT_NAME And If Not CComponent.All[hClass.Component].Library Then
sUrl = hClass.GetHelpURL()
Else If hClass.Help Then
Else 'If hClass.Help Then
sHtml = hClass.GetHelpHTML()
sUrl = hClass.Component & "-" & sSymbol
Endif

View File

@ -254,6 +254,7 @@ Private Sub SetLang(Optional sLang As String) As Boolean
$bIgnore = False
If cvwTranslate.MoveTo(sCurrent) Then
Wait ' let the columnview be sorted
cvwTranslate.MoveFirst
Endif
Try cvwTranslate.Item.Selected = True

View File

@ -26,7 +26,7 @@ FONT_ASCENT 10
FONT_DESCENT 2
DEFAULT_CHAR 65533
ENDPROPERTIES
CHARS 1960
CHARS 1982
STARTCHAR char0
ENCODING 0
SWIDTH 500 0
@ -1643,10 +1643,10 @@ STARTCHAR acute
ENCODING 180
SWIDTH 500 0
DWIDTH 6 0
BBX 3 2 1 8
BBX 2 2 2 8
BITMAP
60
C0
40
80
ENDCHAR
STARTCHAR uni00B5
ENCODING 181
@ -1691,10 +1691,10 @@ STARTCHAR cedilla
ENCODING 184
SWIDTH 500 0
DWIDTH 6 0
BBX 3 3 1 -2
BBX 3 3 0 -2
BITMAP
60
60
20
20
C0
ENDCHAR
STARTCHAR onesuperior
@ -5414,6 +5414,36 @@ D8
D8
70
ENDCHAR
STARTCHAR uni01A2
ENCODING 418
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
74
DC
DC
DC
DC
DC
DC
74
ENDCHAR
STARTCHAR uni01A3
ENCODING 419
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 -2
BITMAP
74
DC
DC
DC
DC
7C
0C
0C
ENDCHAR
STARTCHAR uni01A4
ENCODING 420
SWIDTH 500 0
@ -5569,6 +5599,36 @@ FC
30
18
ENDCHAR
STARTCHAR Uhorn
ENCODING 431
SWIDTH 500 0
DWIDTH 6 0
BBX 6 9 0 0
BITMAP
0C
D8
D8
D8
D8
D8
D8
D8
70
ENDCHAR
STARTCHAR uhorn
ENCODING 432
SWIDTH 500 0
DWIDTH 6 0
BBX 6 7 0 0
BITMAP
0C
D8
D8
D8
D8
D8
78
ENDCHAR
STARTCHAR uni01B1
ENCODING 433
SWIDTH 500 0
@ -5584,6 +5644,22 @@ D8
D8
70
ENDCHAR
STARTCHAR uni01B2
ENCODING 434
SWIDTH 500 0
DWIDTH 6 0
BBX 6 9 0 0
BITMAP
0C
D8
D8
D8
D8
F8
70
70
20
ENDCHAR
STARTCHAR uni01B3
ENCODING 435
SWIDTH 500 0
@ -5712,12 +5788,12 @@ SWIDTH 500 0
DWIDTH 6 0
BBX 5 8 0 0
BITMAP
F0
18
70
D8
18
30
F8
C0
60
C0
F8
ENDCHAR
@ -5841,6 +5917,53 @@ C0
C0
C0
ENDCHAR
STARTCHAR uni01C4
ENCODING 452
SWIDTH 500 0
DWIDTH 6 0
BBX 6 10 0 0
BITMAP
14
08
DC
FC
A4
A8
A8
B0
FC
DC
ENDCHAR
STARTCHAR uni01C5
ENCODING 453
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
D4
E8
BC
A4
AC
B8
F0
DC
ENDCHAR
STARTCHAR uni01C6
ENCODING 454
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
34
28
7C
E4
AC
B8
F0
7C
ENDCHAR
STARTCHAR uni01C7
ENCODING 455
SWIDTH 500 0
@ -6071,6 +6194,40 @@ D8
D8
78
ENDCHAR
STARTCHAR uni01D5
ENCODING 469
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
D8
D8
D8
D8
D8
70
ENDCHAR
STARTCHAR uni01D6
ENCODING 470
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
D8
D8
D8
D8
D8
78
ENDCHAR
STARTCHAR uni01DD
ENCODING 477
SWIDTH 500 0
@ -6084,6 +6241,74 @@ F8
D8
70
ENDCHAR
STARTCHAR uni01DE
ENCODING 478
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
70
D8
D8
F8
D8
D8
D8
ENDCHAR
STARTCHAR uni01DF
ENCODING 479
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
70
18
78
D8
D8
78
ENDCHAR
STARTCHAR uni01E0
ENCODING 480
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
70
D8
D8
F8
D8
D8
D8
ENDCHAR
STARTCHAR uni01E1
ENCODING 481
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
00
70
18
78
D8
D8
78
ENDCHAR
STARTCHAR uni01E2
ENCODING 482
SWIDTH 500 0
@ -6116,6 +6341,36 @@ F0
A0
78
ENDCHAR
STARTCHAR uni01E4
ENCODING 484
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
70
D8
C0
D8
D8
DC
D8
70
ENDCHAR
STARTCHAR uni01E5
ENCODING 485
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 -2
BITMAP
78
D8
D8
DC
D8
78
18
70
ENDCHAR
STARTCHAR Gcaron
ENCODING 486
SWIDTH 500 0
@ -6445,6 +6700,40 @@ D8
D8
D8
ENDCHAR
STARTCHAR Aringacute
ENCODING 506
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
10
20
50
20
70
D8
D8
F8
D8
D8
ENDCHAR
STARTCHAR aringacute
ENCODING 507
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
10
20
50
20
70
18
78
D8
D8
78
ENDCHAR
STARTCHAR AEacute
ENCODING 508
SWIDTH 500 0
@ -7066,11 +7355,11 @@ SWIDTH 500 0
DWIDTH 6 0
BBX 5 8 0 0
BITMAP
70
D8
D8
D8
70
20
70
D8
D8
D8
70
@ -7079,12 +7368,10 @@ STARTCHAR uni0223
ENCODING 547
SWIDTH 500 0
DWIDTH 6 0
BBX 5 8 0 0
BBX 5 6 0 0
BITMAP
70
D8
70
20
D8
70
D8
D8
@ -7186,6 +7473,40 @@ D8
20
C0
ENDCHAR
STARTCHAR uni022A
ENCODING 554
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
70
D8
D8
D8
D8
D8
70
ENDCHAR
STARTCHAR uni022B
ENCODING 555
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
70
D8
D8
D8
D8
70
ENDCHAR
STARTCHAR uni022E
ENCODING 558
SWIDTH 500 0
@ -7218,6 +7539,40 @@ D8
D8
70
ENDCHAR
STARTCHAR uni0230
ENCODING 560
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
70
D8
D8
D8
D8
D8
70
ENDCHAR
STARTCHAR uni0231
ENCODING 561
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
00
70
D8
D8
D8
D8
70
ENDCHAR
STARTCHAR uni0232
ENCODING 562
SWIDTH 500 0

View File

@ -26,7 +26,7 @@ FONT_ASCENT 10
FONT_DESCENT 2
DEFAULT_CHAR 65533
ENDPROPERTIES
CHARS 1886
CHARS 1905
STARTCHAR uni0000
ENCODING 0
SWIDTH 500 0
@ -1155,8 +1155,8 @@ SWIDTH 500 0
DWIDTH 6 0
BBX 5 6 0 0
BITMAP
B0
C8
F0
88
88
88
88
@ -1688,11 +1688,11 @@ STARTCHAR cedilla
ENCODING 184
SWIDTH 500 0
DWIDTH 6 0
BBX 2 3 1 -2
BBX 3 3 0 -2
BITMAP
40
40
80
20
20
C0
ENDCHAR
STARTCHAR uni00B9
ENCODING 185
@ -2602,8 +2602,8 @@ BITMAP
A8
90
00
B0
C8
F0
88
88
88
88
@ -5421,6 +5421,36 @@ BITMAP
88
70
ENDCHAR
STARTCHAR uni01A2
ENCODING 418
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
64
9C
94
94
94
94
94
64
ENDCHAR
STARTCHAR uni01A3
ENCODING 419
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 -2
BITMAP
64
9C
94
94
94
64
04
04
ENDCHAR
STARTCHAR uni01A4
ENCODING 420
SWIDTH 500 0
@ -5626,7 +5656,7 @@ STARTCHAR uni01B2
ENCODING 434
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BBX 6 9 0 0
BITMAP
04
88
@ -5634,6 +5664,7 @@ BITMAP
88
50
50
50
20
20
ENDCHAR
@ -5764,8 +5795,8 @@ SWIDTH 500 0
DWIDTH 6 0
BBX 5 8 0 0
BITMAP
F0
08
70
88
08
10
F8
@ -5893,6 +5924,53 @@ BITMAP
80
80
ENDCHAR
STARTCHAR uni01C4
ENCODING 452
SWIDTH 500 0
DWIDTH 6 0
BBX 6 10 0 0
BITMAP
14
08
DC
A4
A4
A8
A8
B0
B0
DC
ENDCHAR
STARTCHAR uni01C5
ENCODING 453
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
D4
A8
BC
A4
A8
A8
B0
DC
ENDCHAR
STARTCHAR uni01C6
ENCODING 454
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
34
28
7C
A4
A8
A8
B0
7C
ENDCHAR
STARTCHAR uni01C7
ENCODING 455
SWIDTH 500 0
@ -6123,6 +6201,40 @@ BITMAP
88
78
ENDCHAR
STARTCHAR uni01D5
ENCODING 469
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
88
88
88
88
88
88
70
ENDCHAR
STARTCHAR uni01D6
ENCODING 470
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
88
88
88
88
88
78
ENDCHAR
STARTCHAR uni01DD
ENCODING 477
SWIDTH 500 0
@ -6136,6 +6248,74 @@ F8
88
70
ENDCHAR
STARTCHAR uni01DE
ENCODING 478
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
70
88
88
F8
88
88
88
ENDCHAR
STARTCHAR uni01DF
ENCODING 479
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
70
08
78
88
88
78
ENDCHAR
STARTCHAR uni01E0
ENCODING 480
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
70
88
88
F8
88
88
88
ENDCHAR
STARTCHAR uni01E1
ENCODING 481
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
00
70
08
78
88
88
78
ENDCHAR
STARTCHAR uni01E2
ENCODING 482
SWIDTH 1000 0
@ -6168,6 +6348,36 @@ B0
A0
78
ENDCHAR
STARTCHAR uni01E4
ENCODING 484
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 0
BITMAP
70
88
80
B8
88
9C
88
70
ENDCHAR
STARTCHAR uni01E5
ENCODING 485
SWIDTH 500 0
DWIDTH 6 0
BBX 6 8 0 -2
BITMAP
78
88
88
9C
88
78
08
70
ENDCHAR
STARTCHAR Gcaron
ENCODING 486
SWIDTH 500 0
@ -6497,6 +6707,40 @@ F0
88
88
ENDCHAR
STARTCHAR Aringacute
ENCODING 506
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
10
20
50
20
70
88
88
F8
88
88
ENDCHAR
STARTCHAR aringacute
ENCODING 507
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
10
20
50
20
70
08
78
88
88
78
ENDCHAR
STARTCHAR AEacute
ENCODING 508
SWIDTH 500 0
@ -7119,11 +7363,11 @@ SWIDTH 583 0
DWIDTH 7 0
BBX 5 8 0 0
BITMAP
88
88
88
70
88
50
20
50
88
88
70
@ -7132,13 +7376,11 @@ STARTCHAR uni0223
ENCODING 547
SWIDTH 583 0
DWIDTH 7 0
BBX 5 8 0 0
BBX 5 6 0 0
BITMAP
70
88
50
20
50
88
70
88
88
70
@ -7239,6 +7481,40 @@ F8
20
C0
ENDCHAR
STARTCHAR uni022A
ENCODING 554
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
70
88
88
88
88
88
70
ENDCHAR
STARTCHAR uni022B
ENCODING 555
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
50
00
70
88
88
88
88
70
ENDCHAR
STARTCHAR uni022E
ENCODING 558
SWIDTH 500 0
@ -7271,6 +7547,40 @@ BITMAP
88
70
ENDCHAR
STARTCHAR uni0230
ENCODING 560
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
70
88
88
88
88
88
70
ENDCHAR
STARTCHAR uni0231
ENCODING 561
SWIDTH 500 0
DWIDTH 6 0
BBX 5 10 0 0
BITMAP
70
00
20
00
70
88
88
88
88
70
ENDCHAR
STARTCHAR uni0232
ENCODING 562
SWIDTH 500 0

View File

@ -1,23 +1,23 @@
/***************************************************************************
main.c
main.c
(c) 2003-2004 Daniel Campos Fernández <danielcampos@netcourrier.com>
(c) 2003-2004 Daniel Campos Fernández <danielcampos@netcourrier.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
***************************************************************************/
@ -43,31 +43,32 @@
#define P_POS ((BZ2_STREAM*)stream)->info->pos
typedef struct
{
uint8_t mode;
uint8_t eof;
BZFILE *bz;
FILE *file;
int64_t pos;
} handleInfo;
typedef
struct
{
uint8_t mode;
uint8_t eof;
BZFILE *bz;
FILE *file;
int64_t pos;
}
handleInfo;
typedef struct
{
GB_STREAM_DESC *desc;
int _reserved;
handleInfo *info;
} BZ2_STREAM;
typedef
struct
{
GB_STREAM_BASE base;
handleInfo *info;
}
BZ2_STREAM;
GB_INTERFACE GB EXPORT;
COMPRESS_INTERFACE COMPRESSION EXPORT;
static COMPRESS_DRIVER _driver;
GB_STREAM_DESC BZStream = {
GB_STREAM_DESC BZStream =
{
open: BZ_stream_open,
close: BZ_stream_close,
read: BZ_stream_read,
@ -82,20 +83,20 @@ GB_STREAM_DESC BZStream = {
/*****************************************************************************
The driver interface
The driver interface
*****************************************************************************/
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
int max_compression(void)
int max_compression(void)
It must return the maximum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 9 the best compression level (more compression),
so the driver here returns '9'
*********************************************************************************/
It must return the maximum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 9 the best compression level (more compression),
so the driver here returns '9'
*********************************************************************************/
static int BZ2_max_compression(void)
{
@ -103,52 +104,52 @@ static int BZ2_max_compression(void)
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
int min_compression(void)
int min_compression(void)
It must return the minimum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 0 the worst compression level (no compression at all),
so the driver here returns '0'
*********************************************************************************/
It must return the minimum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 0 the worst compression level (no compression at all),
so the driver here returns '0'
*********************************************************************************/
static int BZ2_min_compression(void)
{
return 1;
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
int default_compression(void)
int default_compression(void)
It must return the default compression level, that is, the value to send when
Compression object methods are called without the optional parameter 'Level'.
In this gzip wrapper, for example, this value is -1
*********************************************************************************/
It must return the default compression level, that is, the value to send when
Compression object methods are called without the optional parameter 'Level'.
In this gzip wrapper, for example, this value is -1
*********************************************************************************/
static int BZ2_default_compression(void)
{
return 6;
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
void c_String(char **target,unsigned long *lent,char *source,unsigned long len,int level)
void c_String(char **target,unsigned long *lent,char *source,unsigned long len,int level)
It is called to compress a String and return it compressed. The object will
pass the following values:
It is called to compress a String and return it compressed. The object will
pass the following values:
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
You will never receive a zero lenght string, nor a erroneus 'level' value
You will never receive a zero lenght string, nor a erroneus 'level' value
The function must store the compressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
The function must store the compressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
*********************************************************************************/
*********************************************************************************/
static void BZ2_c_String(char **target,unsigned long *lent,char *source,unsigned long len,int level)
{
*target=NULL;
@ -166,24 +167,24 @@ static void BZ2_c_String(char **target,unsigned long *lent,char *source,unsigned
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
void u_String(char **target,unsigned long *lent,char *source,unsigned long len,int level)
void u_String(char **target,unsigned long *lent,char *source,unsigned long len,int level)
It is called to decompress a String and return it decompressed. The object will
pass the following values:
It is called to decompress a String and return it decompressed. The object will
pass the following values:
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
You will never receive a zero lenght string, nor a erroneus 'level' value
You will never receive a zero lenght string, nor a erroneus 'level' value
The function must store the decompressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
*********************************************************************************/
The function must store the decompressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
*********************************************************************************/
static void BZ2_u_String(char **target,unsigned long *lent,char *source,unsigned long len)
{
int myok=BZ_OUTBUFF_FULL;
@ -233,19 +234,19 @@ static void BZ2_u_String(char **target,unsigned long *lent,char *source,unsigned
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
static void c_File(char *source,char *target,int level)
It is called to compress a file. The object will pass the following values:
It is called to compress a file. The object will pass the following values:
source = path of the file to be compressed
target = path of the new compressed file to create
level = compression level
source = path of the file to be compressed
target = path of the new compressed file to create
level = compression level
You will never receive a erroneus 'level' value
*********************************************************************************/
You will never receive a erroneus 'level' value
*********************************************************************************/
static void BZ2_c_File(char *source,char *target,int level)
{
FILE *src;
@ -306,19 +307,19 @@ static void BZ2_c_File(char *source,char *target,int level)
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
static void u_File(char *source,char *target,int level)
It is called to decompress a file. The object will pass the following values:
It is called to decompress a file. The object will pass the following values:
source = path of the file to be decompressed
target = path of the new decompressed file to create
level = compression level
source = path of the file to be decompressed
target = path of the new decompressed file to create
level = compression level
You will never receive a erroneus 'level' value
*********************************************************************************/
You will never receive a erroneus 'level' value
*********************************************************************************/
static void BZ2_u_File(char *source,char *target)
{
BZFILE *src;
@ -378,16 +379,16 @@ static void BZ2_u_File(char *source,char *target)
fclose(dst);
}
static void BZ2_c_Open(char *path,int level,GB_STREAM *stream)
static void BZ2_c_Open(char *path,int level,BZ2_STREAM *stream)
{
int bzerror;
GB.Alloc( POINTER(&((BZ2_STREAM*)stream)->info),sizeof(handleInfo) );
GB.Alloc(POINTER(&stream->info), sizeof(handleInfo) );
P_FILE=fopen(path,"wb");
if (!P_FILE)
{
GB.Free( POINTER(&((BZ2_STREAM*)stream)->info) );
GB.Free(POINTER(&stream->info));
GB.Error("Unable to open file");
return;
}
@ -406,8 +407,7 @@ static void BZ2_c_Open(char *path,int level,GB_STREAM *stream)
P_EOF=0;
P_POS=0;
stream->desc=&BZStream;
stream->base.desc = &BZStream;
}
static void BZ2_u_Open(char *path,GB_STREAM *stream)
@ -441,7 +441,7 @@ static void BZ2_u_Open(char *path,GB_STREAM *stream)
}
/*************************************************************************
Stream related stuff
Stream related stuff
**************************************************************************/
/* not allowed stream methods */
static int BZ_stream_lof(GB_STREAM *stream, int64_t *len){return -1;}
@ -534,48 +534,48 @@ static int BZ_stream_getchar(GB_STREAM *stream, char *buffer)
/****************************************************************************
This array of functions defines what functions the compression component
must call to perform its actions
****************************************************************************/
This array of functions defines what functions the compression component
must call to perform its actions
****************************************************************************/
static COMPRESS_DRIVER _driver =
{
"bzlib2",
"bzlib2",
(void*)BZ2_max_compression,
(void*)BZ2_min_compression,
(void*)BZ2_default_compression,
(void*)BZ2_max_compression,
(void*)BZ2_min_compression,
(void*)BZ2_default_compression,
{
(void*)BZ2_c_String,
{
(void*)BZ2_c_String,
(void*)BZ2_c_File,
(void*)BZ2_c_Open,
(void*)BZ_stream_close,
},
},
{
(void*)BZ2_u_String,
{
(void*)BZ2_u_String,
(void*)BZ2_u_File,
(void*)BZ2_u_Open,
(void*)BZ_stream_close
}
}
};
/*****************************************************************************
The component entry and exit functions.
The component entry and exit functions.
*****************************************************************************/
int EXPORT GB_INIT(void)
{
/*************************************************************************
When this component is loaded by Gambas runtime, it 'informs' to the
compression component what functions must it call to perform its actions
*************************************************************************/
GB.GetInterface("gb.compress", COMPRESS_INTERFACE_VERSION, &COMPRESSION);
COMPRESSION.Register(&_driver);
/*************************************************************************
When this component is loaded by Gambas runtime, it 'informs' to the
compression component what functions must it call to perform its actions
*************************************************************************/
GB.GetInterface("gb.compress", COMPRESS_INTERFACE_VERSION, &COMPRESSION);
COMPRESSION.Register(&_driver);
return 0;
return 0;
}
void EXPORT GB_EXIT()

View File

@ -1,23 +1,23 @@
/***************************************************************************
main.c
main.c
(c) 2003-2004 Daniel Campos Fernández <danielcampos@netcourrier.com>
(c) 2003-2004 Daniel Campos Fernández <danielcampos@netcourrier.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
***************************************************************************/
@ -59,30 +59,29 @@ GB_STREAM_DESC ZStream = {
typedef
struct {
GB_STREAM_DESC *desc;
int _reserved;
int mode;
gzFile handle;
}
STREAM_COMPRESS;
GB_STREAM_BASE base;
int mode;
gzFile handle;
}
STREAM_COMPRESS;
/*****************************************************************************
The driver interface
The driver interface
*****************************************************************************/
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
int max_compression(void)
int max_compression(void)
It must return the maximum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 9 the best compression level (more compression),
so the driver here returns '9'
*********************************************************************************/
It must return the maximum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 9 the best compression level (more compression),
so the driver here returns '9'
*********************************************************************************/
static int max_compression(void)
{
@ -90,52 +89,52 @@ static int max_compression(void)
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
int min_compression(void)
int min_compression(void)
It must return the minimum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 0 the worst compression level (no compression at all),
so the driver here returns '0'
*********************************************************************************/
It must return the minimum compression level that user can
assign, for instance gzip (in this moment) provides ten values, from zero to
9 , beeing 0 the worst compression level (no compression at all),
so the driver here returns '0'
*********************************************************************************/
static int min_compression(void)
{
return Z_NO_COMPRESSION;
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
int default_compression(void)
int default_compression(void)
It must return the default compression level, that is, the value to send when
Compression object methods are called without the optional parameter 'Level'.
In this gzip wrapper, for example, this value is -1
*********************************************************************************/
It must return the default compression level, that is, the value to send when
Compression object methods are called without the optional parameter 'Level'.
In this gzip wrapper, for example, this value is -1
*********************************************************************************/
static int default_compression(void)
{
return Z_DEFAULT_COMPRESSION;
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
void c_String(char **target,unsigned int *lent,char *source,unsigned int len,int level)
void c_String(char **target,unsigned int *lent,char *source,unsigned int len,int level)
It is called to compress a String and return it compressed. The object will
pass the following values:
It is called to compress a String and return it compressed. The object will
pass the following values:
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
You will never receive a zero lenght string, nor a erroneus 'level' value
You will never receive a zero lenght string, nor a erroneus 'level' value
The function must store the compressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
The function must store the compressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
*********************************************************************************/
*********************************************************************************/
static void c_String(char **target,unsigned int *lent,char *source,unsigned int len,int level)
{
unsigned long l;
@ -161,24 +160,24 @@ static void c_String(char **target,unsigned int *lent,char *source,unsigned int
*lent = (uint)l;
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
void u_String(char **target,unsigned int *lent,char *source,unsigned int len,int level)
void u_String(char **target,unsigned int *lent,char *source,unsigned int len,int level)
It is called to decompress a String and return it decompressed. The object will
pass the following values:
It is called to decompress a String and return it decompressed. The object will
pass the following values:
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
target = NULL
lent = 0
source = a pointer to the original string
len = length of the original string
level = compression level
You will never receive a zero lenght string, nor a erroneus 'level' value
You will never receive a zero lenght string, nor a erroneus 'level' value
The function must store the decompressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
*********************************************************************************/
The function must store the decompressed string in 'target', and its length in 'lent',
or NULL and zero if it fails by any reason
*********************************************************************************/
static void u_String(char **target,unsigned int *lent,char *source,unsigned int len)
{
int myok=Z_BUF_ERROR;
@ -223,19 +222,19 @@ static void u_String(char **target,unsigned int *lent,char *source,unsigned int
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
static void c_File(char *source,char *target,int level)
It is called to compress a file. The object will pass the following values:
It is called to compress a file. The object will pass the following values:
source = path of the file to be compressed
target = path of the new compressed file to create
level = compression level
source = path of the file to be compressed
target = path of the new compressed file to create
level = compression level
You will never receive a erroneus 'level' value
*********************************************************************************/
You will never receive a erroneus 'level' value
*********************************************************************************/
static void c_File(char *source,char *target,int level)
{
FILE *src;
@ -286,19 +285,19 @@ static void c_File(char *source,char *target,int level)
}
/*********************************************************************************
The Driver must provide this function:
The Driver must provide this function:
static void u_File(char *source,char *target,int level)
It is called to decompress a file. The object will pass the following values:
It is called to decompress a file. The object will pass the following values:
source = path of the file to be decompressed
target = path of the new decompressed file to create
level = compression level
source = path of the file to be decompressed
target = path of the new decompressed file to create
level = compression level
You will never receive a erroneus 'level' value
*********************************************************************************/
You will never receive a erroneus 'level' value
*********************************************************************************/
static void u_File(char *source,char *target)
{
gzFile src;
@ -345,19 +344,19 @@ static void u_File(char *source,char *target)
gzclose(src);
}
static void c_Open(char *path,int level,GB_STREAM *stream)
static void c_Open(char *path,int level, STREAM_COMPRESS *stream)
{
char mode[4]={'w','b',0,0};
stream->desc=&ZStream;
stream->base.desc=&ZStream;
if (level != Z_DEFAULT_COMPRESSION ) mode[2]=(char)(level+48);
stream->_free[0]=MODE_WRITE;
stream->_free[1]=(intptr_t)gzopen(path,mode);
stream->mode = MODE_WRITE;
stream->handle = gzopen(path,mode);
if (stream->_free[1]) return;
if (stream->handle) return;
stream->desc=NULL;
stream->base.desc = NULL;
if ( errno == Z_MEM_ERROR )
{
GB.Error("Not enough memory to manage selected file");
@ -365,21 +364,19 @@ static void c_Open(char *path,int level,GB_STREAM *stream)
}
GB.Error("Unable to open selected file");
}
static void u_Open(char *path, STREAM_COMPRESS *stream)
{
char mode[3]={'r','b',0};
stream->desc = &ZStream;
stream->base.desc = &ZStream;
stream->mode = MODE_READ;
stream->handle = gzopen(path, mode);
if (stream->handle) return;
stream->desc=NULL;
stream->base.desc=NULL;
if ( errno == Z_MEM_ERROR )
{
GB.Error("Not enough memory to manage selected file");
@ -390,7 +387,7 @@ static void u_Open(char *path, STREAM_COMPRESS *stream)
}
/*************************************************************************
Stream related stuff
Stream related stuff
**************************************************************************/
/* not allowed stream methods */
static int CZ_stream_lof(GB_STREAM *stream, int64_t *len){return -1;}
@ -423,11 +420,16 @@ int CZ_stream_close(GB_STREAM *stream)
static int CZ_stream_write(GB_STREAM *stream, char *buffer, int len)
{
STREAM_COMPRESS *s = (STREAM_COMPRESS *)stream;
if (s->mode==MODE_READ) return -1;
if ( gzwrite (s->handle, (voidp)buffer, (unsigned)len) == len) return 0;
if (s->mode == MODE_READ)
return TRUE;
if ( gzwrite (s->handle, (voidp)buffer, (unsigned)len) == len)
return FALSE;
gzclose (s->handle);
stream->desc=NULL;
return -1;
return TRUE;
}
static int CZ_stream_eof(GB_STREAM *stream)
@ -449,48 +451,48 @@ static int CZ_stream_read(GB_STREAM *stream, char *buffer, int len)
/****************************************************************************
This array of functions defines what functions the compression component
must call to perform its actions
****************************************************************************/
This array of functions defines what functions the compression component
must call to perform its actions
****************************************************************************/
static COMPRESS_DRIVER _driver =
{
"zlib",
"zlib",
(void*)max_compression,
(void*)min_compression,
(void*)default_compression,
(void*)max_compression,
(void*)min_compression,
(void*)default_compression,
{
(void*)c_String,
(void*)c_File,
(void*)c_Open,
(void*)CZ_stream_close,
},
{
(void*)u_String,
(void*)u_File,
(void*)u_Open,
(void*)CZ_stream_close
}
{
(void*)c_String,
(void*)c_File,
(void*)c_Open,
(void*)CZ_stream_close,
},
{
(void*)u_String,
(void*)u_File,
(void*)u_Open,
(void*)CZ_stream_close
}
};
/*****************************************************************************
The component entry and exit functions.
The component entry and exit functions.
*****************************************************************************/
int EXPORT GB_INIT(void)
{
/*************************************************************************
When this component is loaded by Gambas runtime, it 'informs' to the
compression component what functions must it call to perform its actions
*************************************************************************/
GB.GetInterface("gb.compress", COMPRESS_INTERFACE_VERSION, &COMPRESSION);
COMPRESSION.Register(&_driver);
/*************************************************************************
When this component is loaded by Gambas runtime, it 'informs' to the
compression component what functions must it call to perform its actions
*************************************************************************/
GB.GetInterface("gb.compress", COMPRESS_INTERFACE_VERSION, &COMPRESSION);
COMPRESSION.Register(&_driver);
return 0;
return 0;
}
void EXPORT GB_EXIT()

View File

@ -1,23 +1,23 @@
/***************************************************************************
CCompress.c
CCompress.c
(c) 2003-2004 Daniel Campos Fern<EFBFBD>dez <danielcampos@netcourrier.com>
(c) 2003-2004 Daniel Campos Fern<EFBFBD>dez <danielcampos@netcourrier.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
***************************************************************************/
@ -42,31 +42,13 @@
return; \
}
//*************************************************************************
//############################### COMPRESS ################################
//*************************************************************************
/*************************************************
Class "Constructor"
*************************************************/
BEGIN_METHOD_VOID(CCOMPRESS_init)
END_METHOD
/*************************************************
Class "Destructor"
*************************************************/
BEGIN_METHOD_VOID(CCOMPRESS_exit)
END_METHOD
/*************************************************
Gambas object "Constructor"
*************************************************/
Gambas object "Constructor"
*************************************************/
BEGIN_METHOD_VOID(CCOMPRESS_new)
THIS->driver=NULL;
@ -74,8 +56,8 @@ BEGIN_METHOD_VOID(CCOMPRESS_new)
END_METHOD
/*************************************************
Gambas object "Destructor"
*************************************************/
Gambas object "Destructor"
*************************************************/
BEGIN_METHOD_VOID(CCOMPRESS_free)
@ -180,30 +162,27 @@ BEGIN_PROPERTY ( COMPRESS_Type )
END_PROPERTY
/*******************************************************************
Interface declaration
*******************************************************************/
Interface declaration
*******************************************************************/
GB_DESC CCompressDesc[] =
{
GB_DECLARE("Compress", sizeof(CCOMPRESS)),
GB_INHERITS("Stream"),
GB_PROPERTY_READ("Min","i",COMPRESS_Min),
GB_PROPERTY_READ("Max","i",COMPRESS_Max),
GB_PROPERTY_READ("Default","i",COMPRESS_Default),
GB_PROPERTY("Type","s",COMPRESS_Type),
GB_DECLARE("Compress", sizeof(CCOMPRESS)),
GB_INHERITS("Stream"),
GB_PROPERTY_READ("Min","i",COMPRESS_Min),
GB_PROPERTY_READ("Max","i",COMPRESS_Max),
GB_PROPERTY_READ("Default","i",COMPRESS_Default),
GB_PROPERTY("Type","s",COMPRESS_Type),
GB_STATIC_METHOD("_init", NULL, CCOMPRESS_init, NULL),
GB_STATIC_METHOD("_exit", NULL, CCOMPRESS_exit, NULL),
GB_METHOD("_new", NULL, CCOMPRESS_new,NULL),
GB_METHOD("_free", NULL, CCOMPRESS_free, NULL),
GB_METHOD("String","s",CCOMPRESS_String,"(Source)s[(Level)i(AllowGrow)b]"),
GB_METHOD("File",NULL,CCOMPRESS_File,"(Source)s(Target)s[(Level)i]"),
GB_METHOD("Open",NULL,CCOMPRESS_Open,"(Path)s[(Level)i]"),
GB_END_DECLARE
GB_METHOD("_new", NULL, CCOMPRESS_new,NULL),
GB_METHOD("_free", NULL, CCOMPRESS_free, NULL),
GB_METHOD("String","s",CCOMPRESS_String,"(Source)s[(Level)i(AllowGrow)b]"),
GB_METHOD("File",NULL,CCOMPRESS_File,"(Source)s(Target)s[(Level)i]"),
GB_METHOD("Open",NULL,CCOMPRESS_Open,"(Path)s[(Level)i]"),
GB_END_DECLARE
};

View File

@ -1,23 +1,23 @@
/***************************************************************************
gb.compress.h
gb.compress.h
(c) 2003-2004 Daniel Campos Fern<EFBFBD>ndez <danielcampos@netcourrier.com>
(c) 2003-2004 Daniel Campos Fern<EFBFBD>ndez <danielcampos@netcourrier.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
***************************************************************************/
@ -27,44 +27,41 @@
#include "gambas.h"
typedef
struct {
char *type;
}
COMPRESS_DESC;
struct {
char *type;
}
COMPRESS_DESC;
typedef
struct {
char *name;
int (*max_compression)(void);
int (*min_compression)(void);
int (*default_compression)(void);
struct {
int (*String) (char **target,unsigned int *lent,char *source,unsigned int len,int level);
int (*File) (char *source,char *target,int level);
void (*Open) (char *path,int level,GB_STREAM *stream);
int (*Close) (GB_STREAM *stream);
} Compress;
struct {
int (*String) (char **target,unsigned int *lent,char *source,unsigned int len);
int (*File) (char *source,char *target);
void (*Open) (char *path,GB_STREAM *stream);
int (*Close) (GB_STREAM *stream);
} Uncompress;
}
COMPRESS_DRIVER;
struct {
char *name;
int (*max_compression)(void);
int (*min_compression)(void);
int (*default_compression)(void);
struct {
int (*String) (char **target,unsigned int *lent,char *source,unsigned int len,int level);
int (*File) (char *source,char *target,int level);
void (*Open) (char *path,int level,GB_STREAM *stream);
int (*Close) (GB_STREAM *stream);
} Compress;
struct {
int (*String) (char **target,unsigned int *lent,char *source,unsigned int len);
int (*File) (char *source,char *target);
void (*Open) (char *path,GB_STREAM *stream);
int (*Close) (GB_STREAM *stream);
} Uncompress;
}
COMPRESS_DRIVER;
typedef
struct {
intptr_t version;
void (*Register)(COMPRESS_DRIVER *);
}
COMPRESS_INTERFACE;
struct {
intptr_t version;
void (*Register)(COMPRESS_DRIVER *);
}
COMPRESS_INTERFACE;
#define COMPRESS_INTERFACE_VERSION 1

View File

@ -739,6 +739,7 @@ typedef
int64_t _reserved;
intptr_t _reserved2;
intptr_t _reserved3;
void *tag;
}
GB_STREAM_BASE;