add book
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# Copyright (c) Daniel Gakwaya.
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
project(4-SaveTheStates VERSION 0.1 LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_AUTORCC ON)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(Qt6 6.5 REQUIRED COMPONENTS Quick)
|
||||
|
||||
qt_standard_project_setup(REQUIRES 6.5)
|
||||
|
||||
qt_add_executable(app4-SaveTheStates
|
||||
main.cpp resource.qrc
|
||||
)
|
||||
|
||||
qt_add_qml_module(app4-SaveTheStates
|
||||
URI 4-SaveTheStates
|
||||
VERSION 1.0
|
||||
QML_FILES Main.qml
|
||||
)
|
||||
|
||||
set_target_properties(app4-SaveTheStates PROPERTIES
|
||||
MACOSX_BUNDLE_GUI_IDENTIFIER my.example.com
|
||||
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(app4-SaveTheStates
|
||||
PRIVATE Qt6::Quick
|
||||
)
|
||||
|
||||
install(TARGETS app4-SaveTheStates
|
||||
BUNDLE DESTINATION .
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
)
|
||||
189
Qt6QMLBeginnersCode/13-Storage/4-SaveTheStates/Main.qml
Normal file
189
Qt6QMLBeginnersCode/13-Storage/4-SaveTheStates/Main.qml
Normal file
@@ -0,0 +1,189 @@
|
||||
// Copyright (c) Daniel Gakwaya.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
import QtQuick
|
||||
import QtQuick.Window
|
||||
import QtCore
|
||||
Window {
|
||||
visible: true
|
||||
width: 640
|
||||
height: 480
|
||||
title: qsTr("Custom Settings Demo")
|
||||
|
||||
Rectangle {
|
||||
id: containerRectId
|
||||
anchors.fill: parent
|
||||
|
||||
Rectangle {
|
||||
id: skyId
|
||||
width: parent.width
|
||||
height: 200
|
||||
//color : "blue"
|
||||
gradient: Gradient {
|
||||
GradientStop {id: skyStartColorId; position: 0.0; color: "blue" }
|
||||
GradientStop {id: skyEndColorId; position: 1.0; color: "#66CCFF" }
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: groundId
|
||||
anchors.top: skyId.bottom
|
||||
anchors.bottom: parent.bottom
|
||||
width: parent.width
|
||||
//color: "lime"
|
||||
gradient: Gradient {
|
||||
GradientStop {id: groundStartColorId; position: 0.0; color: "lime" }
|
||||
GradientStop {id: groundEndColorId; position: 1.0; color: "#66CCFF" }
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: treespringId
|
||||
x: 50
|
||||
y: 100
|
||||
width: 200
|
||||
height: 300
|
||||
source: "qrc:/images/treespringsmall.png"
|
||||
}
|
||||
Image {
|
||||
id: treeSummerId
|
||||
x: 50
|
||||
y: 100
|
||||
width: 200
|
||||
height: 300
|
||||
source: "qrc:/images/treesummersmall.png"
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id : sunId
|
||||
x: parent.width - width -100
|
||||
y: 50
|
||||
width: 100
|
||||
height: 100
|
||||
color: "yellow"
|
||||
radius: 60
|
||||
|
||||
|
||||
}
|
||||
|
||||
//state : "spring"
|
||||
state: settings.state
|
||||
|
||||
//States
|
||||
states: [
|
||||
State {
|
||||
name : "summer"
|
||||
PropertyChanges {
|
||||
target: skyId
|
||||
color: "lightblue"
|
||||
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: skyStartColorId
|
||||
color: "lightblue"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: skyEndColorId
|
||||
color: "#EECCFF"
|
||||
}
|
||||
|
||||
|
||||
|
||||
PropertyChanges {
|
||||
target: treeSummerId
|
||||
opacity: 1
|
||||
}
|
||||
PropertyChanges {
|
||||
target: treespringId
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
|
||||
PropertyChanges {
|
||||
target: groundStartColorId
|
||||
color: "lime"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: groundEndColorId
|
||||
color: "darkkhaki"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: sunId
|
||||
color: "yellow"
|
||||
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
State {
|
||||
name: "spring"
|
||||
PropertyChanges {
|
||||
target: skyId
|
||||
color: "deepskyblue"
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: skyStartColorId
|
||||
color: "deepskyblue"
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: skyEndColorId
|
||||
color: "#AACCFF"
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: treeSummerId
|
||||
opacity: 0
|
||||
}
|
||||
PropertyChanges {
|
||||
target: treespringId
|
||||
opacity: 1
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: groundStartColorId
|
||||
color: "lime"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: groundStartColorId
|
||||
color: "lime"
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: sunId
|
||||
color: "lightyellow"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
transitions : Transition {
|
||||
from: "*" ; to: "*"
|
||||
|
||||
ColorAnimation {
|
||||
duration: 500
|
||||
}
|
||||
NumberAnimation {
|
||||
properties: "opacity"
|
||||
duration: 500
|
||||
}
|
||||
}
|
||||
|
||||
MouseArea{
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
containerRectId.state = (containerRectId.state === "spring" ? "summer" : "spring")
|
||||
}
|
||||
}
|
||||
|
||||
Settings {
|
||||
id: settings
|
||||
property string state: "spring"
|
||||
}
|
||||
|
||||
Component.onDestruction: {
|
||||
settings.state = containerRectId.state
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 293 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 201 KiB |
26
Qt6QMLBeginnersCode/13-Storage/4-SaveTheStates/main.cpp
Normal file
26
Qt6QMLBeginnersCode/13-Storage/4-SaveTheStates/main.cpp
Normal file
@@ -0,0 +1,26 @@
|
||||
// Copyright (c) Daniel Gakwaya.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
#include <QGuiApplication>
|
||||
#include <QQmlApplicationEngine>
|
||||
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
|
||||
QGuiApplication app(argc, argv);
|
||||
|
||||
|
||||
//App Information
|
||||
app.setOrganizationName("LearnQt1");
|
||||
app.setOrganizationDomain("learnqt1.guide");
|
||||
app.setApplicationName("SettingsDemo1");
|
||||
|
||||
QQmlApplicationEngine engine;
|
||||
QObject::connect(&engine, &QQmlApplicationEngine::objectCreationFailed,
|
||||
&app, []() { QCoreApplication::exit(-1); },
|
||||
Qt::QueuedConnection);
|
||||
engine.loadFromModule("4-SaveTheStates", "Main");
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
<RCC>
|
||||
<qresource prefix="/">
|
||||
<file>images/treespringsmall.png</file>
|
||||
<file>images/treesummersmall.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
Reference in New Issue
Block a user