Jump to content

ConstantGardener

Members
  • Content Count

    53
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by ConstantGardener

  1. ConstantGardener

    10.4.1 Released today

    https://quality.embarcadero.com/browse/RSP-30755 ...and some new bugs/regressions. TSpeedButton dont show the correct font anymore. You can change it to any font/Size and so on, but the font stay's the same.
  2. ConstantGardener

    Database for Cloud and Offline

    TMS Echo
  3. ConstantGardener

    ANN: Better Translation Manager released

    Hello Anders, this work's now for me! Thank You!
  4. ConstantGardener

    ANN: Better Translation Manager released

    Hello Anders, thank's for this great tool! Work's great for me in normal Forms and Frames, but with Ressourcestrings it doesnt. Here is a screenshot, the Name of the resourcestring and the content of the string are not right! Any Idea?
  5. ConstantGardener

    TLabel in a TTitleBarPanel??

    Hi Ian, there is a DEMO TitleBarPanelDemo.dproj in my Installation. TLabel has its Problems in this Container. Try a TPanel instead, maybe with a TLabel inside. And if you want a TMainMenu in the Titlebar use a TActionMainMenuBar and a TActionmanager. A normal TMainMenu doesn't work.
  6. ConstantGardener

    Revisiting TThreadedQueue and TMonitor

    ... that was not my point. i think dmitry can handle something. ...some infos
  7. ConstantGardener

    Revisiting TThreadedQueue and TMonitor

    ....i think you should have a little faith in this "hobbyist".
  8. ConstantGardener

    Why is ShowMesssage blocking all visible forms?

    ...when u use TMS UI Pack try TAdvSmartMessageBox. Stay's on top of the owner form, blend's in and out smooth and so on.
  9. ConstantGardener

    Common code base for VCL and FMX control code

    I am far from being an expert, but is'nt this https://www.tmssoftware.com/site/fncpartners.asp a way to archive this?
  10. ConstantGardener

    Overload methods or use unique names?

    ...for this example you could work without the TTaskAction at all. For me the parameterlist determinate the action!
  11. ConstantGardener

    Delphi 10.3.3 has been released

    ....as SilverBlack says, but with the exception of Packages from GetIt (Codesite, Konopka Component's).
  12. ConstantGardener

    FireBird, TFDConnection and concurrency

    maybe this ... https://wiert.me/2019/10/03/how-to-properly-cleanup-shutdown-a-delphi-isapi-which-uses-threads-mathias-pannier-programmiert/
  13. ConstantGardener

    FireBird, TFDConnection and concurrency

    procedure CreatePooledConnection; var oParams: TStrings; begin oParams := TStringList.Create; try oParams.Add('Server='+FServerName); oParams.Add('Database='+FDatenbank); oParams.Add('User_Name='+FUsername); oParams.Add('Password='+FPassword); oParams.Add('Port='+FPort.ToString); oParams.Add('Pooled=True'); FDManager.AddConnectionDef(CONN_RAM_Pooled, 'MySQL', oParams); FDManager.Active:=True; finally oParams.Free; end; We use a "PooledConnection" for this! And then in the Thread you only use this Pooled Connection for connecting to the Database, but you must create a new TFDConnection in every thread. AConnection:=TFDConnection.Create(nil); try AConnection.ConnectionDefName:=CONN_RAM_Pooled; try AConnection.Connected:=true; .....
  14. ConstantGardener

    Webhook example

    What about a "heartbeat"-request to the server if no real request happens?
  15. ConstantGardener

    Rules for changing cursor to HourGlass and back

    unit uTempCursor; interface uses Vcl.Controls; type ITempCursor = interface(IInterface) ['{495ADE0F-EFBE-4A0E-BF37-F1ACCACCE03D}'] end; TTempCursor = class(TInterfacedObject, ITempCursor) strict private FCursor: TCursor; public constructor Create(const ACursor: TCursor); destructor Destroy; override; class function SetTempCursor(const ACursor: TCursor = crHourGlass): ITempCursor; end; implementation uses Vcl.Forms; { TTempCursor } constructor TTempCursor.Create(const ACursor: TCursor); begin inherited Create(); FCursor := Screen.Cursor; Screen.Cursor := ACursor; end; destructor TTempCursor.Destroy; begin if Assigned(Screen) then Screen.Cursor := FCursor; inherited Destroy(); end; class function TTempCursor.SetTempCursor(const ACursor: TCursor = crHourGlass): ITempCursor; begin Result := TTempCursor.Create(ACursor); end; end. ...using somthing like this for years (the original idea is from Jeroen Pluimer's i think). Use the SetTempCursor-Function in your code, and when the interface get out of scope, the corsur changes back to the old cursor. uses uTempCursor; procedure LongRun; begin SetTempCursor; // the default is crHourGlass // do the long running stuff end;
  16. ConstantGardener

    RAD server console Ext JS UI why not written in Delphi?

    ...it is dogfooding anyway! It‘s written in JavaScript and Sencha ExJs, one of the latest aquisations of emba.
  17. ConstantGardener

    Running UnitTests for Mobile Devices

    ...and thanks to Stefan for TestInsight!
  18. ConstantGardener

    Is it really good practice to create Forms only as needed? Always?

    ... in addition to David's comment. If you have plenty of forms, all created at the begin, your Startup-Time is looooong!
  19. ConstantGardener

    How to create common CreateForm method?

    TMYForm.execute; Or if TMYFORM.Execute then begin doSomething; end;
  20. ConstantGardener

    How to create common CreateForm method?

    TfrmBase = class (TForm) public constructor Create(AOwner: TComponent); override; destructor Destroy; override; class function Execute : boolean; virtual; end; class function TfrmBase.Execute: boolean; var Form: TfrmBase; begin Form:=Create(nil); try Result:=Form.showModal<>mrCancel; finally Form.Release; end; end; Inherit your forms from a BaseClass like this on. If you need an other behavior in the actual class you override the class-function.
  21. @pyscripter in rudy's post?
  22. ConstantGardener

    Detailed logging (for debugging)

    Look at http://blog.barrkel.com/2010/09/virtual-method-interception.html too.
  23. ConstantGardener

    Welcome to the English speaking Delphi-PRAXiS

    ....i second this!
×