Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 01/27/22 in Posts

  1. Brandon Staggs

    Parnassus Bookmarks for Delphi 11 Alexandria?

    I loved Parnassus plug-ins, but the delayed updates, combined with odd DLL issues I was having when trying to manage multiple versions of Delphi while using the plug-ins and having to use Get-It forced me to un-learn my reliance on them. Usable navigation, a minimap, and improved bookmarks should all be native in the IDE at this point, IMO. As someone else mentioned, I am glad that their high-dpi updates broke these plug-ins, finally someone at Emba actually has to USE the mess that is Delphi high-DPI support. That's the only way it will ever be truly fixed.
  2. In the category Fun with Generics: https://blog.grijjy.com/2022/01/25/crgp/
  3. Joseph MItzen

    The Curiously Recurring Generic Pattern

    Doesn't using classes, abstract classes, generics, hidden properties, class constructors, and of course a typecast of sorts anyway for such a simple problem make you want to throw up your hands in despair and swear to never use static typing again?
  4. angeloman

    problem with FDBatchMove

    Solved. It wasn't an fdbatchmove parser problem but it it happens because the analyzesamples was setted to 100 and the csv file line was at the near the end. So the target field length was to small to contain the whole field. setting it to 100000 works good
  5. Stefan Glienke

    The Curiously Recurring Generic Pattern

    The issue is not static typing but the ridiculous amount of ceremony required.
  6. Dalija Prasnikar

    Class methods Polyformism

    procedure TForm2.Button1Click(Sender: TObject); begin Edit1.Text := inttostr(TChild.id) { <= Calling the Child's property} end; When you use the above call, TChild.id calls static GetMasterID method. Because that method is static it does not have Self parameter passed, which in context of class methods represents class itself. So when you are inside GetMasterID method, compiler no longer knows from which class you have called that method. It only knows the class where the method is implemented, in this case TMaster. And calling GetChildID will be interpreted as calling TMaster.GetChildID. If you remove abstract on TMaster.GetChildID and implement that function as regular virtual method, which returns different integer than TChild.GetChildID you will no longer have abstract exception, but you will get wrong results.
  7. This is exactly what I'm trying to do: You missed to quote my suggestion to the end: procedure TForm2.Button1Click(Sender: TObject); begin Edit1.Text := inttostr(TChild.GetChildId) { <= Calling the Child's class function} end;
  8. timfrost

    Delphi 5 - VirtualTreeView

    A quick google tells me that VTV 5 dropped support for Delphi 5 and 6, and that the last VTV 4 was 4.8.7, but I have no idea whether this is accurate I have downloads only back to VTV 6.3.
  9. Fr0sT.Brutal

    Delphi 5 - VirtualTreeView

    Github repo Most likely - double free when VTV's OnFreeNode disposes linked object and it also gets freed somewhere else
  10. A datamodule has its advantage when component properties are loaded from the DFM - that includes wiring of components and event handlers. (I am aware that some see that as a disadvantage) Another point is that, if you don't actively prohibit that, ist is registered in Screen.DataModules and can be found without that dreaded global instance variable.
  11. Uwe Raabe

    Windows Software Development Kit - why?

    The docs are pretty clear: https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Installation_Notes#Windows_10_SDK
  12. Dalija Prasnikar

    Which option to use for a large batch of REST queries?

    Testing is one things, calling something that serves no purpose is another. If the system is over stressed then pumping messages from UpdateLV will not make it run any faster. If the system is not stressed it will pump messages even without you forcing it, literally as soon as you exit UpdateLV method. If you have too many items on list view and UpdateLV is killing your overal performance, then you should modify that logic and instead of updating the whole list all the time update only item that is modified. Yes, you could see some differences in behavior with Application.ProcessMessages, but none that really matter. Just remove those.
  13. Serge_G

    Changing Style at runtime and TListview

    Hi, this "bug" is corrected in version 11 (and perhaps 10.4, I don't check that)
  14. David Schwartz

    The Curiously Recurring Generic Pattern

    Ok, after reading the article, it makes more sense. It will take some pondering to come up with legitimate use cases. The article ends with: A while back, I was trying to translate a Swagger spec into some Delphi code, and I ran into some issues that this might solve. The Swagger spec is read at run-time and the program generates Dephi code that gets compiled later on. The problem is that the typing isn't really known at run-time when you're reading the Swagger spec. But emitting code that resolves it at a subsequent compile time without having to know it when it's emitted might solve the problem...
  15. PeterPanettone

    Delphi MRU Project Manager

    The version after next will have custom logical project groups inside MRU Project Manager.
  16. dummzeuch

    Parnassus Bookmarks for Delphi 11 Alexandria?

    Your definition of clumsy is somebody else's definition of efficient. Ctrl+K Ctrl+G to drop a bookmark, Ctrl+Q Ctrl+G pick up the topmost bookmark, and Ctrl+Alt+Q Ctrl+Alt+G to replace the topmost bookmark is as difficult to remember as any other key combination. I actually appreciate that they did not take away yet another simple keyboard shortcut from us plug-in developers. Talking about WordStar: Ctrl+K N and Ctrl+Q N is yet another key combination to access the Toggle Bookmarks, so these Stack Bookmarks shortcuts fit right in.
×