Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 07/03/24 in Posts

  1. That post is extremely difficult to understand. Documentation is here: https://docwiki.embarcadero.com/RADStudio/Athens/en/Methods_(Delphi)#Overriding_versus_Hiding No, the purpose of reintroduce is to suppress the compiler's warning that you are hiding the inherited method. It is a way for you to tell the compiler that you know what you are doing and to not bother you about it.
  2. Patrick PREMARTIN

    Cross platform color picker and palette library

    In that case, perhaps adding https://www.whocanuse.com/ could be fun ?
  3. I guess there are people with differing levels of ability. And while I don't intend to post links to all videos, today's video is a real-world example of adding code to a word search game and squashing those pesky bugs along the way! Hopefully, it will inspire you to tackle your own coding challenges and share your creations in the comments! https://youtu.be/K1iJIYtBPaw
  4. Jim McKeeth

    Cross platform color picker and palette library

    I made the different color system boxes collapsible. When I add more I'll default to collapsing the less common ones, and make it based on preference. Yes it is. I'm working on named colors and more palette options now.
  5. Dave Novo

    Parallel.For optimization

    There is also FastMM5. However, I would suggest looking at your code and figuring out a way to allocate required memory (even if you have to overallocate) and minimize/eliminate heap memory allocations during the threading code.
  6. This is still a work in progress, but I'm really happy with how it is going so far so I thought I would share... https://github.com/jimmckeeth/FMXColorDialog There are a few custom components in the dialog, and there is a palette code library, plus there is a new CMYK color record. Just fun project to mess around with on vacation. FMXColorDialogSample_PseA8aEaZC.mp4
  7. Anders Melander

    Parallel.For optimization

    I don't know how SamplingProfiler works but I would think that it should be able to show you the call stack leading to NtDelayExecution. That should tell you from where and why it's being called.
  8. Uwe Raabe

    Minor Uninstaller bug

    While I have the same problem when using alternative registry keys (instead of BDS), I thought of creating a separate management tool, but as ever so often spare time is limited and valuable.
  9. Uwe Raabe

    Minor Uninstaller bug

    This usually happens when MMX has been installed for all users, i.e. as an admin. That will use HKLM for the Experts entry, which will be copied to HKCU when a user starts Delphi. As the installer didn't add these registry entries, it refuses to remove them when uninstalling (this is standard behavior of InnoSetup). Actually, these kind of quirks are the reason why Install for me only is recommended. If you are the only user at the system it doesn't matter at all and if you are not, each user will have its own copy of MMX installed (they can even have different versions). I always try to clean up as neatly as possible when uninstalling, but I didn't find a reliable way to do that without jumping through hoops with the registry and several user folders.
  10. David Hoyle

    Problems closing IDE

    I have a lot of plugins installed in my IDE, many of my own + other like GExperts and MMX. I found my IDE became more stable after disabling all the Parnassus plugins. Haven't had the time to spend a day tracking down the issues to report a bug.
  11. dummzeuch

    Problems closing IDE

    Exceptions on shutdown are particularly difficult to track down because lots of code gets executed at that time and not necessarily in the expected order. IDE plugins use the Open Tools API which consists of a set of interfaces which all go out of scope on shutdown. On top of that some plugins hack into the inner workings of the IDE to fix bugs, add functionality or change the UI (GExperts and cnwizards both do that). If you have several plugins installed they might also interfere with each other. You can always run the IDE itself in the debugger and hope that in the case of an exception the call stack might give you some clues. But don't hold your breath, I have tried that for years and it rarely helped. Having said that: I know that using the GExperts code formatter can cause access violations later on in the code editor or when exiting the IDE. This did not start when the code formatter was added to GExperts but already happened with the original DelFor expert from Egbert van Nes. Unfortunately these exceptions do not happen in the GExperts source code but somewhere in the IDE, so even in the debugger I can only see the assembly code in the CPU window. I could also create them sometimes by simply copying and pasting large amounts of code, so I think it is not actually the code formatting that causes the problem but replacing the text of the whole editor file multiple times. There might be some background processing that gets confused by this operation. But I found no reliable way to reproduce them.
×