Introduction to the Qt Quick Scene Graph

Interacting with the Qt Quick scene graph is a good bonus skill for any Qt developer to have. In this introductory webinar we will present this component: a graphical representation of the Item scene and an alternative method to QML coding. Proper use of the underlying scene graph can save performance at runtime. We will explore how to interact with the scene graph through a simple example and suggest when it is appropriate to use.

In-Depth QML

Dates:
Location: Sunnyvale, CA
Early Bird Pricing: $1,695
Regular Price: $1,995
Register

Course Description

 

This 3-day course approaches common issues inherent to Qt/QML development. We cover a wide-range of advanced topics such as keyboard focus, gestures, virtual keyboard, unit-testing, profiling, rendering; and provide helpful design patterns and debugging tips. The target audience is the intermediate QML developer.

Course Availability: On-site, Open Enrollment
Subject:  Qt
Duration: 3 days

Course Prerequisites

  • Basic knowledge of programming with Qt on the desktop using widgets
  • Basic QML experience

Day 1

User Input

  • Keyboard Navigation and Focus
  • Input Focus
    • Focus Order
    • Focus property
    • Active Focus
    • FocusScope
  • Virtual Keyboard
  • Handling Keyboard Input
    • Key-Specific Handlers
    • All Keys Handler
    • Key Event Propagation
    • Event Propagation is Convenient
  • Multi-Touch
    • Common Multi-Touch Gestures
    • Handling Overlapping Touch Areas

Dynamic Creation of Items

  • Creating Items Dynamically
    • Procedural Method
    • Declarative Method
  • Procedural Creation
  • Procedural/Declarative Creation
  • Declarative Creation
  • Creating Multiple Items
  • Repeaters

Debugging and Profiling QML Applications

  • The Scene Graph
  • QML Profiler


Day 2

Review and Solution of Lab 1
Model/View
  • Model/View Concepts
  • Showing Simple Data
  • Custom Models
  • Proxy Models
  • Delegates
  • Tree Models
Multithreaded Programming
  • Qt Multithreading
  • Thread Synchronization and Primitives
  • QtConcurrent
C++/QML Layer
  • Layered Design
  • Exporting QPainter based GUI Classes
  • Exporting Scene Graph GUI classes
  • Defining Custom Property Types
  • Qt Serial Bus C++ Classes

Day 3

Testing
  • QTest Framework in QML
    • Overview
    • Adding a Test Suite
    • Implementing a Test
    • Add a Testing Main()
    • Running the Test
    • Simulating GUI Events
    • Mocking C++ Classes with QML
    • SignalSpy
  • Design for Testability
  • Notes on Google Test Framework and Qt

Additional Topics
  • Animations
  • QML Charts
  • QML Canvas
  • Particles
  • OpenGL and QML
  • Intro to Qt 3D

 

Register

< Back to full list of training

How Do I Make That in QML?

If you've found yourself asking this recently, this webinar is for you! In this webinar, we'll focus on writing controls and walk through a set of 17 QML controls made "from scratch" i.e. from QML primitives e.g. Item, Rectangle, Text, etc.