Development/Tutorials/Plasma4/QML/GettingStarted: Difference between revisions

    From KDE TechBase
    (Created page with '== Abstract == Writing a plasma applet in QML is very easy, in fact, with KDE 4.6 and Qt 4.7 it just works. == Package Structure == You create a .desktop file and the .qml fil...')
     
    No edit summary
    Line 36: Line 36:


    ===  <tt>main.qml</tt> ===
    ===  <tt>main.qml</tt> ===
    <code qml>
    <code javascript>
    import Qt 4.7
    import Qt 4.7


    Line 42: Line 42:
         text: "Hello world!";
         text: "Hello world!";
    }
    }
    <code>
    </code>





    Revision as of 10:47, 11 March 2011

    Abstract

    Writing a plasma applet in QML is very easy, in fact, with KDE 4.6 and Qt 4.7 it just works.

    Package Structure

    You create a .desktop file and the .qml file. They have to be in the usual plasma package structure.

    plasmoid-qml/metadata.desktop plasmoid-qml/contents/qml/main.qml

    metadata.desktop

    [Desktop Entry] Name=Hello QML Comment=A hello world widget in QML Icon=chronometer

    X-Plasma-API=declarativeappletscript X-Plasma-MainScript=qml/main.qml X-Plasma-DefaultSize=200,100

    X-KDE-PluginInfo-Author=Frederik Gladhorn [email protected] X-KDE-PluginInfo-Website=http://plasma.kde.org/ X-KDE-PluginInfo-Category=Examples X-KDE-PluginInfo-Name=org.kde.hello-qml X-KDE-PluginInfo-Version=0.0

    X-KDE-PluginInfo-Depends= X-KDE-PluginInfo-License=GPL X-KDE-PluginInfo-EnabledByDefault=true X-KDE-ServiceTypes=Plasma/Applet Type=Service

    main.qml

    import Qt 4.7

    Text {

       text: "Hello world!";
    

    }


    Installing

    You can install your plasmoid: plasmapkg --install plasmoid-qml

    plasmoidviewer

    You can run it in plasmoidviewer as usual: plasmoidviewer plasmoid-qml

    qmlviewer

    And you can run it in qmlviewer: qmlviewer -I /usr/lib/kde4/imports/ plasmoid-qml/contents/qml/main.qml

    Where the -I is the path to the plasma plugin for qml. Try to look for the path of /usr/lib/kde4/imports/org/kde/plasma/graphicswidgets/libgraphicswidgetsbindingsplugin.so and use everything up to org of that path.