mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-07-20 03:26:16 +02:00
235 lines
6.6 KiB
XML
235 lines
6.6 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<fpdoc-descriptions>
|
|
<package name="lcl">
|
|
<!--
|
|
====================================================================
|
|
LCLPlatformDef
|
|
====================================================================
|
|
-->
|
|
<module name="LCLPlatformDef">
|
|
<short>Contains routines and types used in LCL Platform definitions.</short>
|
|
<descr>
|
|
<p>
|
|
<file>lclplatformdef.pas</file> contains types, constants, variables and
|
|
routines used in LCL platform definitions.
|
|
</p>
|
|
<p>
|
|
This file is part of the Lazarus Component Library (<b>LCL</b>).
|
|
</p>
|
|
</descr>
|
|
|
|
<element name="TLCLPlatform">
|
|
<short>Represents the supported platforms for the LCL.</short>
|
|
<descr/>
|
|
<seealso>
|
|
<link id="LCLPlatformDirNames"/>
|
|
<link id="TLCLPlatforms"/>
|
|
</seealso>
|
|
</element>
|
|
<element name="TLCLPlatform.lpGtk">
|
|
<short>GIMP ToolKit.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpGtk2">
|
|
<short>GTK version 2.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpGtk3">
|
|
<short>GTK version 3.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpWin32">
|
|
<short>Windows API (née Win32 API).</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpWinCE">
|
|
<short>Windows CE.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpCarbon">
|
|
<short>macOS Carbon API.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpQT">
|
|
<short>QT version 4.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpQt5">
|
|
<short>QT version 5.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpfpGUI">
|
|
<short>FreePascal GUI.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpNoGUI">
|
|
<short>No GUI.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpCocoa">
|
|
<short>macOS Cocoa API.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpCustomDrawn">
|
|
<short>Custom-drawn.</short>
|
|
</element>
|
|
<element name="TLCLPlatform.lpMUI">
|
|
<short>Magic User Interface (MUI) for AmigaOS, AROS.</short>
|
|
</element>
|
|
|
|
<element name="TLCLPlatforms">
|
|
<short>Set type used to store TLCLPlatform enumeration value(s).</short>
|
|
<descr/>
|
|
<seealso>
|
|
<link id="TLCLPlatform"/>
|
|
</seealso>
|
|
</element>
|
|
|
|
<element name="DirNameToLCLPlatform">
|
|
<short>Gets the platform enumeration value for the specified directory name.</short>
|
|
<descr>
|
|
<p>
|
|
DirNameToLCLPlatform is a TLCLPlatform function used to get the platform
|
|
identifier for the source directory specified in the ADirName argument. It is
|
|
assumed that ADirName contains only the directory name relative to
|
|
($LazarusDir)/lcl/interfaces without path delimiters. In other words, a value
|
|
like: 'win32', 'qt5', or 'gtk3'.
|
|
</p>
|
|
<p>
|
|
DirNameToLCLPlatform performs a case-insensitive comparison between ADirName
|
|
and each of the values in the LCLPlatformDirNames constant. The return value
|
|
is the enumeration value which identifies the platform and widgetset for the
|
|
specified directory.
|
|
</p>
|
|
<p>
|
|
If a matching value in LCLPlatformDirNames is not found, the return value is
|
|
set to lpGtk2.
|
|
</p>
|
|
<p>
|
|
DirNameToLCLPlatform is called from the <file>lazbuild</file> utility when a
|
|
widgetset override has been provided on the command line.
|
|
</p>
|
|
</descr>
|
|
<seealso>
|
|
<link id="LCLPlatformDirNames"/>
|
|
<link id="TLCLPlatform"/>
|
|
</seealso>
|
|
</element>
|
|
<element name="DirNameToLCLPlatform.Result">
|
|
<short>TLCLPlatform enumeration value for the given directory name.</short>
|
|
</element>
|
|
<element name="DirNameToLCLPlatform.ADirName">
|
|
<short>Directory name to convert to a TLCLPlatform enumeration value.</short>
|
|
</element>
|
|
|
|
<element name="GetBuildLCLWidgetType">
|
|
<short>Gets the value in the BuildLCLWidgetType variable.</short>
|
|
<descr>
|
|
<p>
|
|
Used in the <var>lazbuild</var> utility to get the target widgetset used for the
|
|
various platform defines.
|
|
</p>
|
|
</descr>
|
|
<seealso>
|
|
<link id="BuildLCLWidgetType"/>
|
|
<link id="TLCLPlatform"/>
|
|
</seealso>
|
|
</element>
|
|
<element name="GetBuildLCLWidgetType.Result">
|
|
<short>TLCLPlatform enumeration value for the platform.</short>
|
|
</element>
|
|
|
|
<element name="LCLPlatformDirNames">
|
|
<short>Array constant with the directory names for supported LCL platforms.</short>
|
|
<descr>
|
|
<p>
|
|
LCLPlatformDirNames is a array of Strings with directory names for the
|
|
platforms supported for the LCL. The directory names are relative to the
|
|
($LazarusDir)/lcl/interfaces base path and should not include path delimiters.
|
|
Values in the array are indexed by TLCLPlatform enumeration values.
|
|
</p>
|
|
<p>
|
|
For example:
|
|
</p>
|
|
<code>
|
|
// var SDir, SName: String;
|
|
|
|
// SDir contains 'win32'
|
|
SDir := LCLPlatformDirNames[lpWin32];
|
|
|
|
// SName contains 'win32/win64'
|
|
SName := LCLPlatformDisplayNames[lpWin32];
|
|
</code>
|
|
<p>
|
|
Use LCLPlatformDisplayNames to get the display name for a given TLCLPlatform
|
|
enumeration value.
|
|
</p>
|
|
</descr>
|
|
<seealso>
|
|
<link id="LCLPlatformDisplayNames"/>
|
|
<link id="TLCLPlatform"/>
|
|
</seealso>
|
|
</element>
|
|
|
|
<element name="LCLPlatformDisplayNames">
|
|
<short>Array constant with the display names for supported LCL platforms.</short>
|
|
<descr>
|
|
<p>
|
|
LCLPlatformDisplayNames is a array of Strings with display names for the supported
|
|
LCL platforms. Values in the array are indexed by TLCLPlatform enumeration values.
|
|
For example:
|
|
</p>
|
|
<code>
|
|
// var SDir, SName: String;
|
|
|
|
// SDir contains 'win32'
|
|
SDir := LCLPlatformDirNames[lpWin32];
|
|
|
|
// SName contains 'win32/win64'
|
|
SName := LCLPlatformDisplayNames[lpWin32];
|
|
</code>
|
|
<p>
|
|
Use LCLPlatformDirNames to get the directory name for a given TLCLPlatform
|
|
enumeration value.
|
|
</p>
|
|
</descr>
|
|
<seealso>
|
|
<link id="LCLPlatformDirNames"/>
|
|
</seealso>
|
|
</element>
|
|
|
|
<element name="BuildLCLWidgetType">
|
|
<short>Gets the TLCLPlatform enumeration value for the current platform.</short>
|
|
<descr>
|
|
<p>
|
|
BuildLCLWidgetType is a TLCLPlatform variable with an enumeration value which
|
|
identifies the widgetset for the current platform. Its value is determined by
|
|
the compiler define active when the LCL was built. For example:
|
|
</p>
|
|
<dl>
|
|
<dt>MSWindows</dt>
|
|
<dd>Sets the variable to lpWin32.</dd>
|
|
<dt>darwin</dt>
|
|
<dd>
|
|
Sets the variable to lpCarbon for systems using the PowerPC processor.
|
|
Otherwise, the variable is set to lpCocoa.
|
|
</dd>
|
|
<dt>HASAMIGA</dt>
|
|
<dd>Sets the variable to lpMUI.</dd>
|
|
</dl>
|
|
<p>
|
|
For other platforms where a specific compiler define was not set, the
|
|
variable is set to lpGtk2.
|
|
</p>
|
|
<p>
|
|
The value in BuildLCLWidgetType is used in the <file>lazbuild</file> utility
|
|
to get the target widgetset used for the various platform defines, and when
|
|
GetDefaultLCLWidgetType is called from the LCL interface.
|
|
</p>
|
|
</descr>
|
|
<version>
|
|
For LCL version 2.2 and higher, the default widgetset for the macOS (Darwin)
|
|
platform uses the Cocoa (lpCocoa) API. For versions prior to 2.2, the default
|
|
widgetset used was the Carbon (lpCarbon) API. For Macs using the PowerPC
|
|
processor, the widgetset continues to use the Carbon (lpCarbon) API.
|
|
</version>
|
|
<seealso>
|
|
<link id="TLCLPlatform"/>
|
|
<link id="#lcl.interfacebase.GetDefaultLCLWidgetType">GetDefaultLCLWidgetType</link>
|
|
</seealso>
|
|
</element>
|
|
|
|
</module>
|
|
<!-- LCLPlatformDef -->
|
|
</package>
|
|
</fpdoc-descriptions>
|