Jump to content

Uwe Raabe

  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Uwe Raabe

  1. Uwe Raabe

    optset files

    I often have different optset files containing unit search path entries. Usually I separate them by library name. F.i. there is one optset for TMS Scripter or GLScene, where several folders have to be added to the search path. As my folder layout for projects is consistent, the search path for each library is the same for each project. Thus I only have to add that optset to each project (only the first one, the others with drag'n'drop) to add the necessary folders to the project search path. As a gimmick I can see immediately which libraries a project depends on. This is als pretty convenient when the projects inside a project group share a couple of local folders in their search path. Using an optset for that makes changing the search path for all projects at once just a breeze. Unfortunately FinalBuilder is not able to resolve those optset references. Therefore I have written a small program doing that, which is called immediately before the compile action. Regarding RSP-14723: Indeed, optset references are not removed from the dproj. As that is not very common in my workflow I usually fix this by editing the dproj manually.
  2. Uwe Raabe

    Issues in Unit Dependency Analyzer

    Basically because there has been no need to implement it yet. The compiler version merely sets the default conditional defines (like VER320) related to the compiler, but those can be extended by yourself in that same dialog. Also, only the uses clauses are parsed for dependencies, so most of the code is ignored anyway. What differences in the dependency results do you get with the plain Win32 compiler setting compared to Win64?
  3. Uwe Raabe

    wtf is TForm.Action for?

    Another advantage of actions and action lists is that they can reside on a datamodule, which can be used in a VCL and a FMX application. Thus the same action logic can be used, which might have to be duplicated otherwise.
  4. Uwe Raabe

    TDBEdit / Dataset / SetFocus / VK_DELETE / WTH

    If it is related to TCustomEdit executes VK_DELETE while observer forbids it should be fixed in 10.3.2
  5. Selective Debugging allows to select the debug DCUs on a per unit basis. This doesn't affect the content of the call stack. Honestly, I doubt that removing this information from the call stack is of any benefit at all. In fact it would camouflage the actual program flow rendering the call stack next to useless.
  6. Uwe Raabe

    MMX for Delphi 10.3 Rio

    There is an unofficial download available for MMX Code Explorer with Delphi 10.3 Rio support. Unofficial because it didn't have had much testing yet due to some incompatibilities found during the beta phase. One of this results in the loss of the MMX editor context menu entry. Another big change ist that MMX version 14.x only supports Delphi 10 Seattle and higher. For that, version 13 will still be available for download and installations for older Delphi versions should keep working. I had to make this cut to avoid wasting too much time just to make it work and test it on those older versions. Nevertheless there are some features and bug fixes: Unit Dependency Analyzer is now dockable (so you can see immediately when you introduce cyclic dependencies) New settings page Project Options (currently contains only the setting for Uses Clause Sorting). These settings are stored per project in a separate section of the dproj file. Uses Clause Sorting accepts lists like (ToolsApi,DesignIntf) as one group. This only affects grouping, so the order inside this list is not relevant. Uses Clause Sorting accepts wildcards like Rz* (for Raize Components) or Id* (for Indy) to better handle non-dotted unit names New sorting options "group class members" - keeps the class methods together fix: Wrong result when renaming parameter during Extract Method fix: Add Local Variable now also works with For-In clause fix: Hard coded string scan check for min length works correct now fix: Paste Interface in empty class just works now fix: Consolidated behavior of selected file in Open/Use Unit dialog fix: Creational Wizard follows static/non-static when suggesting destructors Some work has been done for supporting themes, but that is still a long road to go. Please report any bugs and problems found either here or via support@mmx-delphi.de.
  7. Uwe Raabe

    PopMenu two levels down..

    I often get the impression that our computers already established some form of artificial intelligence, but for some unknown reason it usually turns out to be a mean one.
  8. Uwe Raabe

    Interesting article about dying languages

    Perhaps that big company is run by the fathers of those Tom, Dick an Harry and they trust their kids more than the experts?
  9. Uwe Raabe

    PopMenu two levels down..

    Is this VCL or FMX? Which target platform? Can you provide a minimal example showing that?
  10. Uwe Raabe

    Unit testing cross platform code

    I actually rate this as an advantage. Otherwise it would not be much different to the old DUnit.
  11. I am not sure if the quote is actually the intended one, as Thomas description is not related to the clipboard at all. In case you are referring to the MMX solution, make sure that you copy the interface (not its methods) from the contents list of the MMX Code Explorer window and paste it into the members list of the target class.
  12. Uwe Raabe

    Quick debug variables?

    You may also have a look into CodeSite, which allows similar things in a more convenient way. The Express version can be installed via GetIt,
  13. Uwe Raabe

    MMX for Delphi 10.3 Rio

    Thanks, will check that. Btw, I have also seen this issue from time to time and TaskManager indicates some threads waiting for I/O completion. So that may indeed be related.
  14. Uwe Raabe

    MMX for Delphi 10.3 Rio

    As these problems are hard to track down, I need to dedicate some time to that fix. Unfortunately I am not able to spend a significant amount of time on MMX in the moment, so it may take a while for the V15 beta to proceed.
  15. Uwe Raabe

    Changes in Parallel Library

    I understand that. On the other hand you get a problem with other parts of the RTL (f.i. THTTPClient) which obviously cannot make use of OTL to achieve some multi-threading features like async execution. If OTL is the choice for multi-threading one has to write its own async functionality for these parts based on OTL, which might turn out pretty time consuming (and also error prone). A reliable RTL with all of its parts working together out of the box would beat any manually assembled set of third party libs by magnitude. I fully agree with you regarding the lack of quality control, though.
  16. Uwe Raabe

    Changes in Parallel Library

    I would prefer when PPL would be fixed and stabilized instead of not being used at all. There is a couple of functionality in Delphi that relies on PPL and that would need to be reinvented where another external library is used. The lack of manpower dedicated to this part of the RTL (and a lot of others) is a real drawback. I wish Embarcadero would allow more participation from the community or at least all the MVPs that already offered their help in these areas. Another option would be to open source the standard libraries and accept pull requests, but that seems to be only at the edge of their radar - if at all.
  17. Uwe Raabe

    Unknown attribute

    If things were always done right in the first place neither the term bug nor the term workaround would exist.
  18. Uwe Raabe

    Unknown attribute

    That is only a workaround until the dialog allows setting it directly. The mentioned option is a last resort to tweak the command line parameters given to the compiler.
  19. Uwe Raabe

    Unknown attribute

    In Project Options - Delphi-Compiler - Compiling add the following value to Additional options to pass to the compiler: -W^UNKNOWN_CUSTOM_ATTRIBUTE
  20. Uwe Raabe

    Unknown attribute

    Yes, my comment to Marcos post remained unheard. We should create a separate QP entry for that.
  21. Uwe Raabe

    MMX for Delphi 10.3 Rio

    @Stregor, @ULIK thanks! That narrows down the research area a lot. The next beta will emit some data to the event log to allow some better analysis.
  22. Uwe Raabe

    MMX for Delphi 10.3 Rio

    Yes, that is true. The package info related to the Check Packages option is built on first use (probably to reduce startup time). It scans all packages loaded in the IDE and adds all classes and interfaces from each package containing at least one component. Can all people hit by this problem please check if it can be solved by disabling Check Packages?
  23. Uwe Raabe

    MMX for Delphi 10.3 Rio

    You should be able to check this inspecting the last change time of that file. Are by any chance all these source files added to the project and do you have Pre-parse Project Files enabled in the MMX General settings?
  24. Uwe Raabe

    MMX for Delphi 10.3 Rio

    Less than a second here. Yes, that may be the cause. You can try to rename the module cache file: "%LOCALAPPDATA%\Raabe Software\MMX Code Explorer\15.0\BDS19_known_modules.xml" and see if this reduces the time to wait.
  25. Uwe Raabe

    MMX for Delphi 10.3 Rio

    As I have difficulties to reproduce the above mentioned performance drops at my side, I would be grateful if someone could provide a project showing this behavior. I am willing to sign an NDA if necessary,