lazarus/components/synedit/docs/xml/synedittextbase.xml
martin 654b36a727 Synedit: docs
git-svn-id: trunk@24204 -
2010-03-25 01:33:40 +00:00

50 lines
2.1 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0"?>
<fpdoc-descriptions>
<package name="SynEdit">
<module name="SynEditTextBase">
<element name="TSynEditStorageMem">
<short>Baseclass for index based storage. Provides a block of memory per item (e.g. string pointer per line)</short>
<descr>Similar like TList, provides a definable amount of Memory for each Item.
Each item will be given the same amount of Memory,
which can be used to store a record or any other form of fixed size data.
Each subclass is responsible for defining the ItemSize. (May only be changed if list is empty).
Subclasses must also manage count, capacity and trigger moving data on insert/delete.
This class is only responsible for allocating and managing (execute moving) the required
memory
The memory for all items is allocated as a single big block. This avoids having a list
of pointer to many small memory fragment
This memory organiztion is not guranteed. Calling code must not relay on it.
It could be changed to allocate blocks of n items, or implement gap-list like behavior..</descr>
<seealso>Derrived classes:
TSynEditStringMemory
TSynHighlighterRangeList</seealso>
</element>
<element name="TSynEditStorageMem.ItemSize">
<short>Size of each Item in Bytes. Must be constant or set while list is empty</short>
<descr>
<p>A block of ItemSize bytes will be allocated for each Item.
This is used by SetCapacity and ItemPointer.</p>
<p>This value must not be changed if any data is stored (Capacity &gt; 0),
since the data will not be remapped to the new Size.</p>
</descr>
</element>
<element name="TSynEditStorageMem.Mem"/>
<element name="TSynEditStorageMem.ItemPointer">
<short>Get a pointer to the Memory for the indexed item </short>
</element>
<element name="TSynEditStrings">
<short>Baseclass for Text-Storage and Virtual-Representation of Text (View)</short>
<descr>
<p>Defines an interface through which SynEdit does (should do) all it's access to the text.</p>
<p/>
</descr>
</element>
</module>
</package>
</fpdoc-descriptions>