Jump to content

Edwin Yip

Members
  • Content Count

    430
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Edwin Yip

  1. Just an idea - wWithout breaking backward compatibility, It'll be great if the To Do List window has a "Created Date" column, so that one can track when the todo item was added.
  2. Edwin Yip

    My new project : WebView4Delphi

    This fork seems to be a bit updated: https://github.com/dshumko/WKE4Delphi
  3. Hi, I wonder if anyone, especially @Alexander Sviridenkov can give me any advise as to solving the following ThtPanel (a control from delphihtmlcomponents.com) rendering issue (text overlapped) under win 10/11 (ok under win 7). - The screenshot of the issue is attached. - I'm using HCL 3.7 (not the latest, I know, but I'm afraid I need to solve this issue with this version at the moment). - The html code used: Trial Period's Expiring in 21 Day(s)<br />When in trial mode only <strong>20</strong> blabla.<br /><br /><a href="#buy">Buy MyProduct here</a><br /><br /><a href="#activate">Activate MyProduct</a> if you already have a license key - The `ThtPanel` object: var pnlMsg := THtPanel.Create(Self); pnlMsg.Parent := Self; pnlMsg.AlignWithMargins := True; pnlMsg.Hint := '[Ctrl + C] to copy the message to clipboard'; pnlMsg.Align := alClient; pnlMsg.Caption := 'pnlMsg'; pnlMsg.ParentBackground := False; pnlMsg.ParentColor := True; pnlMsg.ParentFont := False; pnlMsg.ParentShowHint := False; pnlMsg.PopupMenu := pmMsg; pnlMsg.ShowHint := True; pnlMsg.TabOrder := 1; pnlMsg.Styles.Clear; pnlMsg.Styles.Add('a {'); pnlMsg.Styles.Add(' color: #0088cc;'); pnlMsg.Styles.Add('}'); pnlMsg.TouchScroll := False; pnlMsg.VerticalScrollBar := hsbAuto; pnlMsg.HighlightTextColor := 0; pnlMsg.EnableSelection := True;
  4. Oh I thought THtCanvasGDI is the default one...So I tried THtCanvasGDI has no issue. Question now: I assume changing `HtDefaultCanvasClass` only affects text rendering, but not other parts such as imaging rendering, is that correct? If so, I can use THtCanvasGDI to workaround the issue... Conclusion: With HCL 3.7 (not sure about the other versions), THtCanvasGP has text overlapping rendering issue, but both THtCanvasGDI and THtCanvasDX are OK.
  5. Thanks for the help Alexander. So I've just tried: - THtCanvasGDI: I assume this the default so it has the issue. - THtCanvasGP: Tried `HtDefaultCanvasClass := THtCanvasGP`, and it's the same issue. - THtCanvasDX: `HtDefaultCanvasClass := THtCanvasDX` solves the issue! And the html code is updated at runtime like this: `pnlMsg.HTML.Text := aHtmlCode` PS, I prefer `THtCanvasGDI` because the text rendering is the same as the system.
  6. Typo: In the attached screenshot, "I masked on this area..." should be "I masked only this area..."
  7. Wow, that's a 10x improvement! Not sure how it affects the performance of framework like mORMot @Arnaud Bouchez :)
  8. Edwin Yip

    Anyone using Cromis?

    Do you mean this commit: https://github.com/CPsoftBE/BackupOfCromis/commit/0323cf3dbd25587fae592701581b8241ff07cebf Strange, I couldn't see any file changes to the github repo...
  9. Delphi is #7 in the loved languages ranking
  10. Edwin Yip

    Some sort of IPC cross platform?

    Oh sorry, overlooked the MacOS requirement...
  11. Edwin Yip

    Some sort of IPC cross platform?

    I use mORMot for this because calling a method or an interface in another process is just like calling a method/interface in the same process. And the communication protocol can be tcp/ip or named pipes. On process B you define and implement an interface: type ICalculator = interface(IInvokable) ['{9A60C8ED-CEB2-4E09-87D4-4A16F496E5FE}'] /// add two signed 32-bit integers function Add(n1,n2: integer): integer; end; TServiceCalculator = class(TInterfacedObject, ICalculator) public function Add(n1,n2: integer): integer; end; function TServiceCalculator.Add(n1, n2: integer): integer; begin result := n1+n2; end; And you expose it: Server.ServiceRegister(TServiceCalculator,[TypeInfo(ICalculator)],sicShared); On process A, you can now call the above interface served by process B: Client.ServiceRegister([TypeInfo(ICalculator)],sicShared); var I: ICalculator; begin I := Client.Service<ICalculator>; if I<>nil then result := I.Add(10,20); end; More details: https://synopse.info/files/html/Synopse mORMot Framework SAD 1.18.html#TITLE_415 Sample code: https://github.com/synopse/mORMot/tree/master/SQLite3/Samples/14 - Interface based services It's even simpler if you use the so-called "method-based service". Hope it helps.
  12. Edwin Yip

    TMS and CoPilot, and Delphi ?

    It seems that the copilot rest API has been available...
  13. Edwin Yip

    HTML Parser alternative to MSHTML?

    Sounds cool!
  14. Edwin Yip

    HTML Parser alternative to MSHTML?

    Alexander's HCL is excellent and a set of gems, and definitely you can rely on it. Others I've successfully used in the past: https://github.com/ying32/htmlparser (open source, simple but does work depending on your needs). and DIHtmlParser (commercial, it's actually more of a tokenizer, but powerful)
  15. Another open source Delphi project worth spreading - a pure Delphi implementation of a rich text editor, like TRichEdit, in BSD license. But be aware - although the classes/methods/vars are well named in English, the comments and documents are in Chinese. So feel free to ignore it if you mind that. https://github.com/59079096/HCView-Pascal
  16. I did compiled and run the demo, but I didn't look any further, so I'm not sure about the performance of search, etc...
  17. Thanks for the heads up, Mike. I removed the fb details from the link in my post, however, it seems that your quoted reply still contains the details :D
  18. Edwin Yip

    IDE Syntax Highlighter using Tree-sitter

    Hi @laes, thanks for your efforts! In case you didn't know, the CN Pack Delphi extension provides some advanced syntax highlighting: http://www.cnpack.org/images/cnwizards.gif
  19. Edwin Yip

    ZipMaster 1.9x with my minor fixes

    - TZipMaster has a full set of features for writing/reading zip archives, most of the logics are implemented in Delphi, but it relies on a 300+KB DLL for the underlying operations. - TZipMaster supports both 64bit and 32bit Delphi compilers. - TZipMaster supports Zip64 (for zip files larger than 4GB). I edited the readme.md file
  20. Edwin Yip

    ScrollBox ScrollBar Mouse Tracking

    Yes, you have to write such code, and such code only works if the scrollbox has the focus.
  21. Edwin Yip

    ScrollBox ScrollBar Mouse Tracking

    Do you want to scroll TScrollBox vertically with mouse wheel?
  22. Edwin Yip

    CPas - C for Delphi

    As I understand it, although it's being released on github, this project is not open source, right?
  23. Edwin Yip

    CPas - C for Delphi

    I had the same curiosity and asked the author on facebook. It actually contains a modified version of Tiny C Compiler, but I didn't ask for implementation details. That being said, the OP might can give us more details.
  24. Edwin Yip

    DPROJ changes: SourceTree vs Beyond Compare

    Will you share your final choice with us then? ;)
  25. Edwin Yip

    Up to date SuperObject?

    x-superobject?
×