Leaderboard
Popular Content
Showing content with the highest reputation on 05/27/24 in all areas
-
Maybe I should simply turn off source code downloads from SourceForge ...
-
Selection in FormDesigner Structure barely visible when not focused
Uwe Raabe replied to PeterPanettone's topic in Delphi IDE and APIs
Well, it is definitely not a bug, so in case you filed it as a bug the "Works as expected" is indeed a valid answer. A dimmed selection color is actually standard behavior for non-focused Windows controls. Better file it as a feature request, as it asks for a change of the current, technically correct behavior. -
Similarly unrelated, the MAX_PATH limitation can also be circumvented with the manifest: https://learn.microsoft.com/en-us/windows/win32/sbscs/application-manifests#longPathAware
-
Main form does not respond when reconnecting TFD Connection
weirdo12 replied to mainxt's topic in Databases
A TFDEventAlerter creates it's own new connection when you set the Connection property. So yes, you need to keep track of the TFDEventAlerter objects you create and disable them if the connection is lost. I found it necessary to set Active to false and clear the Connection property. https://docwiki.embarcadero.com/Libraries/Athens/en/FireDAC.Comp.Client.TFDCustomEventAlerter.Connection -
Delphi 12.1 helps links to docwiki.embarcadero.com - no permission
DelphiUdIT replied to Gert Scholten's topic in Delphi IDE and APIs
-
Delphi MT940 implementation (reader, writer)
Die Holländer replied to Stéphane Wierzbicki's topic in Algorithms, Data Structures and Class Design
Hello, I've sent you both a DM with a basic reader. -
Selection in FormDesigner Structure barely visible when not focused
dummzeuch replied to PeterPanettone's topic in Delphi IDE and APIs
Hey, we are back to slapping the UX designer who made that stupid decision. 😉 -
ANN: StyleControls VCL v. 5.77 just released!
Almediadev Support posted a topic in Delphi Third-Party
ANN: StyleControls VCL v. 5.77 just released! https://www.almdev.com https://www.delphistyles.com StyleControls VCL is a powerful, stable package of components, which uses Classic drawing, system Themes, GDI+ and VCL Styles. This package contains the unique solutions to extend standard VCL controls and also has many unique, advanced controls to create applications with UWP / Fluent UI design. In new version we added new properties in controls and possible support of the TTitleBarPanel control and TCustomForm.CustomTitleBar property. New demo for RAD Studio Athens to show interaction of TCustomForm.CustomTitleBar property, TTitleBarPanel control and our TscFormTabsBar control is added also. -
How to debug a Not Responding program element
msohn replied to Willicious's topic in Delphi IDE and APIs
Yes I see that now - didn't properly test my changes. Have a look at the attached patch - before exiting, it makes the talisman box now visible. Fixes the issue that you described. SuperLemmixPlayer-21-25-34.patch -
How to debug a Not Responding program element
msohn replied to Willicious's topic in Delphi IDE and APIs
Are you using a GUI git client? Mine offers to apply patches (I highly recommend https://fork.dev). But after all it's a text file, it's not that difficult to read and understand it, especially since the changes are small and I described what I changed. And then there's also the command line, see https://git-scm.com/docs/git-apply -
How to debug a Not Responding program element
Kas Ob. replied to Willicious's topic in Delphi IDE and APIs
That depends if you are doing some drawing, updating some visually elements... in other words if the updating the scroller is more than painting already cached images or change position of already ready to draw elements then use a thread to do it, then use the timer to do the paint or the update, but in both cases timer will solve your problem. Main thread is the first thread in your application the one handed the execution form OS starting the dpr code, and called Application.Run, this one is the only one should handle all your UI (VCL/FMX) and their events, MainThread is a name for specific thread and not some generic terminology. Also keep in mind that your MainThread is the one responsible for any stuttering or slow UI handling, so we need to free it from doing anything expensive or might take long time, its job is answering OS messages (aka user and OS input and your specific requests from the OS)as fast as possible, when that is full filled the UI will be smooth, fast and keep up with screen refresh rate. You could share your CPU usage as it might indicate the problem, is it too much work or too much sleep and wait ? To do that, use Process Explorer from Sysinternals, then double click on your application, in that properties window, take screenshot of two tabs, and another screenshot for the following tabs after some time passed like 1 minute or more: Threads Performance Graph These tabs might help identifying strange or wrong behavior or at least will give an insight of the performance in overall. -
How to debug a Not Responding program element
msohn replied to Willicious's topic in Delphi IDE and APIs
Yes, I see that now too. SetInfo really does too many things - it not only shows the details about the level/group, it also manages the tree (i.e. LoadNodeLabels) - but only the visible ones, and it does so every time, even if most of the nodes will end up unchanged because they were previously updated. Edit: I see now that it skips nodes with a non-empty text, but that renders it quite useless - I thought the whole point of doing it so often, i.e. in SetInfo, is to be able to react to changes? If there are no changes, when why not fill everything properly in InitializeTreeView? A better place for calling SetInfo might be in OnExpanded - as that is the only place where uninitialised tree nodes become visible (also AFAICS). I made that change (uncommenting the Click and DblClick handlers and adding a SetInfo call in a new Expanded handler) and it seemed to work OK! The whole fInfoForm seems very inefficient to me and it also doesn't really behave very user-friendly (no mouse-wheel support, only the buttons are clickable). The whole thing could be done as an owner drawn listbox with a bit of extra code to react to the "buttons". This will certainly take some effort, but it would improve things a lot since not all x00 entries need a button and two labels being created. -
How to debug a Not Responding program element
Pat Foley replied to Willicious's topic in Delphi IDE and APIs
One. Just load a pre made with TV.LoadFromFile(wellformedTV.txt) and hookup as needed. Two. Your onidle is missing the pausing and userpause Booleans used in other Lemmix repros. So a Pause can not exit the onidle event. -
No, it's not that. I just checked out the sources to a new folder and i compiled fine for Delphi 12. No error message, no file(s) missing.
-
"showed an error" is not really a good description... I guess some file was missing the automatically gets created by the IDE but not by the script.
-
The release config does not write to the debug window. There might be some other debug functionality too that's turned off. Of course the main difference is that it does not include debug info for the debugger. I don't think that there is a big impact on performance. The default when building in the IDE is debug, when building with the build scripts it is release.
-
What are the performance profilers for Delphi 12?
Stefan Glienke replied to dmitrybv's topic in General Help
I'll take that opportunity and talk about it for an entire session at the Delphi Day and the Delphi Summit (the schedule still lists me talking about spring4d but for once I pass on that topic) 😉 -
FYI: Stumbled upon interesting ASM optimization trick LLVm can do (most likely others also)
Stefan Glienke replied to Tommi Prami's topic in Algorithms, Data Structures and Class Design
There are multiple considerations - I don't know what compiler version, target, and option he was using to conclude that it will use a lea rather than shift - at least with -O3 it will use shift for multiplications by 4 and 8 although lea would also be applicable - for mul by 2 most likely add is being emitted because that is just the smaller instruction. Another consideration is if the value is needed further - for example, x * 7 is implemented as x * 8 - x - and here it cannot use shift for the * 8 because it needs the original value of x to subtract, therefor it uses lea to store the result in another register and subtract the original register from it. Regarding the LEA instruction - I just remembered that I also reported that it should utilize this instruction when doing pointer math - see https://quality.embarcadero.com/browse/RSP-34820 -
Selection in FormDesigner Structure barely visible when not focused
dummzeuch replied to PeterPanettone's topic in Delphi IDE and APIs
The control is actually a TVirtualStringTree (with the name "VirtualStringTree1" ... somebody else to slap). -
Selection in FormDesigner Structure barely visible when not focused
dummzeuch replied to PeterPanettone's topic in Delphi IDE and APIs
You definitely don't know me. 👿 -
Selection in FormDesigner Structure barely visible when not focused
Uwe Raabe replied to PeterPanettone's topic in Delphi IDE and APIs
Before doing so, the developer needs to get assigned a task for it. This requires the product management to schedule such a task, which itself requires that there actually exists a request for it. If there isn't already one in the issue tracker I suggest to create one. -
New offline Help Athens 12.1 (May 2024)
DelphiUdIT posted a topic in Tips / Blogs / Tutorials / Videos
New offline helps for Rad Studio 12.1 Athens are published. https://docs.embarcadero.com/products/rad_studio/