mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-05 22:17:59 +02:00

Organize uses-sections by package so that dependencies can be easier seen. git-svn-id: trunk@53711 -
100 lines
1.9 KiB
ObjectPascal
100 lines
1.9 KiB
ObjectPascal
{
|
|
*****************************************************************************
|
|
This file is part of the Lazarus Component Library (LCL)
|
|
|
|
See the file COPYING.modifiedLGPL.txt, included in this distribution,
|
|
for details about the license.
|
|
*****************************************************************************
|
|
|
|
Contains the non-GUI dependent parts of LCL Platform definition.
|
|
}
|
|
|
|
unit LCLPlatformDef;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
SysUtils;
|
|
|
|
type
|
|
TLCLPlatform = (
|
|
lpGtk,
|
|
lpGtk2,
|
|
lpGtk3,
|
|
lpWin32,
|
|
lpWinCE,
|
|
lpCarbon,
|
|
lpQT,
|
|
lpfpGUI,
|
|
lpNoGUI,
|
|
lpCocoa,
|
|
lpCustomDrawn
|
|
);
|
|
|
|
TLCLPlatforms = set of TLCLPlatform;
|
|
|
|
function DirNameToLCLPlatform(const ADirName: string): TLCLPlatform;
|
|
function GetBuildLCLWidgetType: TLCLPlatform;
|
|
|
|
const
|
|
LCLPlatformDirNames: array[TLCLPlatform] of string = (
|
|
'gtk',
|
|
'gtk2',
|
|
'gtk3',
|
|
'win32',
|
|
'wince',
|
|
'carbon',
|
|
'qt',
|
|
'fpgui',
|
|
'nogui',
|
|
'cocoa',
|
|
'customdrawn'
|
|
);
|
|
|
|
LCLPlatformDisplayNames: array[TLCLPlatform] of string = (
|
|
'gtk (deprecated)',
|
|
'gtk 2',
|
|
'gtk3 (alpha)',
|
|
'win32/win64',
|
|
'wince',
|
|
'carbon',
|
|
'qt',
|
|
'fpGUI (alpha)',
|
|
'NoGUI',
|
|
'cocoa (alpha)',
|
|
'customdraw (alpha)'
|
|
);
|
|
|
|
var
|
|
// set by lazbuild.lpr and used by GetDefaultLCLWidgetType
|
|
BuildLCLWidgetType: TLCLPlatform =
|
|
{$IFDEF MSWindows}{$DEFINE WidgetSetDefined}
|
|
lpWin32;
|
|
{$ENDIF}
|
|
{$IFDEF darwin}{$DEFINE WidgetSetDefined}
|
|
lpCarbon;
|
|
{$ENDIF}
|
|
{$IFNDEF WidgetSetDefined}
|
|
lpGtk2;
|
|
{$ENDIF}
|
|
|
|
|
|
implementation
|
|
|
|
function DirNameToLCLPlatform(const ADirName: string): TLCLPlatform;
|
|
begin
|
|
for Result:=Low(TLCLPlatform) to High(TLCLPlatform) do
|
|
if CompareText(ADirName,LCLPlatformDirNames[Result])=0 then exit;
|
|
Result:=lpGtk2;
|
|
end;
|
|
|
|
function GetBuildLCLWidgetType: TLCLPlatform;
|
|
begin
|
|
Result:=BuildLCLWidgetType;
|
|
end;
|
|
|
|
end.
|
|
|