Jump to content

Attila Kovacs

Members
  • Content Count

    1967
  • Joined

  • Last visited

  • Days Won

    26

Everything posted by Attila Kovacs

  1. Attila Kovacs

    Regression - Delphi 12 - IsZero()

    You wanted to make your math lib available for the public, back in the days. Still waiting 😛
  2. var c : currency; begin c := Wert * 10; .... should make it calculating the same on all platforms, but I'm AFK at the moment.
  3. I do it this way: function TDSH3Visualizer.GetReplacementValue(const Expression, TypeName, EvalResult: string): string; begin ... if MatchText(TypeName, ['TFInteger', 'TFLargeInt', 'TFBit']) then DefExpr := Expression + '.AsInteger'; ... Eval(DefExpr, '', Result); end; Edit: you can also Eval() private fields like FIsNull FIsUndefind etc. very fast methods are slower, exceptions are very slow in the Eval() function TXYZVisualizer.Eval(const Expr: string; const FormatSpecifiers: string; var EvalResult: string): Boolean; var Done: Boolean; ResultStr: array [0 .. 255] of Char; ResultAddr, ResultSize, ResultVal: LongWord; EvalRes: TOTAEvaluateResult; CanModify: Boolean; begin Result := False; EvalResult := 'XYZ Visualizer error'; repeat Done := True; EvalRes := FCurThread.Evaluate(Expr, @ResultStr, Length(ResultStr), CanModify, eseAll, PAnsiChar(AnsiString(FormatSpecifiers)), ResultAddr, ResultSize, ResultVal, '', 0); case EvalRes of TOTAEvaluateResult.erOK: begin EvalResult := ResultStr; Result := True; end; TOTAEvaluateResult.erDeferred: begin FCompleted := False; FDeferredResult := ''; FNotifierIndex := FCurThread.AddNotifier(Self); try while not FCompleted do FDebugSvcs.ProcessDebugEvents; finally FCurThread.RemoveNotifier(FNotifierIndex); end; FNotifierIndex := -1; if FDeferredResult <> '' then EvalResult := FDeferredResult; Result := True; end; TOTAEvaluateResult.erBusy: begin FDebugSvcs.ProcessDebugEvents; Done := False; end; TOTAEvaluateResult.erError: begin Result := False; end; end; until Done; end;
  4. Attila Kovacs

    Delphi and "Use only memory safe languages"

    As an additional note to this "safety" topic. Just yesterday, it happened to me that the type of a form event parameter was defined under the same name in another unit as well, and the IDE didn't alert me, nor did the form load signal any issues during loading. Thus, the resulting code was completely wrong. The stack got shifted, and the event was returned to a garbage address. Originally, the parameter type was a class which was overridden in the other unit by a record. It was really fun trying to find the problem.
  5. Attila Kovacs

    Assign Null value to date mySQL

    FieldByName('STAT_CLOSED_DATE').Clear;
  6. Attila Kovacs

    wuppdi Welcome Page for Delphi 11 Alexandria?

    It's possible that older IDE's work differently. You can make that button optional if you have some settings already.
  7. Attila Kovacs

    wuppdi Welcome Page for Delphi 11 Alexandria?

    So, I opened 2 IDE's and started opening projects. They are written into the "...BDS\23.0\Closed Projects" key immediately, at opening a project. It would be also possible to load that key into the recent list, with an extra button.
  8. Attila Kovacs

    wuppdi Welcome Page for Delphi 11 Alexandria?

    okay, where do you get the values? "Closed Projects" is written instantly. even on opening the project
  9. Attila Kovacs

    wuppdi Welcome Page for Delphi 11 Alexandria?

    Some ppl. are running multiple IDE's parallel.
  10. Attila Kovacs

    wuppdi Welcome Page for Delphi 11 Alexandria?

    I'd like to propose a function that allows refreshing the recent projects with a button from the registry, as I'm using multiple IDEs. It would be cool.
  11. Attila Kovacs

    Hunting a unit reference

    Of course not, but you should execute a build and not compile it.
  12. Attila Kovacs

    Hunting a unit reference

    or opened in the IDE 😄 Build outside.
  13. Attila Kovacs

    Hunting a unit reference

    just rename that unit temprarily and do a build? huh?
  14. Attila Kovacs

    Delphi and "Use only memory safe languages"

    I don't believe their concern is memory leaks when they recommend using memory-safe languages, so I'm unsure what the focus of this conversation is.
  15. Attila Kovacs

    Work for Embarcadero Sales!

  16. Attila Kovacs

    Delphi and "Use only memory safe languages"

  17. Attila Kovacs

    Toolbar + ToolButton + TitleBar flicking

    According to Nostradamus, not anymore this year.
  18. Attila Kovacs

    Toolbar + ToolButton + TitleBar flicking

    Okay, apparently you are on windows 11 because on W10 I can't even see what this style does. This TitleBarPanel is also new for me, so I'm out sorry. But it looks interesting. I'm curious what the problem is.
  19. Attila Kovacs

    Toolbar + ToolButton + TitleBar flicking

    Create an MCVE.
  20. It's Sunday man. You haven't even met the hardcore yet. Be patient. Perhaps you could create a table to track how long it takes until you become angry again 😛
  21. Best of luck with that. The issue with these challenges isn't the problem they aim to solve, but rather, who on earth has the time for them.
  22. Why not? The whole app on the screenshot is written in object pascal, AFAIK it will even compile to your ubuntu.
  23. Attila Kovacs

    Delphi and "Use only memory safe languages"

    This rust appears to be yet another write-only language. Generics is fine. 🙂
  24. Attila Kovacs

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

    it will also be enough if QP is operational by the time D13 arrives
×