Skip to content

Instantly share code, notes, and snippets.

@mitchcurtis
mitchcurtis / main.qml
Last active July 6, 2021 14:09
ListView with array model of copyable colours
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.15
ApplicationWindow {
id: window
width: 600
height: 600
visible: true
title: "colours"
@mitchcurtis
mitchcurtis / main.cpp
Created April 27, 2021 12:01
Create C++ type via QQmlComponent and createWithInitialProperties
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQmlComponent>
class Bean : public QObject
{
Q_OBJECT
Q_PROPERTY(qreal roundness READ roundness WRITE setRoundness NOTIFY roundnessChanged)
Q_PROPERTY(QStringList sprouts READ sprouts WRITE setSprouts NOTIFY sproutsChanged)
@mitchcurtis
mitchcurtis / main.cpp
Last active June 18, 2021 08:23
QQuickItem that handles hover events and has a custom "cursor"
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QLoggingCategory>
#include <QDebug>
#include <QQuickItem>
#include <QQuickWindow>
Q_LOGGING_CATEGORY(lcEvents, "hover.events")
class EventItem : public QQuickItem
@mitchcurtis
mitchcurtis / CMakeLists.txt
Last active September 5, 2022 14:03
Qt Quick Auto Test (C++)
cmake_minimum_required(VERSION 3.5)
project(tst_untitled LANGUAGES CXX)
enable_testing()
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Gui Test Quick)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Gui Test Quick)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
@mitchcurtis
mitchcurtis / main.cpp
Created October 19, 2020 13:58
QComboBox with auto completion
#include <QtWidgets>
#include <QDebug>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow mainWindow;
QWidget *widget = new QWidget;
@mitchcurtis
mitchcurtis / main.cpp
Created October 11, 2020 17:48
ProxyModelNoneEntry with QSortFilterProxyModel
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QSortFilterProxyModel>
#include <QDebug>
class MyModel : public QAbstractListModel
{
Q_OBJECT
public:
@mitchcurtis
mitchcurtis / main.cpp
Last active October 11, 2020 17:44
ProxyModelNoneEntry with QAbstractProxyModel
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QAbstractProxyModel>
#include <QDebug>
class MyModel : public QAbstractListModel
{
Q_OBJECT
public:
@mitchcurtis
mitchcurtis / tst_default.cpp
Last active November 18, 2019 11:50
TestCase mouse event debugger
#include <QtQuickTest/quicktest.h>
#include <QGuiApplication>
#include <QQmlContext>
#include <QQmlEngine>
class MouseDebuggerSetup : public QObject
{
Q_OBJECT
public:
@mitchcurtis
mitchcurtis / main.qml
Created June 27, 2019 09:24
Gradient Rectangle in Flickable with reparented attached ScrollBars
import QtQuick 2.12
import QtQuick.Controls 2.12
ApplicationWindow {
visible: true
width: 640
height: 480
Flickable {
id: flickable
@mitchcurtis
mitchcurtis / main.qml
Created June 27, 2019 09:20
Gradient Rectangle in Flickable
import QtQuick 2.12
import QtQuick.Controls 2.12
ApplicationWindow {
visible: true
width: 640
height: 480
Flickable {
id: flickable