-
Content Count
2268 -
Joined
-
Last visited
-
Days Won
46
Everything posted by Fr0sT.Brutal
-
I understand all of the circumstances - project is free, nobody obliges anything, devs work at it in their spare time and so on. Just mentioning the result. I had experience working with a project of moderate size (PasDoc) in Lazarus and the experience was OK but debugger just drove me sad.
-
...with historical excursus 🙂
-
Okay, built FPC/Laz from trunk. Started debugging. Goodbye. Yes, this is annoying. However, I find useful unfolding on a real error - I use to enter "(*" at some place to unfold everything below.
-
Ctrl-K+M for methods, Ctrl-K+R for regions. Anyway I want to tell the editor what I'm folding not where these fragments are in the code. I probably want to fold all long comments, or nested procedures inside current procedure only, or all methods of currently focused class, or anything except currently focused class... options are endless when the folding engine operates full-featured AST instead of filthy fold-tree P.S. I added an example to my previous post
-
Wow, you're right, all components are read after call to inherited c-tor. That's good. Adding c-tor still requires some more code but it could be fastened by templates
-
No. Top-level procedures could have any folding level and there could be fragments of the same folding level which I do not want to fold (consider: class declaration - f.l. 1, routines = f.l. 1, methods inside a region - f.l. 2. You can never fold routines+methods and leave class decl in one call). And I obviously don't want to count which folding level I'm currently on (so this 1-9 hotkeys are absolutely useless feature IMHO).
-
Duh. Sorry for unclear phrase. I meant "Fold ALL procedures" hotkey which I use frequently in Delphi.
-
Damn. While this is acceptable (though requiring more code) option for inner fields it's completely useless for initing of child controls. And I don't trust OnShow because it could be called multiple times.
-
If only it were possible to build C/C++ OBJ files inside the EXE without hassle...
-
Which command does this?
-
Directive is just a syntax sugar. THugeArray = array[0..999999] of X; PHugeArray = ^THugeArray; PHugeArray(list)^[N] :=...
-
FPC/Lazarus pros: - More features in language and in IDE - More platforms supported - Code tools correctly handle $IF blocks which Delphi can't for about 15 years Cons: - Debugger SUCKS - Some Delphi features not available (RTTI, anonymous functions) - IDE cannot fold procedures* - ridiculously missing the very important UI feature added * I mean "Fold ALL procedures" hotkey
-
TObject, InstanceSize and thread synchronization
Fr0sT.Brutal replied to chkaufmann's topic in RTL and Delphi Object Pascal
Haven't you noticed that: -
Provided you have your clocks correctly synced
-
TOpenDialog/TFileOpenDialog => how to to bypass file system redirection?
Fr0sT.Brutal replied to Nigel Thomas's topic in VCL
StringReplace(FilePath, 'SysWOW64', 'System32') 😄 -
Dumb question - do you actually have leaks?
-
Can't make a popup form go behind the main form in z-order
Fr0sT.Brutal replied to DennisTW's topic in VCL
You'll get several annoying glitches with this setting like window thumbnail displayed incorrectly, not working minimize command with Win+Down and so on -
Translit is another compromise option
-
No You'll have to use some other way
-
https://github.com/Fr0sT-Brutal/Delphi_StackTraces with Ice.Utils.GetCurrentAddress function you can get address of current line in the executable, then launch the app in debugger and use "Goto address". Or at least determine current function with routines from Ice.Debug unit (requires MAP file generated)
-
Is there buffered Memory stream implementation available
Fr0sT.Brutal replied to Tommi Prami's topic in RTL and Delphi Object Pascal
In your case of one-time check, the most simple option is to log breakpoint passes (evaluate some expression + log result) then copy to some text editor and count the lines -
Hiring-related question: Delphi + javascript ?
Fr0sT.Brutal replied to David Schwartz's topic in Cross-platform
IMHO: look for Delphi WebCore dev who knows a bit of JS. If you build the GUI with WebCore and only need to integrate some JS libs, JS knowledge is not critical (well, some basic knowledge will be enough). But mixing WebCore with JS libs heavily doesn't seem clever option to me. The ideal solution is back-end with textual API only + JS-powered UI. Then you only need one Delphi dev for server and any JS-junior to build UI -
Is there buffered Memory stream implementation available
Fr0sT.Brutal replied to Tommi Prami's topic in RTL and Delphi Object Pascal
You can also include debug DCU's, set non-stopping breakpoint to Stream's realloc method and see how many times it will be called -
Alas, no. The info I read was scattered into numerous topics where he explained why there's no "quick & simple" replication. It was Dmitry Sibiryakov, the one of active contributors to FB code, and the product is https://www.ibphoenix.com/products/software/ibreplicator The forum where I read that is dead now so maybe you can only reach Dmitry in FB mailing list.
-
Is there buffered Memory stream implementation available
Fr0sT.Brutal replied to Tommi Prami's topic in RTL and Delphi Object Pascal
In this case I think this could be optimized. Depending on overall sizes, of course. Reallocating 100-Mb chunks slow down the process anyway even if FastMM reserves some space. In this application (lots of writing, total large size) that stream you mentioned (storing its contents in separate small chunks) will beat any contiguous periodically growing buffer. Another option, of course, it so actually stream the data not buffer.