Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 07/17/23 in Posts

  1. dummzeuch

    How do I upgrade an old 2007 project ?

    If automatically updating the project (by loading it into the Delphi 10.3 IDE) fails, your best bet is to create a new VCL project and add all units from the original project to it. Then copy all the settings (especially the search path) from the Delphi 2007 project to the new project and fix any problems afterwards. Make sure you retain a copy of the original project so you can always look up any settings. I hope yon still have got Delph 2007 around? Otherwise it might be a bit inconvenient. You do have updated versions of all your 3rd party components or at least their source code, do you? Otherwise you are out of luck. Note that in Delphi 2007 there was no such thing as a base configuration but only one configuration for Debug and one for Release builds. You might want to figure out which settings you want to move to the base configuration an which ones to keep in Debug / Release configurations. Another option, if feasible, might be to upgrade the project through several intermediate Delphi versions since they usually can work well with projects from their immediate predecessor. That would of course require installations of several intermediate Delphi versions, which I don't know if you have them.
  2. Alexander Halser

    Detecting MouseUp When Outside The Form

    FMX doesn't auto-capture the control the mouse went down on. But you can do this manually, either by TForm.MouseCapture (that's for the form itself) or with TForm.SetCaptured(AnyControl) - this is for a particular control on the form. procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single); begin if (Sender <> self) then SetCaptured(TControl(Sender)) else MouseCapture; memo1.lines.add(Sender.Classname + ' mouse down'); end; procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single); begin ReleaseCapture; memo1.lines.add(Sender.Classname + ' mouse up'); end; Setting the mouse capture is important if you do anything in MouseDown that interacts with the control being clicked. Without capture, the user may click (mouse-down) on Panel1, move it, and release it on Panel2. The MouseUp will come from Panel2 in this case, or no mouse-up at all. By setting the mouse capture, you are guaranteed that you'll receive a MouseUp from that control that is being captured. VCL does this automatically, FMX does not. If you don't need the MouseDown on form level, but just for particular controls, use TControl.AutoCapture instead.
  3. You showed the features you want your application have. Good. But what can you do and what can't you do? To answer to your exact question: Yes, it is possible to do it with Delphi 11.2 and free components/services/API's.
  4. Dave Nottage

    Google Sign-In

    Is now live! https://github.com/DelphiWorlds/Kastri/tree/master/Demos/GoogleSignIn
  5. Uwe Raabe

    inherited dynamic message handlers

    The docs are pretty clear about it (Message Methods) :
  6. Rickard Johansson

    LSP Client

    This component was created for use in RJ TextEd to add language server support. It has been tested with several language servers https://www.rj-texted.se/Forum/viewforum.php?f=23. The client and code is available on GitHub https://github.com/rickard67/LSP-Pascal-Library The LSP client was written to make communication with language servers easier. You can use the client to read or send notifications and requests to and from the server. Handle notifications and request from the server using events. The client component support both stdio and tcp/ip socket communication. The client only works in Delphi. I haven't had time to make it compatible with Lazarus/Free pascal yet.
×