<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="fi">
<context>
    <name>Object</name>
    <message>
        <source>Duplicate method name</source>
        <translatorcomment>QML-virheilmoitukset on jätetty kääntämättä, koska ne on tarkoitettu vain ohjelmistokehittäjille ja koska niillä haetaan usein lisätietoa hakukoneella. Suomentaminen todennäköisesti hankaloittaisi ymmärtämistä ja vikojen jäljittämistä.</translatorcomment>
        <translation>Duplicate method name</translation>
    </message>
    <message>
        <source>Method names cannot begin with an upper case letter</source>
        <translation>Method names cannot begin with an upper case letter</translation>
    </message>
    <message>
        <source>Illegal method name</source>
        <translation>Illegal method name</translation>
    </message>
    <message>
        <source>Duplicate scoped enum name</source>
        <translation>Duplicate scoped enum name</translation>
    </message>
    <message>
        <source>Duplicate signal name</source>
        <translation>Duplicate signal name</translation>
    </message>
    <message>
        <source>Duplicate property name</source>
        <translation>Duplicate property name</translation>
    </message>
    <message>
        <source>Property names cannot begin with an upper case letter</source>
        <translation>Property names cannot begin with an upper case letter</translation>
    </message>
    <message>
        <source>Duplicate default property</source>
        <translation>Duplicate default property</translation>
    </message>
    <message>
        <source>Duplicate alias name</source>
        <translation>Duplicate alias name</translation>
    </message>
    <message>
        <source>Alias names cannot begin with an upper case letter</source>
        <translation>Alias names cannot begin with an upper case letter</translation>
    </message>
    <message>
        <source>Property value set multiple times</source>
        <translation>Property value set multiple times</translation>
    </message>
</context>
<context>
    <name>QInputMethod</name>
    <message>
        <source>InputMethod is an abstract class</source>
        <translation>InputMethod is an abstract class</translation>
    </message>
</context>
<context>
    <name>QQmlAnonymousComponentResolver</name>
    <message>
        <source>Component objects cannot declare new functions.</source>
        <translation>Component objects cannot declare new functions.</translation>
    </message>
    <message>
        <source>Component objects cannot declare new properties.</source>
        <translation>Component objects cannot declare new properties.</translation>
    </message>
    <message>
        <source>Component objects cannot declare new signals.</source>
        <translation>Component objects cannot declare new signals.</translation>
    </message>
    <message>
        <source>Cannot create empty component specification</source>
        <translation>Cannot create empty component specification</translation>
    </message>
    <message>
        <source>Component elements may not contain properties other than id</source>
        <translation>Component elements may not contain properties other than id</translation>
    </message>
    <message>
        <source>Invalid component body specification</source>
        <translation>Invalid component body specification</translation>
    </message>
    <message>
        <source>id is not unique</source>
        <translation>id is not unique</translation>
    </message>
    <message>
        <source>Circular alias reference detected</source>
        <translation>Circular alias reference detected</translation>
    </message>
    <message>
        <source>Invalid alias reference. Unable to find id &quot;%1&quot;</source>
        <translation>Invalid alias reference. Unable to find id &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Invalid alias target location: %1</source>
        <translation>Invalid alias target location: %1</translation>
    </message>
</context>
<context>
    <name>QQmlCodeGenerator</name>
    <message>
        <source>Property value set multiple times</source>
        <translation>Property value set multiple times</translation>
    </message>
    <message>
        <source>Expected type name</source>
        <translation>Expected type name</translation>
    </message>
    <message>
        <source>Scoped enum names must begin with an upper case letter</source>
        <translation>Scoped enum names must begin with an upper case letter</translation>
    </message>
    <message>
        <source>Enum names must begin with an upper case letter</source>
        <translation>Enum names must begin with an upper case letter</translation>
    </message>
    <message>
        <source>Enum value must be an integer</source>
        <translation>Enum value must be an integer</translation>
    </message>
    <message>
        <source>Enum value out of range</source>
        <translation>Enum value out of range</translation>
    </message>
    <message>
        <source>Signal names cannot begin with an upper case letter</source>
        <translation>Signal names cannot begin with an upper case letter</translation>
    </message>
    <message>
        <source>Illegal signal name</source>
        <translation>Illegal signal name</translation>
    </message>
    <message>
        <source>No property alias location</source>
        <translation>No property alias location</translation>
    </message>
    <message>
        <source>Invalid alias reference. An alias reference must be specified as &lt;id&gt;, &lt;id&gt;.&lt;property&gt; or &lt;id&gt;.&lt;value property&gt;.&lt;property&gt;</source>
        <translation>Invalid alias reference. An alias reference must be specified as &lt;id&gt;, &lt;id&gt;.&lt;property&gt; or &lt;id&gt;.&lt;value property&gt;.&lt;property&gt;</translation>
    </message>
    <message>
        <source>Invalid alias location</source>
        <translation>Invalid alias location</translation>
    </message>
    <message>
        <source>Invalid component id specification</source>
        <translation>Invalid component id specification</translation>
    </message>
    <message>
        <source>Invalid empty ID</source>
        <translation>Invalid empty ID</translation>
    </message>
    <message>
        <source>IDs cannot start with an uppercase letter</source>
        <translation>IDs cannot start with an uppercase letter</translation>
    </message>
    <message>
        <source>IDs must start with a letter or underscore</source>
        <translation>IDs must start with a letter or underscore</translation>
    </message>
    <message>
        <source>IDs must contain only letters, numbers, and underscores</source>
        <translation>IDs must contain only letters, numbers, and underscores</translation>
    </message>
    <message>
        <source>ID illegally masks global JavaScript property</source>
        <translation>ID illegally masks global JavaScript property</translation>
    </message>
    <message>
        <source>Invalid use of id property</source>
        <translation>Invalid use of id property</translation>
    </message>
    <message>
        <source>Illegal property name</source>
        <translation>Illegal property name</translation>
    </message>
</context>
<context>
    <name>QQmlComponent</name>
    <message>
        <source>Invalid empty URL</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Virheellinen tyhjä URL</translation>
    </message>
    <message>
        <source>createObject: value is not an object</source>
        <translation>createObject: value is not an object</translation>
    </message>
    <message>
        <source>Object destroyed during incubation</source>
        <translation>Object destroyed during incubation</translation>
    </message>
</context>
<context>
    <name>QQmlConnections</name>
    <message>
        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
        <translation>Cannot assign to non-existent property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Connections: nested objects not allowed</source>
        <translation>Connections: nested objects not allowed</translation>
    </message>
    <message>
        <source>Connections: syntax error</source>
        <translation>Connections: syntax error</translation>
    </message>
    <message>
        <source>Connections: script expected</source>
        <translation>Connections: script expected</translation>
    </message>
</context>
<context>
    <name>QQmlDebugServerImpl</name>
    <message>
        <source>QML Debugger: Invalid argument &quot;%1&quot; detected. Ignoring the same.</source>
        <translation>QML Debugger: Invalid argument &quot;%1&quot; detected. Ignoring the same.</translation>
    </message>
    <message>
        <source>QML Debugger: Ignoring &quot;-qmljsdebugger=%1&quot;.</source>
        <translation>QML Debugger: Ignoring &quot;-qmljsdebugger=%1&quot;.</translation>
    </message>
    <message>
        <source>The format is &quot;-qmljsdebugger=[file:&lt;file&gt;|port:&lt;port_from&gt;][,&lt;port_to&gt;][,host:&lt;ip address&gt;][,block][,services:&lt;service&gt;][,&lt;service&gt;]*&quot;</source>
        <translation>The format is &quot;-qmljsdebugger=[file:&lt;file&gt;|port:&lt;port_from&gt;][,&lt;port_to&gt;][,host:&lt;ip address&gt;][,block][,services:&lt;service&gt;][,&lt;service&gt;]*&quot;</translation>
    </message>
    <message>
        <source>&quot;file:&quot; can be used to specify the name of a file the debugger will try to connect to using a QLocalSocket. If &quot;file:&quot; is given any &quot;host:&quot; and&quot;port:&quot; arguments will be ignored.</source>
        <translation>&quot;file:&quot; can be used to specify the name of a file the debugger will try to connect to using a QLocalSocket. If &quot;file:&quot; is given any &quot;host:&quot; and&quot;port:&quot; arguments will be ignored.</translation>
    </message>
    <message>
        <source>&quot;host:&quot; and &quot;port:&quot; can be used to specify an address and a single port or a range of ports the debugger will try to bind to with a QTcpServer.</source>
        <translation>&quot;host:&quot; and &quot;port:&quot; can be used to specify an address and a single port or a range of ports the debugger will try to bind to with a QTcpServer.</translation>
    </message>
    <message>
        <source>&quot;block&quot; makes the debugger and some services wait for clients to be connected and ready before the first QML engine starts.</source>
        <translation>&quot;block&quot; makes the debugger and some services wait for clients to be connected and ready before the first QML engine starts.</translation>
    </message>
    <message>
        <source>&quot;services:&quot; can be used to specify which debug services the debugger should load. Some debug services interact badly with others. The V4 debugger should not be loaded when using the QML profiler as it will force any V4 engines to use the JavaScript interpreter rather than the JIT. The following debug services are available by default:</source>
        <translation>&quot;services:&quot; can be used to specify which debug services the debugger should load. Some debug services interact badly with others. The V4 debugger should not be loaded when using the QML profiler as it will force any V4 engines to use the JavaScript interpreter rather than the JIT. The following debug services are available by default:</translation>
    </message>
    <message>
        <source>The QML debugger</source>
        <translation>The QML debugger</translation>
    </message>
    <message>
        <source>The V4 debugger</source>
        <translation>The V4 debugger</translation>
    </message>
    <message>
        <source>The QML inspector</source>
        <translation>The QML inspector</translation>
    </message>
    <message>
        <source>The QML profiler</source>
        <translation>The QML profiler</translation>
    </message>
    <message>
        <source>Allows the client to delay the starting and stopping of
		  QML engines until other services are ready. QtCreator
		  uses this service with the QML profiler in order to
		  profile multiple QML engines at the same time.</source>
        <translation>Allows the client to delay the starting and stopping of
		  QML engines until other services are ready. QtCreator
		  uses this service with the QML profiler in order to
		  profile multiple QML engines at the same time.</translation>
    </message>
    <message>
        <source>Sends qDebug() and similar messages over the QML debug
		  connection. QtCreator uses this for showing debug
		  messages in the debugger console.</source>
        <translation>Sends qDebug() and similar messages over the QML debug
		  connection. QtCreator uses this for showing debug
		  messages in the debugger console.</translation>
    </message>
    <message>
        <source>Other services offered by qmltooling plugins that implement QQmlDebugServiceFactory and which can be found in the standard plugin paths will also be available and can be specified. If no &quot;services&quot; argument is given, all services found this way, including the default ones, are loaded.</source>
        <translation>Other services offered by qmltooling plugins that implement QQmlDebugServiceFactory and which can be found in the standard plugin paths will also be available and can be specified. If no &quot;services&quot; argument is given, all services found this way, including the default ones, are loaded.</translation>
    </message>
</context>
<context>
    <name>QQmlDelegateModel</name>
    <message>
        <source>The delegate of a DelegateModel cannot be changed within onUpdated.</source>
        <translation>The delegate of a DelegateModel cannot be changed within onUpdated.</translation>
    </message>
    <message>
        <source>The maximum number of supported DelegateModelGroups is 8</source>
        <translation>The maximum number of supported DelegateModelGroups is 8</translation>
    </message>
    <message>
        <source>The group of a DelegateModel cannot be changed within onChanged</source>
        <translation>The group of a DelegateModel cannot be changed within onChanged</translation>
    </message>
</context>
<context>
    <name>QQmlDelegateModelGroup</name>
    <message>
        <source>Group names must start with a lower case letter</source>
        <translation>Group names must start with a lower case letter</translation>
    </message>
    <message>
        <source>get: index out of range</source>
        <translation>get: index out of range</translation>
    </message>
    <message>
        <source>insert: index out of range</source>
        <translation>insert: index out of range</translation>
    </message>
    <message>
        <source>create: index out of range</source>
        <translation>create: index out of range</translation>
    </message>
    <message>
        <source>resolve: from index out of range</source>
        <translation>resolve: from index out of range</translation>
    </message>
    <message>
        <source>resolve: from index invalid</source>
        <translation>resolve: from index invalid</translation>
    </message>
    <message>
        <source>resolve: to index out of range</source>
        <translation>resolve: to index out of range</translation>
    </message>
    <message>
        <source>resolve: to index invalid</source>
        <translation>resolve: to index invalid</translation>
    </message>
    <message>
        <source>resolve: from is not an unresolved item</source>
        <translation>resolve: from is not an unresolved item</translation>
    </message>
    <message>
        <source>resolve: to is not a model item</source>
        <translation>resolve: to is not a model item</translation>
    </message>
    <message>
        <source>remove: invalid index</source>
        <translation>remove: invalid index</translation>
    </message>
    <message>
        <source>remove: index out of range</source>
        <translation>remove: index out of range</translation>
    </message>
    <message>
        <source>remove: invalid count</source>
        <translation>remove: invalid count</translation>
    </message>
    <message>
        <source>addGroups: index out of range</source>
        <translation>addGroups: index out of range</translation>
    </message>
    <message>
        <source>addGroups: invalid count</source>
        <translation>addGroups: invalid count</translation>
    </message>
    <message>
        <source>removeGroups: index out of range</source>
        <translation>removeGroups: index out of range</translation>
    </message>
    <message>
        <source>removeGroups: invalid count</source>
        <translation>removeGroups: invalid count</translation>
    </message>
    <message>
        <source>setGroups: index out of range</source>
        <translation>setGroups: index out of range</translation>
    </message>
    <message>
        <source>setGroups: invalid count</source>
        <translation>setGroups: invalid count</translation>
    </message>
    <message>
        <source>move: invalid from index</source>
        <translation>move: invalid from index</translation>
    </message>
    <message>
        <source>move: invalid to index</source>
        <translation>move: invalid to index</translation>
    </message>
    <message>
        <source>move: invalid count</source>
        <translation>move: invalid count</translation>
    </message>
    <message>
        <source>move: from index out of range</source>
        <translation>move: from index out of range</translation>
    </message>
    <message>
        <source>move: to index out of range</source>
        <translation>move: to index out of range</translation>
    </message>
</context>
<context>
    <name>QQmlEngine</name>
    <message>
        <source>Locale cannot be instantiated.  Use Qt.locale()</source>
        <translation>Locale cannot be instantiated.  Use Qt.locale()</translation>
    </message>
    <message>
        <source>There are still &quot;%1&quot; items in the process of being created at engine destruction.</source>
        <translation>There are still &quot;%1&quot; items in the process of being created at engine destruction.</translation>
    </message>
    <message>
        <source>executeSql called outside transaction()</source>
        <translation>executeSql called outside transaction()</translation>
    </message>
    <message>
        <source>Read-only Transaction</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Vain lukeva tietokantatapahtuma</translation>
    </message>
    <message>
        <source>Version mismatch: expected %1, found %2</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Ero versioissa: odotettiin %1, löytyi %2</translation>
    </message>
    <message>
        <source>SQL transaction failed</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>SQL-tietokantatapahtuma epäonnistui</translation>
    </message>
    <message>
        <source>transaction: missing callback</source>
        <translation>transaction: missing callback</translation>
    </message>
    <message>
        <source>SQL: can&apos;t create database, offline storage is disabled.</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>SQL: tietokannan luonti epäonnistui. Offline-tietokanta ei ole käytössä.</translation>
    </message>
    <message>
        <source>LocalStorage: can&apos;t create path %1</source>
        <translation>LocalStorage: can&apos;t create path %1</translation>
    </message>
    <message>
        <source>SQL: database version mismatch</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>SQL: tietokannan versio ei täsmää</translation>
    </message>
</context>
<context>
    <name>QQmlEnumTypeResolver</name>
    <message>
        <source>Invalid property assignment: Enum value &quot;%1&quot; cannot start with a lowercase letter</source>
        <translation>Invalid property assignment: Enum value &quot;%1&quot; cannot start with a lowercase letter</translation>
    </message>
    <message>
        <source>Invalid property assignment: &quot;%1&quot; is a read-only property</source>
        <translation>Invalid property assignment: &quot;%1&quot; is a read-only property</translation>
    </message>
</context>
<context>
    <name>QQmlImportDatabase</name>
    <message>
        <source>&quot;%1&quot; is ambiguous. Found in %2 and in %3</source>
        <translation>&quot;%1&quot; is ambiguous. Found in %2 and in %3</translation>
    </message>
    <message>
        <source>- %1 is not a namespace</source>
        <translation>- %1 is not a namespace</translation>
    </message>
    <message>
        <source>- nested namespaces not allowed</source>
        <translation>- nested namespaces not allowed</translation>
    </message>
    <message>
        <source>local directory</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>paikallinen hakemisto</translation>
    </message>
    <message>
        <source>is ambiguous. Found in %1 and in %2</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>ei ole yksiselitteinen. Löytyi kohteesta %1 ja kohteesta %2</translation>
    </message>
    <message>
        <source>is ambiguous. Found in %1 in version %2.%3 and %4.%5</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>ei ole yksiselitteinen. Löytyi kohteesta %1 versiossa %2.%3 ja %4.%5</translation>
    </message>
    <message>
        <source>is instantiated recursively</source>
        <translation>is instantiated recursively</translation>
    </message>
    <message>
        <source>is not a type</source>
        <translation>is not a type</translation>
    </message>
    <message>
        <source>static plugin for module &quot;%1&quot; with name &quot;%2&quot; has no metadata URI</source>
        <translation>static plugin for module &quot;%1&quot; with name &quot;%2&quot; has no metadata URI</translation>
    </message>
    <message>
        <source>module does not support the designer &quot;%1&quot;</source>
        <translation>module does not support the designer &quot;%1&quot;</translation>
    </message>
    <message>
        <source>plugin cannot be loaded for module &quot;%1&quot;: %2</source>
        <translation>plugin cannot be loaded for module &quot;%1&quot;: %2</translation>
    </message>
    <message>
        <source>static plugin for module &quot;%1&quot; with name &quot;%2&quot; cannot be loaded: %3</source>
        <translation>static plugin for module &quot;%1&quot; with name &quot;%2&quot; cannot be loaded: %3</translation>
    </message>
    <message>
        <source>could not resolve all plugins for module &quot;%1&quot;</source>
        <translation>could not resolve all plugins for module &quot;%1&quot;</translation>
    </message>
    <message>
        <source>module &quot;%1&quot; plugin &quot;%2&quot; not found</source>
        <translation>module &quot;%1&quot; plugin &quot;%2&quot; not found</translation>
    </message>
    <message>
        <source>&quot;%1&quot; version %2.%3 is defined more than once in module &quot;%4&quot;</source>
        <translation>&quot;%1&quot; version %2.%3 is defined more than once in module &quot;%4&quot;</translation>
    </message>
    <message>
        <source>module &quot;%1&quot; version %2.%3 is not installed</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>moduulin ”%1” versiota %2.%3 ei ole asennettu</translation>
    </message>
    <message>
        <source>module &quot;%1&quot; is not installed</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>moduulia ”%1” ei ole asennettu</translation>
    </message>
    <message>
        <source>&quot;%1&quot;: no such directory</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>”%1”: hakemistoa ei ole olemassa</translation>
    </message>
    <message>
        <source>import &quot;%1&quot; has no qmldir and no namespace</source>
        <translation>import &quot;%1&quot; has no qmldir and no namespace</translation>
    </message>
    <message>
        <source>Module loaded for URI &apos;%1&apos; does not implement QQmlTypesExtensionInterface</source>
        <translation>Module loaded for URI &apos;%1&apos; does not implement QQmlTypesExtensionInterface</translation>
    </message>
    <message>
        <source>Module namespace &apos;%1&apos; does not match import URI &apos;%2&apos;</source>
        <translation>Module namespace &apos;%1&apos; does not match import URI &apos;%2&apos;</translation>
    </message>
    <message>
        <source>Namespace &apos;%1&apos; has already been used for type registration</source>
        <translation>Namespace &apos;%1&apos; has already been used for type registration</translation>
    </message>
    <message>
        <source>Module &apos;%1&apos; does not contain a module identifier directive - it cannot be protected from external registrations.</source>
        <translation>Module &apos;%1&apos; does not contain a module identifier directive - it cannot be protected from external registrations.</translation>
    </message>
    <message>
        <source>File name case mismatch for &quot;%1&quot;</source>
        <translation>File name case mismatch for &quot;%1&quot;</translation>
    </message>
</context>
<context>
    <name>QQmlListModel</name>
    <message>
        <source>unable to enable dynamic roles as this model is not empty</source>
        <translation>unable to enable dynamic roles as this model is not empty</translation>
    </message>
    <message>
        <source>unable to enable static roles as this model is not empty</source>
        <translation>unable to enable static roles as this model is not empty</translation>
    </message>
    <message>
        <source>dynamic role setting must be made from the main thread, before any worker scripts are created</source>
        <translation>dynamic role setting must be made from the main thread, before any worker scripts are created</translation>
    </message>
    <message>
        <source>remove: indices [%1 - %2] out of range [0 - %3]</source>
        <translation>remove: indices [%1 - %2] out of range [0 - %3]</translation>
    </message>
    <message>
        <source>remove: incorrect number of arguments</source>
        <translation>remove: incorrect number of arguments</translation>
    </message>
    <message>
        <source>insert: index %1 out of range</source>
        <translation>insert: index %1 out of range</translation>
    </message>
    <message>
        <source>insert: value is not an object</source>
        <translation>insert: value is not an object</translation>
    </message>
    <message>
        <source>move: out of range</source>
        <translation>move: out of range</translation>
    </message>
    <message>
        <source>append: value is not an object</source>
        <translation>append: value is not an object</translation>
    </message>
    <message>
        <source>set: value is not an object</source>
        <translation>set: value is not an object</translation>
    </message>
    <message>
        <source>set: index %1 out of range</source>
        <translation>set: index %1 out of range</translation>
    </message>
    <message>
        <source>ListElement: cannot contain nested elements</source>
        <translation>ListElement: cannot contain nested elements</translation>
    </message>
    <message>
        <source>ListElement: cannot use reserved &quot;id&quot; property</source>
        <translation>ListElement: cannot use reserved &quot;id&quot; property</translation>
    </message>
    <message>
        <source>ListElement: cannot use script for property value</source>
        <translation>ListElement: cannot use script for property value</translation>
    </message>
    <message>
        <source>ListModel: undefined property &apos;%1&apos;</source>
        <translation>ListModel: undefined property &apos;%1&apos;</translation>
    </message>
</context>
<context>
    <name>QQmlObjectCreator</name>
    <message>
        <source>Cannot assign value %1 to property %2</source>
        <translation>Cannot assign value %1 to property %2</translation>
    </message>
    <message>
        <source>Cannot set properties on %1 as it is null</source>
        <translation>Cannot set properties on %1 as it is null</translation>
    </message>
    <message>
        <source>Cannot assign an object to signal property %1</source>
        <translation>Cannot assign an object to signal property %1</translation>
    </message>
    <message>
        <source>Cannot assign object type %1 with no default method</source>
        <translation>Cannot assign object type %1 with no default method</translation>
    </message>
    <message>
        <source>Cannot connect mismatched signal/slot %1 %vs. %2</source>
        <translation>Cannot connect mismatched signal/slot %1 %vs. %2</translation>
    </message>
    <message>
        <source>Cannot assign object to interface property</source>
        <translation>Cannot assign object to interface property</translation>
    </message>
    <message>
        <source>Cannot assign object to read only list</source>
        <translation>Cannot assign object to read only list</translation>
    </message>
    <message>
        <source>Cannot assign primitives to lists</source>
        <translation>Cannot assign primitives to lists</translation>
    </message>
    <message>
        <source>Unable to create object of type %1</source>
        <translation>Unable to create object of type %1</translation>
    </message>
    <message>
        <source>Composite Singleton Type %1 is not creatable</source>
        <translation>Composite Singleton Type %1 is not creatable</translation>
    </message>
</context>
<context>
    <name>QQmlObjectModel</name>
    <message>
        <source>insert: index %1 out of range</source>
        <translation>insert: index %1 out of range</translation>
    </message>
    <message>
        <source>move: out of range</source>
        <translation>move: out of range</translation>
    </message>
    <message>
        <source>remove: indices [%1 - %2] out of range [0 - %3]</source>
        <translation>remove: indices [%1 - %2] out of range [0 - %3]</translation>
    </message>
</context>
<context>
    <name>QQmlParser</name>
    <message>
        <source>Unexpected object definition</source>
        <translation>Unexpected object definition</translation>
    </message>
    <message>
        <source>Invalid import qualifier ID</source>
        <translation>Invalid import qualifier ID</translation>
    </message>
    <message>
        <source>Reserved name &quot;Qt&quot; cannot be used as an qualifier</source>
        <translation>Reserved name &quot;Qt&quot; cannot be used as an qualifier</translation>
    </message>
    <message>
        <source>Script import qualifiers must be unique.</source>
        <translation>Script import qualifiers must be unique.</translation>
    </message>
    <message>
        <source>Script import requires a qualifier</source>
        <translation>Script import requires a qualifier</translation>
    </message>
    <message>
        <source>Library import requires a version</source>
        <translation>Library import requires a version</translation>
    </message>
    <message>
        <source>Pragma requires a valid qualifier</source>
        <translation>Pragma requires a valid qualifier</translation>
    </message>
    <message>
        <source>Expected parameter type</source>
        <translation>Expected parameter type</translation>
    </message>
    <message>
        <source>Invalid signal parameter type: </source>
        <translation>Invalid signal parameter type: </translation>
    </message>
    <message>
        <source>Invalid property type modifier</source>
        <translation>Invalid property type modifier</translation>
    </message>
    <message>
        <source>Unexpected property type modifier</source>
        <translation>Unexpected property type modifier</translation>
    </message>
    <message>
        <source>Expected property type</source>
        <translation>Expected property type</translation>
    </message>
    <message>
        <source>JavaScript declaration outside Script element</source>
        <translation>JavaScript declaration outside Script element</translation>
    </message>
    <message>
        <source>Illegal syntax for exponential number</source>
        <translation>Illegal syntax for exponential number</translation>
    </message>
    <message>
        <source>Stray newline in string literal</source>
        <translation>Stray newline in string literal</translation>
    </message>
    <message>
        <source>End of file reached at escape sequence</source>
        <translation>End of file reached at escape sequence</translation>
    </message>
    <message>
        <source>Illegal unicode escape sequence</source>
        <translation>Illegal unicode escape sequence</translation>
    </message>
    <message>
        <source>Illegal hexadecimal escape sequence</source>
        <translation>Illegal hexadecimal escape sequence</translation>
    </message>
    <message>
        <source>Octal escape sequences are not allowed</source>
        <translation>Octal escape sequences are not allowed</translation>
    </message>
    <message>
        <source>Unclosed string at end of line</source>
        <translation>Unclosed string at end of line</translation>
    </message>
    <message>
        <source>Decimal numbers can&apos;t start with &apos;0&apos;</source>
        <translation>Decimal numbers can&apos;t start with &apos;0&apos;</translation>
    </message>
    <message>
        <source>At least one hexadecimal digit is required after &apos;0%1&apos;</source>
        <translation>At least one hexadecimal digit is required after &apos;0%1&apos;</translation>
    </message>
    <message>
        <source>Invalid regular expression flag &apos;%0&apos;</source>
        <translation>Invalid regular expression flag &apos;%0&apos;</translation>
    </message>
    <message>
        <source>Unterminated regular expression backslash sequence</source>
        <translation>Unterminated regular expression backslash sequence</translation>
    </message>
    <message>
        <source>Unterminated regular expression class</source>
        <translation>Unterminated regular expression class</translation>
    </message>
    <message>
        <source>Unterminated regular expression literal</source>
        <translation>Unterminated regular expression literal</translation>
    </message>
    <message>
        <source>Syntax error</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Syntaksivirhe</translation>
    </message>
    <message>
        <source>Unexpected token `%1&apos;</source>
        <translation>Unexpected token `%1&apos;</translation>
    </message>
    <message>
        <source>Expected token `%1&apos;</source>
        <translation>Expected token `%1&apos;</translation>
    </message>
    <message>
        <source>Imported file must be a script</source>
        <translation>Imported file must be a script</translation>
    </message>
    <message>
        <source>File import requires a qualifier</source>
        <translation>File import requires a qualifier</translation>
    </message>
    <message>
        <source>Invalid import qualifier</source>
        <translation>Invalid import qualifier</translation>
    </message>
    <message>
        <source>Invalid module URI</source>
        <translation>Invalid module URI</translation>
    </message>
    <message>
        <source>Module import requires a version</source>
        <translation>Module import requires a version</translation>
    </message>
    <message>
        <source>Module import requires a qualifier</source>
        <translation>Module import requires a qualifier</translation>
    </message>
</context>
<context>
    <name>QQmlPartsModel</name>
    <message>
        <source>The group of a DelegateModel cannot be changed within onChanged</source>
        <translation>The group of a DelegateModel cannot be changed within onChanged</translation>
    </message>
    <message>
        <source>Delegate component must be Package type.</source>
        <translation>Delegate component must be Package type.</translation>
    </message>
</context>
<context>
    <name>QQmlPropertyCacheCreatorBase</name>
    <message>
        <source>Fully dynamic types cannot declare new properties.</source>
        <translation>Fully dynamic types cannot declare new properties.</translation>
    </message>
    <message>
        <source>Fully dynamic types cannot declare new signals.</source>
        <translation>Fully dynamic types cannot declare new signals.</translation>
    </message>
    <message>
        <source>Fully Dynamic types cannot declare new functions.</source>
        <translation>Fully Dynamic types cannot declare new functions.</translation>
    </message>
    <message>
        <source>Non-existent attached object</source>
        <translation>Non-existent attached object</translation>
    </message>
    <message>
        <source>Cannot override FINAL property</source>
        <translation>Cannot override FINAL property</translation>
    </message>
    <message>
        <source>Invalid signal parameter type: %1</source>
        <translation>Invalid signal parameter type: %1</translation>
    </message>
    <message>
        <source>Duplicate signal name: invalid override of property change signal or superclass signal</source>
        <translation>Duplicate signal name: invalid override of property change signal or superclass signal</translation>
    </message>
    <message>
        <source>Duplicate method name: invalid override of property change signal or superclass signal</source>
        <translation>Duplicate method name: invalid override of property change signal or superclass signal</translation>
    </message>
    <message>
        <source>Invalid property type</source>
        <translation>Invalid property type</translation>
    </message>
    <message>
        <source>Invalid alias target</source>
        <translation>Invalid alias target</translation>
    </message>
</context>
<context>
    <name>QQmlPropertyValidator</name>
    <message>
        <source>Property assignment expected</source>
        <translation>Property assignment expected</translation>
    </message>
    <message>
        <source>Invalid use of namespace</source>
        <translation>Invalid use of namespace</translation>
    </message>
    <message>
        <source>Invalid attached object assignment</source>
        <translation>Invalid attached object assignment</translation>
    </message>
    <message>
        <source>&quot;%1.%2&quot; is not available in %3 %4.%5.</source>
        <translation>&quot;%1.%2&quot; is not available in %3 %4.%5.</translation>
    </message>
    <message>
        <source>&quot;%1.%2&quot; is not available due to component versioning.</source>
        <translation>&quot;%1.%2&quot; is not available due to component versioning.</translation>
    </message>
    <message>
        <source>Cannot assign a value directly to a grouped property</source>
        <translation>Cannot assign a value directly to a grouped property</translation>
    </message>
    <message>
        <source>Attached properties cannot be used here</source>
        <translation>Attached properties cannot be used here</translation>
    </message>
    <message>
        <source>Invalid property assignment: &quot;%1&quot; is a read-only property</source>
        <translation>Invalid property assignment: &quot;%1&quot; is a read-only property</translation>
    </message>
    <message>
        <source>Cannot assign multiple values to a script property</source>
        <translation>Cannot assign multiple values to a script property</translation>
    </message>
    <message>
        <source>Cannot assign multiple values to a singular property</source>
        <translation>Cannot assign multiple values to a singular property</translation>
    </message>
    <message>
        <source>Property has already been assigned a value</source>
        <translation>Property has already been assigned a value</translation>
    </message>
    <message>
        <source>Invalid grouped property access</source>
        <translation>Invalid grouped property access</translation>
    </message>
    <message>
        <source>Cannot assign to non-existent default property</source>
        <translation>Cannot assign to non-existent default property</translation>
    </message>
    <message>
        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
        <translation>Cannot assign to non-existent property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Invalid use of id property with a value type</source>
        <translation>Invalid use of id property with a value type</translation>
    </message>
    <message>
        <source>Cannot assign primitives to lists</source>
        <translation>Cannot assign primitives to lists</translation>
    </message>
    <message>
        <source>Invalid property assignment: unknown enumeration</source>
        <translation>Invalid property assignment: unknown enumeration</translation>
    </message>
    <message>
        <source>Invalid property assignment: string expected</source>
        <translation>Invalid property assignment: string expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: string or string list expected</source>
        <translation>Invalid property assignment: string or string list expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: byte array expected</source>
        <translation>Invalid property assignment: byte array expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: url expected</source>
        <translation>Invalid property assignment: url expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: unsigned int expected</source>
        <translation>Invalid property assignment: unsigned int expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: int expected</source>
        <translation>Invalid property assignment: int expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: number expected</source>
        <translation>Invalid property assignment: number expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: color expected</source>
        <translation>Invalid property assignment: color expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: date expected</source>
        <translation>Invalid property assignment: date expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: time expected</source>
        <translation>Invalid property assignment: time expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: datetime expected</source>
        <translation>Invalid property assignment: datetime expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: point expected</source>
        <translation>Invalid property assignment: point expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: size expected</source>
        <translation>Invalid property assignment: size expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: rect expected</source>
        <translation>Invalid property assignment: rect expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: boolean expected</source>
        <translation>Invalid property assignment: boolean expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: 2D vector expected</source>
        <translation>Invalid property assignment: 2D vector expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: 3D vector expected</source>
        <translation>Invalid property assignment: 3D vector expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: 4D vector expected</source>
        <translation>Invalid property assignment: 4D vector expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: quaternion expected</source>
        <translation>Invalid property assignment: quaternion expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: regular expression expected; use /pattern/ syntax</source>
        <translation>Invalid property assignment: regular expression expected; use /pattern/ syntax</translation>
    </message>
    <message>
        <source>Invalid property assignment: number or array of numbers expected</source>
        <translation>Invalid property assignment: number or array of numbers expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: int or array of ints expected</source>
        <translation>Invalid property assignment: int or array of ints expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: bool or array of bools expected</source>
        <translation>Invalid property assignment: bool or array of bools expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: url or array of urls expected</source>
        <translation>Invalid property assignment: url or array of urls expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: string or array of strings expected</source>
        <translation>Invalid property assignment: string or array of strings expected</translation>
    </message>
    <message>
        <source>Invalid property assignment: unsupported type &quot;%1&quot;</source>
        <translation>Invalid property assignment: unsupported type &quot;%1&quot;</translation>
    </message>
    <message>
        <source>&quot;%1&quot; cannot operate on &quot;%2&quot;</source>
        <translation>&quot;%1&quot; cannot operate on &quot;%2&quot;</translation>
    </message>
    <message>
        <source>Cannot assign object to list property &quot;%1&quot;</source>
        <translation>Cannot assign object to list property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Unexpected object assignment</source>
        <translation>Unexpected object assignment</translation>
    </message>
    <message>
        <source>Invalid property assignment: script expected</source>
        <translation>Invalid property assignment: script expected</translation>
    </message>
    <message>
        <source>Cannot assign object to property</source>
        <translation>Cannot assign object to property</translation>
    </message>
</context>
<context>
    <name>QQmlRewrite</name>
    <message>
        <source>Signal uses unnamed parameter followed by named parameter.</source>
        <translation>Signal uses unnamed parameter followed by named parameter.</translation>
    </message>
    <message>
        <source>Signal parameter &quot;%1&quot; hides global variable.</source>
        <translation>Signal parameter &quot;%1&quot; hides global variable.</translation>
    </message>
</context>
<context>
    <name>QQmlTypeData</name>
    <message>
        <source>Composite Singleton Type %1 is not creatable.</source>
        <translation>Composite Singleton Type %1 is not creatable.</translation>
    </message>
    <message>
        <source>Element is not creatable.</source>
        <translation>Element is not creatable.</translation>
    </message>
</context>
<context>
    <name>QQmlTypeLoader</name>
    <message>
        <source>Cannot update qmldir content for &apos;%1&apos;</source>
        <translation>Cannot update qmldir content for &apos;%1&apos;</translation>
    </message>
    <message>
        <source>No matching type found, pragma Singleton files cannot be used by QQmlComponent.</source>
        <translation>No matching type found, pragma Singleton files cannot be used by QQmlComponent.</translation>
    </message>
    <message>
        <source>pragma Singleton used with a non composite singleton type %1</source>
        <translation>pragma Singleton used with a non composite singleton type %1</translation>
    </message>
    <message>
        <source>Script %1 unavailable</source>
        <translation>Script %1 unavailable</translation>
    </message>
    <message>
        <source>Type %1 unavailable</source>
        <translation>Type %1 unavailable</translation>
    </message>
    <message>
        <source>qmldir defines type as singleton, but no pragma Singleton found in type %1.</source>
        <translation>qmldir defines type as singleton, but no pragma Singleton found in type %1.</translation>
    </message>
    <message>
        <source>File was compiled ahead of time with an incompatible version of Qt and the original file cannot be found. Please recompile</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Tiedosto on etukäteen käännetty epäyhteensopivalla Qt:n versiolla ja alkuperäistä tiedostoa ei löydy. Ole hyvä ja käännä uudelleen.</translation>
    </message>
    <message>
        <source>No such file or directory</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Tiedostoa tai kansiota ei ole olemassa</translation>
    </message>
    <message>
        <source>File is empty</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Tiedosto on tyhjä</translation>
    </message>
    <message>
        <source>module &quot;%1&quot; is not installed</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>moduulia ”%1” ei ole asennettu</translation>
    </message>
    <message>
        <source>Namespace %1 cannot be used as a type</source>
        <translation>Namespace %1 cannot be used as a type</translation>
    </message>
    <message>
        <source>Unreported error adding script import to import database</source>
        <translation>Unreported error adding script import to import database</translation>
    </message>
    <message>
        <source>%1 %2</source>
        <translation>%1 %2</translation>
    </message>
</context>
<context>
    <name>QQuickAbstractAnimation</name>
    <message>
        <source>Cannot animate non-existent property &quot;%1&quot;</source>
        <translation>Cannot animate non-existent property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Cannot animate read-only property &quot;%1&quot;</source>
        <translation>Cannot animate read-only property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Animation is an abstract class</source>
        <translation>Animation is an abstract class</translation>
    </message>
    <message>
        <source>Animator is an abstract class</source>
        <translation>Animator is an abstract class</translation>
    </message>
</context>
<context>
    <name>QQuickAccessibleAttached</name>
    <message>
        <source>Accessible is only available via attached properties</source>
        <translation>Accessible is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickAnchorAnimation</name>
    <message>
        <source>Cannot set a duration of &lt; 0</source>
        <translation>Cannot set a duration of &lt; 0</translation>
    </message>
</context>
<context>
    <name>QQuickAnchors</name>
    <message>
        <source>Possible anchor loop detected on fill.</source>
        <translation>Possible anchor loop detected on fill.</translation>
    </message>
    <message>
        <source>Possible anchor loop detected on centerIn.</source>
        <translation>Possible anchor loop detected on centerIn.</translation>
    </message>
    <message>
        <source>Cannot anchor to an item that isn&apos;t a parent or sibling.</source>
        <translation>Cannot anchor to an item that isn&apos;t a parent or sibling.</translation>
    </message>
    <message>
        <source>Possible anchor loop detected on vertical anchor.</source>
        <translation>Possible anchor loop detected on vertical anchor.</translation>
    </message>
    <message>
        <source>Possible anchor loop detected on horizontal anchor.</source>
        <translation>Possible anchor loop detected on horizontal anchor.</translation>
    </message>
    <message>
        <source>Cannot specify left, right, and horizontalCenter anchors at the same time.</source>
        <translation>Cannot specify left, right, and horizontalCenter anchors at the same time.</translation>
    </message>
    <message>
        <source>Cannot anchor to a null item.</source>
        <translation>Cannot anchor to a null item.</translation>
    </message>
    <message>
        <source>Cannot anchor a horizontal edge to a vertical edge.</source>
        <translation>Cannot anchor a horizontal edge to a vertical edge.</translation>
    </message>
    <message>
        <source>Cannot anchor item to self.</source>
        <translation>Cannot anchor item to self.</translation>
    </message>
    <message>
        <source>Cannot specify top, bottom, and verticalCenter anchors at the same time.</source>
        <translation>Cannot specify top, bottom, and verticalCenter anchors at the same time.</translation>
    </message>
    <message>
        <source>Baseline anchor cannot be used in conjunction with top, bottom, or verticalCenter anchors.</source>
        <translation>Baseline anchor cannot be used in conjunction with top, bottom, or verticalCenter anchors.</translation>
    </message>
    <message>
        <source>Cannot anchor a vertical edge to a horizontal edge.</source>
        <translation>Cannot anchor a vertical edge to a horizontal edge.</translation>
    </message>
</context>
<context>
    <name>QQuickAnimatedImage</name>
    <message>
        <source>Qt was built without support for QMovie</source>
        <translation>Qt was built without support for QMovie</translation>
    </message>
</context>
<context>
    <name>QQuickApplication</name>
    <message>
        <source>Application is an abstract class</source>
        <translation>Application is an abstract class</translation>
    </message>
</context>
<context>
    <name>QQuickBehavior</name>
    <message>
        <source>Cannot change the animation assigned to a Behavior.</source>
        <translation>Cannot change the animation assigned to a Behavior.</translation>
    </message>
</context>
<context>
    <name>QQuickDragAttached</name>
    <message>
        <source>Drag is only available via attached properties</source>
        <translation>Drag is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickDragHandler</name>
    <message>
        <source>DragAxis is only available as a grouped property of DragHandler</source>
        <translation>DragAxis is only available as a grouped property of DragHandler</translation>
    </message>
</context>
<context>
    <name>QQuickEnterKeyAttached</name>
    <message>
        <source>EnterKey attached property only works with Items</source>
        <translation>EnterKey attached property only works with Items</translation>
    </message>
    <message>
        <source>EnterKey is only available via attached properties</source>
        <translation>EnterKey is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickFlipable</name>
    <message>
        <source>front is a write-once property</source>
        <translation>front is a write-once property</translation>
    </message>
    <message>
        <source>back is a write-once property</source>
        <translation>back is a write-once property</translation>
    </message>
</context>
<context>
    <name>QQuickGraphicsInfo</name>
    <message>
        <source>GraphicsInfo is only available via attached properties</source>
        <translation>GraphicsInfo is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickItemView</name>
    <message>
        <source>ItemView is an abstract base class</source>
        <translation>ItemView is an abstract base class</translation>
    </message>
    <message>
        <source>Delegate must be of Item type</source>
        <translation>Delegate must be of Item type</translation>
    </message>
</context>
<context>
    <name>QQuickKeyNavigationAttached</name>
    <message>
        <source>KeyNavigation is only available via attached properties</source>
        <translation>KeyNavigation is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickKeysAttached</name>
    <message>
        <source>Keys is only available via attached properties</source>
        <translation>Keys is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickLayoutMirroringAttached</name>
    <message>
        <source>LayoutMirroring is only available via attached properties</source>
        <translation>LayoutMirroring is only available via attached properties</translation>
    </message>
    <message>
        <source>LayoutDirection attached property only works with Items and Windows</source>
        <translation>LayoutDirection attached property only works with Items and Windows</translation>
    </message>
</context>
<context>
    <name>QQuickLoader</name>
    <message>
        <source>setSource: value is not an object</source>
        <translation>setSource: value is not an object</translation>
    </message>
</context>
<context>
    <name>QQuickMouseEvent</name>
    <message>
        <source>GestureEvent is only available in the context of handling the gestureStarted signal from MultiPointTouchArea</source>
        <translation>GestureEvent is only available in the context of handling the gestureStarted signal from MultiPointTouchArea</translation>
    </message>
    <message>
        <source>MouseEvent is only available within handlers in MouseArea</source>
        <translation>MouseEvent is only available within handlers in MouseArea</translation>
    </message>
</context>
<context>
    <name>QQuickOpenGLInfo</name>
    <message>
        <source>OpenGLInfo is only available via attached properties</source>
        <translation>OpenGLInfo is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickPaintedItem</name>
    <message>
        <source>Cannot create instance of abstract class PaintedItem</source>
        <translation>Cannot create instance of abstract class PaintedItem</translation>
    </message>
</context>
<context>
    <name>QQuickParentAnimation</name>
    <message>
        <source>Unable to preserve appearance under complex transform</source>
        <translation>Unable to preserve appearance under complex transform</translation>
    </message>
    <message>
        <source>Unable to preserve appearance under non-uniform scale</source>
        <translation>Unable to preserve appearance under non-uniform scale</translation>
    </message>
    <message>
        <source>Unable to preserve appearance under scale of 0</source>
        <translation>Unable to preserve appearance under scale of 0</translation>
    </message>
</context>
<context>
    <name>QQuickParentChange</name>
    <message>
        <source>Unable to preserve appearance under complex transform</source>
        <translation>Unable to preserve appearance under complex transform</translation>
    </message>
    <message>
        <source>Unable to preserve appearance under non-uniform scale</source>
        <translation>Unable to preserve appearance under non-uniform scale</translation>
    </message>
    <message>
        <source>Unable to preserve appearance under scale of 0</source>
        <translation>Unable to preserve appearance under scale of 0</translation>
    </message>
</context>
<context>
    <name>QQuickPathAnimation</name>
    <message>
        <source>Cannot set a duration of &lt; 0</source>
        <translation>Cannot set a duration of &lt; 0</translation>
    </message>
</context>
<context>
    <name>QQuickPathView</name>
    <message>
        <source>Delegate must be of Item type</source>
        <translation>Delegate must be of Item type</translation>
    </message>
</context>
<context>
    <name>QQuickPauseAnimation</name>
    <message>
        <source>Cannot set a duration of &lt; 0</source>
        <translation>Cannot set a duration of &lt; 0</translation>
    </message>
</context>
<context>
    <name>QQuickPixmap</name>
    <message>
        <source>Error decoding: %1: %2</source>
        <translation>Error decoding: %1: %2</translation>
    </message>
    <message>
        <source>Invalid image provider: %1</source>
        <translation>Invalid image provider: %1</translation>
    </message>
    <message>
        <source>Failed to get image from provider: %1</source>
        <translation>Failed to get image from provider: %1</translation>
    </message>
    <message>
        <source>Failed to get texture from provider: %1</source>
        <translation>Failed to get texture from provider: %1</translation>
    </message>
    <message>
        <source>Error decoding: %1</source>
        <translation>Error decoding: %1</translation>
    </message>
    <message>
        <source>Cannot open: %1</source>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Ei voi avata: %1</translation>
    </message>
</context>
<context>
    <name>QQuickPointerHandler</name>
    <message>
        <source>PointerEvent is only available as a parameter of several signals in PointerHandler</source>
        <translation>PointerEvent is only available as a parameter of several signals in PointerHandler</translation>
    </message>
    <message>
        <source>EventPoint is only available as a member of PointerEvent</source>
        <translation>EventPoint is only available as a member of PointerEvent</translation>
    </message>
    <message>
        <source>EventTouchPoint is only available as a member of PointerEvent</source>
        <translation>EventTouchPoint is only available as a member of PointerEvent</translation>
    </message>
    <message>
        <source>PointerDevice is only available as a property of PointerEvent</source>
        <translation>PointerDevice is only available as a property of PointerEvent</translation>
    </message>
    <message>
        <source>PointingDeviceUniqueId is only available as a property of PointerEvent</source>
        <translation>PointingDeviceUniqueId is only available as a property of PointerEvent</translation>
    </message>
    <message>
        <source>PointerHandler is an abstract base class</source>
        <translation>PointerHandler is an abstract base class</translation>
    </message>
</context>
<context>
    <name>QQuickPropertyAnimation</name>
    <message>
        <source>Cannot set a duration of &lt; 0</source>
        <translation>Cannot set a duration of &lt; 0</translation>
    </message>
</context>
<context>
    <name>QQuickPropertyChanges</name>
    <message>
        <source>PropertyChanges does not support creating state-specific objects.</source>
        <translation>PropertyChanges does not support creating state-specific objects.</translation>
    </message>
    <message>
        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
        <translation>Cannot assign to non-existent property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>Cannot assign to read-only property &quot;%1&quot;</source>
        <translation>Cannot assign to read-only property &quot;%1&quot;</translation>
    </message>
</context>
<context>
    <name>QQuickRepeater</name>
    <message>
        <source>Delegate must be of Item type</source>
        <translation>Delegate must be of Item type</translation>
    </message>
</context>
<context>
    <name>QQuickShaderEffectMesh</name>
    <message>
        <source>Cannot create instance of abstract class ShaderEffectMesh.</source>
        <translation>Cannot create instance of abstract class ShaderEffectMesh.</translation>
    </message>
</context>
<context>
    <name>QQuickShapeGradient</name>
    <message>
        <source>ShapeGradient is an abstract base class</source>
        <translation>ShapeGradient is an abstract base class</translation>
    </message>
</context>
<context>
    <name>QQuickTextUtil</name>
    <message>
        <source>%1 does not support loading non-visual cursor delegates.</source>
        <translation>%1 does not support loading non-visual cursor delegates.</translation>
    </message>
    <message>
        <source>Could not load cursor delegate</source>
        <translation>Could not load cursor delegate</translation>
    </message>
</context>
<context>
    <name>QQuickTouchPoint</name>
    <message>
        <source>PointingDeviceUniqueId is only available via read-only properties</source>
        <translation>PointingDeviceUniqueId is only available via read-only properties</translation>
    </message>
</context>
<context>
    <name>QQuickViewTransitionAttached</name>
    <message>
        <source>ViewTransition is only available via attached properties</source>
        <translation>ViewTransition is only available via attached properties</translation>
    </message>
</context>
<context>
    <name>QQuickWindow</name>
    <message>
        <source>Failed to create %1 context for format %2.
This is most likely caused by not having the necessary graphics drivers installed.

Install a driver providing OpenGL 2.0 or higher, or, if this is not possible, make sure the ANGLE Open GL ES 2.0 emulation libraries (%3, %4 and d3dcompiler_*.dll) are available in the application executable&apos;s directory or in a location listed in PATH.</source>
        <extracomment>%1 Context type (Open GL, EGL), %2 format, ANGLE %3, %4 library names</extracomment>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Kontekstin %1 luonti epäonnistui formaatille %2.
Syynä on todennäköisesti se, että tarvittavia grafiikka-ajureita ei ole asennettu.

Asenna ajuri, joka tukee OpenGL 2.0:aa tai uudempaa. Mikäli sellaisen asentaminen ei ole mahdollista, tarkista, että ANGLE Open GL ES 2.0:n emulointikirjastot (%3, %4 ja d3dcompiler_*.dll) ovat saatavilla ohjelman kansiossa tai PATH-ympäristömuuttujassa mainitussa kansiossa.</translation>
    </message>
    <message>
        <source>Failed to create %1 context for format %2</source>
        <extracomment>%1 Context type (Open GL, EGL), %2 format specification</extracomment>
        <translatorcomment>Tämä viesti on suomennettu, koska siitä voi olla hyötyä myös ongelmaa selvittävälle Qt:lla tehdyn ohjelman loppukäyttäjälle eikä tämän viestin suomentamisen luulisi vaikeuttavan ongelman selvittämistä.</translatorcomment>
        <translation>Kontekstin %1 luonti epäonnistui formaatille %2</translation>
    </message>
</context>
<context>
    <name>QQuickWindowQmlImpl</name>
    <message>
        <source>Conflicting properties &apos;visible&apos; and &apos;visibility&apos; for Window &apos;%1&apos;</source>
        <translation>Conflicting properties &apos;visible&apos; and &apos;visibility&apos; for Window &apos;%1&apos;</translation>
    </message>
    <message>
        <source>Conflicting properties &apos;visible&apos; and &apos;visibility&apos;</source>
        <translation>Conflicting properties &apos;visible&apos; and &apos;visibility&apos;</translation>
    </message>
</context>
<context>
    <name>QQuickXmlListModel</name>
    <message>
        <source>&quot;%1&quot; duplicates a previous role name and will be disabled.</source>
        <translation>&quot;%1&quot; duplicates a previous role name and will be disabled.</translation>
    </message>
    <message>
        <source>invalid query: &quot;%1&quot;</source>
        <translation>invalid query: &quot;%1&quot;</translation>
    </message>
</context>
<context>
    <name>QQuickXmlListModelRole</name>
    <message>
        <source>An XmlRole query must not start with &apos;/&apos;</source>
        <translation>An XmlRole query must not start with &apos;/&apos;</translation>
    </message>
</context>
<context>
    <name>QQuickXmlRoleList</name>
    <message>
        <source>An XmlListModel query must start with &apos;/&apos; or &quot;//&quot;</source>
        <translation>An XmlListModel query must start with &apos;/&apos; or &quot;//&quot;</translation>
    </message>
</context>
<context>
    <name>SignalHandlerConverter</name>
    <message>
        <source>Non-existent attached object</source>
        <translation>Non-existent attached object</translation>
    </message>
    <message>
        <source>Signal uses unnamed parameter followed by named parameter.</source>
        <translation>Signal uses unnamed parameter followed by named parameter.</translation>
    </message>
    <message>
        <source>Signal parameter &quot;%1&quot; hides global variable.</source>
        <translation>Signal parameter &quot;%1&quot; hides global variable.</translation>
    </message>
    <message>
        <source>&quot;%1.%2&quot; is not available in %3 %4.%5.</source>
        <translation>&quot;%1.%2&quot; is not available in %3 %4.%5.</translation>
    </message>
    <message>
        <source>&quot;%1.%2&quot; is not available due to component versioning.</source>
        <translation>&quot;%1.%2&quot; is not available due to component versioning.</translation>
    </message>
    <message>
        <source>Cannot assign a value to a signal (expecting a script to be run)</source>
        <translation>Cannot assign a value to a signal (expecting a script to be run)</translation>
    </message>
    <message>
        <source>Incorrectly specified signal assignment</source>
        <translation>Incorrectly specified signal assignment</translation>
    </message>
</context>
<context>
    <name>SignalTransition</name>
    <message>
        <source>Specified signal does not exist.</source>
        <translation>Specified signal does not exist.</translation>
    </message>
    <message>
        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
        <translation>Cannot assign to non-existent property &quot;%1&quot;</translation>
    </message>
    <message>
        <source>SignalTransition: script expected</source>
        <translation>SignalTransition: script expected</translation>
    </message>
</context>
<context>
    <name>qmlRegisterType</name>
    <message>
        <source>Invalid QML %1 name &quot;%2&quot;</source>
        <translation>Invalid QML %1 name &quot;%2&quot;</translation>
    </message>
    <message>
        <source>Invalid QML %1 name &quot;%2&quot;; type names must begin with an uppercase letter</source>
        <translation>Invalid QML %1 name &quot;%2&quot;; type names must begin with an uppercase letter</translation>
    </message>
    <message>
        <source>Cannot install %1 &apos;%2&apos; into protected namespace &apos;%3&apos;</source>
        <translation>Cannot install %1 &apos;%2&apos; into protected namespace &apos;%3&apos;</translation>
    </message>
    <message>
        <source>Cannot install %1 &apos;%2&apos; into protected module &apos;%3&apos; version &apos;%4&apos;</source>
        <translation>Cannot install %1 &apos;%2&apos; into protected module &apos;%3&apos; version &apos;%4&apos;</translation>
    </message>
</context>
</TS>
