Jump to content

Edwin Yip

Members
  • Content Count

    432
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Edwin Yip

  1. Edwin Yip

    My new project : WebView4Delphi

    Great! Another amazing project by you! What's the planned supported Delphi versions ;)
  2. A few questions if you don't mind. How does it compare with SQLite's FTS? ( would appreciate a genuine comparison table). Does the db backend support SQLite? Has built-in support (asking this because I don't use FireDAC, ADO nor IBExpress )? No support for earlier versions of Delphi prior to XE8?
  3. Edwin Yip

    WebView2 synchronious calls

    Sorry, but I'm able to help as I don't use it, but may I start a small not-so-off-topic discussion? When I first read from your post that winsoft has a WebView2 wrapper which supports old version of Delphi, I was exciting, thought that old Delphi can finally have the "TEdgeBrowser" component introduced in newer Delphi. Than I realized that in order to use it, the client PC would have to download a 123 MB WebView2 runtime! Oh, in that case, I think I'll keep using our good old Cef4Delphi... I'm puzzled, it seems that TEdgeBrowser also request that 120+ MB WebView2 run-time. I mean, why bother? Why not just use cef4delphi which provides you much more power and flexibility? This is a genuine question.
  4. Hi all, I've just encountered an issue that's quite strange and it took me hours to figure out but still couldn't confirm where dose it come from. The situation I found is like this: Let's say we have a VCL program with DPI-aware enabled (with xml manifest correctly set, all forms have `Scaled` set to true and working), and the form inheritance is like this: TFormC inherits from TFormB which in turn inherits from TFormA, which have some buttons on some panels. I found that, when running on a computer with different system DPI, TFormA will be auto scaled for 1 time and it's correct. But TFormB will be wrongly scaled and shifted twice, while TFormC will be scaled and shifted for 3 times. All other forms, even with form inheritance, but since there is no controls on the parent forms, the auto-scaling works. I'm not sure if it's related to my Delphi version and I use XE4, I wonder anyone can confirm if the issue comes from form inheritance?
  5. @Stano, great, thanks for the helpful info, I'll try that and come back here with meaningful info!
  6. Yes, the bottom-most panel is alClient, on the second level are a list of row-panels with alTop, and on the third level one is alLeft and another is alClient. I'll try to get a reproducible sample later after the more important tasks are done... Thanks for your concern.
  7. Thanks for the info. I'm not sure (yet). I'll be back with more details...
  8. Edwin Yip

    simple PDF editing need

    With my very limited knowledge in this area (in the information collecting stage for a possible future project), ActiveX solutions aside, AFAIK, there is only one free option - use the low-level API of PdfiumLib, but I'm not sure if there is any Delphi sample code. If you can wait, ImageEn developer is planning to add such annotation feature to that lib (with has a PDF viewer already).
  9. Do you mean this algorithm : https://blog.disy.net/sugiyama-method
  10. Edwin Yip

    Where is Ctrl-F3 coming from?

    Try this magical Delphi Expert: https://github.com/NickRing/Delphi-Shortcut-Finder It's as amazing as a magic! I'm using an older version for my old XE4.
  11. Alternatively, Maybe raise a request to the CNWizards team for their InputHelper module might get such feature implemented faster ;)
  12. Edwin Yip

    Report Builder + HTML Library + Office Library.

    Wonderful! FWIW, please consider QuickJs ;)
  13. Edwin Yip

    Report Builder + HTML Library + Office Library.

    Hi Alexander, Another question, do you have a plan to provide JavaScript support in the future for HCL in the future? I'm not asking for any concrete time-frame but just if a plan is there ;)
  14. Edwin Yip

    Report Builder + HTML Library + Office Library.

    Great! Pity. Can't the editor provide events like `OnBeforeDeleteElement`, `OnBeforeEditElement`, and so on?
  15. Edwin Yip

    Report Builder + HTML Library + Office Library.

    Hi Alexander, Good job! May I take this chance to ask, can you control which elements can/cannot be modified in HCL editor? For examples: Allows some <p> texts to be editable while some cannot be edited. Disable deleting of <p> tags while allowing editing the texts. And so on...
  16. As you said, "I do understand however that you may have non technical users from which you may want to hide this detail.", and that's what I wanted, just like DMustache allows you to use methods (non-class methods) to define custom functions. Anyways, I understand that's the current status of the template engine, I can live with that.
  17. Oh, that make the template code complex, especially if you need third parties to write the template... And actually I'm asking something else - What I mean is how to access relevant data in Delphi utility functions, like TMyUtilities.DoSomething in the document example...
  18. With Sempare Template, how can you achieve recursive code generation? For example, in case of html page menu, the level is not fixed, how do you recursively generate the nested `<ul><li>` items? Thanks
  19. Oh, I think you misunderstood - what I mean is that you can customize the html code generated by `RenderMenu` by allowing the passing to it the `<li>` tags to use, for example, use `<li class="levelItem">`
  20. After more thoughts I realized that you can customize the starting/closing tags through function parameters, so that to be more practical.
  21. As I understand it, I think you are actually demonstrating option 1? However, it's not suitable for me since I need the logic to be represented in the template code. But thanks all the same. The nested for loops does the work - all after all, the menu always have a limited nesting level, on contrary to my original statement...
  22. Thanks, no hurry, because I've solved the issue with nested for loops in the template code. The recursion must be represented in the template code in order to be helpful in my case.
  23. @Dany Marmur, Thanks for sharing. Without sample code actually I'm not sure what does "use a stack in the template" as described by @darnocian actually mean. I use nested `for` loops to access the tree structure passed to the template engine.
  24. Thanks for the help. I'm trying to use option 2, by passing multi-level nested objects that represents the menu structure and in the template code use nested `for` loops to generate the `ul/li` items.
  25. This is a great news!!!! Can you point us to the specific page on your site that describes this feature in detail? Thanks.
×