View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0029928||Lazarus||IDE||public||2016-03-30 11:39||2020-07-18 00:34|
|Reporter||Mike Thompson||Assigned To||Mattias Gaertner|
|Product Version||1.7 (SVN)|
|Summary||0029928: Project Options - Additions and Overrides - Set LCLWidgetType overrides Tools - Configure "Build Lazarus" - LCL widget type|
|Description||Use Project Options, navigate to Additions and Overrides|
Set "LCLWidgetType" (I added mine to "Stored in IDE (environmentoptions.xml))
From here on, any attempt to change the Lazarus IDE to a different widgetset than the one defined in Project Options will fail.
This persists, even after the offending Addition and Override is deleted. Following the deletion, there is no longer any clear idea of where the offending LCLWidgetSet is defined, leading to confusion.
|Steps To Reproduce||See Description|
|Additional Information||I presume that the Project Options "Additions and Overrides" is only supposed to apply to the current project, in which case the issue is that the IDE rebuild should completely ignore this value.|
I have only tested this on Lazarus Trunk (svn 52087), and under Windows 8.1
|Tags||No tags attached.|
|Fixed in Revision|
this is incredible.
I have seen this same bug on macOS - and thought it is my local issue.
- current project's widgetset is Cocoa
- IDE widgetset is Carbon, target cpu= i386
- and I do Build Lazarus ==> it builds the __Cocoa_ IDE
maybe this code is too complex?
function GetEffectiveLCLWidgetType: string;
if OverrideLCLWidgetType<>'' then
else if FBuildTarget<>nil then begin
if (Result='') or (SysUtils.CompareText(Result,'default')=0) then
it may read target widgetset from not needed place.
Additions and Overrides apply to the IDE as well. This is by design.
Eventually the IDE should work like a Lazarus project.
I will add a warning, if there is a different widgetset in the two dialogs.
I know that. I was asking on ML in January: http://lists.lazarus-ide.org/pipermail/lazarus/2018-January/233683.html
I don't understand why it is by design. I'd like to have Laz. at Qt4 and I sometimes test projects in Qt5 or GTk2. If I rebild Lazarus at this point, I have unwanted widgeset.
Instead of warning, I would imagine new item in combo box: Tools -> Configure Build Lazarus -> LCL widget type: "Follow Project Options" or checkbox "Ignore Project Options" or so.
Quote: "Eventually the IDE should work like a Lazarus project."
But the IDE has its own project: ide/lazarus.lpi (even if that can not yet be compiled).
So surely only settings in that project should affect the IDE build?
|2016-03-30 11:39||Mike Thompson||New Issue|
|2016-03-30 11:40||Mike Thompson||Additional Information Updated||View Revisions|
|2018-05-25 10:20||CudaText man||Note Added: 0108526|
|2018-05-25 10:20||CudaText man||Note Edited: 0108526||View Revisions|
|2018-05-28 15:06||CudaText man||Note Added: 0108559|
|2018-08-13 12:00||Mattias Gaertner||Note Added: 0110010|
|2018-08-13 12:00||Mattias Gaertner||Assigned To||=> Mattias Gaertner|
|2018-08-13 12:00||Mattias Gaertner||Status||new => assigned|
|2018-08-13 13:09||Vojtech Cihak||Note Added: 0110012|
|2018-10-15 19:43||Juha Manninen||Relationship added||related to 0034417|
|2020-07-18 00:02||Juha Manninen||Relationship added||related to 0031594|
|2020-07-18 00:34||Martin Friebe||Note Added: 0124136|