Drupal Ontwikkeling eenvoudiger met de Qt Assistant - Deel 1

Als je mijn blog ook maar enigszins volgt, weet je dat ik KDE 4 als desktop omgeving heb. Ik heb ook een hoop ontwikkeld (vooral wat aangeklooid tot nu toe, alleen tContact is gepubliceerd) voor Drupal. Een van de programma's die mij daarbij helpt is de Qt Assistant, die bij Qt 4 en later meegeleverd wordt. Het is een snel programma om documentatie te lezen, met een goede index om razendsnel die kleine details van elke functie in Qt 4 op te kunnen zoeken... of Drupal. Ik zal je laten zien hoe ik de boel heb aangepakt.

Oh, als je niet zoveel hebt met al deze technische zooi: je hoeft niet verder te lezen, natuurlijk.

Opmerkingen vooraf

Ten eerste: deze gids gaat vooral over hoe de Drupal API in de Qt Assistant terecht komt, maar het zou voor zo'n beetje elk C++/PHP/Java/Python project enz. moeten werken, zolang Doxygen er mee overweg kan. Zie de Doxygen website voor informatie hoe je je code moet documenteren enzovoorts. Helaas is het mij nog niet gelukt om de PHP documentatie zelf geïntegreerd te krijgen in de Qt Assistant.

Ik gebruik soms ook wat scripts die vanuit een terminal of shell gedraaid moeten worden. Dit zou in principe geen probleem moeten zijn voor Linux of Mac gebruikers, voor Windows is het misschien nodig om CygWin te gebruiken. Helaas heb ik dit alles niet in Windows geprobeerd, dus als iemand handige/bruikbare tips in de opmerkingen kan achterlaten voor Windows gebruikers, dan is dat zeer welkom.

Voorbereiding

Zo, je bent er nog. Het eerste wat er moet gebeuren is Qt4 installeren. Dat kun je downloaden van QtSoftware.com voor zo'n beetje elk platform. Gebruik de LGPL/Free versie van het Framework of SDK. Voor Linux gebruikers zit dit overigens vaak in de repositories van de distributie, je moet misschien wel de -dev of -devel pakketten installeren.

Punt 2: download Drupal van Drupal.org en pak het ergens uit op je harde schijf. Je kunt natuurlijk ook je bestaande Drupal installatie met alle modules gebruiken, of welk product je dan ook wilt kunnen gebruiken met de Assistant (mits je de broncode hebt). Je kunt ook meerdere versies van Drupal gebruiken, om zo los van elkaar de documentatie van Drupal 5, 6 en 7 te hebben. De keuze is aan jou. Je hoeft 't overigens niet te installeren, je hebt genoeg aan het beschikbaar maken van de broncode.

Voor Drupal is het ook handig om de Ontwikkelaarsdocumentatie van CVS te halen. Hierin staan wat extra help pagina's zoals de FAPI Referentie en meer, en documentatie over alle hooks (hook_* functies). Ik zal de precieze instructies hier niet herhalen. Je vindt de instructies namelijk op drupal.org (Engelstalig).

Als laatste is het de beurt aan Doxygen (www.stack.nl/~dimitri/doxygen/). Linuxgebruikers vinden dit weer in de repository van de distributie. Dit programma leest de documentatie uit de broncode en zet deze in handige HTML bestanden - en uiteindelijk ook de Qt Assistant.

Qt Assistant - Een klein overzicht

Nu alle nodige software is geïnstalleerd, kun je even een kijkje nemen in wat de Qt Assistant precies doet voor Qt. Als het goed is vind je het in de programmastarter/start menu/waar dan ook (Mac: /Developer/Applications/Qt) of door gewoon "assistant" vanuit een terminal. Probeer het maar, je zou iets moeten zien dat er ongeveer zo uit ziet:

Qt Assistant

Laten we even een functie opzoeken waarvan we een (deel van) de naam kennen: aboutQt(). Klik op het Index tabblad aan de linkerkant, vul about in en je ziet een lijst van declaraties en algemene onderwerpen met about in de naam. Dubbelklik op aboutQt en de Qt Assistant vraagt je welk onderwerp je precies wilt bekijken, QApplication of QMessageBox. Ik heb gekozen voor QApplication in de onderstaande screenshot. Daadwerkelijke documentatie!

Qt Assistant

Als laatste nog een functie die ik niet zo vaak gebruik, maar wel razendsnel is: de zoekfunctie. Je vindt dit tabblad aan de rechterkant, net boven je documentatie. Zoek naar "about" en je krijgt iets wat lijkt op onderstaande screenshot, erg handig als je alleen een globaal onderwerp weet van iets wat je nodig hebt:

Qt Assistant

Speel wat rond en als je durft: probeer alvast de Drupal documentatie in de Assistant te krijgen. Dat zal in het volgende deel besproken worden - de gehele Drupal (en modules) API, geheel zonder het door de Qt documentatie te mixen.

Andere delen in deze serie:

afbeelding van Rosana

Re: Drupal Ontwikkeling eenvoudiger met de Qt Assistant - Deel 1

Yay, een comment van Rosie!