commit 5215938ebe566aa6fab274183015a409c3074625 Author: talksik Date: Fri Jan 9 16:00:47 2026 -0800 start qt project diff --git a/ui/.gitignore b/ui/.gitignore new file mode 100644 index 0000000..2f3f048 --- /dev/null +++ b/ui/.gitignore @@ -0,0 +1,2 @@ +build/ +.qtcreator/ diff --git a/ui/CMakeLists.txt b/ui/CMakeLists.txt new file mode 100644 index 0000000..d844de3 --- /dev/null +++ b/ui/CMakeLists.txt @@ -0,0 +1,41 @@ +cmake_minimum_required(VERSION 3.16) + +project(llink VERSION 0.1 LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +find_package(Qt6 REQUIRED COMPONENTS Quick) + +qt_standard_project_setup(REQUIRES 6.8) + +qt_add_executable(appllink + main.cpp +) + +qt_add_qml_module(appllink + URI llink + QML_FILES + Main.qml +) + +# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1. +# If you are developing for iOS or macOS you should consider setting an +# explicit, fixed bundle identifier manually though. +set_target_properties(appllink PROPERTIES +# MACOSX_BUNDLE_GUI_IDENTIFIER com.example.appllink + MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION} + MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} + MACOSX_BUNDLE TRUE + WIN32_EXECUTABLE TRUE +) + +target_link_libraries(appllink + PRIVATE Qt6::Quick +) + +include(GNUInstallDirs) +install(TARGETS appllink + BUNDLE DESTINATION . + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) diff --git a/ui/Main.qml b/ui/Main.qml new file mode 100644 index 0000000..41424f8 --- /dev/null +++ b/ui/Main.qml @@ -0,0 +1,8 @@ +import QtQuick + +Window { + width: 640 + height: 480 + visible: true + title: qsTr("Hello World") +} diff --git a/ui/main.cpp b/ui/main.cpp new file mode 100644 index 0000000..a4dfbc9 --- /dev/null +++ b/ui/main.cpp @@ -0,0 +1,20 @@ +#include +#include + +int main(int argc, char *argv[]) +{ + qDebug() << "Hello world"; + + QGuiApplication app(argc, argv); + + QQmlApplicationEngine engine; + QObject::connect( + &engine, + &QQmlApplicationEngine::objectCreationFailed, + &app, + []() { QCoreApplication::exit(-1); }, + Qt::QueuedConnection); + engine.loadFromModule("llink", "Main"); + + return app.exec(); +}