A Delphi szolgáltatásainak kibővítése

A Delphi, rugalmassága miatt nagyon sok programozó számára az ideális fejlesztőeszköz. A komponens alapú fejlesztés igen könnyűvé és hatékonnyá teszi a munkát, de a komponens, és expert írás korlátlan lehetőségeket ad a rendszer bővítésére.

A Delphi fejlesztőeszköze igen komoly támogatást ad a fejlesztőknek. Nagyon hatékonyan dolgozhatunk vele, de ennek ellenére mindig megjelennek újabb igények, amiket jó lenne megvalósítani.

Fejlesztés közben sokszor van arra szükség, hogy egy már megírt függvényre el lehessen ugrani, láthassuk a forrásban lévő osztályokat, változókat, metódusokat. Komponensfejlesztés közben jó lenne, ha egy mozdulattal készíthetnénk el a property-ket, nem kellene az objektum deklaráció és a függvények megírása között ugrálni. Valószínűleg a Borlandnál is felmerültek ezek az igények, mert ezek közül elég sok mindent megvalósítottak már, de sajnos az ő megoldásuk nem mindig felel meg az én elvárásaimnak, ezért úgy gondoltam, kibővítem a Delphi szolgáltatásait.

Szerettem volna készíteni egy olyan expertet, amivel könnyen tudok mozogni a forrásban, kereshetek benne, láthatom a változókat, osztályokat, és a komponens fejlesztésekor is a legtöbb rutin munkát leveszi a vállamról.

A szolgáltatásokat az experteken keresztül bővíthetjük, azonban ezek készítéséről elég kevés írott dokumentumot lehet fellelni. A hasonló szolgáltatásokat nyújtó varázslók megnyitnak egy dialógus ablakot, ott megnézhetem, vagy elvégezhetem amire szükségem van, de nem látom folyamatosan munka közben az engem érdeklő információkat. Ezért az az ötletem támadt, hogy az én expertem épüljön be az editor ablakába. Mint biztos mindenki tudja, a Delphit is Delphiben írták, így kellő ismerettel minden megoldható. Ennek a kísérletezésnek és próbálkozásnak az eredményeként született meg a PIDEExp varázsló.

Expert írásakor két megoldás közül választhatunk. Írhatunk egyszerű komponenst vagy DLL-t. Én a komponens alapú varázslót választottam, mert annak telepítése sokkal egyszerűbb, mérete pedig nem annyira nagy, hogy nagyon leterhelje a Delphit.

A komponens telepítése után a Help menüben megjelenik egy Pammer IDE manager menüpont. A menüpont kiválasztásával kapcsolhatjuk be vagy ki a varázslót. (Projekt váltáskor vagy lezárásakor az expert is bezárul, szükség esetén újra meg kell nyitni!)

Az editor ablakában felül és jobb oldalt jelenik meg a varázsló. A jobb oldali ablak bezárható, és a mérete is beállítható.

A felső ComboBox-ban a forrásban lévő osztályokat, függvényeket láthatjuk, és el is ugorhatunk ezekre. Beállítható, hogy itt az osztályok, az osztályokban vagy az implementációs rész után lévő függvények jelenjenek meg.

A ComboBox előtt lévő Delphis gombra kattintva a kurzor alatt lévő függvényre ugorhatunk, illetve a balra mutató nyílra kattintva vissza a hívás helyére. A legelső gombbal frissíthetjük a megjelenítendő adatokat, ha erre esetleg szükség lenne.

Az igazi fejlesztői támogatás azonban a megnyíló jobboldali ablakban van. Itt függvényekre, változókra kereshetünk a szövegben, vagy metódusokat, változókat, property-ket szúrhatunk be egy mozdulattal a forrásba, illetve az osztályok változóit, függvényeit jeleníthetjük meg.

A kereső ablakban a megadott szó előfordulásait, vagy ennek hiányában a forrásban lévő osztályokat, és függvényeket láthatjuk. Az implementációs rész előtt lévő osztályok, függvények dőlt betűvel jelennek meg. Bármelyik sorra kattintva a kurzor a kiválasztott sorra ugrik. A Delphis gombra kattintva a kurzor alatti szó előfordulásai jelennek meg a listában. Az itt kigyűjtött sorokat ki is írhatjuk egy fájlba.

Az „Új definíciók” ablak sok rutinszerű munkát le tud venni a vállunkról. Ennek a segítségével új metódusokat, mezőket (field), és property-ket hozhatunk könnyen létre a forrásban. Kiválasztjuk mit, melyik osztályba kívánunk létrehozni, beállítjuk ennek paramétereit, és a varázsló elvégzi a bejegyzéseket a forrásban, majd a kurzor az új bejegyzés helyére ugrik az esetleges további módosításért.

Fejlesztés közben sokszor jó tudni, hogy a különböző osztályokban milyen változók és függvények vannak, és ezek mennyire hozzáférhetőek. Ezeknek a gyors elérésére szolgál a harmadik ablak, amiben a kiválasztott osztály paramétereit láthatjuk.

Mint látható a varázsló tényleg hatékonnyá tudja tenni a munkát. Használatával gyorsabban mozoghatunk a forrásban, az osztályok módosítása egyszerű, és a fejlesztés közben gyorsan elérhetjük a kívánt információkat. Az editorba beépülve pedig minden a fejlesztő keze alatt van, folyamatosan elérhetők a szolgáltatásai.

Pammer Pál