################################################################################
##
##  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 = Anger en hjälpklass som implementerar komponentens åtkomstbeteende.
alternative.help = Anger en rekommenderad ersättning för den här klassen.
arrayElementType.help = Anger tillåten datatyp för element i den här matrisen.
bindable.help = Indikerar att egenskapen eller metoden, eller alla egenskaper för den här klassen, kan användas i databindningsuttryck.
defaultProperty.help = Anger vilken egenskap i den här klassen som kan anges i MXML utan att ta med värdet i en egenskapstagg.
deprecated.help = Markerar den här egenskapen, metoden eller klassen som föråldrad och inte längre rekommenderad för användning.
embed.help = Bäddar in en resursfil (exempelvis JPEG, PNG, MP3, XML, o.s.v.) i en SWF-fil, och initierar den här variabeln för motsvarande resursklass.
event.help = Deklarera en händelse som den här klassen skickar.
exclude.help = Utelämnar en specificerad egenskap, metod, format eller händelse för den här klassen från Flash Builders kodtips och från ASDoc.
excludeClass.help = Utelämnar den här klassen från Flash Builders kodtips och från ASDoc.
hostComponent.help = Anger den SkinnableComponent som kommer att använda detta Spark-skal.
iconFile.help = Anger en ikon som representerar den här komponenten i Flash Builder.
inspectable.help = Anger hur egenskapen visas i Flash Builders egenskapskontroll. Den används även för att ange tillåtna värden i MXML för en egenskap av typen Sträng.
managed.help = Indikerar att LCDS ska övervaka alla ändringar (skapa/uppdatera/ta bort) i instanser av den här klassen. Hanterade klasser är automatiskt bindningsbara.
nonCommitingChangeEvent.help = Anger händelsen som indikerar finmaskiga värdeändringar för den här egenskapen, till exempel modifieringar av TextInput före bekräftelse.
percentProxy.help = Anger en procentbaserad egenskap som motsvarar den här egenskapen. Till exempel width="100%" i MXML anger värdet 100 i percentWidth i ActionScript.
remoteClass.help = Anger fjärrklass som motsvarar den här klassen för AMF-serialisering.
resourceBundle.help = Indikerar att den här klassen använder ett visst resurspaket så att paketet kompileras in i SWF-filen.
richTextContent.help = Indikerar att alla tecken ska tolkas som text när den här egenskapen är inställd för att använda teckendata i MXML.
skinPart.help = Indikerar att värdet för den här egenskapen är en skaldel i den här komponentens skal.
skinState.help = Deklarerar ett visningsläge som måste stödjas av den här komponentens skal.
style.help = Deklarerar ett CSS-format som den här komponenten stöder.
swf.help = Anger information i SWF-huvudet för det här ActionScript-programmet.
transient.help = Indikerar att egenskapen inte ska delta i AMF-serialisering.
