mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-11 09:18:10 +02:00

svn+ssh://svn.freepascal.org/FPC/svn/fpc/branches/resources ........ r9694 | michael | 2008-01-09 21:31:18 +0100 (Wed, 09 Jan 2008) | 1 line * Initial check-in ........ r9695 | michael | 2008-01-09 21:35:58 +0100 (Wed, 09 Jan 2008) | 1 line * New version from Giulio Bernardi ........ r9697 | michael | 2008-01-09 21:41:54 +0100 (Wed, 09 Jan 2008) | 1 line * Patch from Giulio Bernardi with resource support ........ r9698 | michael | 2008-01-09 21:46:33 +0100 (Wed, 09 Jan 2008) | 1 line * Patch from Giulio Bernardi to add more resource testing ........ r9699 | michael | 2008-01-09 21:57:26 +0100 (Wed, 09 Jan 2008) | 1 line * New tool from Giulio Bernardi ........ r9700 | michael | 2008-01-09 21:58:23 +0100 (Wed, 09 Jan 2008) | 1 line * New tool from Giulio Bernardi ........ r9701 | michael | 2008-01-09 22:01:54 +0100 (Wed, 09 Jan 2008) | 1 line * Added fcl-res ........ r9702 | michael | 2008-01-09 22:01:58 +0100 (Wed, 09 Jan 2008) | 1 line * Added fcl-res ........ r9703 | michael | 2008-01-10 08:54:26 +0100 (Thu, 10 Jan 2008) | 1 line * Fixed double code ........ r9704 | jonas | 2008-01-10 10:59:20 +0100 (Thu, 10 Jan 2008) | 2 lines - removed duplicate code ........ r9705 | jonas | 2008-01-10 11:25:21 +0100 (Thu, 10 Jan 2008) | 2 lines + added missing fcl-res dependencies ........ r9706 | jonas | 2008-01-10 11:58:30 +0100 (Thu, 10 Jan 2008) | 2 lines + dependencies for fpintres and fpextres ........ r9707 | yury | 2008-01-10 12:47:51 +0100 (Thu, 10 Jan 2008) | 3 lines * Fixed compilation of resource, which is included in a unit located in different folder than main source. * .res files must be copied to units output folder, otherwise .res files will not be found when only compiled units path is available and compiler does not know anything about sources folder. * Improved resource related error messages. ........ r9708 | michael | 2008-01-10 12:52:13 +0100 (Thu, 10 Jan 2008) | 1 line * Removed double source after end. ........ r9709 | michael | 2008-01-10 12:52:48 +0100 (Thu, 10 Jan 2008) | 1 line * No longer needed ........ r9710 | tom_at_work | 2008-01-10 22:09:08 +0100 (Thu, 10 Jan 2008) | 1 line * properly align FPC_RESLOCATION so that linking does not fail on some architectures (e.g. ppc64) ........ r9711 | tom_at_work | 2008-01-10 23:53:12 +0100 (Thu, 10 Jan 2008) | 1 line * fix splitting of 64 bit load/stores from/to unaligned memory locations into multiple load/stores, which in some cases generated wrong code ........ r9712 | michael | 2008-01-11 11:00:08 +0100 (Fri, 11 Jan 2008) | 1 line * Fixed bug in BSS section on 64-bit platforms ........ r9720 | giulio | 2008-01-12 10:02:04 +0100 (Sat, 12 Jan 2008) | 1 line Updated fcl-res documentation: occurrences of reslib changed to fcl-res. ........ r9740 | giulio | 2008-01-13 19:36:44 +0100 (Sun, 13 Jan 2008) | 3 lines - Don't try to compile resources on systems with a non windows-like resource support. - Don't add the .or file to the list of object files if resource compiling failed. ........ r10201 | giulio | 2008-02-04 11:35:44 +0100 (Mon, 04 Feb 2008) | 5 lines * resource compiling supported on OS/2 via wrc * CompileResourceFiles and CollectResourceFiles don't do target-specific checks anymore * refactored a bit ........ r10389 | giulio | 2008-02-25 21:32:52 +0100 (Mon, 25 Feb 2008) | 2 lines Deleted test file which was committed by mistake ........ r10472 | giulio | 2008-03-10 12:22:18 +0100 (Mon, 10 Mar 2008) | 2 lines changed define FPC_HAS_RESOURCES to FPC_HAS_WINLIKERESOURCES ........ git-svn-id: trunk@10481 -
121 lines
5.8 KiB
XML
121 lines
5.8 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<fpdoc-descriptions>
|
|
<package name="fcl-res">
|
|
|
|
<!--
|
|
====================================================================
|
|
bitmapresource
|
|
====================================================================
|
|
-->
|
|
|
|
<module name="bitmapresource">
|
|
<short>Contains a bitmap resource type</short>
|
|
<descr>
|
|
<p>This unit contains <link id="TBitmapResource"/>, a <link id="resource.TAbstractResource">TAbstractResource</link> descendant specialized in handling resource of type <link id="resource.RT_BITMAP">RT_BITMAP</link>.</p>
|
|
<p>Adding this unit to a program's <var>uses</var> clause registers class <link id="TBitmapResource"/> for type <link id="resource.RT_BITMAP">RT_BITMAP</link> with <link id="resfactory.TResourceFactory">TResourceFactory</link>.</p>
|
|
</descr>
|
|
|
|
<!-- unresolved type reference Visibility: default -->
|
|
<element name="Classes">
|
|
</element>
|
|
|
|
<!-- unresolved type reference Visibility: default -->
|
|
<element name="SysUtils">
|
|
</element>
|
|
|
|
<!-- unresolved type reference Visibility: default -->
|
|
<element name="resource">
|
|
</element>
|
|
|
|
<!-- object Visibility: default -->
|
|
<element name="TBitmapResource">
|
|
<short>Bitmap resource type</short>
|
|
<descr>
|
|
<p>This class represents a resource of type <link id="resource.RT_BITMAP">RT_BITMAP</link>.</p>
|
|
<p>A bitmap resource contents is very similar to a BMP file. However some differences exists, so <link id="resource.TAbstractResource.RawData">RawData</link> is not appropriate if you need to read and write BMP data. Instead, <link id="TBitmapResource.BitmapData">BitmapData</link> property gives access to a BMP file-like stream.</p>
|
|
<remark>This class doesn't allow its type to be changed to anything else than <link id="resource.RT_BITMAP">RT_BITMAP</link>. Attempts to do so result in a <link id="resource.EResourceDescChangeNotAllowedException">EResourceDescChangeNotAllowedException</link>.</remark>
|
|
</descr>
|
|
<seealso>
|
|
<link id="TBitmapResource.BitmapData">BitmapData</link>
|
|
<link id="resource.TAbstractResource.RawData">TAbstractResource.RawData</link>
|
|
</seealso>
|
|
</element>
|
|
|
|
<!-- constructor Visibility: public -->
|
|
<element name="TBitmapResource.Create">
|
|
<short>Creates a new bitmap resource</short>
|
|
<descr>
|
|
<p>Please note that <var>aType</var> parameter is not used, since this class always uses <link id="resource.RT_BITMAP">RT_BITMAP</link> as type.</p>
|
|
</descr>
|
|
</element>
|
|
|
|
<!-- argument Visibility: default -->
|
|
<element name="TBitmapResource.Create.aType">
|
|
<short>Ignored. Can be <var>nil</var>.</short>
|
|
</element>
|
|
|
|
<!-- argument Visibility: default -->
|
|
<element name="TBitmapResource.Create.aName">
|
|
<short>The name of the resource</short>
|
|
</element>
|
|
|
|
<!-- procedure Visibility: public -->
|
|
<element name="TBitmapResource.SetCustomBitmapDataStream">
|
|
<short>Sets a custom stream as the underlying stream for BitmapData</short>
|
|
<descr>
|
|
<p>This method allows the user to use a custom stream as the underlying stream for <link id="TBitmapResource.BitmapData">BitmapData</link>. This is useful when you want a <link id="TBitmapResource"/> to be created from a bmp file for which you have a stream.</p>
|
|
<p><b>Sample code</b></p>
|
|
<p>This code creates a resource containing a bitmap</p>
|
|
<code>
|
|
var
|
|
aName : TResourceDesc;
|
|
aRes : TBitmapResource;
|
|
aFile : TFileStream;
|
|
Resources : TResources;
|
|
begin
|
|
Resources:=TResources.Create;
|
|
aName:=TResourceDesc.Create('MYBITMAP');
|
|
aRes:=TBitmapResource.Create(nil,aName); //type is always RT_BITMAP
|
|
aName.Free; //not needed anymore
|
|
aFile:=TFileStream.Create('mybitmap.bmp',fmOpenRead or fmShareDenyNone);
|
|
aRes.SetCustomBitmapDataStream(aFile);
|
|
Resources.Add(aRes);
|
|
Resources.WriteToFile('myresource.res');
|
|
|
|
Resources.Free; //it destroys aRes as well.
|
|
aFile.Free;
|
|
end;
|
|
</code>
|
|
</descr>
|
|
<seealso>
|
|
<link id="TBitmapResource.BitmapData"/>
|
|
<link id="resource.TAbstractResource.UpdateRawData">TAbstractResource.UpdateRawData</link>
|
|
</seealso>
|
|
</element>
|
|
|
|
<!-- argument Visibility: default -->
|
|
<element name="TBitmapResource.SetCustomBitmapDataStream.aStream">
|
|
<short>The custom stream to use as the underlying <link id="TBitmapResource.BitmapData">BitmapData</link> stream</short>
|
|
</element>
|
|
|
|
<!-- property Visibility: public -->
|
|
<element name="TBitmapResource.BitmapData">
|
|
<short>Resource data as a BMP stream</short>
|
|
<descr>
|
|
<p><link id="TBitmapResource.BitmapData">BitmapData</link> property gives access to resource data in a BMP file-like stream, unlike <link id="resource.TAbstractResource.RawData">RawData</link>.</p>
|
|
<p><link id="TBitmapResource.BitmapData">BitmapData</link> does not create a copy of <link id="resource.TAbstractResource.RawData">RawData</link> so memory usage is generally kept limited.</p>
|
|
<p>You can also set a custom stream as the underlying stream for <link id="TBitmapResource.BitmapData">BitmapData</link> via <link id="TBitmapResource.SetCustomBitmapDataStream">SetCustomBitmapDataStream</link>, much like <link id="resource.TAbstractResource.SetCustomRawDataStream">SetCustomRawDataStream</link> does for <link id="resource.TAbstractResource.RawData">RawData</link>. This is useful when you want a <link id="TBitmapResource"/> to be created from a bmp file for which you have a stream.</p>
|
|
<remark>If you need to access <link id="resource.TAbstractResource.RawData">RawData</link> after you modified <link id="TBitmapResource.BitmapData">BitmapData</link>, be sure to call <link id="resource.TAbstractResource.UpdateRawData">UpdateRawData</link> first. This isn't needed however when resource is written to a stream, since <link id="resource.TResources">TResources</link> takes care of it.</remark>
|
|
</descr>
|
|
<seealso>
|
|
<link id="TBitmapResource.SetCustomBitmapDataStream"/>
|
|
<link id="resource.TAbstractResource.RawData">TAbstractResource.RawData</link>
|
|
<link id="resource.TAbstractResource.UpdateRawData">TAbstractResource.UpdateRawData</link>
|
|
</seealso>
|
|
</element>
|
|
|
|
</module> <!-- bitmapresource -->
|
|
|
|
</package>
|
|
</fpdoc-descriptions>
|