Jump to content

Edwin Yip

Members
  • Content Count

    432
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Edwin Yip

  1. I know, but once I used a boxshot designing tools that provides a lot of ready-made template and shapes, which makes it very easy to produce professional-looking result. Tools make a difference tool.
  2. @Bill Meyer My first time hear about Affinity Designer, did a google and it seems to be very powerful with an affordable price tag. But I'm out of curiosity - do you have any design background to be able to make professional-looking icons? Or is Affinity Designer that user friendly to be able to enable a programmer to make good looking icons? Thanks.
  3. Can you list all of them? Have you tried the relatively new SVGIconImageList ?
  4. Same here and that's a very logical rationale! Similarly, I like the fact that it supports both strong typed data such as String/Integer and dynamically typed data type such as TValue/Variant -
  5. Edwin Yip

    Just-in-time compiling for Delphi's Regular Expressions

    But the patch is only available for a single specific version of Delphi
  6. Edwin Yip

    Just-in-time compiling for Delphi's Regular Expressions

    Well done! Maybe it's easier to deploy if it's possible to patch at runtime with DDetours
  7. Edwin Yip

    Open Type Arrays?

    As @Stefan Glienke has pointed out, we have TVarRec, Variant and TValue to deal with situation of: The type of the parameter is uncertain But in addition to the above situation, open array parameters are designed to deal with even more complex situation: Both the types and number of parameters are uncertain. The most well-known case is the Format function. However, I think the OP is heading to a wrong direction to use open array parameters for simplifying the example code he's given. There is at least one better solution: procedure DoSomething(const AParam: string); overload; begin // procedure body here end; procedure DoSomething(const AParam: Integer); overload; begin DoSomething(IntToStr(aParam)); end; The overloaded procedures eliminate the use of the `if` statement and make the code simpler and easier to read. Just my 2 cents. Edit 1: Please note, 'less lines of code' <> simple, 'more lines of code' <> complexity Edit 2: One more benefit of my above alternative method - More user friendly to the clients (that uses the DoSomething procedures). Because the clients can see exactly the type of the parameters to provide, and this is exactly the advantage of statically typed languages over dynamically typed languages such as JS .
  8. Edwin Yip

    Ssh library for Delphi

    I guess @Arnaud Bouchez might can shed some light on it, because I know mORMot involves a lot of work in that regard.
  9. Edwin Yip

    Ssh library for Delphi

    Oh sorry, I guess I'm wrong on this part - there is no header translation for SSH yet. It's just that the author has stated that "SSH shell and SCP features will probably be added in a future version." That being said, I'm very interested in the SSH feature provided by your library!
  10. Edwin Yip

    Ssh library for Delphi

    Yes, I meant opinions :D And thanks for sharing them, I now have a clearer understanding of your great project! However, TGPuttyLib is open source: https://github.com/superflexible/TGPuttyLib And yes, it currently supports only sftp. On the other hand, I guess it's quite easy to also add SSH functions because the header's already translated, just Delphi classes were lacking. The author used to say he has a plan for it.
  11. Edwin Yip

    Ssh library for Delphi

    I guess @David Heffernan or @Remy Lebeau might can help you on your question described above :)
  12. Edwin Yip

    Ssh library for Delphi

    Well done! This project makes me existing :) Just recently I needed to implement a SFTP feature, I first tried the only two existing libssh2 wrapper for Delphi, they both are kinda out of dated, one of them is the one your project page points to. Both failed to pass my initial tests against SFTP servers on both Windows and Linux. I then resorted to https://www.syncovery.com/tgputtylib/ and it worked like a charm. Just my two cents. If possible, would love to hear about your options on all the already available options and your decisions behind developing this new, promising wrapper!
  13. Edwin Yip

    TTabSheet - Set color and remove margin?

    See: https://stackoverflow.com/a/6275161/133516 Also note my comments under that answer.
  14. Edwin Yip

    SynEdit preferred version?

    This is not the correct process as I understand it, you should: - Fork the repository on github web, so you that have your own repository that you can permission to make changes - Clone your forked repository to your local pc - Change the source code as needed (following the contribution rules, if any) - Commit and push your changes to your forked repository - Make a pull request to the original SynEdit2 repository, and wait for acceptance
  15. Edwin Yip

    SynEdit preferred version?

    It seems that the myarmor DelphiSci wrapper is more feature-rich, but as you said, it's for v1.x and it's too old, not sure if it works with the latest version. the InnoSetup version also suffers the same issue. On the other hand, the github DScintilla I posted above works with 4.x (at least the version back in a year or so). Actually the DScintilla wrapper communicates with Scintilla through the SendMessage windows API, so it's quite easy to adopt new features. And don't forget , Scintilla is crossplatform (but not wrapper for Delphi on Linux or Mac).
  16. Edwin Yip

    SynEdit preferred version?

    By active development I mean the Scintilla library, not DScintilla, the delphi wrapper :)
  17. Edwin Yip

    SynEdit preferred version?

    Alternatively, I actually quite satisfied with the result of https://github.com/KrystianBigaj/dscintilla It's a Delphi wrapper for scintilla , which is the editor used by Notepad++ and a lot of others. And it's under active development.
  18. Edwin Yip

    SynEdit preferred version?

    How about not to port it to Delphi, but instead, just wrap it as dynamic linking library for the Delphi program to use?
  19. Edwin Yip

    SynEdit preferred version?

    Maybe someone port https://github.com/Alexey-T/ATSynEdit to Delphi? ATSynEdit seems to have a lot more features, including the multi-cursor feature, with active development currently for a long time.
  20. Edwin Yip

    SynEdit preferred version?

    I'm using the official SynEdit github repository, it seems that it supports Chinese characters?
  21. Edwin Yip

    Can Rio and Sydney co-exist?

    Sure, why not? The two are located in different continents ;)
  22. Edwin Yip

    Experience/opinions on FastMM5

    @Arnaud Bouchez ,you are so damn fast man! A memory manager in less than 3 days? Unbelievable! A new MM (fastMM5) for Delphi and a new MM for FPC. Wow! The Pascal community is getting better and better :)
  23. Edwin Yip

    Experience/opinions on FastMM5

    And right after this discussion, Mr. Arnaud Bouchez, author of mORMot, just released a new memory manager for FPC (both Windows and Linux) based on FastMM4! http://blog.synopse.info/post/2020/05/07/New-Multi-thread-Friendly-Memory-Manager-for-FPC-written-in-x86_64-assembly I kinda feel that the new release of FastMM5 and the consequent discussions stimulated him to take the challenge ;) Is it so, @Arnaud Bouchez ?
  24. I checked bot the Profile and Account section but failed to find a way to change my display name. Thanks.
  25. Edwin Yip

    How to change display name?

    Thanks, there is no 'Change' link next to Display Name. Will PM Daniel now.
×