Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 11/04/18 in all areas

  1. The correct declaration would be: type TPerson = class Name: string; function ToString(Quote: boolean): string; reintroduce; overload; end;
  2. Mujkoni

    Delphi SQL Formatter

    SQL to Delphi code Download Default option is CommandText, but you can change it. There is also option SQL.Add
  3. Kryvich

    Inline Variables Coming in 10.3

    Or even better to enchance the with statement as follows: with const cr := ControlRange as IHTMLControlRange do begin cr.select; cr.execCommand('Cut', False, EmptyParam) { do not localize } end; "const cr" because inside the statement cr is used only to access its members.
  4. Ugochukwu Mmaduekwe

    QRCodeGenLib4Pascal

    I know most of you are already aware of this but I just wanted to indicate that I recently just added *experimental* FMX Support and if everything goes well, I plan to merge it to the official repository. I will appreciate it if you all can help me test support in other supported Firemonkey platforms, I have just been able to test on only the Windows Platform and it seems to work fine. FMX Branch can be found here Instructions on how to Compile the Library for FMX can be found in the FMX Branch README. Thanks.
  5. David Hoyle

    Theming in the IDE

    With reference to theming in 10.2.3, I've had a mixed bag. My main dockable window for my code browser themes if I do it one way but blows up the IDE if I refactor the code to an external record to encapsulate the methods. The options frames theme but most if not all of my model dialogues AV when registering them for theming (IOTAIDEThemingServices250.RegisterFormClass()) and I've lost count of the number of hours of trail and error trying to determine what is in the form (DFM) that causes it.
  6. Kryvich

    Compiler Defines for FireMonkey and VCL in inc files.

    Yes, I was going to suggest to create frameworksetting.inc in your application source folder with a suitable define (FMX or VCL). And then {$include frameworksetting.inc} to every unit of your library. Then you don’t have to manually modify UserTools.proj on every developer's machine.
  7. Kryvich

    Compiler Defines for FireMonkey and VCL in inc files.

    Form the Delphi help, "IF directive": This code works fine for me: procedure TForm1.Button1Click(Sender: TObject); begin {$IF DECLARED(FireMonkeyVersion)} ShowMessage('Here is FireMonkey!'); {$ELSE} ShowMessage('Perhaps it''s VCL'); {$IFEND} end;
  8. Ouch! Thank you. :) P.S. I encountered this situation in GOLD Parser Engine 5 that I've converted from Lazarus. Now this project compiles without any warnings, I'm happy!
  9. @pyscripter Thank you for the finds! I had some free time, so I adapted Teo's parser for Delphi. Also corrected some bugs in this parser and in the grammar for the Delphi 7.0 language. https://github.com/Kryuski/GOLD-Parsing-System-For-Delphi @Markus Kinzler Interesting. I will definitely follow this project. Update: Parse::Easy is written using Perl. Yes, it can generate a lexer and a parser in Delphi laguage, but hey! I do not want to install another IDE and learn a new language when such things may well be written in Delphi. Once they wrote ErrorInsight on J#, and I think it was a bad decision. Maybe later, I or someone else can rewrite Parse::Easy to Delphi. But now it does not make sense, since it is still in the beta stage.
  10. Uwe Raabe

    Compiler Defines for FireMonkey and VCL in inc files.

    Create or extend a file named UserTools.proj in %APPDATA%\Embarcadero\BDS\19.0 (for 10.2 Tokyo) with the following code: <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <DCC_Define>FrameWork_$(FrameworkType);$(DCC_Define)</DCC_Define> </PropertyGroup> </Project> Now you can check for the project framework with {$IFDEF FrameWork_VCL} and {$IFDEF FrameWork_FMX}.
  11. https://blog.gurock.com/only-coding-standard
  12. Alexander Elagin

    Delphi SQL Formatter

    SQL.Add (or AddStrings) does not clear the previous content of the SQL text possibly producing the incorrect result. Either explicitly clear the list with SQL.Clear before adding new lines or simply use the Text property: SQL.Text := ....
×