Jump to content

John Kouraklis

  • Content Count

  • Joined

  • Last visited

  • Days Won


John Kouraklis last won the day on January 10 2020

John Kouraklis had the most liked content!

Community Reputation

93 Excellent

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. John Kouraklis

    Conversion between Markdown and HTML

    Ah, thanks Alex. I will check. Do you also have a converter from HTML to MD?
  2. John Kouraklis

    Conversion between Markdown and HTML

    Yes, that's right. I corrected the post. Thanks I will have a look at the link.
  3. John Kouraklis

    Conversion between Markdown and HTML

    Hi, yes. I've seen this. I don't think it supports .md files and it is not free.
  4. John Kouraklis

    Conversion between Markdown and HTML

    Hi people, I need to convert markdown text to HTML and vice versa. I tried to find a component or some code but was unable to locate any. There is a number of online converters and I was hoping they had API available but, again, I haven't found anything. So, what would help are 1. Delphi component---ideally FMX but on Windows is just fine for now 2. Cloud service with API (free mostly) 3. EXE files that I could run from within my app Does anyone have any suggestions? Thanks.
  5. John Kouraklis

    Free vs Paid Version of an app

    Thanks @corneliusdavid and @Vandrovnik Yes, this is a solution but it means that the app needs to enter the typical "corporate" IT world where the IT prepares an update and then distributes it to the employees Not at the moment. I have a built in theme manager but it is not included in this case. So, it's only about a logo and some additional functionality. I am also a bit torn between having one app with a license key that unlocks more features and having a separate build with IFDEFs. As mentioned in the initial post, I am also considering embedding the logo in an exe resource but I am sure I will need to produce a mac version in the near future. Is there something similar on macOS?
  6. John Kouraklis

    Free vs Paid Version of an app

    Hi everyone, I'd like to ask for ideas on how to manage the following situation. I've got an app free for personal use. The corporate use is paid however and it adds some features but also allows the organisation to brand it (e.g., add a logo, color themes, etc.). What I find a heavy administrative task is how to manage the paid version. There are a couple of scenarios I am considering: 1. They send me their logo and I create org-specific binaries or installers. The downside is that I need to keep track of numerous editions and update files, etc. 2. They are able to unlock the app and load the logo and the theme. Then, they distribute it to their employees. A question here is how will they distribute the branded version. Do they need to repackage it in an installer? I also thought of having the exe or installer alter an embedded resource but doesn't sound a good idea to me. And, how will the updates be distributed? 3. I thought of setting up a website whether they upload their files and it produces the new installer. But this needs a proper build server in the background. Too complicated What do you think? There must be a simpler way, isn't there? Thanks
  7. As others have said, it's very safe. Just don't forger to free the form. I don't think so. Just create a blank project and test again.
  8. John Kouraklis

    Sending Email via GMail Using OAuth 2.0 via Indy

    Guys, the official way to interact with GMAIL is via OAuth authentication and JSON. That's what the documentation says. The app password, 2FA or the IMAP settings are there but they depend on the user to allow and set up the parameters.
  9. I would say it depends on the application and the platform. When on mobile platforms, I prefer to free AND NIL forms that are not used a lot given that memory is a limited resource
  10. I've spend a lot of time into OAuth authentication. I am not familiar with ICS components but normally when you need to interact with an OAuth service the process would be the following: 1. If you have an access token, then attempt the request 2. If it fails due to authorisation, then use the refresh token to update the access token 3. if this fails, then a new refresh token is needed and the user needs to repeat the whole process You can avoid all these attempts if you check programmatically whether an access token has expired before any opartion Most of the components I am aware of, refresh the tokens automatically until they reach #3 where they launch the browser. What I find annoying here is that this behaviour with the browser is automated and disturbs the normal operations of an application
  11. John Kouraklis

    EReadError "Property does not exist"

    Hi, I found what the problem was. There was a path in the library pointing to another version of the component. I must have spent 4-5 hours today on this Thanks
  12. John Kouraklis

    EReadError "Property does not exist"

    I cleaned and deleted all the packages but still no luck. I am really stuck...
  13. Hi everyone, I've got a visual component with a property which refers to an image list. In IDE, the component is installed without any problems but when I run the app, I get the error that the property does not exist. Obviously, the property is published and it exists in the dfm file. Every time I change the source code of the component I Uninstall/reinstall the package to avoid conflicts. How can I debug this? Any idea anyone? I thought of serialiazing/deserializing the component in code to test but this may not be that useful. Any ideas anyone? In any case, thanks and happy new year and Merry Christmas to everyone.
  14. John Kouraklis

    Developer Express gave up on FMX

    I don't think when EMBA bought the very first version of FMX mobile OSs where that dominant as they are today. I feel they were mostly trying to enter macOS world
  15. John Kouraklis

    Waiting for multiple threads

    @Kas Ob.Thanks for the detailed example. I have a class that manages all the thread so it was easy to keep track of TEvent for each threads as they are not scattered everywhere in the code. I haven't looked at the ability to cancel the thread yet. I think @Vincent Parrett's approach looks interesting