Jump to content

Lars Fosdal

Administrators
  • Content Count

    3504
  • Joined

  • Last visited

  • Days Won

    115

Everything posted by Lars Fosdal

  1. I just did some deshittification and perma-deleted my Reddit account. It followed my Twitter, Facebook, Instagram and Snapchat accounts. I never was on TikTok. Enough with the corporate anti-social media. I'd rather be an anti-social among other anti-socials on a truly social platform like Mastodon.
  2. Lars Fosdal

    Program "hides" behind the others

    Personally, I would be fine with it being in the background while I wait for it to complete the update/restart. At that point - I'd prefer a notification panel that would allow me to refocus the new window manually. I really do not like apps that bring themselves to the foreground - for whatever reason. I am looking at you, configured to start-with-first-login Teams, Outlook, and Discord. If I didn't initiate the starting of the app MANUALLY, I don't want it to grab my focus and keyboard input.
  3. That is probably as good a justification as any other. 🙂
  4. Lars Fosdal

    Upgrading from 11.2 to 11.3

    I second that. I had a lot less issues after I started doing upgrades this way.
  5. It is more a defacto observation - since MDI window styling doesn't happen in Windows 10 and 11. Ref. https://github.com/dotnet/winforms/issues/3691 which has a series of interesting comments. So - given it has been like this for 10 years - is it likely to be fixed?
  6. @David Heffernan 20ish years ago, we replaced it with a toolbar-like main window and floating windows with "magnetic" edges. But - the floating approach became less sexy when you no longer could control the window size/position of other apps. Today, it would probably have been based on larger windows, with multi layer panels/grids. It depends a lot on your use case. The current apps - which are WMS related - use a navigator sidebar/menu and "virtual tabs". The drawback of MDI was a lot of space went to borders and title bars. You could work around that, but why do that when you can just as well do panels/grids/splitters? Also - what if MS decides to yank out MDI completely? It is, after all, deprecated.
  7. Especially when you consider that MS has abanoned it themselves, not updating the styling for MDI. I wrote a successful MDI app back thirty years ago. I would not have chosen MDI for that app today.
  8. Why not go ASP.NET Core for microservices? Tons of tooling, scalability, containers, cross-platform, etc.
  9. Do you use LiveBindings? I don't.
  10. I stopped asking or answering questions on SO years ago due to the moderation. Life is too short to bother with the aggravation.
  11. Since Seattle https://docwiki.embarcadero.com/RADStudio/Alexandria/en/What's_New_in_Seattle
  12. From https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Extending_the_IDE_Using_the_Tools_API The 32-bit IDE is already large address space enabled.
  13. Lars Fosdal

    ChatGPT Converted Unit

    Chat in, shit out?
  14. Lars Fosdal

    Find String in TstringList

    Right, so it should be set to false to match the original code samples. There is something odd in the original samples. If I copy the text, and paste it into a code block here - I get artifacts in other.cff - note the red dots. Makes me wonder if the artifacts also exist in the original code - in which case it should fail.
  15. Lars Fosdal

    Find String in TstringList

    Isn't that case sensitive?
  16. Lars Fosdal

    Find String in TstringList

    Have you checked the data in the string list for non-printable characters around the .extensions?
  17. Lars Fosdal

    Find String in TstringList

    The first three can fail because you are resetting Result for each entry, meaning only the last line will decide the result. Result := False; for var s in StrList do begin Result := Result or (SameText(s, 'some.pds') or SameText(s, 'other.cff')); if Result then Break; end; Is there whitespace in the strList entries? If there is - Trim. Why the double search in ContainsStr? Is that the AnsiStrings.SameString or the SysUtils.SameString?
  18. Lars Fosdal

    Find String in TstringList

    Perhaps you should show us the search code you use?
  19. Lars Fosdal

    Unicode normalization

    Is there Unicode support in @Alexander Sviridenkov's https://delphihtmlcomponents.com/index.html ?
  20. Lars Fosdal

    Fastreports

    https://www.fast-report.com/en/products/report-for-delphi-fastreport-feature-matrix/
  21. Lars Fosdal

    Loop a Delay in a thread??

    WaitForMultipleObjects or WaitForSingleObject or the ..Ex versions allows waiting with a minimum of looping, i.e. less CPU usage. Examples of usage can be found f.x. in OmniThreadLibrary.
  22. We also used SVN for nearly a decade before switching to Git. We do not have any regrets, but we are grateful for a lot of the new possibilities. We chose GitKraken as GUI, but Fork was runner up. I can't remember what pulled us in direction of GitKraken. This "Git, Demystified" video from Delphicon 2023 is an awesome intro to Git.
  23. Lars Fosdal

    How many people use Delphi?

    @Fr0sT.Brutal I use VSCode a lot to search source code and structured data (XML, JSON), and I've got 47 plugins installed. I find it to be pretty snappy for my use, TBH.
  24. Lars Fosdal

    FMX mobile database

    @omnibill Don't access a DB directly over the internet. It exposes the DB and eventual vulnerabilities It binds your UI to the current DB model, instead of a general data model, making it harder to make changes to the DB without breaking the UI Use a REST server to hide the underlying database and communicate with API structures (JSON, BSON, XML, etc) adapted to your general data model It hides the actual structure of the DB - such as unique integers used for relationships, but which has no information content It prevents SQL injection attacks Using proper authentication models (OAUTH2), you avoid exposing DB internal users It allows server side sanity checks of incoming content It makes outgoing content access control more flexible You can allow third party to access your APIs You can change the DB on the backside of the API You can scale the DBs on the backside of the APIs
×