-
Content Count
3521 -
Joined
-
Last visited
-
Days Won
116
Lars Fosdal last won the day on July 4
Lars Fosdal had the most liked content!
Community Reputation
1865 ExcellentTechnical Information
-
Delphi-Version
Delphi 12 Athens
Recent Profile Visitors
-
Did you override the HintWindowClass before Application.Run is executed? https://docwiki.embarcadero.com/Libraries/Athens/en/Vcl.Controls.THintWindowClass
-
Passing an SQL into a REST Request, and returning Result in JSON Dataset?
Lars Fosdal replied to Robert Gilland's topic in Network, Cloud and Web
Short answer: Yes Long answer: Yes, but don't! It would put your SQL database at risk. Instead, build a proper REST API as - it hides the underlying database - it allows you to change the underlying database operations without changing the client A REST API done right is far more secure and robust. -
Is it possible to implement floating/fully custom Dropdown Menus?
Lars Fosdal replied to araujoarthur's topic in VCL
TMS has a new customizable context menu which is cross platform. https://www.tmssoftware.com/site/blog.asp?post=2364 -
Share a data between two units in dynamic loaded BPL.
Lars Fosdal replied to CRO_Tomislav's topic in VCL
Isolate your business logic from the UI. Use an intermediate class to pass the data around. -
If you currently are a Delphi/RAD Studio subscriber, you can request access to the beta if you didn't already get an invite. As per the link in the starting post of this thread: Closing this thread.
-
Share a data between two units in dynamic loaded BPL.
Lars Fosdal replied to CRO_Tomislav's topic in VCL
I would decouple the action by having a handler. unit Druga; interface uses Dialogs; function Demo:boolean; type TOnShowMessage = reference to procedure; var OnShowMessage: TOnShowMessage; implementation // No circular ref here function demo: boolean; begin if Assigned(OnShowMessage) then OnShowMessage else raise Exception.Create('Someone forgot to set the OnShowMessage handler'); end; initalization OnShowMessage := nil; end. In Prva, I'd connected the handler in f.x. FormCreate; procedure TForm1.FormCreate(sender: TObject); begin Druga.OnShowMessage(Self.MyShowMessage); end; procedure TForm1.MyShowMessage; begin ShowMessage(Form1.Edit1.Text); end; This avoids the circular unit ref, and since you initialize the handler from the main form, it shouldn't matter if the bpl is dynamically loaded? If you want to, you can of course also add parameters to the handler to display a text generated in unit Druga or have multiple handlers for different uses. -
programmatically determine the edition of RAD Studio 12.3
Lars Fosdal replied to dmitrybv's topic in Delphi IDE and APIs
@dmitrybv I assume that in your real code, you retrieve the correct installation paths from registry? Edit: Also, see this for executing shell commands: -
@RDP1974 Dave is correct. Please remove your comment.
-
Delphi bug reports or feature requests to "vote"/comment for (important, fatal etc)/
Lars Fosdal replied to Tommi Prami's topic in Delphi IDE and APIs
It is possible to add a comment to the issue, but not sure if that would be more hurtful than helpful. -
Define conditional symbol in .dpr
Lars Fosdal replied to Vandrovnik's topic in RTL and Delphi Object Pascal
You can also define symbols in an environment variable, but then they apply to ALL projects you compile. dcc_define=Test;MagicSymbol;SomeOtherDefine dcc_define being the magic environment variable name which defines the symbols. Example: This one defines "foslar" - so that I can include code that I am working on but which doesn't compile in the project and commit/push to git without breaking the build server or messing up for other users. {$ifdef foslar} procedure DoSomething begi What was I thinking? {$endif} -
Version Control.
-
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
TEventually<T> 😛 -
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
But you are still blocking, if looping around a wait. Are you going to put a ProcessMessages in that loop? -
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
Wait = Block. Events = Asynch w/o block. -
I have a 5K 40" Lenovo, that can be split into two "virtual" displays. I can set up different resolutions and scalings on those when I need to test HighDPI. Generally speaking, the test results are so disheartening that I still stick with 100% scaling in the OS, and use BDS in DPI-Unaware mode.