[Development] Convenience Imports in QML
Lincoln Ramsay
a1291762 at gmail.com
Thu Dec 13 00:04:00 CET 2012
On 13/12/12 07:12, Alan Alpert wrote:
> Hmm... so you're suggesting that we tie the imports for a single
> application into a single file (manageable by the build system)? That
> might work...
>
> So all the application source files would look like this:
>
> import QtQml from MyImports
> import QtQuick from MyImports
>
> There would be one file somewhere (MyImports.qmlimports?) containing this:
> import QtQml 2.0
> import QtQuick 2.0
> import QtQuick.Window 2.0
> import QtQuick.Particles 2.0
> import QtAudioEngine 1.0
> import QtMultimedia 5.0
> import QtWebkit 3.0
>
> which creator would automatically generate for a new Qt 5.0.0
> application and which is deployed with the application.
>
> Then the engine resolves it entirely from deployed files, and sees (effectively)
> import QtQml 2.0
> import QtQuick 2.0
>
> in each file, maintaining the existing versioned import behaviour
> (just a lot easier for developers).
>
> Is this what you're suggesting?
I can see how this would be useful to a project with lots of QML files
but it could make it problematic to move code from one project to
another (since versions may change unexpectedly). It feels like it goes
against the whole idea of versioned imports, which was to allow files to
upgrade as-needed. Then again, is it really supported to use different
versions of the same import across a single app? I know you can't use
QtQuick 1.0 and 2.0... are there other instances where it's impossible
(or a really bad idea) to use multiple versions of the same import?
Ultimately, I think this idea is somewhat orthogonal to the original
idea, which was identifying the versions of modules in a Qt release
(though you could implement the latter using the former).
eg.
Something.qml:
import QtQuick from MyImports
MyImports.qmlimports:
import QtQuick from Qt 5.0
import QtMultimedia from Qt 5.0
--
Link
More information about the Development
mailing list