IDE: override build widgetset with BuildWidgetSetXXX

git-svn-id: trunk@20337 -
This commit is contained in:
mattias 2009-06-01 20:41:21 +00:00
parent 338ebe97d4
commit bb13cb1a5c
3 changed files with 31 additions and 12 deletions

View File

@ -86,6 +86,8 @@ begin
// flag that should work with quick build must be set here. // flag that should work with quick build must be set here.
KeepInstalledPackages:={$IFDEF BigIDE}True{$ELSE}False{$ENDIF}; KeepInstalledPackages:={$IFDEF BigIDE}True{$ELSE}False{$ENDIF};
// end of build flags
LazarusRevisionStr:=RevisionStr; LazarusRevisionStr:=RevisionStr;
Application.Title:='Lazarus'; Application.Title:='Lazarus';
Application.Initialize; Application.Initialize;

View File

@ -1178,6 +1178,19 @@ begin
end; end;
begin begin
// When quick rebuilding lazbuild, FPC rebuilds only the lazbuild.lpr, so any
// flag that should work with quick build must be set here.
{$IFDEF BuildWidgetSetWin32} Result:=lpWin32; {$ENDIF}
{$IFDEF BuildWidgetSetWinCE} Result:=lpWinCE; {$ENDIF}
{$IFDEF BuildWidgetSetGTK} Result:=lpGtk; {$ENDIF}
{$IFDEF BuildWidgetSetGTK2} Result:=lpGtk2; {$ENDIF}
{$IFDEF BuildWidgetSetQT} Result:=lpQT; {$ENDIF}
{$IFDEF BuildWidgetSetFPGui} Result:=lpfpGUI; {$ENDIF}
{$IFDEF BuildWidgetSetCarbon} Result:=lpCarbon; {$ENDIF}
{$IFDEF BuildWidgetSetCocoa} Result:=lpCocoa; {$ENDIF}
{$IFDEF BuildWidgetSetNoGui} Result:=lpNoGUI; {$ENDIF}
// free LCL application // free LCL application
FreeAndNil(Forms.Application); FreeAndNil(Forms.Application);
// start our own application // start our own application

View File

@ -135,6 +135,19 @@ const
const const
ExitCodeRestartLazarus = 99; ExitCodeRestartLazarus = 99;
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 implementation
{$I lazconf.inc} {$I lazconf.inc}
@ -196,19 +209,10 @@ end;
function GetDefaultLCLWidgetType: TLCLPlatform; function GetDefaultLCLWidgetType: TLCLPlatform;
begin begin
if WidgetSet<>nil then if (WidgetSet<>nil) and (WidgetSet.LCLPlatform<>lpNoGUI) then
Result:=WidgetSet.LCLPlatform Result:=WidgetSet.LCLPlatform
else begin else
{$IFDEF MSWindows}{$DEFINE WidgetSetDefined} Result:=BuildLCLWidgetType;
Result:= lpWin32;
{$ENDIF}
{$IFDEF darwin}{$DEFINE WidgetSetDefined}
Result:= lpCarbon;
{$ENDIF}
{$IFNDEF WidgetSetDefined}
Result:= lpGtk2;
{$ENDIF}
end;
end; end;
function DirNameToLCLPlatform(const ADirName: string): TLCLPlatform; function DirNameToLCLPlatform(const ADirName: string): TLCLPlatform;