Edwin Yip
Members-
Content Count
430 -
Joined
-
Last visited
-
Days Won
3
Everything posted by Edwin Yip
-
When `Scaled` is set, form inheritance will cause duplicated scaling? Any one can confirm?
Edwin Yip replied to Edwin Yip's topic in VCL
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. -
When `Scaled` is set, form inheritance will cause duplicated scaling? Any one can confirm?
Edwin Yip replied to Edwin Yip's topic in VCL
Thanks for the info. I'm not sure (yet). I'll be back with more details... -
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).
-
Directed Graph Layout Library for Delphi?
Edwin Yip replied to Vincent Parrett's topic in Algorithms, Data Structures and Class Design
Do you mean this algorithm : https://blog.disy.net/sugiyama-method -
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.
-
IDE support for auto completion of anonymous functions
Edwin Yip replied to darnocian's topic in Delphi IDE and APIs
Alternatively, Maybe raise a request to the CNWizards team for their InputHelper module might get such feature implemented faster ;) -
Report Builder + HTML Library + Office Library.
Edwin Yip replied to Alexander Sviridenkov's topic in Delphi Third-Party
Wonderful! FWIW, please consider QuickJs ;) -
Report Builder + HTML Library + Office Library.
Edwin Yip replied to Alexander Sviridenkov's topic in Delphi Third-Party
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 ;) -
Report Builder + HTML Library + Office Library.
Edwin Yip replied to Alexander Sviridenkov's topic in Delphi Third-Party
Great! Pity. Can't the editor provide events like `OnBeforeDeleteElement`, `OnBeforeEditElement`, and so on? -
Report Builder + HTML Library + Office Library.
Edwin Yip replied to Alexander Sviridenkov's topic in Delphi Third-Party
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... -
Sempare Template - How to get contextual data in a utility class method?
Edwin Yip posted a topic in Delphi Third-Party
@darnocian, according to the documents, since custom function for the template must be defined as static class methods, how do I access contextual data in those utility methods? I can see you can use `class var` to pass contextual data to the utility class before calling `Template.Eval`, but in case of multi-threaded template rendering, it seems that locking is unnecessarily needed. But at least it's workable? I'll try but you might have a better answer? Thanks. It'll be great if ITemplateFunctions.AddFunctions supports non-class methods, so that in the methods the object's fields are accessible. -
Sempare Template - How to get contextual data in a utility class method?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
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. -
Sempare Template - How to get contextual data in a utility class method?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
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... -
Sempare Template - How do you do recursive code generation?
Edwin Yip posted a topic in Delphi Third-Party
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 -
Sempare Template - How do you do recursive code generation?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
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">` -
Sempare Template - How do you do recursive code generation?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
After more thoughts I realized that you can customize the starting/closing tags through function parameters, so that to be more practical. -
Sempare Template - How do you do recursive code generation?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
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... -
Sempare Template - How do you do recursive code generation?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
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. -
Sempare Template - How do you do recursive code generation?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
@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. -
Sempare Template - How do you do recursive code generation?
Edwin Yip replied to Edwin Yip's topic in Delphi Third-Party
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. -
New PDF editing toolbar, high quality PDF printing and support for eight extra languages in ImageEn 10.2.0
Edwin Yip replied to Xequte's topic in Delphi Third-Party
This is a great news!!!! Can you point us to the specific page on your site that describes this feature in detail? Thanks.- 11 replies
-
How to manage feature changes during release cycle?
Edwin Yip replied to Mike Torrettinni's topic in General Help
I bet you yourself are that friend of your own :D -
New PDF editing toolbar, high quality PDF printing and support for eight extra languages in ImageEn 10.2.0
Edwin Yip replied to Xequte's topic in Delphi Third-Party
I don't know that limit. Do you mean you cannot manipulate the pdf with Pdfium in a background thread even using a legitimate locking mechanism?- 11 replies
-
New PDF editing toolbar, high quality PDF printing and support for eight extra languages in ImageEn 10.2.0
Edwin Yip replied to Xequte's topic in Delphi Third-Party
ImageEn will be unbeatable if it allows editing and saving of pdf annotations like what you can do with it against images. I had a look at the Pdfium interface, it seems to provide such API.- 11 replies
-
New PDF editing toolbar, high quality PDF printing and support for eight extra languages in ImageEn 10.2.0
Edwin Yip replied to Xequte's topic in Delphi Third-Party
Thanks for your answer. 1. Do you use Pdfium DLL or .obj files? I prefer the later, if even possible. 2. Do you mean with ImageEn you cannot annotate a pdf at all, or do you mean you can annotate it but cannot modify the annotation after saving it to disk?- 11 replies