Jump to content

timfrost

Members
  • Content Count

    203
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by timfrost

  1. timfrost

    auto code formatting

    My principal IDE is RAD Studio (for Delphi) but unfortunately I also have to use Visual Studio a bit. I cannot stand the way VS moves my code around or adjusts my spacing while I am typing it. It is a most unhelpful and distracting feature.
  2. timfrost

    PDF Library

    Last year I might have suggested QuickPDF, formerly from Debenu, now from Foxit. But Foxit announced its EOL a few months ago. I also use the PDFIUM wrapper from https://winsoft.sk/pdfium.htm, but this requires the Google PDFIUM DLL separate from your application. They have a demo, and a PDF merge example.
  3. timfrost

    Delphi 11.1 is available

    The Docwiki links for new features and fixes in 11.1 are not working (here).
  4. timfrost

    Formatting inline var

    The GExperts formatter seems to do what you ask, here. I have never used the one that comes in the IDE, though.
  5. timfrost

    Docx (RTF) to PDF convert

    No need to print from Word, you can automate it to open and 'save as PDF'. And you can do the same with Libre Office, for MS and ODT formats, and there is a library available from https://www.winsoft.sk/libre.htm which can help with this. If installing Libre is as much of a problem for you as installing Word, there is also a library available from https://delphihtmlcomponents.com/office.html which can read Word Documents and can also write PDF, via HTML.
  6. Some of the comments to https://softwareengineering.stackexchange.com/questions/196706/creating-a-coding-standards-document may be relevant. I read into several of them that the best advice is often, "don't try this".
  7. timfrost

    Delphi 5 - VirtualTreeView

    https://github.com/JAM-Software/Virtual-TreeView
  8. timfrost

    Delphi 5 - VirtualTreeView

    A quick google tells me that VTV 5 dropped support for Delphi 5 and 6, and that the last VTV 4 was 4.8.7, but I have no idea whether this is accurate I have downloads only back to VTV 6.3.
  9. timfrost

    ISO8901: Week numbers and year

    The functions in system.dateutils claim to be ISO8601 compliant. Are you saying that they return the wrong results? WeekOfTheYear has an overload which sets the year as well as returning the week
  10. If your goal is to achieve consistency between local and UTC times which are milliseconds apart, you should start with the UTC time, not the local time. Get the UTC time first. Then use a library such as https://github.com/pavkam/tzdb to derive the local time from it, for the location you require, using the IATA database. If the UTC time happened to be 01:59:59.998 on a changeover day scheduled at 2am, then this library will return the correct local time for this UTC time and location, even if you call it 5ms later. The library also has options to select how you want to handle the edge cases if for some reason you have to start, as in your examples, from the local time. Some days, a local time may occur twice or not at all. There may be other ways to do this without an external library, but using the TZDB gives you flexibility to handle different time zones and DST rules. The fact that you ask for millisecond consistency implies that you may require this extra capability.
  11. Regex Buddy (https://www.regexbuddy.com) is a useful resource for learning and testing Regex. There is a money-back guarantee in case it does not float your boat.
  12. timfrost

    Library to get user, computer info

    For Windows, MiTeC System Information Component Suite can get every hardware and software detail you can think of, and more; there is also a trial version available. https://www.mitec.cz/msics.html
  13. timfrost

    simple PDF editing need

    Take a look at https://www.winsoft.sk/pdfium.htm. It's an inexpensive easy-to-use wrapper for PDFIUM. There are trials and demos at that link.
  14. timfrost

    Patch for Delphi 11 Alexandria available

    There is indeed a 'do not show again' checkbox. But normally when I see this dialog it is because I have failed to spot the icon in the toolbar and accidentally opened another IDE instance. So it would be nice to have a 'cancel start-up' option as well!
  15. timfrost

    Moving from Per Monitor V1 to V2

    I would suggest that before you claim to support pmv2 you should add a second monitor which you can run at a different DPI, and test everything. This is the best way to be confident that your users will find no surprises in your software. But even then if the user setup differs from yours, it may not be enough.
  16. I don't know the answer to that specific question. I know that you cannot run multiple threads rendering (different) PDFs to image formats simultaneously, which is why I use Foxit (formerly Debenu) QuickPDF Library for this purpose, where you can safely use multiple instances of the PDFLibrary class in the same process. Google 'PDFIUM multithread' for more information (some of it inconsistent or not recent). When single threading, we can use either library, and we find that very occasionally some (usually CJK) PDFs, which in general our users do not have control over, do not render with one and do with the other. Typically PDFIUM will report failures or unsupported PDF features, whereas QPDF is slightly more likely than PDFIUM to mis-render these edge cases.
  17. But anything based on PDFIUM has the limitation of single threading only. Which may not matter if you have a user interactively tweaking annotations and images, but it does to the applications I deal with.
  18. timfrost

    DevExpress PDF Viewer

    There is also the excellent PDFIUM DLL wrapper from Winsoft: https://www.winsoft.sk/pdfium.htm. You would not need to ship the PDFIUM DLL with every update of your software, though it does get updated from time to time. The viewer demo builds to 2.9MB, but the demo is a full viewer with scaling, rotation, printing, rendering etc.
  19. In a MadExcept bugreport there is nothing to stop you adding customer identification or licence details in the headings. No need for the customer to manually fill in anything. There are examples in the MadExcept documentation on how to do this in your application which generates the report.
  20. And mine too. North Star Horizon in a wooden case. I still have it.
  21. I liked the Vectorize demo, but it seems that saving the monochrome image to SVG is not finished yet. Or did I miss something?
  22. "For purposes of controlling the execution of the loop, the expressions initialValue and finalValue are evaluated only once, before the loop begins." You can use a 'while' statement to force the evaluation of the final value on every iteration. i := 0 while i < list.count do
  23. timfrost

    How to get the actual UTC time??

    However "funny" your user's country plays with daylight savings, the settings should be promptly reflected in the IANA database, which you can incorporate using the functions at https://github.com/pavkam/tzdb. If you are prepared to monitor updates (every few months) and recompile your application with the latest include file (many changes are historical only), then it is simple to convert UTC to a local timezone, including DST when applicable, which can be displayed accurately for users wherever they are in the world.
  24. Gimpel Software and PC Lint seem to be still around, and I still have a copy, though a version too old to run on Windows these days. I met Jim Gimpel a few times back in the days when one travelled to software development conferences, even for me across the Atlantic, to discuss and find new tools. Much longer ago than I care to remember.
  25. timfrost

    Delphi demands elevation?

    If you right-click the EXE and select Properties/Compatibility, is 'Run as administrator' checked? This setting would survive rebuilding and would also be unique to your own VM where it is running, as well as independent of the manifest it contains.
×