Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 02/21/24 in all areas

  1. Stano

    A native VCL, and not Windows-based, TComboBox control.

    I will note that most programmers completely reject the "with" construct.
  2. This is NOT a help desk system. Delphi-PraXiS operates independantly from EMBT and the PEOPLE here are are professional software developers and hobbyists. This is a place that exists for users of Delphi to discuss the challenges they have when developing in the language. Any discussion needs clearly stated and accurate facts about the challenge at hand, for people to be able to contribute with suggestions for a solution. Lack of such detailed facts, will lead to requests for more facts, and AI generated bulldroppings are generally not considered to be facts. We still have no clue to what this actually does or how it is supposed to work. We are not mind readers. Draw a mockup of how you imagine this to look Describe the functionality in detail What that Button does What is shown or entered in the Memo Just dropping a product name does not enlighten us at all. We've likely never used the product and have no clue what it does or how it is supposed to work.
  3. Remy Lebeau

    A native VCL, and not Windows-based, TComboBox control.

    You say you have hundreds of TComboBoxes, but the screenshot above only shows 7 (presumably 11?). If this screen is similar for the rest of the app, where each item on the side list displays its own page with just a handful of ComboBoxes on it, then a simple solution would be to NOT load every page at one time, but instead to load one page at a time only when it is made visible to the user, and then unload it when it is no longer visible to the user. That will greatly speed up your load times, and then you don't have to resort to using hacks like owner-drawing, OnDropDown refreshes, etc. You can move each page to its own TFrame that you create and destroy when needed, that way you still regain design-time support for your page layout.
  4. JonRobertson

    A native VCL, and not Windows-based, TComboBox control.

    As does the Delphi debugger.
  5. Hi All, Just a quick announcement that a new version 1.7.5 of the Sempare Template Engine is now available. Sempare Template Engine for Delphi allows for flexible dynamic text generation. It can be used for generating email, html, source code, xml, configuration, etc. Integrations have been done with a number of web frameworks such as: Indy, WebBroker, Horse, DelphiMVCFramework, mORMot, ... Please check out the project, and 'star' it on github. https://github.com/sempare/sempare-delphi-template-engine From v1.7.5 FIX: Improved JSON (System.JSON) support FIX: Refactor RTTI deref methods From v1.7.4 (released last week) NEW: Assignment can now be done using both Pascal (:=) and C (=) operators. This is a flexibility feature to support users. NEW: default(value, default) method. Default is returned when IsEmpty(value) is true. NEW: domid(record_or_class [, context:str] ) NEW: pascal-like ternary: <% greet := true; print( 'hello' if greet else 'bye' ) %> FIX: refactor old C-like ternary <% print(greet? 'hello':'bye' ) %> FIX: some of the language constructs required open and close brackets. These are now optional. Close bracket will be forced when the open bracket is used. FIX: semi colons can be used more liberally within the script blocks, even with empty statements. <% print('hello'); ; ; ; print('world') ; %> Regards, Conrad
  6. It appears we'll soon need the latter for forum posts...
  7. Bug fixes, bug fixes and after that: more bug fixes. Don't release until there are no more unresolved bug reports. Quit following hypes just for the hypes sake.
  8. Oddly enough, I implemented a serial modbus protocol in Turbo Pascal over 35 years ago to talk to PLCs. https://github.com/LarsFosdal/DOSTimberDryingKiln/blob/main/source/MODBUS.PAS
  9. Lars Fosdal

    GetIt Package Manager Delphi 11.3 Timeout

    But our indignation was righteous!
  10. Yes, the location is called asynchronously. I also would not stress the system directly in FormCreate, with the activation of Location, where it is still loading and initializating. Better to do that at a later time, maybe FormShow, or even better, manually controlled on demand by your own code only. I'm not sure if you asked for PermissionRequest correctly, because I cannot see something similar like this in your code. The result should be in mainUI thread, but to ensure that this is true you can use ForceQueue, to protect this against mysterious situations. I know that Android systems might forgive many of such issues in debug mode, but clearly is at high risk to fail in release and PlayStore. procedure Tfrm.FormShow(Sender: TObject); begin DoLocationActivate; end; procedure Tfrm.DoLocationActivate; begin TPermissionsService.DefaultService.RequestPermissions( [LPermissionLocationF, LPermissionLocationC] // PermissionResult , procedure ( const APermissions: TClassicStringDynArray; const AGrantResults: TClassicPermissionStatusDynArray ) begin if ( ( Length( AGrantResults ) <> 2 ) or ( ( AGrantResults[0] <> TPermissionStatus.Granted ) ) or ( ( AGrantResults[1] <> TPermissionStatus.Granted ) ) ) then begin exit; //user doesnt grant access end; TThread.ForceQueue( // this should not be necessary, but just to ensure that Active := True is really called in the main thread only procedure begin LocationSensor.Active := True; end ); end ); end;
  11. Thank you! That worked perfectly.
  12. You could try a pre-build event as a workaround: CMD /C DEL $(OUTPUTFILENAME) If your output path or filename has spaces, try CMD /C DEL "$(OUTPUTFILENAME)"
  13. Uwe Raabe

    GetIt Package Manager Delphi 11.3 Timeout

    As of today there is a rebuild web installer for 11.3 available on my.embarcadero.com.
  14. Is it just me, or do the posts by techdesk seem to be written by an AI? I've never seen a developer write such prose. Lots of words, but says very little. Angus
  15. Lars Fosdal

    What new features would you like to see in Delphi 13?

    1. Debuggers, debuggers, debuggers - multithread handling is abysmal today 2. Make HighDPI actually works as intended - it is useless in a team as is - unless everyone runs the same scaling 3. Generics constraints for enumerated types to enable the use of conversion to/from ordinal values, use set operators, etc. 4. Native ARM64 compiler for Delphi for Windows (and Linux/Raspberry PI, but Windows has prio) 5. A 64-bit IDE that ensured that EMBT was dogfooding 64-bit VCL and RTL and raise the quality As for AI, I wouldn't mind an AI that could look at code and suggest improvements - perhaps as a part of the static code analysis, or one that could explain "what does this code do". I don't really need or want an AI to generate code. If it is a standard, a lib should already exist. If it doesn't and there is no standard that covers the need, I'd be happy to have an AI outline alternative approaches - but given that the wide scope of parameters that goes into a design, I think it is unrealistic to expect that it would come up with the ideal suggestion without us writing a huge requirement. The output of VLLM generators is extremely dependant on precise and accurate specification statements, and writing those are almost as hard as writing good code. As for AI and privacy - keep your secret credentials separated from your code. Other than that, I don't think that many of us write code that truly needs to be hidden for secrecy reasons, although it is obvious that it will be necessary to ensure that privacy permeates the use of AI.
  16. Uwe Raabe

    What new features would you like to see in Delphi 13?

    Sounds like it were a religion...
×