HTML and CSS Reference
In-Depth Information
(und nicht vorkomprimiert ist), kann man einen anderen, beispielsweise den YUI Compressor [4],
verwenden. In unserem Beispiel reduzieren wir den Editor so, dass nur die gewünschten grundlegen-
den Formatierungsoptionen zur Verfügung stehen. Wer mehr Funktionalität benötigt, muss entspre-
chend weniger Plug-ins entfernen, dafür aber auch eine etwas größere js -Datei in Kauf nehmen.
Sofern die JavaScript-Komponente über Styling oder andere statische Konfigurationsmöglichkeiten
verfügt, sollte sie ebenfalls angepasst werden. Um ein möglichst neutrales Erscheinungsbild zu er-
reichen, wurde im vorliegenden Beispiel ein vorhandenes Skin leicht modifiziert übernommen.
Damit die benötigten Ressourcen (Bilder, CSS- und JavaScript-Dateien etc.) von RAP ausgeliefert
werden können, müssen diese beim Framework registriert werden. Dazu bietet RAP einen Resour-
ceManager , auf dessen Instanz mittels RWT.getResourceManager() zugegriffen werden kann. Die
Ressourcen müssen nur einmal pro Applikation registriert werden. Da bei RAP mehrere Applikatio-
nen parallel laufen können, kann das nicht statisch geschehen. In der in Listing 3.3 gezeigten Metho-
de registerResources() werden die Ressourcen nur beim ersten Aufruf innerhalb der Applikation re-
gistriert. Die Namen der Dateien werden aus einer Array-Konstante ( RESOURCE_FILES ) ausgele-
sen. Um den URL zu ermitteln, muss zudem noch getURL implementiert werden. Dabei wird da-
von ausgegangen, dass die HTML-Datei der erste Eintrag in RESOURCE_FILES ist. Für zukünftige
RAP-Versionen ist dafür ein vereinfachtes API geplant. Der Editor kann jetzt bereits in einer einfa-
chen Demoanwendung angezeigt werden (Abb. 3.2).
private static final String RESOURCES_PATH = "resources/";
private static final String REGISTER_PATH = "ckeditor/";
private void registerResources() {
IResourceManager resourceManager = RWT.getResourceManager();
boolean isRegistered
= resourceManager.isRegistered
( REGISTER_PATH + RESOURCE_FILES[ 0 ] );
if( !isRegistered ) {
try {
for( String fileName : RESOURCE_FILES ) {
register( resourceManager, fileName );
}
} catch( IOException ioe ) {
throw new IllegalArgumentException
( "Failed to load resources", ioe );
}
}
Search WWH ::




Custom Search