Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 08/09/20 in all areas

  1. FPiette

    What options do I have to control custom releases?

    I put all options into a single executable and at run time, I read a configuration file to set the features enable Boolean variables. The configuration file is an INI file which is protected by a digital signature the customer receive with his license. If he manually edit the INI file, then the signature is invalidated and the product fall back to demo mode. Using this method, there is only one executable and producing a new release is easy: every customer get the features his license allow, nothing more, nothing less. Each customer can download the executable to get an update. Since you use Delphi, you already know that Embarcadero is doing the same: The installer contains all versions, all languages. You get the pro version if you pais a pro license. You get the enterprise version if you paid for it. As easy as that.
  2. I'm a long time developer of open source components and I know this problem very well. The idea is not to ask the component developer to implement something you'd like but ask very simple thing like making a method virtual or change a method visibility from private to protected. Then you'll be able to implement yourself what you need in a derived class. Asking for such simple things which present almost no risk to break something is likely to succeed. But asking the component developer to implement something for you will probably be rejected. You'd better chances to implement it yourself and suggest your changes.
  3. If I can avoid it, and I usually can, I do not modify third party code. It adds to the maintenance burden.
  4. https://www.tmssoftware.com/site/tmswebcorevsc.asp Happy to announce the public beta of TMS Web Core for Visual Studio Code, you can install it directly from Visual Studio Code's marketplace and start writing web applications in Pascal in minutes. Please, use the support center forums to provide any feedback you want and help us to polish the product towards its upcoming release: https://support.tmssoftware.com/c/web-core/tms-web-core-vsc/87 RADical Web Modern SPA web application model Pure HTML5/CSS3/Javascript based applications Standard component framework for common UI controls and access to browser features Debugging in Pascal code via the browser Backed by a solid & proven Delphi Pascal to Javascript compiler that was years in development Reuse skills and components Open to consume other existing Javascript frameworks & libraries Open to use HTML/CSS for design Open to use other jQuery controls or even other Javascript frameworks Easy interfacing to REST cloud services including to TMS XData for database Easy Deployment Application consists of HTML & Javascript files only that can be easily deployed on any light or heavyweight webservers Use any existing load-balancing software and/or techniques for highest performance Visual Studio Code version benefits WYSIWYG form designer Debugging integrated in the IDE Cross-Platform (Windows / MacOS / Linux) High DPI enabled IDE Ecosystem with many additional plugins to enchance development productivity Get started with TMS Web Core for Visual Studio Code
  5. IMHO: 1. Think if a feature could be useful for others, if yes - suggest it to developer 2. Try to implement it by inheriting, class helpers, class hacks etc 3. If nothing helps, go the way of source modifying. But prepare to handle all updates manually. Luckily most of this work could be done with source control systems. I keep several personally needed changes to ISC, VTV, FastReport but where possible I use class helpers (VTV) or inheritance (ICS). Sometimes the following trick helps a lot: type class TSomeStdClassExt = class(TSomeStdClass) ... // some additional stuff end; class TSomeStdClass = TSomeStdClassExt; var someobj: TSomeStdClass; // will be of class TSomeStdClassExt actually It is especially useful for visual controls b/c you don't have to register new control, replace old ones with new ones and so on.
  6. This is what class helpers are for. Likewise.
  7. Gustav Schubert

    TListBox OnClick not working just on some machines ?

    OK, OnItemClick is much better, got it - only now. Perhaps OnClick should be deprecated? https://stackoverflow.com/questions/48813666/firemonkey-tlistbox-onclick-which-item-is-clicked https://stackoverflow.com/questions/19822639/translating-onclick-to-ontouch-or-something-similiar
  8. Try to push a pull request to the original project, if it is Open Source. If it is useful to you, it may be useful to others. The pull request may not be directly merged, since the project owners may have some requirements (testing, code format, comments, documentation, cross-platform...). It is a great way to enhance your abilities, and give back to the community. For 3rd party non-free components, it is more difficult. You may use the branch feature of a SCM (git or fossil e.g.) to backport the original 3rd pary code updates to your patched branch.
  9. I don't usually modify 3rd party source code. Sometimes, I inherit from the 3rd party, adding my code only in separate source. If what I need cannot be done with inheritance en encapsulation, if I still find the 3rd party code valuable, I contact the author asking him to make some methods virtual or expose new properties. If he doesn't want, then I don not use his code because - as you experience - it will be a lot of work in the future.
  10. Arnaud Bouchez

    ANN: TMS Web Core for Visual Studio Code - Public Beta

    This is a huge step forward, to allow RAD development using Visual Studio code, for client applications. Even young developers, unwilling to use Delphi, could use the tool and develop the frontend. Then the server side can still use Lazarus or Delphi, and existing code for the business logic and the data access.
  11. Rollo62

    TListBox OnClick not working just on some machines ?

    OnItemClick Your second post shows that too, is that the solution or does it have an issue ?
  12. Lars Fosdal

    Are we just "Cash Cows"?

    We usually hold off moving to new major versions until Update 1 is out, but we do make the move. As far as I am aware, nobody on my team has ever had a problem with moving their IDEs to new hardware after XE4, and we use the regular named user licenses w/o any license server. Apart from the quality of the initial release, my biggest Idera/EMBT gripe at the moment is understanding why the f..k they keep spamming me with emails suggesting that I order 10.4 with a discount. Not only do I get these from EMBT, but also from the local reseller. I am on a subscription, FFS!
×