Jump to content

dummzeuch

Members
  • Content Count

    2650
  • Joined

  • Last visited

  • Days Won

    92

Posts posted by dummzeuch


  1. None of these features have been implemented. Feel free to submit a feature request on sourcefoge (makt it one for each feature).

    Feature requests for the formatter should include two unit files: An input and the desired output. They both should compile.

    But don't hold your breath for an implementation.

     

    Hm, actually, I think removing that blank line should have worked. Maybe it's a bug.

    • Thanks 2

  2. 1 hour ago, Brandon Staggs said:

    I did. First half of it or so was focused on C++, showing off Visual Assist integration. Not relevant to me, but the Find Related feature is enviable and it would be nice to see the same for Delphi.

    Hm, I remember hearing about the "Find related" stuff at the Forentage, but unfortunately I forgot what it does (I'm not a C++ programmer either). Care to refresh my memory?


  3. Thanks mostly to the work  @Achim Kalwa put into the preparations I have now built an installer for GExperts 1.3.23 Alpha for Delphi 12.

    Note the word “Alpha” in the release name. Basically I installed Delphi 12, fixed some problems with the build scripts and compiled Achim’s new project. Then I added the Delphi 12 version to the installer script and built it. Oh yes, I also installed the DLL in Delphi 12 and started the IDE a few times.

    That’s about all the testing from my end that went into this alpha release. ...

     

    Read on in the blog post

    • Like 1
    • Thanks 1

  4. 37 minutes ago, Pat Foley said:

    Does GExperts have anything that looks at file age, I found that mentioned in Ray Lischner Hidden Paths of Delphi 3  wooden book.  Then look at timestamps of the DCU to if the Build all compile processed everything. Sometimes the source needs saved first.  GExperts actually catches when a license check fails which again is some good work.     

    I'm not quite sure what you mean here. The Delphi compiler automatically checks if the internal timestamp of a dcu file is older than the currentl source code of a unit and recompiles it, if necessary. But what exactly does hat have to do with GExperts?


  5. 2 hours ago, Markus Kinzler said:

    If you use Code from an gpl-licenced product, you have to release the code of your product, too.

    Actually no. With the normal GPL You only have to give the sources to those who you give the binary. You don't need to release it to the general public if you don't release the binary to the general public.

    1. If you only use it internally, you can keep your code confidential.
    2. If you give the binaries to a 3rd party, you will have to give them the source code too.
      1. That 3rd party does not release it to the general public, it will only be available to them.
      2. But: They have the right to release it and you are not allowed to restrict this right.

    As you correctly pointed out, the GNU Affero GPL closes a perceived loop hole that is created by internal use for a publicly available service.


  6. 35 minutes ago, DelphiUdIT said:

    This is part of project "Cmulator" made in Pascal. This is the license: https://github.com/Coldzer0/Cmulator/blob/master/LICENSE

    "GNU AFFERO GENERAL PUBLIC LICENSE"

    According to the abstract this sounds a lot like GPL.

    But whatever the difference to the GPL might be. This:

    Quote

    Conditions

    • ...
    • Same license

     

    ... means I can't use it in any of my tools. I'm not going to change the license from MPL to anything GPL like.

    I was actually thinking about using this to add support for 64 bit executables to the PE Information Expert in GExperts.


  7. 2 hours ago, Fr0sT.Brutal said:

    So your program has relied on a 3rd party libs that *should* be kept up-to-date by someone else 🙂?

    No, the program should have had these DLLs in its installation directory. And it usually has.

    2 hours ago, Fr0sT.Brutal said:

    I think in such case the program itself must control what it loads and check if a loaded module has proper version. Or just use local libs and don't bother about what's in search path.

    Yes, it should. It didn't though. Now it does.

    The error occurred on my development computer with freshly checked out sources. Normally missing DLLs would have caused an error message which would have reminded me to copy them from a subfolder. Unfortunately there was no error message, just the SSL connection failed.

    Hm, thinking about it: Maybe the loading code should specify the full path for the DLLs. But that would mean I had to change the Indy sources. I'd rather not do that. Alternatively my program could load the DLLs before calling any Indy code.


  8. 2 hours ago, gioma said:

    The only patch for Delphi 11.3 was released in April and they haven't released anything since.

    After a little over a year, Delphi 11.3 was left to fend for itself.

    Embarcadero's policy so far has been to release new versions and not update older versions.

    Delphi 11.3 is the 3rd update for Delphi 11 (as opposed to the 10.x versions where each point version was a new release), so there have been updates and each of them fixed some bugs (11.0 was so bad that I didn't even want to spend the time for a GExperts release until 11.1 came out.)

    I'm not disagreeing that there is a lot of room for improvements, though. I'm not using Delphi 11.3 for production because it isn't stable enough in my environment.


  9. 3 hours ago, timfrost said:

    SysInternals Process Explorer can show the path and version resource of each loaded DLL in a process.

    Yes, I kind of knew this (but didn't think of it). But using the internal functions will also help diagnose installations on computers which cannot be accessed directly. A program can present the user with this information or it can be included in an error message or log file.


  10. 3 hours ago, ULIK said:

    I played around with this expert and added two things:

    - display with gutter:

    - two buttons to refresh or clear results: refresh can be used, when typing something on editor itself that modifies the result positions.

    Thanks! I was about to add these two myself, the next time I find some free time. Having your patch will make that happen a lot faster. I still need some time for this anyway.

    3 hours ago, ULIK said:

    As I'm not familiar with GX development: I have simply assigned two icons from GX Icon folder to speedbutton glyph, which probably is not the common way for GX. So you might change this to better fit the GX universe.

    You are correct. The right way is to use the image lists in Source\Framework\GX_SharedImages, or since Delphi 11, to assign these lists at runtime. See any of the dialogs that have a tool bar on how this is done.


  11. Yesterday, all of a sudden, one of my Delphi programs failed to connect to various WMS servers on the internet. I got the following error message:

    Error connecting with SSL. error 1409442E:SSL routine:ssl3_read_bytes:tlsv1 alert protocol version

    Since I was using a recent version of Indy, this should not happen, according to this thread on Delphi Praxis. It turned out that somehow a very old version of the openssl DLLs libeay32.dll and ssleay32.dll had gotten ... read on in the blog post

    • Thanks 1

  12. Another option would be to have a procedure like this:

    procedure TButtons_SetEnabled(const _Buttons: array of TButton; _Value: Boolean);
    var
      btn: TButton;
    begin
      for btn in _Buttons do
         btn.Enabled := _Value;
    end;

    And call it like this:

    TButtons_SetEnabled([Button1, Button2, Button3], True);

    Not much of a typing saver, but not as repetitive.

     

    Edit: Just noticed that Uwe already suggested a similar approach.

    • Like 1

  13. 1 hour ago, Remy Lebeau said:

    Why implement a custom IEnumStrings class for directories/files?  There is already a pre-made data source provided by the OS for that exact purpose - CLSID_ACListISF, which can be created with CoCreateInstance(), configured via IACList2::SetOptions(), and then passed to IAutoComplete::Init().

    Does that one also allow pre-filtering the filenames? e.g. If I only want to select from GX_*.pas files, or those matching *.dbf;*.dat ?

    I already had a similar function for filenames and directories without filtering using SHAutoComplete, but the filtering was important for me.

     

    (Short answer: I didn't know about this)


  14. 4 hours ago, ULIK said:

    I have attached you a Subversion patch file. It's just a quick&dirty change, so have a look on it (especially for the new resource string. This might not be necessary).

    GX_GrepInstantGrep.pas.patch

    Thanks. Commited as revision #4070. I have made a small change thoug: I prefixed the file name to "- instant grep" like it is shown in e.g. the project manager window so the importantpart (the file name) is visible even if the window is too narrow to display the full title.

     

    An unfortunate side effect is that the original position entry now doesn't even show "original position" in the caption. It needs some other way to be distinguished from the other entries.


  15. 1 hour ago, Carlo Barazzetta said:

    I'm searching for an "autocomplete editing" component (showing a list of possibilities) of available directories/filenames based on typed text, for an OpenSource project, so I need an OpenSource component that makes this work...
    Any suggestion?

    Not a component but a function that adds this functionality to any TEdit:

     

    https://blog.dummzeuch.de/2019/04/28/autocompletion-for-tedits-revisited/

     

    • Like 2
×