Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 04/08/25 in all areas

  1. Stefan Glienke

    Rapid.Generics revamp

    One thing that I dislike about the Rapid implementation is the ton of magic numbers and the fact that the used hash algorithm is documented nowhere - I assume some form of Robert Sedgewick hash (which I could not find a formal description of anywhere on the internet). That makes it hard to verify its correctness and behavior.
  2. Stefan Glienke

    Some new projects...

    I am not implying anything or accusing you. Still, in the age of supply chain attacks and smuggling malicious code into open source repositories, anyone that blindly trusts some binary code they cannot build from source is acting grossly negligent.
  3. Patrick PREMARTIN

    Styles bloating final packages

    I've just created a sample project to illustrate what you can do. Check https://github.com/DeveloppeurPascal/Delphi-samples/tree/main/FireMonkey-Samples/027-StylesAndEXESize Screen samples are good for understanding how to use visual component stacking, layout and alignment, but not necessarily for organising things. Never put styles on forms but rather on data modules, like database components or image lists used by several files. This is something you learn as you use it, which you can read about in certain corners of the documentation or in the many books full of good practices. Unfortunately, it's difficult to add a comment in the examples, but a good idea for improvement.
  4. Attila Kovacs

    Q for MAPI Expert

    Use it as you want if it works. I'd be happy if fixes/enhancements would come back to me! 😉 forsix.MapiMail.pas
  5. What is the best string definition for fields to use when working with a database using UTF-8 formated text fields. I have checked out numerous other blogs and forums, including Marco cantu's white paper but am left confused. Marco seems to suggest that defining fields as of type TUnicodeStringField is better than TWideStringField. Should all text fields for linking to databases be defined as TUnicodeStringField in the .DFM files and in the .PAS files? If so, I don't seem to be able to get this to work. I have only been able to implement TWideStringField. TStringField, which supposedly maps to TUnicodeStringField, also does not seem to work. I am currently using a Firebird 3.x database (defined as using UTF-8), together with Delphi 12.1 and am updating older databases that used to use only ASCII strings. Any guidance on the best practical option would be appreciated. Thanks Bruce
  6. Stefan Glienke

    Realy ?

    2024 called and wants its news back
  7. ToddFrankson

    Does anyone know a delphi component that can play videos from a stream

    I've been working with him to get them up and running. Haven't had the time to get back with him
  8. Stefan Glienke

    Rapid.Generics revamp

    List always does linear search, which is O(n), while hashset does it in O(1) - however, considering the significantly higher cost of calculating the hashcode even with a very fast hash function (which the RTL does not use) and the length of the string for a small amount of entries linear search beats a hashtable. In theory, if the entries are not changed that often, one could sort the list and use binary search. But that also requires a fast, optimized, inlined BinarySearch implementation, which the RTL does not have, IIRC. P.S. Rapid.Generics.TList<T>.IndexOf is broken - line 19503 causes an endless loop. The same defect exists in InternalIndexOfRev. How to repro: procedure IndexOfEndlessLoop; begin var list := Rapid.Generics.TList<string>.Create; for var i := 0 to 1 do list.Add(TGUID.NewGuid.ToString); list.indexOf(list[1]); end;
  9. Actually, there is more to this. If you need access to files other than audio, images and video that are not created by your app, you would need to use the relevant action(s), as described here. This kind of thing is implemented in the FilesSelector feature in Kastri.
  10. Alex7691

    Rapid.Generics revamp

    Tested using Win32 and Win64 compilers only for now. Android and Linux, it's possible in a near future. Not sure if I'm going to test on any Apple OS, though... Not into MacOS/iOS dev myself. FMX and VCL are UI frameworks and don't have any relevance for the testing.
  11. Alex7691

    Rapid.Generics revamp

    True thing. Please update the source code from github repo. It's fixed now and there are a few new test cases to cover TObjectList (tests for TObjectList are not complete yet). Thanks
  12. @ToddFrankson Pls change title of topic from "Does anyone know of...." to "Play a video from a stream". Descriptive topic titles help users with finding relevant posts.
  13. Dalija Prasnikar

    Delphi and "Use only memory safe languages"

    Delphi is not memory safe language. But, at the end it all depends on the kind of code you write.
  14. Attila Kovacs

    Q for MAPI Expert

    I did not change anything since then. However I'm starting to encounter problems with Thunderbird too. Sometimes it just hangs and returns with unknown error. forsix.MapiMail.pas
×