################################################################################
##
##  Licensed to the Apache Software Foundation (ASF) under one or more
##  contributor license agreements.  See the NOTICE file distributed with
##  this work for additional information regarding copyright ownership.
##  The ASF licenses this file to You under the Apache License, Version 2.0
##  (the "License"); you may not use this file except in compliance with
##  the License.  You may obtain a copy of the License at
##
##      http://www.apache.org/licenses/LICENSE-2.0
##
##  Unless required by applicable law or agreed to in writing, software
##  distributed under the License is distributed on an "AS IS" BASIS,
##  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
##  See the License for the specific language governing permissions and
##  limitations under the License.
##
################################################################################
accessibilityClass.help = Gibt eine helper-Klasse an, die das Verhalten dieser Komponente für die behindertengerechte Bedienung implementiert.
alternative.help = Gibt eine empfohlene Ersetzung für diese Klasse an.
arrayElementType.help = Gibt den zulässigen Datentyp für die Elemente dieses Arrays an.
bindable.help = Gibt an, dass diese Eigenschaft bzw. Methode oder alle Eigenschaften dieser Klasse in datenbindenden Ausdrücken verwendet werden können.
defaultProperty.help = Gibt an, welche Eigenschaft dieser Klasse in MXML festgelegt werden kann, ohne ihren Wert in ein property-Tag einzuschließen.
deprecated.help = Kennzeichnet diese Eigenschaft, Methode oder Klasse als veraltet. Es wird empfohlen, sie nicht mehr zu verwenden.
embed.help = Bettet eine Elementdatei (wie JPEG, PNG, MP3, XML usw.) in eine SWF-Datei ein und initialisiert diese Variable für die entsprechende Elementklasse.
event.help = Deklariert ein von dieser Klasse ausgelöstes Ereignis.
exclude.help = Schließt eine angegebene Eigenschaft, Methode, einen Stil oder ein Ereignis dieser Klasse aus den Codehinweisen von Flash Builder und aus ASDoc aus.
excludeClass.help = Schließt diese Klasse aus den Codehinweisen von Flash Builder und aus ASDoc aus.
hostComponent.help = Gibt die SkinnableComponent an, die diese Spark-Skin verwendet.
iconFile.help = Gibt ein Symbol an, das diese Komponente in Flash Builder darstellt.
inspectable.help = Gibt an, wie diese Eigenschaft im Eigenschafteninspektor von Flash Builder dargestellt wird. Auch verwendet, um die in MXML zulässigen Werte für eine Eigenschaft vom Typ String anzugeben.
managed.help = Gibt an, dass LCDS alle Änderungen (erstellen/aktualisieren/löschen) an Instanzen dieser Klasse überwachen soll. Verwaltete Klassen sind automatisch bindbar.
nonCommitingChangeEvent.help = Gibt das Ereignis an, das feingranulare Wertänderungen dieser Eigenschaft anzeigt, z. B. Änderungen an einem TextInput vor der Bestätigung.
percentProxy.help = Gibt eine dieser Eigenschaft entsprechende Eigenschaft auf Prozentbasis an. Beispiel: width="100%" in MXML setzt percentWidth in ActionScript auf 100.
remoteClass.help = Gibt die Remote-Klasse an, die dieser Klasse für AMF-Serialisierung entspricht.
resourceBundle.help = Gibt an, dass diese Klasse ein bestimmtes Ressourcenpaket verwendet, sodass das Paket in die kompilierte SWF-Datei eingeht.
richTextContent.help = Gibt an, dass alle Zeichen wörtlich als Text zu interpretieren sind, wenn diese Eigenschaft in MXML mithilfe von Zeichendaten festgelegt wurde.
skinPart.help = Zeigt an, dass der Wert dieser Eigenschaft ein Skinteil der Skin dieser Komponente ist.
skinState.help = Deklariert einen Ansichtsstatus, den die Skin dieser Komponente unterstützen muss.
style.help = Deklariert einen CSS-Stil, den diese Komponente unterstützt.
swf.help = Gibt Informationen für den SWF-Header dieser ActionScript-Anwendung an.
transient.help = Gibt an, dass diese Eigenschaft nicht an der AMF-Serialisierung teilnehmen soll.
