-
Content Count
102 -
Joined
-
Last visited
-
Days Won
2
mjustin last won the day on February 5 2023
mjustin had the most liked content!
Community Reputation
30 ExcellentRecent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
https://www.delphitools.info/samplingprofiler/ "SamplingProfiler is a performance profiling tool for Delphi, from version 5 up to both 32bits & 64bit Delphi 12.x (and likely the next ones). Its purpose is to help locate bottlenecks, even in final, optimized code running at full-speed." ... "With version 1.7+, SamplingProfiler includes a small http web server which can be used for real-time monitoring of the profiled application. The monitor provides code hot-spot information in real-time, in HTML or XML form."
-
Efficient RTF First-Paragraph Extraction and HTML Conversion Component
mjustin posted a topic in Delphi Third-Party
For applications that need to process existing RTF documents—like those stored in BLOB fields—speed is critical. The new Convert to Text Preview feature makes one use case effortless: with a single property setting, you can instantly extract and convert the first paragraph of your RTF documents to HTML, delivering fast, reliable previews in your application. Instead of processing and converting the entire RTF document, only the first paragraph is extracted and converted to HTML. With minimal post-processing, the resulting HTML can easily be rendered or used as plain Unicode text. A preview demo for ScroogeXHTML 9.3 is available at https://www.habarisoft.com/scroogexhtml/9.3/ScroogeXHTMLDemo.zip -
While the encoding issue can be solved by transforming the RTF to plain text (iirc TRichEdit can help with this), the bigger obstacle is the amount of data which will be read if the RTF is 'unlimited' in length. A workaround would be to process and show only a part of the RTF as plain text.
-
Feature Request for the Delphi Language (Rethink or Eliminate the Concept of Units)
mjustin replied to dmitrybv's topic in Algorithms, Data Structures and Class Design
I enjoyed reading your contributions on SO and your blog posts on this topic, for example https://www.uweraabe.de/Blog/2010/08/16/the-visitor-pattern-part-2/ ("The Visitor Pattern – Part 2"), which I think are a essential reading: -
Letting AI Handle the Docs: Experiments with Doxygen Comment Blocks
mjustin posted a topic in Tips / Blogs / Tutorials / Videos
The first two experiments evaluate GitHub Copilot Free and JetBrains AI Assistant in the context of maintaining Doxygen comment blocks. It highlights how each tool integrates with the IntelliJ code editor through their respective IDE plugins. A second article will cover VS Code. https://mikejustin.wordpress.com/2025/04/20/create-or-improve-software-documentation-with-an-ai-tool/ -
ScroogeXHTML for Object Pascal 9.2.1 - fast RTF to HTML5 conversion
mjustin replied to mjustin's topic in Delphi Third-Party
The full source code of the ScroogeXHTML component is included in the registered version. I'm not sure about the other components. Are you suggesting that the demo code should be included in the demo download as well? -
ScroogeXHTML for Object Pascal 9.2.1 - fast RTF to HTML5 conversion
mjustin replied to mjustin's topic in Delphi Third-Party
Thank you for reporting - I have fixed the error, please try again. -
ScroogeXHTML for Object Pascal 9.2.1 - fast RTF to HTML5 conversion
mjustin posted a topic in Delphi Third-Party
ScroogeXHTML for Object Pascal converts RTF (Rich Text Format) documents to HTML5 and other markup formats. The 9.2.1 release contains minor documentation updates. Features Exports to stand-alone documents or embeddable fragments. Provides many conversion configuration options. Supports hyperlink fields, bookmarks, multi-language and LTR/RTL text. Includes complimentary code for converting and embedding images as Data URIs. Conversion of pictures to a web-ready format may require third-party libraries. Includes an API for intermediate processing of the internal DOM-like document. Compatible with Delphi 2009 and newer and Free Pascal 3.2.2. Includes full source code. Resources Home page: https://www.scroogexhtml.com/object_pascal.html Demo version: https://www.habarisoft.com/scroogexhtml/9.2.1/ScroogeXHTMLDemo.zip User guide: https://www.habarisoft.com/scroogexhtml/9.2.1/docs/ScroogeXHTMLGettingStarted.pdf Release notes: https://www.habarisoft.com/scroogexhtml/9.2.1/docs/api/version.html Other platforms ScroogeXHTML is also available for the Java platform. (different feature set) -
In this case, JclDebug or madExcept (commercial) may be useful. They can be used to include detailed information about exceptions, including stacktraces.
-
How to know when TIdHTTPServer threads are done
mjustin replied to narag's topic in Network, Cloud and Web
HTTP is a stateless protocol. Therfore, closing the connection should not cause any client-side errors. And connections are not "transferable" between processes or machines. -
Delphi & HTTP Authentication: Basic and Digest Access Authentication
mjustin replied to msd's topic in Network, Cloud and Web
Which HTTP client / component / library is used? (Indy, ICS, ...) -
A first example is now online at https://habarisoft.com/daraja_framework.html More examples will follow. Many thanks for your suggestion!
-
The 3.0 Version contains some API improvements, all changes are listed here: https://github.com/michaelJustin/daraja-framework/milestone/9?closed=1 Noteworthy are * a simplified, parameterless Init method for WebComponents (and WebFilters). * methods which register WebComponents (and WebFilters). return an object which can be used for further configuration. * overloaded registration methods: instead of Context.AddWebComponent(...) and Context.AddWebFilter(...), Context.Add(...) can be used. The unit tests, code examples and API docs have been updated accordingly.
-
Daraja is a compact and flexible HTTP server application framework for Object Pascal, based on the HTTP server included in Internet Direct (Indy). The framework uses URL patterns to match requests to your resource handler code, and optional request filtering for pre- and post-processing. It enables developers to create well-structured HTTP server applications, written with 100% open source code. Daraja HTTP Framework is dual licensed under the GNU Affero General Public License and a commercial license. More information - GitHub: https://github.com/michaelJustin/daraja-framework - API documentation: http://michaeljustin.github.io/daraja-framework/ - Features and FAQ: https://www.habarisoft.com/daraja_framework.html
-
Habarisoft released new versions of the native STOMP client libraries for Delphi / Object Pascal for integration with popular open source message brokers: Habari STOMP Client for ActiveMQ 9.2 – tested with Apache ActiveMQ 6.1.4 Habari STOMP Client for Artemis 9.2 – tested with Apache ActiveMQ Artemis 2.38.0 Habari STOMP Client for OpenMQ 9.2 – tested with Eclipse OpenMQ 6.5.0 Habari STOMP Client for RabbitMQ 9.2 – tested with RabbitMQ 4.0.4 and 4.1.0-beta.1 Release notes: https://www.habarisoft.com/release_notes.html