Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 08/15/20 in all areas

  1. Anders Melander

    Is interposer class really best to customize TPanel.Paint?

    If you use interposers then you don't need all that. You just declare the interposer and use the unit where it's declared (or declare it in the unit where you use it). That's the point of it: You don't need to change the existing forms and often not even the code. When I use interposers to fix bugs in existing components (mostly VCL), or alter their behavior, I place the interposer in a separate unit and use that. When I need to alter a few controls on a single form I just declare the interposer in that forms unit. Problem solved, next case. I'm not saying one shouldn't use proper design-time registered components, I still consider interposers somewhat of a hack, but given the hassle of maintaining design-time packages across multiple projects and versions, interposers are a blessing. In order to remove the need for interposer classes Delphi would need: A package management system that allowed us the define per project design-time packages. The current project package configuration doesn't work. It still operate on a global package list. A mechanism to redirect the class resolver when forms are streamed. Since it already uses a global class registry when streaming a form it shouldn't be that hard to implement. I do wish the VCL had an official mechanism to solve the same problems that interposer does - but it doesn't.
  2. David Heffernan

    System.GetMemory returning NIL

    Premature optimisation
  3. Arnaud Bouchez

    System.GetMemory returning NIL

    Delphi MM (FastMM4) is just a wrapper around the OS API for big blocks. No benefit of calling direclty the OS function, which is system-specific, and unsafe. Just use getmem/fremem/reallocmem everywhere.
  4. That's me The only times I've had to use Git from the command line is when Git has f*cked something up (yes, I blame it on Git ). Git is a powerful tool but when you shoot yourself in the foot with it it leaves a rather large hole. I can recommend the Atlassian Git tutorials even for those not using Atlassian tools. Most of the tutorials are tool agnostic. https://www.atlassian.com/git
  5. It is something I created myself with Delphi 10.3. In the past I used a tool named MetaFileExplorer, but it always crashed on some of the files I need to handle. In a first step I tried to fix that bug in the C++ code, but finally decided to create my own EMF explorer using Delphi. It is not public available; and is far from complete (it only handles ~50% of all possible EMR commands; mainly what the VCL Graphics uses when painting on Canvas).
  6. ConstantGardener

    Database for Cloud and Offline

    TMS Echo
  7. For those struggling with the git commandline, this is a good intro using it Also, Using windows terminal with powershell core makes it so much nicer https://www.hanselman.com/blog/HowToMakeAPrettyPromptInWindowsTerminalWithPowerlineNerdFontsCascadiaCodeWSLAndOhmyposh.aspx
  8. Not sure you missed or ignored it but I'll throw this in here for completeness and because it's free: Git Extensions.
×