-
Content Count
1936 -
Joined
-
Last visited
-
Days Won
25
Everything posted by Attila Kovacs
-
Select the entire procedure/function?
Attila Kovacs replied to PeterPanettone's topic in General Help
https://youtu.be/SbZXiDE6GO4?t=48 -
Thinfinity VirtualUI - cloud-based conversion
Attila Kovacs replied to Mark Williams's topic in General Help
Yeah that's me, and I have a touch screen which I think the problem is. I tried my phone, Chrome on a S23 Ultra, it loads, but the GUI is unusable on that small display. -
Thinfinity VirtualUI - cloud-based conversion
Attila Kovacs replied to Mark Williams's topic in General Help
I've tried both, chrome and IE, the same, (they are actually the same nowadays anyway) I managed to get it working once, but the same error has occurred again. However, it wasn't functioning properly. I couldn't see the entire forms and such... ike there's no HDPI support. -
Thinfinity VirtualUI - cloud-based conversion
Attila Kovacs replied to Mark Williams's topic in General Help
now it's working, no HDPI support? -
Thinfinity VirtualUI - cloud-based conversion
Attila Kovacs replied to Mark Williams's topic in General Help
<o> yes, then I log in and I'm getting an empty site -
Thinfinity VirtualUI - cloud-based conversion
Attila Kovacs replied to Mark Williams's topic in General Help
just an empty page, do I need something on the client side? -
Delphi and "Use only memory safe languages"
Attila Kovacs replied to Die Holländer's topic in General Help
Doesn't matter. It was an example. -
Delphi and "Use only memory safe languages"
Attila Kovacs replied to Die Holländer's topic in General Help
TStringList has 4 other constructors with parameters. This would just pollute the code and cause traffic jams everywhere. -
Strange bug with string literals in RAD Studio 12
Attila Kovacs replied to luebbe's topic in RTL and Delphi Object Pascal
question is, if dfm's are affected too -
Delphi compiled EXE are flagged as malware by anti virus software
Attila Kovacs replied to Jaska's topic in General Help
Report them as false positive, include the exe. -
For those who prefer designing an application visually rather than coding it, this could be useful.
-
sorry, not Sherlock but @Rollo62 https://embt.atlassian.net/servicedesk/customer/portal/1/RSS-441 still laughing? 🙂
-
Thanks Lars, that did the trick indeed. I'm still not satisfied with the new system. It's similar as the "new forum" was = lame AF.
-
well, at the end it's an April Fools' Joke indeed.
-
Is this an April 1 joke?
-
I'm rather concerned about how the multiple windows will interact with older plugins and all of my stuff.
-
Wow, from now on, you can open the same file multiple times. That's going to be interesting.
-
that's quite a list
-
I read something in so from you but I can't find it, it was about the whole rtl float handling is rubbish or something like that. Not sure about the details.
-
You wanted to make your math lib available for the public, back in the days. Still waiting 😛
-
challenge Offical launch of the 1 Billion Row Challenge in Object Pascal
Attila Kovacs replied to Gustavo 'Gus' Carreno's topic in Tips / Blogs / Tutorials / Videos
var c : currency; begin c := Wert * 10; .... should make it calculating the same on all platforms, but I'm AFK at the moment.- 61 replies
-
- object-pascal
- free-pascal
-
(and 1 more)
Tagged with:
-
Simplified Debug Visualizers for all my TNullableTypes
Attila Kovacs replied to dummzeuch's topic in Tips / Blogs / Tutorials / Videos
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; -
Delphi and "Use only memory safe languages"
Attila Kovacs replied to Die Holländer's topic in General Help
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. -
Assign Null value to date mySQL
Attila Kovacs replied to Lainkes's topic in RTL and Delphi Object Pascal
FieldByName('STAT_CLOSED_DATE').Clear; -
wuppdi Welcome Page for Delphi 11 Alexandria?
Attila Kovacs replied to PeterPanettone's topic in Delphi IDE and APIs
It's possible that older IDE's work differently. You can make that button optional if you have some settings already.