-
Content Count
2857 -
Joined
-
Last visited
-
Days Won
101
Everything posted by dummzeuch
-
Blogged : Introducing DPM - a Package Manager for Delphi
dummzeuch replied to Vincent Parrett's topic in Delphi Third-Party
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. -
Shouldn't that be: class procedure TLog.This(const Msg: string); begin LogThis(UnitName, Msg); end;
-
[Suggestion] right click on a hyperlink in the source code to give a popup menu item for "Visit Link"
dummzeuch replied to Edwin Yip's topic in GExperts
Please file a feature request on sourceforge if you think it important enough. -
[Suggestion] right click on a hyperlink in the source code to give a popup menu item for "Visit Link"
dummzeuch replied to Edwin Yip's topic in GExperts
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. -
Uses Clause Manager improved: Filtering Identifiers with multiple words!
dummzeuch replied to PeterPanettone's topic in GExperts
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. -
Uses Clause Manager improved: Filtering Identifiers with multiple words!
dummzeuch replied to PeterPanettone's topic in GExperts
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. -
But why should it? There is already Daniel's plugin.
-
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.
-
Uses Clause Manager improved: Search Identifier information on the Web
dummzeuch replied to PeterPanettone's topic in GExperts
I haven't seen any difference. What exactly did you do? -
Uses Clause Manager improved: Search Identifier information on the Web
dummzeuch replied to PeterPanettone's topic in GExperts
implemented in revision #2911 -
Uses Clause Manager improved: Filter units with multiple words!
dummzeuch replied to PeterPanettone's topic in GExperts
implemented in revision #2908 -
Uses Clause Manager improved: Filtering Identifiers with multiple words!
dummzeuch replied to PeterPanettone's topic in GExperts
Implemented in revision #2910 -
Uses Clause Manager improved: Filter units with multiple words!
dummzeuch replied to PeterPanettone's topic in GExperts
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. -
Uses Clause Manager improved: Filtering Identifiers with multiple words!
dummzeuch replied to PeterPanettone's topic in GExperts
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.) -
Uses Clause Manager improved: Search Identifier information on the Web
dummzeuch replied to PeterPanettone's topic in GExperts
Not sure this would be better. Just my assumption was wrong. Ideally I would prefer patches for single features. -
Uses Clause Manager improved: Search Identifier information on the Web
dummzeuch replied to PeterPanettone's topic in GExperts
I was assuming your changes were cumulative. Apparently they are not. -
Uses Clause Manager improved: Search Identifier information on the Web
dummzeuch replied to PeterPanettone's topic in GExperts
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? -
Uses Clause Manager improved: Search Identifier information on the Web
dummzeuch replied to PeterPanettone's topic in GExperts
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. -
StandAlone version of the ProcedureList expert
dummzeuch replied to PeterPanettone's topic in GExperts
Yeah, could be useful. -
can anything else but a variable be declared as 'absolute'?
dummzeuch posted a topic in RTL and Delphi Object Pascal
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? -
can anything else but a variable be declared as 'absolute'?
dummzeuch replied to dummzeuch's topic in RTL and Delphi Object Pascal
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.) -
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.
-
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).
-
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.
-
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.