Стартовый пул
This commit is contained in:
BIN
bgrabitmap/doc/blue_circular_bevel_js.png
Normal file
BIN
bgrabitmap/doc/blue_circular_bevel_js.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
5
bgrabitmap/doc/generate.bat
Normal file
5
bgrabitmap/doc/generate.bat
Normal file
@@ -0,0 +1,5 @@
|
||||
@echo off
|
||||
if not exist web mkdir web
|
||||
del web\*.html
|
||||
pasdoc @pasdoc.cfg
|
||||
pause
|
22
bgrabitmap/doc/generate.sh
Normal file
22
bgrabitmap/doc/generate.sh
Normal file
@@ -0,0 +1,22 @@
|
||||
DOCSPATH=web
|
||||
if [ ! -d "$DOCSPATH" ]; then
|
||||
mkdir $DOCSPATH
|
||||
fi
|
||||
echo Removing previously generated pages...
|
||||
rm $DOCSPATH/*.html
|
||||
rm $DOCSPATH/*.dot
|
||||
rm $DOCSPATH/*.svg
|
||||
|
||||
./pasdoc @pasdoc.cfg -X --graphviz-uses --link-gv-uses=svg --graphviz-classes --link-gv-classes=svg
|
||||
|
||||
perl -ni -e 'print unless /"(SysUtils|Classes|BGRAGraphics|BGRAClasses|BGRABitmapTypes|Math|Types|FPImgCanv|FPImage|fgl)"/i' $DOCSPATH/GVUses.dot
|
||||
|
||||
perl -ni -e 'print unless /"(TObject)"/i' $DOCSPATH/GVClasses.dot
|
||||
|
||||
dot -Grankdir=LR -T svg $DOCSPATH/GVUses.dot > $DOCSPATH/GVUses.svg
|
||||
dot -Grankdir=LR -T svg $DOCSPATH/GVClasses.dot > $DOCSPATH/GVClasses.svg
|
||||
|
||||
perl -i -pe 's|(<h1 class="allitems">All Units</h1>)|$1\n<p><a href="GVUses.svg">🔍 Dependency graph</a></p>|' $DOCSPATH/AllUnits.html
|
||||
perl -i -pe 's|(<h1 class="allitems">Class Hierarchy</h1>)|$1\n<p><a href="GVClasses.svg">🔍 Hierarchy graph</a></p>|' $DOCSPATH/ClassHierarchy.html
|
||||
perl -i -pe 's|(<h1 class="unit">Unit ([A-Za-z][A-Za-z0-9_]+)</h1>)|<p style="float: right; margin-block-start: 0.5em"><a href="https://github.com/bgrabitmap/bgrabitmap/blob/master/bgrabitmap/\L$2\E.pas">📄 Source</a></p>\n$1|' $DOCSPATH/*.html
|
||||
perl -i -pe 's|Classes, Interfaces, Objects and Records|Structures|' $DOCSPATH/*.html
|
39
bgrabitmap/doc/introduction.txt
Normal file
39
bgrabitmap/doc/introduction.txt
Normal file
@@ -0,0 +1,39 @@
|
||||
@title(📚 BGRABitmap documentation)
|
||||
@shorttitle(📚 BGRABitmap)
|
||||
[🏠 Homepage](https://bgrabitmap.github.io/)
|
||||
|
||||
@image(../bgrabitmap.jpg)
|
||||
|
||||
@section(1 SecFirst Introduction)
|
||||
|
||||
[BGRABitmap](https://bgrabitmap.github.io/) is a package designed to modify and create images with transparency. Direct pixel access allows fast image processing. The library has been tested on Windows, Linux and Mac.
|
||||
|
||||
@section(1 Install How to install)
|
||||
|
||||
There are various ways to install.
|
||||
|
||||
- [Download source code](https://github.com/bgrabitmap/bgrabitmap/releases) and [configure your project](https://wiki.freepascal.org/BGRABitmap_tutorial_1).
|
||||
- Use [Online Package Manager](http://wiki.lazarus.freepascal.org/Online_Package_Manager) in Lazarus.
|
||||
- Get a fresh installation of Lazarus and BGRABitmap with [FPCUpDeluxe](http://wiki.lazarus.freepascal.org/fpcupdeluxe).
|
||||
|
||||
The source code can be browser on the [repository](https://github.com/bgrabitmap/bgrabitmap).
|
||||
|
||||
@section(1 Start Quick start)
|
||||
|
||||
Include BGRABitmap and BGRABitmapTypes in the **uses** clause. If you are using LCL types, add also BGRAGraphics unit.
|
||||
|
||||
Create TBGRABitmap instances for each image. This class derives from TBGRACustomBitmap.
|
||||
|
||||
The **CanvasBGRA** property of type TBGRACanvas provides a canvas with opacity and [antialiasing](https://wiki.freepascal.org/BGRABitmap_tutorial_13).
|
||||
|
||||
The **Canvas2D** property of type TBGRACanvas2D provides a canvas with 2d transformation and [similar to HTML5](https://wiki.freepascal.org/BGRABitmap_tutorial_14).
|
||||
|
||||
Here is a nice [introduction to BGRABitmap](https://msegui.net/tutoriels/bgrabitmap-lazarus/tutoriel.html) in French.
|
||||
|
||||
@section(1 Resources More resources)
|
||||
|
||||
You can read more about BGRABitmap in the [wiki](http://wiki.freepascal.org/BGRABitmap). And also you can follow [tutorials](http://wiki.freepascal.org/BGRABitmap_tutorial) to learn how to use BGRABitmap.
|
||||
|
||||
There is also an [image transitions tutorial](https://gilles-vasseur.developpez.com/tutoriels/transitions/bgra1/) in French.
|
||||
|
||||
Lazarus forum has a [category](https://forum.lazarus.freepascal.org/index.php/board,46.0.html) for BGRABitmap. To report bugs, please check [issues](https://github.com/bgrabitmap/bgrabitmap/issues) on GitHub.
|
258
bgrabitmap/doc/pasdoc_bluetones.css
Normal file
258
bgrabitmap/doc/pasdoc_bluetones.css
Normal file
@@ -0,0 +1,258 @@
|
||||
/*
|
||||
Copyright 1998-2018 PasDoc developers.
|
||||
|
||||
This file is part of "PasDoc".
|
||||
|
||||
"PasDoc" 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 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
"PasDoc" 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 "PasDoc"; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
body, html {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: Verdana,Arial;
|
||||
color: black;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
.navigation {
|
||||
float: left;
|
||||
width: 20em; /* must match .content margin-left */
|
||||
height: 100%;
|
||||
color: white;
|
||||
background-color: #3D9E8C;
|
||||
position: fixed;
|
||||
margin: 0;
|
||||
box-sizing: border-box; /* without this, you could not have padding here, it would overlap with .content, causing errors on narrow screens */
|
||||
padding: 1em;
|
||||
}
|
||||
.navigation ul {
|
||||
margin: 0em;
|
||||
padding: 0em;
|
||||
}
|
||||
.navigation li {
|
||||
list-style-type: none;
|
||||
margin: 0.2em 0em 0em 0em;
|
||||
padding: 0.25em;
|
||||
}
|
||||
.navigation h2 {
|
||||
text-align: center;
|
||||
margin: 0em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-left: 20em; /* must match .navigation width */
|
||||
box-sizing: border-box; /* without this, you could not have padding here, it would overlap with .navigation, causing errors on narrow screens */
|
||||
padding: 1em;
|
||||
}
|
||||
.content h1 {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.appinfo {
|
||||
float: right;
|
||||
text-align: right;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
img { border:0px; }
|
||||
|
||||
hr {
|
||||
border-bottom: medium none;
|
||||
border-top: thin solid #888;
|
||||
}
|
||||
|
||||
a:link {color:#3d578c; text-decoration: none; }
|
||||
a:visited {color:#7E5C31; text-decoration: none; }
|
||||
a:hover {text-decoration: underline; }
|
||||
a:active {text-decoration: underline; }
|
||||
|
||||
.navigation a:link { color: white; text-decoration: none; }
|
||||
.navigation a:visited { color: white; text-decoration: none; }
|
||||
.navigation a:hover { color: white; font-weight: bold; text-decoration: none; }
|
||||
.navigation a:active { color: white; text-decoration: none; }
|
||||
|
||||
a.bold:link {color:#3d578c; text-decoration: none; font-weight:bold; }
|
||||
a.bold:visited {color:#7E5C31; text-decoration: none; font-weight:bold; }
|
||||
a.bold:hover {text-decoration: underline; font-weight:bold; }
|
||||
a.bold:active {text-decoration: underline; font-weight:bold; }
|
||||
|
||||
a.section {color: #3d578c; text-decoration: none; font-weight: bold; }
|
||||
a.section:hover {color: #3d578c; text-decoration: underline; font-weight: bold; }
|
||||
|
||||
ul.useslist a:link {color:#3d578c; text-decoration: none; font-weight:bold; }
|
||||
ul.useslist a:visited {color:#7E5C31; text-decoration: none; font-weight:bold; }
|
||||
ul.useslist a:hover {text-decoration: underline; font-weight:bold; }
|
||||
ul.useslist a:active {text-decoration: underline; font-weight:bold; }
|
||||
|
||||
ul.hierarchy { list-style-type:none; }
|
||||
ul.hierarchylevel { list-style-type:none; }
|
||||
|
||||
p.unitlink a:link {color:#3d578c; text-decoration: none; font-weight:bold; }
|
||||
p.unitlink a:visited {color:#7E5C31; text-decoration: none; font-weight:bold; }
|
||||
p.unitlink a:hover {text-decoration: underline; font-weight:bold; }
|
||||
p.unitlink a:active {text-decoration: underline; font-weight:bold; }
|
||||
|
||||
tr.list { background: #f7f8fb; }
|
||||
tr.list2 { background: #fbfcff; }
|
||||
tr.listheader { background: #3d578c; color: white; }
|
||||
|
||||
table.wide_list { border-spacing:2px; width:100%; }
|
||||
table.wide_list td { vertical-align:top; padding:4px; }
|
||||
|
||||
table.markerlegend { width:auto; }
|
||||
table.markerlegend td.legendmarker { text-align:center; }
|
||||
|
||||
.sections { background:white; }
|
||||
.sections .one_section {
|
||||
background:lightgray;
|
||||
display: inline-block;
|
||||
margin: 0.2em;
|
||||
padding: 0.5em 1em;
|
||||
}
|
||||
|
||||
table.summary td.itemcode { width:100%; }
|
||||
table.detail td.itemcode { width:100%; }
|
||||
|
||||
td.itemname {white-space:nowrap; }
|
||||
td.itemunit {white-space:nowrap; }
|
||||
td.itemdesc { width:100%; }
|
||||
|
||||
.nodescription, .inheritdescription { color: #c70; }
|
||||
dl.parameters dt {
|
||||
color:blue;
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: monospace;
|
||||
font-size:1.2em;
|
||||
}
|
||||
|
||||
/* style for warning and note tag */
|
||||
dl.tag.warning {
|
||||
margin-left:-2px;
|
||||
padding-left: 3px;
|
||||
border-left:4px solid;
|
||||
border-color: #FF0000;
|
||||
}
|
||||
dl.tag.note {
|
||||
margin-left:-2px;
|
||||
padding-left: 3px;
|
||||
border-left:4px solid;
|
||||
border-color: #D0C000;
|
||||
}
|
||||
|
||||
/* Various browsers have various default styles for <h6>,
|
||||
sometimes ugly for our purposes, so it's best to set things
|
||||
like font-size and font-weight in out pasdoc.css explicitly. */
|
||||
h6.description_section {
|
||||
/* font-size 100% means that it has the same font size as the
|
||||
parent element, i.e. normal description text */
|
||||
font-size: 100%;
|
||||
font-weight: bold;
|
||||
/* By default browsers usually have some large margin-bottom and
|
||||
margin-top for <h1-6> tags. In our case, margin-bottom is
|
||||
unnecessary, we want to visually show that description_section
|
||||
is closely related to content below. In this situation
|
||||
(where the font size is just as a normal text), smaller bottom
|
||||
margin seems to look good. */
|
||||
margin-top: 1.4em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
/* Style applied to Pascal code in documentation
|
||||
(e.g. produced by @longcode tag) } */
|
||||
.longcode {
|
||||
font-family: monospace;
|
||||
font-size: 1.2em;
|
||||
background-color: #eee;
|
||||
padding: 0.5em;
|
||||
border: thin solid #ccc;
|
||||
}
|
||||
span.pascal_string { color: #000080; }
|
||||
span.pascal_keyword { font-weight: bolder; }
|
||||
span.pascal_comment { color: #000080; font-style: italic; }
|
||||
span.pascal_compiler_comment { color: #008000; }
|
||||
span.pascal_numeric { }
|
||||
span.pascal_hex { }
|
||||
|
||||
p.hint_directive { color: red; }
|
||||
|
||||
input#search_text { }
|
||||
input#search_submit_button { }
|
||||
|
||||
acronym.mispelling { background-color: #f00; }
|
||||
|
||||
/* Actually this reduces vertical space between *every* paragraph
|
||||
inside list with @itemSpacing(compact).
|
||||
While we would like to reduce this space only for the
|
||||
top of 1st and bottom of last paragraph within each list item.
|
||||
But, well, user probably will not do any paragraph breaks
|
||||
within a list with @itemSpacing(compact) anyway, so it's
|
||||
acceptable solution. */
|
||||
ul.compact_spacing p { margin-top: 0em; margin-bottom: 0em; }
|
||||
ol.compact_spacing p { margin-top: 0em; margin-bottom: 0em; }
|
||||
dl.compact_spacing p { margin-top: 0em; margin-bottom: 0em; }
|
||||
|
||||
/* Style for table created by @table tags:
|
||||
just some thin border.
|
||||
|
||||
This way we have some borders around the cells
|
||||
(so cells are visibly separated), but the border
|
||||
"blends with the background" so it doesn't look too ugly.
|
||||
Hopefully it looks satisfactory in most cases and for most
|
||||
people.
|
||||
|
||||
We add padding for cells, otherwise they look too close.
|
||||
This is normal thing to do when border-collapse is set to
|
||||
collapse (because this eliminates spacing between cells).
|
||||
*/
|
||||
table.table_tag { border-collapse: collapse; }
|
||||
table.table_tag td { border: 1pt solid gray; padding: 0.3em; }
|
||||
table.table_tag th { border: 1pt solid gray; padding: 0.3em; }
|
||||
|
||||
table.detail {
|
||||
border: 1pt solid gray;
|
||||
margin-top: 0.3em;
|
||||
margin-bottom: 0.3em;
|
||||
background: #fffeea;
|
||||
}
|
||||
|
||||
.search-form { white-space: nowrap; }
|
||||
.search-input input { max-width: 80%; } /* this provides some safe space to always fit even on very narrow screens */
|
||||
.search-input input, .search-button { display: inline-block; vertical-align: middle; }
|
||||
.search-input { display: inline-block; }
|
||||
|
||||
/* Do not make extra vertical space at the beginning/end of table cells.
|
||||
We need ">" selector, to not change paragraphs inside lists inside
|
||||
table cells. */
|
||||
table.table_tag td > p:first-child,
|
||||
table.table_tag th > p:first-child,
|
||||
td.itemdesc > p:first-child { margin-top: 0em; }
|
||||
|
||||
table.table_tag td > p:last-child,
|
||||
table.table_tag th > p:last-child,
|
||||
td.itemdesc > p:last-child { margin-bottom: 0em; }
|
9
bgrabitmap/doc/readme.md
Normal file
9
bgrabitmap/doc/readme.md
Normal file
@@ -0,0 +1,9 @@
|
||||
## Generation of documentation
|
||||
|
||||
To generate the documentation, you will need [this fork](https://github.com/circular17/pasdoc) of pasdoc for it to work properly. The changes may be integrated in the future in the release of [pasdoc](https://github.com/pasdoc/pasdoc).
|
||||
|
||||
Compile the console version of pasdoc and copy into the [/doc](https://github.com/bgrabitmap/bgrabitmap/tree/dev-bgrabitmap/doc) folder of bgrabitmap. Then run the script called `generate.sh` (on Linux and MacOS). There is as well a batch file `generate.bat` for Windows though it doesn't generate the charts.
|
||||
|
||||
The charts are generated using [Graphviz](https://graphviz.org/) with its `dot` command. Some units and classes are from the `.dot` files before generating the chart in order to make it readable. They are accessible in the generated HTML documentation with the left panel.
|
||||
|
||||
The scripts generates the HTML documentation in a subfolder called **web**. It is not archived in this repository, considering it would take up space, is bound to be regenerated anyway and will be stored in the [documentation website](https://github.com/bgrabitmap/bgrabitmap.github.io).
|
109
bgrabitmap/doc/units.txt
Normal file
109
bgrabitmap/doc/units.txt
Normal file
@@ -0,0 +1,109 @@
|
||||
../bgrabitmap/avifbgra.pas
|
||||
../bgrabitmap/bgraanimatedgif.pas
|
||||
../bgrabitmap/bgraarrow.pas
|
||||
../bgrabitmap/bgrabitmap.pas
|
||||
../bgrabitmap/bgrabitmaptypes.pas
|
||||
../bgrabitmap/bgrablend.pas
|
||||
../bgrabitmap/bgrablurgl.pas
|
||||
../bgrabitmap/bgracanvas.pas
|
||||
../bgrabitmap/bgracanvas2d.pas
|
||||
../bgrabitmap/bgracanvasgl.pas
|
||||
../bgrabitmap/bgraclasses.pas
|
||||
../bgrabitmap/bgracolorint.pas
|
||||
../bgrabitmap/bgracolorquantization.pas
|
||||
../bgrabitmap/bgracompressablebitmap.pas
|
||||
../bgrabitmap/bgracoordpool3d.pas
|
||||
../bgrabitmap/bgracustomtextfx.pas
|
||||
../bgrabitmap/bgradefaultbitmap.pas
|
||||
../bgrabitmap/bgradithering.pas
|
||||
../bgrabitmap/bgradnetdeserial.pas
|
||||
../bgrabitmap/bgrafillinfo.pas
|
||||
../bgrabitmap/bgrafilterblur.pas
|
||||
../bgrabitmap/bgrafilters.pas
|
||||
../bgrabitmap/bgrafilterscanner.pas
|
||||
../bgrabitmap/bgrafiltertype.pas
|
||||
../bgrabitmap/bgrafontgl.pas
|
||||
../bgrabitmap/bgrafreetype.pas
|
||||
../bgrabitmap/bgragifformat.pas
|
||||
../bgrabitmap/bgragradientoriginal.pas
|
||||
../bgrabitmap/bgragradients.pas
|
||||
../bgrabitmap/bgragradientscanner.pas
|
||||
../bgrabitmap/bgragraphics.pas
|
||||
../bgrabitmap/bgragrayscalemask.pas
|
||||
../bgrabitmap/bgraiconcursor.pas
|
||||
../bgrabitmap/bgralayeroriginal.pas
|
||||
../bgrabitmap/bgralayers.pas
|
||||
../bgrabitmap/bgralazpaint.pas
|
||||
../bgrabitmap/bgralazresource.pas
|
||||
../bgrabitmap/bgralclbitmap.pas
|
||||
../bgrabitmap/bgralzpcommon.pas
|
||||
../bgrabitmap/bgramatrix3d.pas
|
||||
../bgrabitmap/bgramemdirectory.pas
|
||||
../bgrabitmap/bgramultifiletype.pas
|
||||
../bgrabitmap/bgraopengl.pas
|
||||
../bgrabitmap/bgraopengl3d.pas
|
||||
../bgrabitmap/bgraopengltype.pas
|
||||
../bgrabitmap/bgraopenraster.pas
|
||||
../bgrabitmap/bgrapaintnet.pas
|
||||
../bgrabitmap/bgrapalette.pas
|
||||
../bgrabitmap/bgrapapers.pas
|
||||
../bgrabitmap/bgrapath.pas
|
||||
../bgrabitmap/bgrapen.pas
|
||||
../bgrabitmap/bgraphongtypes.pas
|
||||
../bgrabitmap/bgraphoxo.pas
|
||||
../bgrabitmap/bgrapngcomn.pas
|
||||
../bgrabitmap/bgrapolygon.pas
|
||||
../bgrabitmap/bgrapolygonaliased.pas
|
||||
../bgrabitmap/bgrareadavif.pas
|
||||
../bgrabitmap/bgrareadbmp.pas
|
||||
../bgrabitmap/bgrareadbmpmiomap.pas
|
||||
../bgrabitmap/bgrareadgif.pas
|
||||
../bgrabitmap/bgrareadico.pas
|
||||
../bgrabitmap/bgrareadjpeg.pas
|
||||
../bgrabitmap/bgrareadlzp.pas
|
||||
../bgrabitmap/bgrareadpcx.pas
|
||||
../bgrabitmap/bgrareadpng.pas
|
||||
../bgrabitmap/bgrareadpsd.pas
|
||||
../bgrabitmap/bgrareadtga.pas
|
||||
../bgrabitmap/bgrareadtiff.pas
|
||||
../bgrabitmap/bgrareadwebp.pas
|
||||
../bgrabitmap/bgrareadxpm.pas
|
||||
../bgrabitmap/bgrarenderer3d.pas
|
||||
../bgrabitmap/bgraresample.pas
|
||||
../bgrabitmap/bgrascene3d.pas
|
||||
../bgrabitmap/bgrascenetypes.pas
|
||||
../bgrabitmap/bgraslicescaling.pas
|
||||
../bgrabitmap/bgraspritegl.pas
|
||||
../bgrabitmap/bgrasse.pas
|
||||
../bgrabitmap/bgrastreamlayers.pas
|
||||
../bgrabitmap/bgrasvg.pas
|
||||
../bgrabitmap/bgrasvgoriginal.pas
|
||||
../bgrabitmap/bgrasvgshapes.pas
|
||||
../bgrabitmap/bgrasvgtype.pas
|
||||
../bgrabitmap/bgratext.pas
|
||||
../bgrabitmap/bgratextbidi.pas
|
||||
../bgrabitmap/bgratextfx.pas
|
||||
../bgrabitmap/bgrathumbnail.pas
|
||||
../bgrabitmap/bgratransform.pas
|
||||
../bgrabitmap/bgratypewriter.pas
|
||||
../bgrabitmap/bgraunicode.pas
|
||||
../bgrabitmap/bgraunicodetext.pas
|
||||
../bgrabitmap/bgraunits.pas
|
||||
../bgrabitmap/bgrautf8.pas
|
||||
../bgrabitmap/bgravectorize.pas
|
||||
../bgrabitmap/bgrawinresource.pas
|
||||
../bgrabitmap/bgrawriteavif.pas
|
||||
../bgrabitmap/bgrawritebmp.pas
|
||||
../bgrabitmap/bgrawritebmpmiomap.pas
|
||||
../bgrabitmap/bgrawritejpeg.pas
|
||||
../bgrabitmap/bgrawritelzp.pas
|
||||
../bgrabitmap/bgrawritepcx.pas
|
||||
../bgrabitmap/bgrawritepng.pas
|
||||
../bgrabitmap/bgrawritetiff.pas
|
||||
../bgrabitmap/bgrawritewebp.pas
|
||||
../bgrabitmap/expandedbitmap.pas
|
||||
../bgrabitmap/linearrgbabitmap.pas
|
||||
../bgrabitmap/universaldrawer.pas
|
||||
../bgrabitmap/unzipperext.pas
|
||||
../bgrabitmap/wordxyzabitmap.pas
|
||||
../bgrabitmap/xyzabitmap.pas
|
Reference in New Issue
Block a user