• Nieuwe artikelen

  • [IDE-tips] IDE Insight

    De IDE Insight tool. (Ctrl+(punt) of F6)

    Ik noemde 'm al even kort in deze thread, maar hij verdient wel een aparte tip, denk ik.
    De makkelijkste shortcut is F6, maar een 'betere' is Ctrl+., want "You're in control. Period."


    IDE Insights is beschikbaar vanaf Delphi 2010. In deze versie verschijnt hij nog als een popup-scherm wanneer je de magische toetsaanslag Ctrl+. aanslaat. In latere versies (in ieder geval in XE5) is het een zoekboxje op de toolbar.


    Dit zoekboxje ziet er verraderlijk simpel uit, maar je kan er haast alles mee vinden: code templates, componenten van het component palette, componenten op je forms en data modules, ide-instellingen en nog veel meer.

    Wat je kunt vinden hangt deels af van de context. Wanneer je in de code editor zit, dan kun je code templates vinden (die werken overigens handiger met Ctrl+J). In de form designer kun je componenten op je form of datamodule vinden. Met name dat laatste is heel handig, zeker als je datamodules hebt met veel componenten er op. Wanneer je, zoals ik, voor elke query een apart componentje maakt, dan helpt het veel als je die gewoon kunt vinden. Open dus je datamodule, druk op F6 en typ 'qryKlant', Enter om de klantquery te vinden en te selecteren. Nieuwe query nodig? F6, 'adodataset', Enter, en je hebt een nieuwe TAdoDataSet tot je beschikking. Je hebt je component palette dus niet meer nodig, en evenmin die onhandige dropdown met componenten boven je object inspector.

    Enkele voorbeelden:


    Het zoeken naar een button (XE). Let wel op de arbitraire filtering in XE.


    Het zoeken naar een button (XE). Door op 'Show all' te klikken krijg je meer buttons te zien.


    Zoeken naar de optie 'Library path'. Andere paden worden ook getoond, omdat die in de categorie 'library' zitten.


    Zoeken naar een component (XE5). De dropdown toont het component op de actieve datamodule, maar ook andere applicatie-onderdelen met een matchende naam.

    In bovenstaand screenshot uit Delphi XE5 zie je verschillende applicatie-onderdelen die overeenkomen met de getypte zoekopdracht. In de praktijk is dit een aantal keer dezelfde datamodule, maar wel steeds in een andere context.
    • Components
      De bovenste twee opties zijn de datamodule en het TIdHTTP component die je ziet in de actieve form designer.
    • Files
      Daaronder twee bestanden uit het project die met de naam overeenkomen. Als je die kiest, wordt de code van het gekozen bestand geopend.
    • Forms
      Dan twee 'forms' (datamodules) uit het project. Dit zijn overigens dezelfde datamodules, maar als je deze opties kiest ga je direct naar de form designer.
    • New items
      Dit zijn weer dezelfde bestanden, maar nu uit het overzicht 'New item' in het menu 'File'. Als je hier een datamodule kiest, dan wordt er een nieuwe datamodule aan het project toegevoegd, die van de gekozen datamodule is afgeleid.
    • Open files
      Hier zie je de datamodule die open staat.

    Het getoonde voorbeeld is misschien wat extreem, omdat het zoveel varianten van hetzelfde item laat zien, maar dit gebeurt alleen als je zoekt naar forms of datamodules. Open files en inherited items zijn natuurlijk niet van toepassing op componenten. Bovendien verrichten de verschillende resultaten ook verschillende handelingen, en hebben ze dus allemaal op hun eigen manier nut.

    Hieronder nog een screenshot van het zoeken naar 'IdHTTP'. In de resultaten zie je drie componenten die die naam bevatten. Die componenten kan ik zo direct toevoegen aan de datamodule. Onderaan staat nog een vierde component, namelijk de TIdHTTP die al op het form staat. Dit component heeft geen overeenkomstige naam, maar wordt wel op classname gematcht.

    IdHTTP-componenten zoeken (XE5)

    Referentie: IDE Insight op Embarcadero Docwiki.
    This article was originally published in forum thread: [IDE-tips] IDE Insight started by GolezTrol View original post
  • Nieuwste forumberichten

    mrniceguy

    Parameters zetten/uitlezen defraganalysis

    Dat geeft nog steeds een foutmelding. De parameter DefragAnalyseOutput zal dan waarschijnlijk ook een andere structuur verwachten.

    mrniceguy Today, 15:34 Go to last post
    marcov

    Parameters zetten/uitlezen defraganalysis

    Wel, Delphi booleans worden niet gesnapt door iets wat niet Delphi is, zelfs C/C++ types die boolean heten en 0,1 semantics(b.v. GTK) hebben zijn zelden

    marcov Today, 15:26 Go to last post
    marcov

    FPC 3.2.0rc1 released!

    Hello,

    We have placed the first release candidate of the Free Pascal Compiler
    version 3.2.0 on our ftp servers.

    You

    marcov Today, 12:28 Go to last post
    marcov

    Delphi 10.4 beta

    Ik dacht dat TComponent wel ref counted was vanwege ActiveX forms e.d. Blijkt dat we beide gelijk hebben. In geval van activex wordt de refcount gedelegeerd,

    marcov Today, 11:56 Go to last post
    EricLang

    Delphi 10.4 beta

    Klopt een form is lastig te "interfacen" qua memory. Maar doordoor ik weer heel makkelijk om er interfaces in te hangen (hoe zeg je zoiets haha).

    EricLang Today, 01:44 Go to last post
    GolezTrol

    Delphi 10.4 beta

    Interfaces toevoegen aan een design time form is geen probleem. Volgens mij is er al een ancestor die IUnknown implementeert, maar standaard hebben ze

    GolezTrol Yesterday, 23:44 Go to last post