Jump to content

dummzeuch

Members
  • Content Count

    2857
  • Joined

  • Last visited

  • Days Won

    101

Everything posted by dummzeuch

  1. dummzeuch

    Blogged : Introducing DPM - a Package Manager for Delphi

    What David said! My library path only contains libraries that were installed together with the IDE, and I even remove some of these (e.g. Indy) because I update to newer versions. Everything else goes to the project's search path.
  2. dummzeuch

    can you reference unit name in code?

    Shouldn't that be: class procedure TLog.This(const Msg: string); begin LogThis(UnitName, Msg); end;
  3. Please file a feature request on sourceforge if you think it important enough.
  4. Unfortunately there currently is no code in GExperts to react to mouse events in the editor (at least I'm not aware of any). So this would not be a simple extension based on existing mechanisms, but has to be done from scratch, possibly different for all supported versions and tested accordingly. Feel free to file it as a feature request, but don't hold your breath. Did you submit it as a feature request to embarcadero? They would have it much easier to implement it.
  5. We definitely have different views on what common practice (or rather: good practice) means. We also have different views on effiicent communication. Let's end the discussion now. It leads nowhere.
  6. I'm not saying it didn't work. I actually have no idea whether it worked because I never tried it. If you say, it did, I believe you. It's simply bad coding practice to use global variables in general and in particular for creating side effects (look it up, it means something different than you think) like you did. If a procedure needs additional parameters, why not simply pass them? Remember when I said that your latest change (the one that added the web search context menu entry) didn't compile because two variables were not declared? If you had changed the procedure FilterStringList so it required an additional parameter it wouldn't have compiled either but I would have gotten a strong hint that there was another change in another unit and would have looked for it. But as it was, those missing variable declarations could have been: local variables unit global variables fields of the class global variables from any unit that is used by this unit How could I have known? So I inspected the code and saw that they were used in several methods. That usually means that they are declared as fields of the class. I added that declaration and everything compiled fine. But since I was missing important changes from a different unit the code for multi word filtering didn't work. I'm sorry if I have offended you. As I said: Politeness is not one of my strengths.
  7. dummzeuch

    Why not be in GExperts

    But why should it? There is already Daniel's plugin.
  8. dummzeuch

    Inline variable formatting

    I am still trying to get the formatter to handle this correctly: function RegisterClipboardFormatW(lpszFormat: PWideChar): UINT; stdcall; external user32 Name 'RegisterClipboardFormatW'; Currently it does not indent the second line and it's much more complex than it seems to get this right.
  9. I haven't seen any difference. What exactly did you do?
  10. implemented in revision #2911
  11. dummzeuch

    Uses Clause Manager improved: Filter units with multiple words!

    implemented in revision #2908
  12. Implemented in revision #2910
  13. dummzeuch

    Uses Clause Manager improved: Filter units with multiple words!

    OK, I went back to look at your changes in chronological order: The idea is nice, but the implementation - how do I say that without being rude? - suboptimal. Creating a global MultFilter: TStringList variable in GX_GenericUtils which is only used in FilterStringList and if assigned means that the filter parameter will be ignored is not just a code smell, it stinks. Why not have a separate function for this and pass the string list as a parameter to it? Especially since the string list is being populated every time the user enters a new character.
  14. Again, nice idea but the implementation is - remember, I'm trying to be polite (*1) - suboptimal. You introduced yet another global variable and even a not intended side effect: What if the user has entered a multi word unit filter and then switches to the identifier tab? Oh, you added a workaround for this design flaw in the form itself? I'm going to reimplement this differently because I like the idea. (*1: Me being polite? There are people who think that impossible. I have to agree, I'm not good at that.)
  15. Not sure this would be better. Just my assumption was wrong. Ideally I would prefer patches for single features.
  16. I was assuming your changes were cumulative. Apparently they are not.
  17. Also, the multiple word filter does not work in this version (I tried your example of "utils system" which gives me an empty list.) Am I right in assuming that this is the latest version of your modified sources?
  18. Unfortunately they don't compile: [dcc32 Error] GX_UsesExpert.pas(877): E2003 Undeclared identifier: 'MultiFilter' [dcc32 Error] GX_UsesExpert.pas(878): E2003 Undeclared identifier: 'IdMultiFilter' edit: Apparently these are TStringList and since they are referenced in multiple methods, they must be fields. If I declare them thus, it compiles for Delphi 10.3.3. Havn't looked at the code yet.
  19. dummzeuch

    StandAlone version of the ProcedureList expert

    Yeah, could be useful.
  20. I just found code in the GExperts code formatter that treats the 'absolute' keyword in the same way in variable and type declarations. I know of only one way absolute can be used: procedure Bla; var Var1: array[0..4] of byte; Var2: integer absolute Var1; begin Var2 := 5; Assert(Var1[0] = 5); Assert(Var1[1] = 0); Assert(Var1[2] = 0); Assert(Var1[3] = 0); end; Declaring Var2 in this way means that it accesses the same memory as Var1. The Embarcadero documentation agrees with me. I know of no way to use 'absolute' in a type declaration. Am I missing something?
  21. I had an Indian coworker once who was a bit "vertically challenged". We called her Little Indian. 😉 (No, we didn't actually. But she herself did sometimes.)
  22. dummzeuch

    Issues in Uses Clause Manager

    I just implemented a work around for issue #1. But this has nothing to do with clearing the cache, it happens with or without that, but only if you compile GExperts in Debug mode. The reason where many SendDebug calls.
  23. dummzeuch

    Issues in Uses Clause Manager

    That happens only to forms that are active while changing this option (e.g. the Grep Result form when it is embedded somewhere in the desktop). Forms that are newly created will use the default font which is the virtual "MS Shell Dlg 2" font. The size for new forms is also set to 9 (on Vista and later) or 8 (on older Windows).
  24. dummzeuch

    Issues in Uses Clause Manager

    The person (I wonder who that might have been 😉) who added the StatusBar to the form must have changed the font which set the ParentFont property to False. So changing the default font for all forms dosn't change the StatusBar's font. I just fixed that.
  25. dummzeuch

    GExperts and virus scanners

    I have been made aware that several of the GExperts installers are classified as malware by some virus scanners, one of them being Windows Defender. Depending on the installer, VirusTotal reports 2 to 17 virus scanners classifiing it as malware, e.g: https://www.virustotal.com/gui/file/63a9c732ca62d8c31a6b7b6ba15bf4e94e26aa862489ad317b0b612745bd795c/detection No idea what I can do about it.
×