<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.devilplan.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.devilplan.com/feed.php">
        <title>Luci4 Wiki Blog - coding:qt</title>
        <description></description>
        <link>https://wiki.devilplan.com/</link>
        <image rdf:resource="https://wiki.devilplan.com/_media/wiki:logo.png" />
       <dc:date>2026-04-05T12:16:48+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.devilplan.com/coding:qt:quickstart"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.devilplan.com/_media/wiki:logo.png">
        <title>Luci4 Wiki Blog</title>
        <link>https://wiki.devilplan.com/</link>
        <url>https://wiki.devilplan.com/_media/wiki:logo.png</url>
    </image>
    <item rdf:about="https://wiki.devilplan.com/coding:qt:quickstart">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-08T14:35:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>quickstart</title>
        <link>https://wiki.devilplan.com/coding:qt:quickstart</link>
        <description>


&lt;h1 class=&quot;sectionedit1&quot; id=&quot;qt_-_qml_quick_start&quot;&gt;Qt - QML Quick Start&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
This quick start guide uses Qt Creator on &lt;strong&gt;Qt 6&lt;/strong&gt;, running on Linux. 
&lt;/p&gt;

&lt;p&gt;
The scope is to create a real Qt app that uses both &lt;strong&gt;QML (for UI)&lt;/strong&gt; and &lt;strong&gt;C++ (for logic)&lt;/strong&gt;. 
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Qt - QML Quick Start&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;qt_-_qml_quick_start&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;10-206&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;project_setup_in_qt_creator&quot;&gt;1. Project Setup in Qt Creator&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1. Project Setup in Qt Creator&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;project_setup_in_qt_creator&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;207-241&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;create_a_new_project&quot;&gt;Create a New Project&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Open &lt;strong&gt;Qt Creator&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level0&quot;&gt;&lt;div class=&quot;li&quot;&gt;Go to &lt;code&gt;File&lt;/code&gt; → &lt;code&gt;New File or Project&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level0&quot;&gt;&lt;div class=&quot;li&quot;&gt;Select &lt;code&gt;Application&lt;/code&gt; → &lt;code&gt;Qt Quick Application - Empty&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level0&quot;&gt;&lt;div class=&quot;li&quot;&gt;Choose a name and location&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level0&quot;&gt;&lt;div class=&quot;li&quot;&gt;Choose the Qt 6 kit (e.g., Desktop Qt 6.x GCC 64bit)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level0&quot;&gt;&lt;div class=&quot;li&quot;&gt;Finish&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
This creates a basic project with &lt;code&gt;main.cpp&lt;/code&gt;, &lt;code&gt;main.qml&lt;/code&gt;, and a &lt;code&gt;.pro&lt;/code&gt; file.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Create a New Project&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;create_a_new_project&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;242-566&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;project_structure&quot;&gt;Project Structure&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;
YourProject/
├── main.cpp
├── main.qml
├── YourProject.pro&lt;/pre&gt;

&lt;p&gt;
Qt Creator auto-generates a CMakeLists.txt if you chose CMake, or a &lt;code&gt;.pro&lt;/code&gt; file if you chose qmake.
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Project Structure&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;project_structure&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;567-781&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;hello_luci4&quot;&gt;2. Hello Luci4!&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Replace the contents of &lt;code&gt;main.cpp&lt;/code&gt; with:
&lt;/p&gt;
&lt;blockquote&gt;&lt;div class=&quot;no&quot;&gt;
This example doesn&amp;#039;t use QML, it&amp;#039;s just a quick hello-world application.&lt;/div&gt;&lt;/blockquote&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=1&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QApplication&amp;gt;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QLabel&amp;gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; main&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; argc, &lt;span class=&quot;kw4&quot;&gt;char&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;argv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    QApplication app&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;argc, argv&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    QLabel label&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Hello Luci4!&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    label.&lt;span class=&quot;me1&quot;&gt;show&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; app.&lt;span class=&quot;me1&quot;&gt;exec&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2. Hello Luci4!&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;hello_luci4&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;782-1120&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;build_and_run&quot;&gt;Build and Run&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Click the green triangle in the lower left corner&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level0&quot;&gt;&lt;div class=&quot;li&quot;&gt;You will see a window with “Hello World!”&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;&lt;div class=&quot;no&quot;&gt;
Tip: If you chose qmake and it fails to compile, check that your `.pro` file includes `QT += widgets`&lt;/div&gt;&lt;/blockquote&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Build and Run&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;build_and_run&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;1121-1349&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;introduction_to_qml&quot;&gt;3. Introduction to QML&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
QML is a declarative UI language, readable, and easy to learn.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3. Introduction to QML&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;introduction_to_qml&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;1350-1440&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;modify_mainqml&quot;&gt;Modify `main.qml`&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=2&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; QtQuick
&lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; QtQuick.&lt;span class=&quot;me1&quot;&gt;Controls&lt;/span&gt;
&amp;nbsp;
&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-applicationwindow.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;ApplicationWindow&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;visible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; true
    &lt;span class=&quot;co3&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;360&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;640&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Hello QML&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-rectangle.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Rectangle&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;anchors.fill&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
        &lt;span class=&quot;co3&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;#f0f0f0&amp;quot;&lt;/span&gt;
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-text.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Text&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;anchors.centerIn&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
            &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Hello from QML!&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;font.pixelSize&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;24&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Modify `main.qml`&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;modify_mainqml&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;1441-1816&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;make_sure_maincpp_loads_qml&quot;&gt;Make Sure main.cpp Loads QML&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
If your project was created as a Qt Quick app, this is already done:
&lt;/p&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=3&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QQmlContext&amp;gt;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QGuiApplication&amp;gt;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QQmlApplicationEngine&amp;gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; main&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; argc, &lt;span class=&quot;kw4&quot;&gt;char&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;argv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    QGuiApplication app&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;argc, argv&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    QQmlApplicationEngine engine&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co1&quot;&gt;// This line is auto-generated&lt;/span&gt;
    &lt;span class=&quot;kw4&quot;&gt;const&lt;/span&gt; QUrl url&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QStringLiteral&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;qrc:/your-app/Main.qml&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co1&quot;&gt;// This block of code in main.cpp is auto-generated by Qt when &lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;// you create a QML-based application using tools like Qt Creator. &lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;// It sets up a safety mechanism to gracefully exit the &lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;// application if the QML engine fails to load the main QML file.&lt;/span&gt;
    QObject&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;connect&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
        &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;engine,
        &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;QQmlApplicationEngine&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;objectCreated&lt;/span&gt;,
        &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;app,
        &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;url&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QObject &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;obj, &lt;span class=&quot;kw4&quot;&gt;const&lt;/span&gt; QUrl &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;objUrl&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;sy3&quot;&gt;!&lt;/span&gt;obj &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; url &lt;span class=&quot;sy1&quot;&gt;==&lt;/span&gt; objUrl&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                QCoreApplication&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;exit&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;,
        Qt&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;QueuedConnection&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    engine.&lt;span class=&quot;me1&quot;&gt;load&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; app.&lt;span class=&quot;me1&quot;&gt;exec&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;

&lt;h4 id=&quot;qguiapplication&quot;&gt;QGuiApplication&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;code&gt;QGuiApplication&lt;/code&gt; is a class that manages application-level resources for &lt;abbr title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/abbr&gt; applications using Qt Quick.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;It handles events, keyboard input, and the event loop.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;If you’re using QWidget-based UIs, use &lt;code&gt;QApplication&lt;/code&gt; instead.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;

&lt;h4 id=&quot;qqmlapplicationengine&quot;&gt;QQmlApplicationEngine&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;code&gt;QQmlApplicationEngine&lt;/code&gt; loads and manages your QML UI.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;It parses your QML files and creates the UI at runtime.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;You use &lt;code&gt;engine.load(QUrl(...))&lt;/code&gt; to point it to your QML entry point.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Make Sure main.cpp Loads QML&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;make_sure_maincpp_loads_qml&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;1817-3293&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit10&quot; id=&quot;c_-_qml_communication&quot;&gt;4. C++ &amp;lt;-&amp;gt; QML Communication&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4. C++ &amp;lt;-&amp;gt; QML Communication&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;c_-_qml_communication&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;3294-3326&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit11&quot; id=&quot;step_1create_a_c_backend_class&quot;&gt;Step 1: Create a C++ Backend Class&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;controller.h&lt;/strong&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;
#ifndef CONTROLLER_H
#define CONTROLLER_H

#include &amp;lt;QObject&amp;gt;

class Controller : public QObject {
    Q_OBJECT
    Q_PROPERTY(QString status READ status WRITE setStatus NOTIFY statusChanged)

    public:
        QString status() const;
        void setStatus(const QString &amp;amp;status);

        Q_INVOKABLE void changeColour();

    signals:
        void statusChanged();

    private:
        QString m_status;
};

#endif // CONTROLLER_H&lt;/pre&gt;

&lt;/div&gt;

&lt;h4 id=&quot;what_is_ifndef_controller_h&quot;&gt;What is `#ifndef CONTROLLER_H`?&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;This is an &lt;strong&gt;include guard&lt;/strong&gt;, used to prevent the header from being included more than once.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;code&gt;#ifndef CONTROLLER_H&lt;/code&gt; means “if not defined CONTROLLER_H”&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;code&gt;#define CONTROLLER_H&lt;/code&gt; defines the symbol&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;code&gt;#endif&lt;/code&gt; closes the block&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;This avoids compiler errors due to multiple definitions.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Step 1: Create a C++ Backend Class&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;step_1create_a_c_backend_class&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;3327-4161&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit12&quot; id=&quot;step_2c_implementation&quot;&gt;Step 2: C++ Implementation&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;controller.cpp&lt;/strong&gt;
&lt;/p&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=5&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;#include &amp;quot;controller.h&amp;quot;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QDebug&amp;gt;&lt;/span&gt;
&amp;nbsp;
QString Controller&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;status&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;const&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; m_status&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw4&quot;&gt;void&lt;/span&gt; Controller&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;setStatus&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;const&lt;/span&gt; QString &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;status&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;m_status &lt;span class=&quot;sy3&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt; status&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        m_status &lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt; status&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
        emit statusChanged&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw4&quot;&gt;void&lt;/span&gt; Controller&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;changeColour&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    qDebug&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;sy1&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Color change triggered from QML&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    setStatus&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Color changed&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Step 2: C++ Implementation&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;step_2c_implementation&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:5,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;4162-4596&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit13&quot; id=&quot;step_3register_the_class_in_maincpp&quot;&gt;Step 3: Register the Class in main.cpp&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=6&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QQmlContext&amp;gt;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;quot;controller.h&amp;quot;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QGuiApplication&amp;gt;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;lt;QQmlApplicationEngine&amp;gt;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#include &amp;quot;controller.h&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; main&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; argc, &lt;span class=&quot;kw4&quot;&gt;char&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;argv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    QGuiApplication app&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;argc, argv&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    QQmlApplicationEngine engine&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw4&quot;&gt;const&lt;/span&gt; QUrl url&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QStringLiteral&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;qrc:/your-app/Main.qml&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    Controller controller&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    QObject&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;connect&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
        &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;engine,
        &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;QQmlApplicationEngine&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;objectCreated&lt;/span&gt;,
        &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;app,
        &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;url&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QObject &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;obj, &lt;span class=&quot;kw4&quot;&gt;const&lt;/span&gt; QUrl &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;objUrl&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;sy3&quot;&gt;!&lt;/span&gt;obj &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; url &lt;span class=&quot;sy1&quot;&gt;==&lt;/span&gt; objUrl&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                QCoreApplication&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;exit&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;,
        Qt&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;QueuedConnection&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    engine.&lt;span class=&quot;me1&quot;&gt;rootContext&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;setContextProperty&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;controller&amp;quot;&lt;/span&gt;, &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;controller&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    engine.&lt;span class=&quot;me1&quot;&gt;load&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; app.&lt;span class=&quot;me1&quot;&gt;exec&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Step 3: Register the Class in main.cpp&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;step_3register_the_class_in_maincpp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:6,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;4597-5379&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit14&quot; id=&quot;step_4connect_from_qml&quot;&gt;Step 4: Connect from QML&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=7&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; QtQuick
&lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; QtQuick.&lt;span class=&quot;me1&quot;&gt;Controls&lt;/span&gt;
&amp;nbsp;
&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-applicationwindow.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;ApplicationWindow&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;visible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; true
    &lt;span class=&quot;co3&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;360&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;640&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Hello Luci4&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-rectangle.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Rectangle&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; box
        &lt;span class=&quot;co3&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;skyblue&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;anchors.fill&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-column.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Column&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;anchors.centerIn&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
            &lt;span class=&quot;co3&quot;&gt;spacing&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;16&lt;/span&gt;
&amp;nbsp;
            &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-button.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;Button&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Change Colour&amp;quot;&lt;/span&gt;
                &lt;span class=&quot;co3&quot;&gt;onClicked&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                    controller.&lt;span class=&quot;me1&quot;&gt;changeColour&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                    box.&lt;span class=&quot;kw2&quot;&gt;color&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;lightgreen&amp;quot;&lt;/span&gt;
                &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
            &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-label.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;Label&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; controller.&lt;span class=&quot;me1&quot;&gt;status&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;

&lt;h4 id=&quot;signals&quot;&gt;Signals&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Signals are &lt;strong&gt;Qt’s messaging mechanism&lt;/strong&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Think of them like events: a button click emits a signal.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;You can &lt;strong&gt;connect signals to slots&lt;/strong&gt; (functions), either in C++ or QML.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;They enable &lt;strong&gt;decoupled communication&lt;/strong&gt; between objects.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;

&lt;h4 id=&quot;example&quot;&gt;Example:&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=8&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;signals&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;kw4&quot;&gt;void&lt;/span&gt; dataReady&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QString result&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=9&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;emit dataReady&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Download complete&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;p&gt;
You can connect it like this:
&lt;/p&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=10&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;connect&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;worker, &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;Worker&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;dataReady&lt;/span&gt;, &lt;span class=&quot;kw3&quot;&gt;this&lt;/span&gt;, &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;MainWindow&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;onDataReady&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;p&gt;
Or expose it to QML and bind to it:
&lt;/p&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=11&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtqml-connections.html&quot;&gt;&lt;span class=&quot;kw10&quot;&gt;Connections&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;target&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; controller
    &lt;span class=&quot;co3&quot;&gt;onDataReady&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; console.&lt;span class=&quot;me1&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Received:&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; result&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;blockquote&gt;&lt;div class=&quot;no&quot;&gt;
Signals must be declared inside the `signals:` section and must be emitted manually with `emit`.&lt;/div&gt;&lt;/blockquote&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Step 4: Connect from QML&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;step_4connect_from_qml&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:7,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;5380-6758&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit15&quot; id=&quot;using_models_in_qml_model-view&quot;&gt;5. Using Models in QML (Model-View)&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;5. Using Models in QML (Model-View)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;using_models_in_qml_model-view&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:12,&amp;quot;secid&amp;quot;:15,&amp;quot;range&amp;quot;:&amp;quot;6759-6798&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit16&quot; id=&quot;c_model&quot;&gt;C++ Model&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=12&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;QStringListModel model&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
model.&lt;span class=&quot;me1&quot;&gt;setStringList&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Item 1&amp;quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&amp;quot;Item 2&amp;quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&amp;quot;Item 3&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
engine.&lt;span class=&quot;me1&quot;&gt;rootContext&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;setContextProperty&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;myModel&amp;quot;&lt;/span&gt;, &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;model&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;C++ Model&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;c_model&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:12,&amp;quot;secid&amp;quot;:16,&amp;quot;range&amp;quot;:&amp;quot;6799-6963&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit17&quot; id=&quot;qml_view&quot;&gt;QML View&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=13&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-listview.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;ListView&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent.&lt;span class=&quot;me1&quot;&gt;width&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent.&lt;span class=&quot;me1&quot;&gt;height&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;model&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; myModel
    &lt;span class=&quot;co3&quot;&gt;delegate&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-rectangle.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Rectangle&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent.&lt;span class=&quot;me1&quot;&gt;width&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;40&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;#dddddd&amp;quot;&lt;/span&gt;
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-text.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Text&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;anchors.centerIn&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
            &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; modelData
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;QML View&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;qml_view&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:13,&amp;quot;secid&amp;quot;:17,&amp;quot;range&amp;quot;:&amp;quot;6964-7266&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit18&quot; id=&quot;custom_qabstractlistmodel_advanced&quot;&gt;Custom QAbstractListModel (Advanced)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Subclass &lt;code&gt;QAbstractListModel&lt;/code&gt; if you want to expose multiple roles:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;
class ItemModel : public QAbstractListModel {
    Q_OBJECT
public:
    enum Roles { NameRole = Qt::UserRole + 1 };

    int rowCount(const QModelIndex &amp;amp;parent = QModelIndex()) const override;
    QVariant data(const QModelIndex &amp;amp;index, int role) const override;
    QHash&amp;lt;int, QByteArray&amp;gt; roleNames() const override;

private:
    QList&amp;lt;QString&amp;gt; items;
};&lt;/pre&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Custom QAbstractListModel (Advanced)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;custom_qabstractlistmodel_advanced&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:14,&amp;quot;secid&amp;quot;:18,&amp;quot;range&amp;quot;:&amp;quot;7267-7747&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit19&quot; id=&quot;using_qt_quick_controls_2&quot;&gt;6. Using Qt Quick Controls 2&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Qt Quick Controls provides platform-aware UI widgets like &lt;code&gt;Button&lt;/code&gt;, &lt;code&gt;Slider&lt;/code&gt;, &lt;code&gt;TextField&lt;/code&gt;, etc.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;6. Using Qt Quick Controls 2&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;using_qt_quick_controls_2&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:15,&amp;quot;secid&amp;quot;:19,&amp;quot;range&amp;quot;:&amp;quot;7748-7877&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit20&quot; id=&quot;update_pro_file&quot;&gt;Update `.pro` File&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=15&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_pro&quot;&gt;snippet.pro&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file pro&quot;&gt;QT += quick quickcontrols2&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Update `.pro` File&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;update_pro_file&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:15,&amp;quot;secid&amp;quot;:20,&amp;quot;range&amp;quot;:&amp;quot;7878-7940&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit21&quot; id=&quot;use_in_qml&quot;&gt;Use in QML&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=16&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; QtQuick.&lt;span class=&quot;me1&quot;&gt;Controls&lt;/span&gt;
&amp;nbsp;
&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-applicationwindow.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;ApplicationWindow&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;visible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; true
    &lt;span class=&quot;co3&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;400&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;600&lt;/span&gt;
&amp;nbsp;
    &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-column.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Column&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;anchors.centerIn&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
        &lt;span class=&quot;co3&quot;&gt;spacing&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;10&lt;/span&gt;
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-textfield.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;TextField&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;placeholderText&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Type something&amp;quot;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-slider.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;Slider&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;from&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;co3&quot;&gt;to&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-button.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;Button&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Click me&amp;quot;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;onClicked&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; console.&lt;span class=&quot;me1&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Clicked&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;blockquote&gt;&lt;div class=&quot;no&quot;&gt;
Use Layouts (`ColumnLayout`, `RowLayout`) for adaptive UIs&lt;/div&gt;&lt;/blockquote&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Use in QML&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;use_in_qml&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:16,&amp;quot;secid&amp;quot;:21,&amp;quot;range&amp;quot;:&amp;quot;7941-8442&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit22&quot; id=&quot;networking&quot;&gt;7. Networking&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;7. Networking&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;networking&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:17,&amp;quot;secid&amp;quot;:22,&amp;quot;range&amp;quot;:&amp;quot;8443-8460&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit23&quot; id=&quot;cfetching_data&quot;&gt;C++: Fetching Data&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=17&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;QNetworkAccessManager &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;manager &lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt; QNetworkAccessManager&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
connect&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;manager, &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;QNetworkAccessManager&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;finished&lt;/span&gt;, &lt;span class=&quot;kw3&quot;&gt;this&lt;/span&gt;, &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QNetworkReply &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;reply&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    qDebug&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;sy1&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; reply&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;readAll&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
manager&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;get&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QNetworkRequest&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;QUrl&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;https://api.example.com&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;C++: Fetching Data&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;cfetching_data&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:17,&amp;quot;secid&amp;quot;:23,&amp;quot;range&amp;quot;:&amp;quot;8461-8748&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit24&quot; id=&quot;qmllightweight_networking&quot;&gt;QML: Lightweight Networking&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=18&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-button.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;Button&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Fetch&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;onClicked&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;kw2&quot;&gt;var&lt;/span&gt; xhr &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;new&lt;/span&gt; XMLHttpRequest&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        xhr.&lt;span class=&quot;me1&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;https://api.example.com&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        xhr.&lt;span class=&quot;me1&quot;&gt;onreadystatechange&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;xhr.&lt;span class=&quot;me1&quot;&gt;readyState&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;===&lt;/span&gt; XMLHttpRequest.&lt;span class=&quot;me1&quot;&gt;DONE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                console.&lt;span class=&quot;me1&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;xhr.&lt;span class=&quot;me1&quot;&gt;responseText&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        xhr.&lt;span class=&quot;me1&quot;&gt;send&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;QML: Lightweight Networking&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;qmllightweight_networking&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:18,&amp;quot;secid&amp;quot;:24,&amp;quot;range&amp;quot;:&amp;quot;8749-9117&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit25&quot; id=&quot;sqlite_database_integration&quot;&gt;8. SQLite Database Integration&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;8. SQLite Database Integration&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;sqlite_database_integration&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:19,&amp;quot;secid&amp;quot;:25,&amp;quot;range&amp;quot;:&amp;quot;9118-9152&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit26&quot; id=&quot;cconnecting_to_sqlite&quot;&gt;C++: Connecting to SQLite&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=19&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;QSqlDatabase db &lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt; QSqlDatabase&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;addDatabase&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;QSQLITE&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
db.&lt;span class=&quot;me1&quot;&gt;setDatabaseName&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;mydata.db&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;db.&lt;span class=&quot;me1&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    QSqlQuery query&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    query.&lt;span class=&quot;me1&quot;&gt;exec&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;CREATE TABLE IF NOT EXISTS items (name TEXT)&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
    query.&lt;span class=&quot;me1&quot;&gt;exec&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;INSERT INTO items VALUES (&#039;Apple&#039;)&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;C++: Connecting to SQLite&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;cconnecting_to_sqlite&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:19,&amp;quot;secid&amp;quot;:26,&amp;quot;range&amp;quot;:&amp;quot;9153-9442&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit27&quot; id=&quot;displaying_data_in_qml&quot;&gt;Displaying Data in QML&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=20&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;QSqlQueryModel &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;sqlModel &lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt; QSqlQueryModel&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
sqlModel&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;setQuery&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;SELECT name FROM items&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
engine.&lt;span class=&quot;me1&quot;&gt;rootContext&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;setContextProperty&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;sqlModel&amp;quot;&lt;/span&gt;, sqlModel&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=21&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-listview.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;ListView&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;model&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; sqlModel
    &lt;span class=&quot;co3&quot;&gt;delegate&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-text.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Text&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;text&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; model.&lt;span class=&quot;me1&quot;&gt;name&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;blockquote&gt;&lt;div class=&quot;no&quot;&gt;
Use `QSqlTableModel` or a custom proxy model for sorting/filtering&lt;/div&gt;&lt;/blockquote&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Displaying Data in QML&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;displaying_data_in_qml&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:20,&amp;quot;secid&amp;quot;:27,&amp;quot;range&amp;quot;:&amp;quot;9443-9814&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit28&quot; id=&quot;homework&quot;&gt;9. Homework&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;9. Homework&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;homework&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:22,&amp;quot;secid&amp;quot;:28,&amp;quot;range&amp;quot;:&amp;quot;9815-9830&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit29&quot; id=&quot;implement_the_following&quot;&gt;Implement the following:&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Main screen with a list of items from SQLite&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Button to fetch data from an &lt;abbr title=&quot;Application Programming Interface&quot;&gt;API&lt;/abbr&gt; and update DB&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Color-changing background on button click&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Time picker to schedule a daily task with toggle switch&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
This combines:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;strong&gt;C++ logic&lt;/strong&gt; (network, SQLite, scheduled tasks)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;strong&gt;QML UI&lt;/strong&gt; (views, buttons, time picker)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;strong&gt;Signal-slot communication&lt;/strong&gt; between QML and C++&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Implement the following:&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;implement_the_following&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:22,&amp;quot;secid&amp;quot;:29,&amp;quot;range&amp;quot;:&amp;quot;9831-10222&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit30&quot; id=&quot;persistent_time_picker_example_qml_sharedpreferences&quot;&gt;Persistent Time Picker Example (QML + SharedPreferences)&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=22&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_qml&quot;&gt;snippet.qml&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file qml&quot;&gt;&lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-applicationwindow.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;ApplicationWindow&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;400&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;600&lt;/span&gt;
    &lt;span class=&quot;co3&quot;&gt;visible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; true
&amp;nbsp;
    &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtqml-qtobject.html&quot;&gt;&lt;span class=&quot;kw10&quot;&gt;QtObject&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; settings
        &lt;span class=&quot;kw1&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;co3&quot;&gt;hour&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;8&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;property&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;co3&quot;&gt;minute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-column.html&quot;&gt;&lt;span class=&quot;kw18&quot;&gt;Column&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co3&quot;&gt;anchors.centerIn&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; parent
        &lt;span class=&quot;co3&quot;&gt;spacing&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;12&lt;/span&gt;
&amp;nbsp;
        TimePicker &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; picker
            &lt;span class=&quot;co3&quot;&gt;from&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;co3&quot;&gt;to&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;23&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;value&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; settings.&lt;span class=&quot;me1&quot;&gt;hour&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;onValueChanged&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; settings.&lt;span class=&quot;me1&quot;&gt;hour&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; value
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
        &lt;a href=&quot;http://qt-project.org/doc/qt-5/qml-qtquick-controls-switch.html&quot;&gt;&lt;span class=&quot;kw19&quot;&gt;Switch&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;co3&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; toggle
            &lt;span class=&quot;co3&quot;&gt;checked&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; true
            &lt;span class=&quot;co3&quot;&gt;onCheckedChanged&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; backend.&lt;span class=&quot;me1&quot;&gt;setEnabled&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;checked&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Persistent Time Picker Example (QML + SharedPreferences)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;persistent_time_picker_example_qml_sharedpreferences&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:22,&amp;quot;secid&amp;quot;:30,&amp;quot;range&amp;quot;:&amp;quot;10223-10844&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit31&quot; id=&quot;c_worker_timer_callback_example&quot;&gt;C++ Worker Timer Callback Example&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=23&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;QTimer &lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;timer &lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt; QTimer&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
connect&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;timer, &lt;span class=&quot;sy3&quot;&gt;&amp;amp;&lt;/span&gt;QTimer&lt;span class=&quot;sy4&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;me2&quot;&gt;timeout&lt;/span&gt;, &lt;span class=&quot;kw3&quot;&gt;this&lt;/span&gt;, &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    qDebug&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;sy1&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Timer triggered at scheduled time!&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;
timer&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt;start&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;60000&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;co1&quot;&gt;// Check every minute&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;
&lt;blockquote&gt;&lt;div class=&quot;no&quot;&gt;
Combine with `QTime::currentTime()` and stored preferences to trigger the event when desired&lt;/div&gt;&lt;/blockquote&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;C++ Worker Timer Callback Example&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;c_worker_timer_callback_example&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:23,&amp;quot;secid&amp;quot;:31,&amp;quot;range&amp;quot;:&amp;quot;10845-11178&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit32&quot; id=&quot;next_steps&quot;&gt;Next Steps&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Break your QML into reusable components like &lt;code&gt;ItemCard.qml&lt;/code&gt;, &lt;code&gt;HeaderBar.qml&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Use &lt;code&gt;Qt.labs.settings.Settings&lt;/code&gt; for persisting UI or state preferences&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Explore &lt;code&gt;Singletons&lt;/code&gt; in QML for shared/global state across components&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;Implement background task scheduler using QTimer + stored time preferences&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Next Steps&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;next_steps&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:24,&amp;quot;secid&amp;quot;:32,&amp;quot;range&amp;quot;:&amp;quot;11179-11500&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit33&quot; id=&quot;resources&quot;&gt;Resources&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;a href=&quot;https://doc.qt.io/qtcreator/index.html&quot; class=&quot;urlextern&quot; title=&quot;https://doc.qt.io/qtcreator/index.html&quot; rel=&quot;ugc nofollow&quot;&gt;Qt Creator Manual&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;a href=&quot;https://doc.qt.io/qt-6/qmlapplications.html&quot; class=&quot;urlextern&quot; title=&quot;https://doc.qt.io/qt-6/qmlapplications.html&quot; rel=&quot;ugc nofollow&quot;&gt;Qt QML Guide&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;a href=&quot;https://doc.qt.io/qt-6/qtquickcontrols2-index.html&quot; class=&quot;urlextern&quot; title=&quot;https://doc.qt.io/qt-6/qtquickcontrols2-index.html&quot; rel=&quot;ugc nofollow&quot;&gt;Qt Quick Controls 2&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;a href=&quot;https://doc.qt.io/qt-6/qtsql-index.html&quot; class=&quot;urlextern&quot; title=&quot;https://doc.qt.io/qt-6/qtsql-index.html&quot; rel=&quot;ugc nofollow&quot;&gt;Qt SQL Module&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
broken links, find alternatives:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt;&lt;a href=&quot;https://doc.qt.io/qt-4/qtqml-cppintegration-topic.html&quot; class=&quot;urlextern&quot; title=&quot;https://doc.qt.io/qt-4/qtqml-cppintegration-topic.html&quot; rel=&quot;ugc nofollow&quot;&gt;C++ and QML Integration&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;dl class=&quot;file&quot;&gt;
&lt;dt&gt;&lt;a href=&quot;https://wiki.devilplan.com/_export/code/coding:qt:quickstart?codeblock=24&quot; title=&quot;Download Snippet&quot; class=&quot;mediafile mf_cpp&quot;&gt;snippet.cpp&lt;/a&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;pre class=&quot;code file cpp&quot;&gt;by&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;
▖     ▘▖▖
▌ ▌▌▛▘▌▙▌
▙▖▙▌▙▖▌ ▌
&amp;nbsp;
written&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;long&lt;/span&gt; &lt;span class=&quot;kw3&quot;&gt;time&lt;/span&gt; ago, edited&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt; June &lt;span class=&quot;nu0&quot;&gt;2025&lt;/span&gt;&lt;/pre&gt;
&lt;/dd&gt;&lt;/dl&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Resources&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;resources&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:24,&amp;quot;secid&amp;quot;:33,&amp;quot;range&amp;quot;:&amp;quot;11501-&amp;quot;} --&gt;</description>
    </item>
</rdf:RDF>
