finish
This commit is contained in:
parent
19d2c8c046
commit
3af06d02ec
@ -9,8 +9,8 @@ set(CMAKE_AUTORCC ON)
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets LinguistTools SvgWidgets Gui Network PrintSupport)
|
||||
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets LinguistTools SvgWidgets Gui Network PrintSupport)
|
||||
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets LinguistTools SvgWidgets Gui Network PrintSupport Positioning Location Qml QuickWidgets)
|
||||
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets LinguistTools SvgWidgets Gui Network PrintSupport Positioning Location Qml QuickWidgets)
|
||||
|
||||
set(TS_FILES FemaSoftware_ru_RU.ts)
|
||||
|
||||
@ -54,7 +54,10 @@ if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
|
||||
journalservice.h
|
||||
logs_r.h
|
||||
qcustomplot.h qcustomplot.cpp
|
||||
|
||||
plotservice.h
|
||||
logwidget.h logwidget.cpp
|
||||
apiform.h apiform.cpp apiform.ui
|
||||
serverwidget.h serverwidget.cpp
|
||||
|
||||
|
||||
)
|
||||
@ -80,7 +83,7 @@ else()
|
||||
qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES})
|
||||
endif()
|
||||
|
||||
target_link_libraries(FemaSoftware PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::SvgWidgets Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Network Qt${QT_VERSION_MAJOR}::PrintSupport)
|
||||
target_link_libraries(FemaSoftware PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::SvgWidgets Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Network Qt${QT_VERSION_MAJOR}::PrintSupport Qt${QT_VERSION_MAJOR}::Positioning Qt${QT_VERSION_MAJOR}::Qml Qt${QT_VERSION_MAJOR}::QuickWidgets Qt${QT_VERSION_MAJOR}::Location)
|
||||
|
||||
|
||||
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
|
||||
|
@ -1,10 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 15.0.0, 2024-12-28T20:14:42. -->
|
||||
<!-- Written by QtCreator 15.0.0, 2025-01-08T02:03:27. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
<value type="QByteArray">{0f80b2dd-ddfc-4d50-9ae5-0a805fa2dbe5}</value>
|
||||
<value type="QByteArray">{13b89f84-ee4a-4465-9e05-91bc83d27758}</value>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.ActiveTarget</variable>
|
||||
@ -103,21 +103,21 @@
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=Debug
|
||||
-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="int" key="EnableQmlDebugging">0</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-Debug</value>
|
||||
-DCMAKE_BUILD_TYPE:STRING=Debug
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}</value>
|
||||
<value type="int" key="EnableQmlDebugging">1</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">E:\projects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-Debug</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">FemaSoftware</value>
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
@ -160,15 +160,15 @@
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=Release
|
||||
-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-Release</value>
|
||||
-DCMAKE_BUILD_TYPE:STRING=Release
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">E:\projects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-Release</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
@ -178,7 +178,6 @@
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
@ -195,7 +194,6 @@
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
@ -216,15 +214,15 @@
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-RelWithDebInfo</value>
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">E:\projects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-RelWithDebInfo</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
@ -270,16 +268,16 @@
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}</value>
|
||||
<value type="int" key="EnableQmlDebugging">0</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-Profile</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">E:\projects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-Profile</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
@ -325,724 +323,15 @@
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
|
||||
-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-MinSizeRel</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Minimum Size Release</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.BuildConfigurationCount">5</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
|
||||
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString"></value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.CMakePackageStep</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||
<value type="QString" key="ApplicationManagerPlugin.Deploy.InstallPackageStep.Arguments">install-package --acknowledge</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Install Application Manager package</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.InstallPackageStep</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedFiles"/>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedHosts"/>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedRemotePaths"/>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedSysroots"/>
|
||||
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedLocalTimes"/>
|
||||
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedRemoteTimes"/>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
|
||||
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.Configuration</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">2</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
||||
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
|
||||
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
|
||||
<value type="int" key="Analyzer.Valgrind.Callgrind.CostFormat">0</value>
|
||||
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
|
||||
<valuelist type="QVariantList" key="CustomOutputParsers"/>
|
||||
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
|
||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||
<value type="bool" key="PE.EnvironmentAspect.PrintOnRun">false</value>
|
||||
<value type="QString" key="PerfRecordArgsId">-e cpu-cycles --call-graph "dwarf,4096" -F 250</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">FemaSoftware</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeRunConfiguration.</value>
|
||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">FemaSoftware</value>
|
||||
<value type="bool" key="ProjectExplorer.RunConfiguration.Customized">false</value>
|
||||
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
||||
<value type="QString" key="RunConfiguration.WorkingDirectory.default">D:/Projects/QTProjects/FemaLocalSoftware/build/Desktop_Qt_6_8_1_MinGW_64_bit-Debug</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.Target.1</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="QString" key="DeviceType">Desktop</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 6.8.1 MSVC2022 64bit</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 6.8.1 MSVC2022 64bit</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.qt6.681.win64_msvc2022_64_kit</value>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
||||
<value type="QString" key="CMake.Build.Type">Debug</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=Debug
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="int" key="EnableQmlDebugging">0</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MSVC2022_64bit-Debug</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Debug</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
|
||||
<value type="QString" key="CMake.Build.Type">Release</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=Release
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MSVC2022_64bit-Release</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
|
||||
<value type="QString" key="CMake.Build.Type">RelWithDebInfo</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MSVC2022_64bit-RelWithDebInfo</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release with Debug Information</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.3">
|
||||
<value type="QString" key="CMake.Build.Type">RelWithDebInfo</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="int" key="EnableQmlDebugging">0</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MSVC2022_64bit-Profile</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Profile</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.4">
|
||||
<value type="QString" key="CMake.Build.Type">MinSizeRel</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MSVC2022_64bit-MinSizeRel</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Minimum Size Release</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.BuildConfigurationCount">5</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
|
||||
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString"></value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.CMakePackageStep</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||
<value type="QString" key="ApplicationManagerPlugin.Deploy.InstallPackageStep.Arguments">install-package --acknowledge</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Install Application Manager package</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.InstallPackageStep</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedFiles"/>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedHosts"/>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedRemotePaths"/>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedSysroots"/>
|
||||
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedLocalTimes"/>
|
||||
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedRemoteTimes"/>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
|
||||
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.Configuration</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">2</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
||||
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
|
||||
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
|
||||
<value type="int" key="Analyzer.Valgrind.Callgrind.CostFormat">0</value>
|
||||
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
|
||||
<valuelist type="QVariantList" key="CustomOutputParsers"/>
|
||||
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
|
||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||
<value type="bool" key="PE.EnvironmentAspect.PrintOnRun">false</value>
|
||||
<value type="QString" key="PerfRecordArgsId">-e cpu-cycles --call-graph "dwarf,4096" -F 250</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">FemaSoftware</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeRunConfiguration.</value>
|
||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">FemaSoftware</value>
|
||||
<value type="bool" key="ProjectExplorer.RunConfiguration.Customized">false</value>
|
||||
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.Target.2</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="QString" key="DeviceType">Desktop</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 6.8.1 llvm-mingw 64-bit</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 6.8.1 llvm-mingw 64-bit</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.qt6.681.win64_llvm_mingw_kit</value>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
||||
<value type="QString" key="CMake.Build.Type">Debug</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=Debug
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="int" key="EnableQmlDebugging">0</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_llvm_mingw_64_bit-Debug</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Debug</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
|
||||
<value type="QString" key="CMake.Build.Type">Release</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=Release
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_llvm_mingw_64_bit-Release</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
|
||||
<value type="QString" key="CMake.Build.Type">RelWithDebInfo</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_llvm_mingw_64_bit-RelWithDebInfo</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release with Debug Information</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.3">
|
||||
<value type="QString" key="CMake.Build.Type">RelWithDebInfo</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="int" key="EnableQmlDebugging">0</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_llvm_mingw_64_bit-Profile</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">all</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
|
||||
<value type="QString">clean</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
|
||||
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
|
||||
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Profile</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.4">
|
||||
<value type="QString" key="CMake.Build.Type">MinSizeRel</value>
|
||||
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
|
||||
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
|
||||
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
|
||||
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_GENERATOR:STRING=Ninja
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
|
||||
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
|
||||
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
|
||||
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
|
||||
-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
|
||||
-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">D:\Projects\QTProjects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_llvm_mingw_64_bit-MinSizeRel</value>
|
||||
-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
|
||||
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
|
||||
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">E:\projects\FemaLocalSoftware\build\Desktop_Qt_6_8_1_MinGW_64_bit-MinSizeRel</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
|
||||
@ -1148,13 +437,14 @@
|
||||
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
||||
<value type="QString" key="RunConfiguration.WorkingDirectory.default">E:/projects/FemaLocalSoftware/build/Desktop_Qt_6_8_1_MinGW_64_bit-Debug</value>
|
||||
</valuemap>
|
||||
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.TargetCount</variable>
|
||||
<value type="qlonglong">3</value>
|
||||
<value type="qlonglong">1</value>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
|
||||
|
1167
CMakeLists.txt.user.0f80b2d
Normal file
1167
CMakeLists.txt.user.0f80b2d
Normal file
File diff suppressed because it is too large
Load Diff
45
alarm_r.h
45
alarm_r.h
@ -1,22 +1,44 @@
|
||||
#ifndef ALARM_R_H
|
||||
#define ALARM_R_H
|
||||
|
||||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QString>
|
||||
|
||||
class AlarmR {
|
||||
class AlarmR
|
||||
{
|
||||
public:
|
||||
AlarmR() = default;
|
||||
|
||||
AlarmR(const QString& endTime, const QString& mark, const QString& sensorGroup,
|
||||
const QString& sensorId, const QString& serial, const QString& startTime)
|
||||
: end_time(endTime), mark(mark), sensor_group(sensorGroup), sensor_id(sensorId),
|
||||
serial(serial), start_time(startTime) {}
|
||||
AlarmR(const QString &endTime,
|
||||
const QString &mark,
|
||||
const QString &sensorGroup,
|
||||
const QString &sensorId,
|
||||
const QString &serial,
|
||||
const QString &startTime)
|
||||
: end_time(endTime)
|
||||
, mark(mark)
|
||||
, sensor_group(sensorGroup)
|
||||
, sensor_id(sensorId)
|
||||
, serial(serial)
|
||||
, start_time(startTime)
|
||||
{}
|
||||
|
||||
void parseResponse(const QJsonObject& json) {
|
||||
if (json.contains("end_time") && json["end_time"].isString()) {
|
||||
end_time = json["end_time"].toString();
|
||||
void parseResponse(const QJsonObject &json)
|
||||
{
|
||||
if (json["start_time"].isDouble()) {
|
||||
start_time = QString::number(static_cast<qint64>(json["start_time"].toDouble()));
|
||||
qint64 unixTime = static_cast<qint64>(json["start_time"].toDouble());
|
||||
QDateTime dateTime = QDateTime::fromSecsSinceEpoch(unixTime);
|
||||
start_time = dateTime.toString("dd.MM.yyyy HH:mm");
|
||||
}
|
||||
if (json.contains("end_time") && json["end_time"].isDouble()) {
|
||||
end_time = QString::number(static_cast<qint64>(json["end_time"].toDouble()));
|
||||
qint64 unixTime = static_cast<qint64>(json["end_time"].toDouble());
|
||||
QDateTime dateTime = QDateTime::fromSecsSinceEpoch(unixTime);
|
||||
end_time = dateTime.toString("dd.MM.yyyy HH:mm");
|
||||
} else {
|
||||
end_time.clear();
|
||||
}
|
||||
if (json.contains("mark") && json["mark"].isString()) {
|
||||
mark = json["mark"].toString();
|
||||
@ -30,9 +52,6 @@ public:
|
||||
if (json.contains("serial") && json["serial"].isString()) {
|
||||
serial = json["serial"].toString();
|
||||
}
|
||||
if (json.contains("start_time") && json["start_time"].isString()) {
|
||||
start_time = json["start_time"].toString();
|
||||
}
|
||||
}
|
||||
|
||||
QString getEndTime() const { return end_time; }
|
||||
|
@ -1,11 +1,88 @@
|
||||
#include "alarmdialog.h"
|
||||
#include "ui_alarmdialog.h"
|
||||
#include "qcustomplot.h"
|
||||
|
||||
alarmdialog::alarmdialog(QWidget *parent)
|
||||
: QWidget(parent)
|
||||
#include <QGeoCoordinate>
|
||||
#include <QQmlContext>
|
||||
#include <QColor>
|
||||
|
||||
alarmdialog::alarmdialog(QDialog *parent,
|
||||
const QString &sensorId,
|
||||
const QString &sensorName,
|
||||
const QString &group,
|
||||
const QString &dateStart,
|
||||
const QString &dateEnd,
|
||||
SensorService *sensorService)
|
||||
: QDialog(parent)
|
||||
, ui(new Ui::alarmdialog)
|
||||
, _sensorService(sensorService)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
ui->nameHead->setText(sensorId);
|
||||
ui->name->setText("Датчик - " + sensorName);
|
||||
ui->dateStart->setText("Дата начала - " + dateStart);
|
||||
if(dateEnd.isEmpty()) {
|
||||
ui->dateEnd->setText("Дата конца - Инцидент еще не закончился");
|
||||
} else {
|
||||
ui->dateEnd->setText("Дата конца - " + dateEnd);
|
||||
}
|
||||
|
||||
QCustomPlot *customPlot = new QCustomPlot(this);
|
||||
|
||||
customPlot->setFixedSize(710, 250);
|
||||
|
||||
ui->chartLayout->addWidget(customPlot);
|
||||
|
||||
qint64 start = QDateTime::fromString(dateStart, "dd.MM.yyyy HH:mm").toSecsSinceEpoch();
|
||||
qint64 end = QDateTime::fromString(dateEnd, "dd.MM.yyyy HH:mm").toSecsSinceEpoch();
|
||||
if(end == 0) {
|
||||
end = QDateTime::currentMSecsSinceEpoch();
|
||||
}
|
||||
PlotData data = sensorService->getDeviceSensorData(group, sensorId, start, end);
|
||||
|
||||
customPlot->addGraph();
|
||||
QPen pen;
|
||||
pen.setColor(QColor(19, 58, 97));
|
||||
pen.setWidth(2);
|
||||
customPlot->graph(0)->setPen(pen);
|
||||
customPlot->graph(0)->setData(data.X, data.Y);
|
||||
|
||||
QSharedPointer<QCPAxisTickerDateTime> dateTimeTicker(new QCPAxisTickerDateTime);
|
||||
dateTimeTicker->setDateTimeFormat("HH:mm:ss dd.MM.yyyy");
|
||||
customPlot->xAxis->setTicker(dateTimeTicker);
|
||||
|
||||
customPlot->yAxis->setRange(*std::min_element(data.Y.begin(), data.Y.end()) - 10,
|
||||
*std::max_element(data.Y.begin(), data.Y.end()) + 10);
|
||||
|
||||
customPlot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
|
||||
|
||||
customPlot->graph(0)->rescaleAxes();
|
||||
customPlot->replot();
|
||||
|
||||
|
||||
QVariantList points = sensorService->getPoints(start, end);
|
||||
|
||||
if(!points.empty()) {
|
||||
ui->map->rootContext()->setContextProperty("mapCenter", points[0]);
|
||||
ui->map->rootContext()->setContextProperty("pointsList", points);
|
||||
}
|
||||
|
||||
ui->map->setSource(QUrl(QStringLiteral("qrc:/qml/map.qml")));
|
||||
|
||||
connect(ui->cancelButton, &QPushButton::clicked, this, &alarmdialog::onCancelButtonClicked);
|
||||
connect(ui->statisticButton, &QPushButton::clicked, this, &alarmdialog::onStatisticButtonClicked);
|
||||
}
|
||||
|
||||
void alarmdialog::onCancelButtonClicked()
|
||||
{
|
||||
this->close();
|
||||
}
|
||||
|
||||
void alarmdialog::onStatisticButtonClicked()
|
||||
{
|
||||
emit dialogClosed();
|
||||
this->close();
|
||||
}
|
||||
|
||||
alarmdialog::~alarmdialog()
|
||||
|
@ -1,22 +1,41 @@
|
||||
#ifndef ALARMDIALOG_H
|
||||
#define ALARMDIALOG_H
|
||||
|
||||
#include <QWidget>
|
||||
#include "sensorservice.h"
|
||||
|
||||
#include <QDialog>
|
||||
|
||||
namespace Ui {
|
||||
class alarmdialog;
|
||||
}
|
||||
|
||||
class alarmdialog : public QWidget
|
||||
class alarmdialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit alarmdialog(QWidget *parent = nullptr);
|
||||
explicit alarmdialog(QDialog *parent = nullptr,
|
||||
const QString &sensorId = "",
|
||||
const QString &sensorName = "",
|
||||
const QString &group = "",
|
||||
const QString &dateStart = "",
|
||||
const QString &dateEnd = "",
|
||||
SensorService *sensorService = nullptr);
|
||||
~alarmdialog();
|
||||
|
||||
private:
|
||||
Ui::alarmdialog *ui;
|
||||
|
||||
signals:
|
||||
void dialogClosed();
|
||||
|
||||
private slots:
|
||||
void onCancelButtonClicked();
|
||||
void onStatisticButtonClicked();
|
||||
|
||||
private:
|
||||
SensorService *_sensorService;
|
||||
|
||||
};
|
||||
|
||||
#endif // ALARMDIALOG_H
|
||||
|
209
alarmdialog.ui
209
alarmdialog.ui
@ -31,6 +31,21 @@ background: white;
|
||||
}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_7">
|
||||
<property name="spacing">
|
||||
@ -65,7 +80,7 @@ background: white;
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<widget class="QLabel" name="nameHead">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
@ -120,75 +135,44 @@ color: #13385F;
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>15</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 22px;
|
||||
font-weight: 400;
|
||||
line-height: 26.63px;
|
||||
text-align: left;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TextLabel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>25</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>15</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
<property name="leftMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
<property name="rightMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>15</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="dateStart">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 22px;
|
||||
font-weight: 400;
|
||||
@ -196,11 +180,36 @@ line-height: 26.63px;
|
||||
text-align: left;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TextLabel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TextLabel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="dateEnd">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>27</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 22px;
|
||||
font-weight: 400;
|
||||
line-height: 26.63px;
|
||||
text-align: left;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TextLabel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
@ -219,7 +228,7 @@ color: #13385F;
|
||||
<number>15</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_5">
|
||||
<widget class="QLabel" name="name">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
@ -274,24 +283,21 @@ color: #13385F;
|
||||
<number>25</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_6">
|
||||
<widget class="QQuickWidget" name="map">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>710</width>
|
||||
<height>318</height>
|
||||
<height>320</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>710</width>
|
||||
<height>318</height>
|
||||
<height>320</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: black;</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
<property name="resizeMode">
|
||||
<enum>QQuickWidget::ResizeMode::SizeRootObjectToView</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@ -367,7 +373,7 @@ QPushButton:pressed {
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_2">
|
||||
<widget class="QPushButton" name="statisticButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>266</width>
|
||||
@ -410,54 +416,17 @@ QPushButton:pressed {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>117</width>
|
||||
<height>41</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>117</width>
|
||||
<height>41</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
border-style: outset;
|
||||
border-radius: 5px;
|
||||
border-color: #13385F;
|
||||
border-width: 1px;
|
||||
background-color: #13385F;
|
||||
color: white;
|
||||
font-family: Inter;
|
||||
font-size: 22px;
|
||||
font-weight: 500;
|
||||
line-height: 26.63px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QPushButton:hover {
|
||||
background-color: #1A4A73;
|
||||
border-color: #1A4A73;
|
||||
}
|
||||
|
||||
QPushButton:pressed {
|
||||
background-color: #102E47;
|
||||
border-color: #102E47;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Экспорт</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>QQuickWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header location="global">QtQuickWidgets/QQuickWidget</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="resources.qrc"/>
|
||||
</resources>
|
||||
|
102
alarmsservice.h
102
alarmsservice.h
@ -1,27 +1,43 @@
|
||||
#ifndef ALARMSSERVICE_H
|
||||
#define ALARMSSERVICE_H
|
||||
|
||||
#include "utils.h"
|
||||
#include "HttpClient.h"
|
||||
#include "alarm_r.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QList>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QList>
|
||||
#include <QStringList>
|
||||
#include <QJsonDocument>
|
||||
|
||||
struct AlarmSettings{
|
||||
QMap<QString, QList<QString>> groupsWithSensors;
|
||||
qint64 start_time;
|
||||
qint64 end_time;
|
||||
AlarmSettings(QMap<QString, QList<QString>> a, qint64 b, qint64 c) {
|
||||
groupsWithSensors = a;
|
||||
start_time = b;
|
||||
end_time = c;
|
||||
}
|
||||
};
|
||||
|
||||
class AlarmsService : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit AlarmsService(HttpClient* client, QObject *parent = nullptr)
|
||||
: QObject(parent), httpClient(client) {}
|
||||
explicit AlarmsService(HttpClient *client, QObject *parent = nullptr)
|
||||
: QObject(parent)
|
||||
, httpClient(client)
|
||||
{}
|
||||
|
||||
int getAlarmsAmount(const QMap<QString, QList<QString>>& groupsWithSensors, qint64 start, qint64 end) {
|
||||
int getAlarmsAmount(const QMap<QString, QList<QString>> &groupsWithSensors,
|
||||
qint64 start,
|
||||
qint64 end)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
@ -37,8 +53,8 @@ public:
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarmsAmount", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarmsAmount",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
if (responseJson.contains("amount")) {
|
||||
return responseJson["amount"].toInt();
|
||||
@ -46,57 +62,23 @@ public:
|
||||
return 0;
|
||||
}
|
||||
|
||||
QList<AlarmR> tmpB(int pageNum, int pageSize, qint64 start = 1734063255, qint64 end = 1735392656) {
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
rootObj["page_number"] = pageNum;
|
||||
rootObj["page_size"] = pageSize;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarms", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QList<AlarmR> alarmList;
|
||||
|
||||
if (responseJson.contains("alarms") && responseJson["alarms"].isArray()) {
|
||||
QJsonArray alarmsArray = responseJson["alarms"].toArray();
|
||||
|
||||
for (const QJsonValue& value : alarmsArray) {
|
||||
if (value.isObject()) {
|
||||
AlarmR alarm;
|
||||
alarm.parseResponse(value.toObject());
|
||||
alarmList.append(alarm);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return alarmList;
|
||||
}
|
||||
|
||||
int tmpA(qint64 start = 1734063255, qint64 end = 1735392656) {
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarmsAmount", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
if (responseJson.contains("amount")) {
|
||||
return responseJson["amount"].toInt();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
QList<AlarmR> getAlarms(const QMap<QString, QList<QString>>& groupsWithSensors, qint64 start, qint64 end, int pageNum, int pageSize) {
|
||||
QList<AlarmR> getAlarms(const QMap<QString, QList<QString>> &groupsWithSensors,
|
||||
qint64 start,
|
||||
qint64 end,
|
||||
int pageNum,
|
||||
int pageSize)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
rootObj["page_number"] = pageNum;
|
||||
rootObj["page_size"] = pageSize;
|
||||
QJsonArray orderArray;
|
||||
QJsonArray orderItem;
|
||||
orderItem.append("start_time");
|
||||
orderItem.append("-");
|
||||
orderArray.append(orderItem);
|
||||
rootObj["order"] = orderArray;
|
||||
QJsonObject sensorsObj;
|
||||
for (auto it = groupsWithSensors.constBegin(); it != groupsWithSensors.constEnd(); ++it) {
|
||||
QJsonArray sensorArray;
|
||||
@ -109,15 +91,15 @@ public:
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarms", QJsonDocument::fromJson(requestData).object());
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarms",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QList<AlarmR> alarmList;
|
||||
|
||||
if (responseJson.contains("alarms") && responseJson["alarms"].isArray()) {
|
||||
QJsonArray alarmsArray = responseJson["alarms"].toArray();
|
||||
|
||||
for (const QJsonValue& value : alarmsArray) {
|
||||
for (const QJsonValue &value : alarmsArray) {
|
||||
if (value.isObject()) {
|
||||
AlarmR alarm;
|
||||
alarm.parseResponse(value.toObject());
|
||||
@ -130,7 +112,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
HttpClient* httpClient;
|
||||
HttpClient *httpClient;
|
||||
};
|
||||
|
||||
#endif // ALARMSSERVICE_H
|
||||
|
@ -1,11 +1,22 @@
|
||||
#include "alarmwidget.h"
|
||||
#include "alarmdialog.h"
|
||||
|
||||
AlarmWidget::AlarmWidget(const QString& vehicle, const QString& group, const QString& sensor,
|
||||
const QString& date, const QString& time, QWidget *parent)
|
||||
AlarmWidget::AlarmWidget(QMap<QString, QMap<QString, QPair<QString, QString>>> &translate,
|
||||
const QString &sensorId,
|
||||
const QString &group,
|
||||
const QString &date,
|
||||
const QString &time,
|
||||
const QString &timeEnd,
|
||||
SensorService *sensorService,
|
||||
QWidget *parent)
|
||||
: QWidget(parent)
|
||||
, _timeEnd(timeEnd)
|
||||
, _sensorService(sensorService)
|
||||
, _translate(translate)
|
||||
, _sensorId(sensorId)
|
||||
{
|
||||
|
||||
setAttribute(Qt::WA_StyledBackground);
|
||||
// Устанавливаем обводку для ВСЕГО виджета
|
||||
setStyleSheet(R"(
|
||||
QWidget {
|
||||
border: 1px solid #E5E7EB;
|
||||
@ -13,27 +24,23 @@ AlarmWidget::AlarmWidget(const QString& vehicle, const QString& group, const QSt
|
||||
}
|
||||
)");
|
||||
|
||||
// Горизонтальный layout
|
||||
QHBoxLayout *mainLayout = new QHBoxLayout(this);
|
||||
mainLayout->setSpacing(70); // Отступы между элементами
|
||||
mainLayout->setContentsMargins(25, 5, 25, 5); // Внутренние отступы
|
||||
mainLayout->setSpacing(70);
|
||||
mainLayout->setContentsMargins(25, 5, 25, 5);
|
||||
setLayout(mainLayout);
|
||||
|
||||
// Создаем лейблы
|
||||
vehicleLabel = createLabel(vehicle, 100, 230);
|
||||
groupLabel = createLabel(group, 100, 250);
|
||||
sensorLabel = createLabel(sensor, 100, 250);
|
||||
//groupLabel = createLabel(_groupToLocalgroup[group], 100, 250);
|
||||
//sensorLabel = createLabel(_sensorToLocalSensor[sensorId], 100, 350);
|
||||
groupLabel = createLabel(translate[group][sensorId].first, 100, 250);
|
||||
sensorLabel = createLabel(translate[group][sensorId].second, 100, 350);
|
||||
dateLabel = createLabel(date, 100, 150);
|
||||
timeLabel = createLabel(time, 100, 100);
|
||||
|
||||
// Добавляем лейблы в layout
|
||||
mainLayout->addWidget(vehicleLabel);
|
||||
mainLayout->addWidget(groupLabel);
|
||||
mainLayout->addWidget(sensorLabel);
|
||||
mainLayout->addWidget(dateLabel);
|
||||
mainLayout->addWidget(timeLabel);
|
||||
|
||||
// Кнопка "Подробнее"
|
||||
infoButton = new QPushButton("Подробнее");
|
||||
infoButton->setFixedHeight(40);
|
||||
infoButton->setFixedSize(140, 40);
|
||||
@ -59,14 +66,30 @@ AlarmWidget::AlarmWidget(const QString& vehicle, const QString& group, const QSt
|
||||
}
|
||||
)");
|
||||
|
||||
// Добавляем кнопку в layout
|
||||
mainLayout->addWidget(infoButton);
|
||||
|
||||
//mainLayout->addStretch();
|
||||
|
||||
connect(infoButton, &QPushButton::clicked, this, &AlarmWidget::onInfoButtonClicked);
|
||||
}
|
||||
|
||||
QLabel* AlarmWidget::createLabel(const QString &text, int minSize, int maxSize)
|
||||
void AlarmWidget::onInfoButtonClicked() {
|
||||
alarmdialog *dialog = new alarmdialog(nullptr, _sensorId, sensorLabel->text(),
|
||||
groupLabel->text(), dateLabel->text() + ' ' + timeLabel->text(),
|
||||
_timeEnd, _sensorService);
|
||||
|
||||
connect(dialog, &alarmdialog::dialogClosed, this, &AlarmWidget::onDialogClosed);
|
||||
|
||||
dialog->exec();
|
||||
}
|
||||
|
||||
void AlarmWidget::onDialogClosed() {
|
||||
QDateTime start = QDateTime::fromString(dateLabel->text() + ' ' + timeLabel->text(), "dd.MM.yyyy HH:mm");
|
||||
QDateTime end = QDateTime::fromString(_timeEnd, "dd.MM.yyyy HH:mm");
|
||||
if(end.isNull()) {
|
||||
end = QDateTime::currentDateTime();
|
||||
}
|
||||
emit dialogClosedFromWidget(groupLabel->text() + '/' + sensorLabel->text(), start, end);
|
||||
}
|
||||
|
||||
QLabel *AlarmWidget::createLabel(const QString &text, int minSize, int maxSize)
|
||||
{
|
||||
QLabel *label = new QLabel(text);
|
||||
label->setAlignment(Qt::AlignLeft);
|
||||
|
@ -1,26 +1,44 @@
|
||||
#ifndef ALARMWIDGET_H
|
||||
#define ALARMWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include "sensorservice.h"
|
||||
|
||||
#include <QFrame>
|
||||
#include <QHBoxLayout>
|
||||
#include <QLabel>
|
||||
#include <QPushButton>
|
||||
#include <QVBoxLayout>
|
||||
#include <QHBoxLayout>
|
||||
#include <QFrame>
|
||||
#include <QWidget>
|
||||
|
||||
class AlarmWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit AlarmWidget(const QString& vehicle, const QString& group, const QString& sensor,
|
||||
const QString& date, const QString& time, QWidget *parent = nullptr);
|
||||
explicit AlarmWidget(QMap<QString, QMap<QString, QPair<QString, QString>>> &translate,
|
||||
const QString &sensorId = "",
|
||||
const QString &group = "",
|
||||
const QString &date = "",
|
||||
const QString &time = "",
|
||||
const QString &timeEnd = "",
|
||||
SensorService *sensorService = nullptr,
|
||||
QWidget *parent = nullptr);
|
||||
|
||||
private:
|
||||
QLabel *createLabel(const QString &text, int minSize = 100, int maxSize = 250);
|
||||
|
||||
signals:
|
||||
void dialogClosedFromWidget(QString groupWithSensor, QDateTime start, QDateTime end);
|
||||
|
||||
private slots:
|
||||
void onInfoButtonClicked();
|
||||
void onDialogClosed();
|
||||
|
||||
private:
|
||||
QLabel *vehicleLabel;
|
||||
QMap<QString, QMap<QString, QPair<QString, QString>>> _translate;
|
||||
const QString _timeEnd;
|
||||
const QString _sensorId;
|
||||
SensorService *_sensorService;
|
||||
QLabel *groupLabel;
|
||||
QLabel *sensorLabel;
|
||||
QLabel *dateLabel;
|
||||
|
25
apiform.cpp
Normal file
25
apiform.cpp
Normal file
@ -0,0 +1,25 @@
|
||||
#include "apiform.h"
|
||||
#include "ui_apiform.h"
|
||||
#include "utils.h"
|
||||
|
||||
ApiForm::ApiForm(QDialog *parent)
|
||||
: QDialog(parent)
|
||||
, ui(new Ui::ApiForm)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
connect(ui->loginButton, &QPushButton::clicked, this, [this]() {
|
||||
const QString adres = ui->adres->text();
|
||||
const QString port = ui->port->text();
|
||||
if (!adres.isEmpty() && !port.isEmpty()) {
|
||||
utils::API_URL = QString("http://%1:%2").arg(adres).arg(port);
|
||||
this->accept();
|
||||
}
|
||||
this->accept();
|
||||
});
|
||||
}
|
||||
|
||||
ApiForm::~ApiForm()
|
||||
{
|
||||
delete ui;
|
||||
}
|
22
apiform.h
Normal file
22
apiform.h
Normal file
@ -0,0 +1,22 @@
|
||||
#ifndef APIFORM_H
|
||||
#define APIFORM_H
|
||||
|
||||
#include <QDialog>
|
||||
|
||||
namespace Ui {
|
||||
class ApiForm;
|
||||
}
|
||||
|
||||
class ApiForm : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit ApiForm(QDialog *parent = nullptr);
|
||||
~ApiForm();
|
||||
|
||||
private:
|
||||
Ui::ApiForm *ui;
|
||||
};
|
||||
|
||||
#endif // APIFORM_H
|
254
apiform.ui
Normal file
254
apiform.ui
Normal file
@ -0,0 +1,254 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ApiForm</class>
|
||||
<widget class="QWidget" name="ApiForm">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>800</width>
|
||||
<height>400</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>800</width>
|
||||
<height>400</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>800</width>
|
||||
<height>400</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#ApiForm{
|
||||
image: url(:/visual/res/svg/fema-wing.svg);
|
||||
background-color: #ffffff;
|
||||
image-position: bottom right;
|
||||
border: none;
|
||||
}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>25</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 20px;
|
||||
font-weight: 400;
|
||||
line-height: 36.31px;
|
||||
text-align: left;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Здравствуйте! Введите пожалуйста адрес и порт устройства</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<property name="spacing">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 20px;
|
||||
font-weight: 500;
|
||||
line-height: 36.31px;
|
||||
text-align: left;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Адрес:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 20px;
|
||||
font-weight: 500;
|
||||
line-height: 36.31px;
|
||||
text-align: left;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Порт:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<property name="spacing">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="adres">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">border: 2px solid #DCD174;
|
||||
font-family: Inter;
|
||||
font-size: 20px;
|
||||
font-weight: 400;
|
||||
line-height: 31.47px;
|
||||
text-align: left;
|
||||
background: #00000000;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="port">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">border: 2px solid #DCD174;
|
||||
font-family: Inter;
|
||||
font-size: 20px;
|
||||
font-weight: 400;
|
||||
line-height: 31.47px;
|
||||
text-align: left;
|
||||
background: #00000000;
|
||||
color: #13385F;
|
||||
</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Policy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="loginButton">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
border-style: outset;
|
||||
border-radius: 5px;
|
||||
border-color: #13385F;
|
||||
border-width: 1px;
|
||||
background-color: #13385F;
|
||||
color: white;
|
||||
font-family: Inter;
|
||||
font-size: 22px;
|
||||
font-weight: 500;
|
||||
line-height: 26.63px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QPushButton:hover {
|
||||
background-color: #1A4A73;
|
||||
border-color: #1A4A73;
|
||||
}
|
||||
|
||||
QPushButton:pressed {
|
||||
background-color: #102E47;
|
||||
border-color: #102E47;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Войти в приложение</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
@ -1,4 +1,4 @@
|
||||
set(CMAKE_CXX_COMPILER "G:/Programs/QT/Tools/mingw1310_64/bin/g++.exe")
|
||||
set(CMAKE_CXX_COMPILER "E:/qt/Tools/mingw1310_64/bin/g++.exe")
|
||||
set(CMAKE_CXX_COMPILER_ARG1 "")
|
||||
set(CMAKE_CXX_COMPILER_ID "GNU")
|
||||
set(CMAKE_CXX_COMPILER_VERSION "13.1.0")
|
||||
@ -22,11 +22,11 @@ set(CMAKE_CXX_SIMULATE_VERSION "")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_AR "G:/Programs/QT/Tools/mingw1310_64/bin/ar.exe")
|
||||
set(CMAKE_CXX_COMPILER_AR "G:/Programs/QT/Tools/mingw1310_64/bin/gcc-ar.exe")
|
||||
set(CMAKE_RANLIB "G:/Programs/QT/Tools/mingw1310_64/bin/ranlib.exe")
|
||||
set(CMAKE_CXX_COMPILER_RANLIB "G:/Programs/QT/Tools/mingw1310_64/bin/gcc-ranlib.exe")
|
||||
set(CMAKE_LINKER "G:/Programs/QT/Tools/mingw1310_64/bin/ld.exe")
|
||||
set(CMAKE_AR "E:/qt/Tools/mingw1310_64/bin/ar.exe")
|
||||
set(CMAKE_CXX_COMPILER_AR "E:/qt/Tools/mingw1310_64/bin/gcc-ar.exe")
|
||||
set(CMAKE_RANLIB "E:/qt/Tools/mingw1310_64/bin/ranlib.exe")
|
||||
set(CMAKE_CXX_COMPILER_RANLIB "E:/qt/Tools/mingw1310_64/bin/gcc-ranlib.exe")
|
||||
set(CMAKE_LINKER "E:/qt/Tools/mingw1310_64/bin/ld.exe")
|
||||
set(CMAKE_LINKER_LINK "")
|
||||
set(CMAKE_LINKER_LLD "")
|
||||
set(CMAKE_CXX_COMPILER_LINKER "../src/gcc-13.1.0/configure --host=x86_64-w64-mingw32 --build=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --prefix=/mingw64 --with-sysroot=/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64 --enable-host-shared --disable-multilib --enable-languages=c,c++,fortran,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --enable-libstdcxx-filesystem-ts=yes --disable-libssp --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=nocona --with-tune=core2 --with-libiconv --with-system-zlib --with-gmp=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-mpfr=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-mpc=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-isl=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-pkgversion='x86_64-posix-seh-rev1, Built by MinGW-Builds project' --with-bugurl=https:/github.com/niXman/mingw-builds CFLAGS='-O2 -pipe -fno-ident -I/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -fno-ident -I/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include' CPPFLAGS=' -I/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include' LDFLAGS='-pipe -fno-ident -L/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/lib -L/c/buildroot/prerequisites/x86_64-zlib-static/lib -L/c/buildroot/prerequisites/x86_64-w64-mingw32-static/lib ' LD_FOR_TARGET=/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/bin/ld.exe")
|
||||
@ -85,8 +85,8 @@ endif()
|
||||
|
||||
|
||||
|
||||
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "G:/Programs/QT/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++;G:/Programs/QT/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/x86_64-w64-mingw32;G:/Programs/QT/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/backward;G:/Programs/QT/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include;G:/Programs/QT/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include-fixed;G:/Programs/QT/Tools/mingw1310_64/x86_64-w64-mingw32/include")
|
||||
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/x86_64-w64-mingw32;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/backward;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include-fixed;E:/qt/Tools/mingw1310_64/x86_64-w64-mingw32/include")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;mingw32;gcc_s;gcc;moldname;mingwex;kernel32;pthread;advapi32;shell32;user32;kernel32;iconv;mingw32;gcc_s;gcc;moldname;mingwex;kernel32")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "G:/Programs/QT/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0;G:/Programs/QT/Tools/mingw1310_64/lib/gcc;G:/Programs/QT/Tools/mingw1310_64/x86_64-w64-mingw32/lib;G:/Programs/QT/Tools/mingw1310_64/lib")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0;E:/qt/Tools/mingw1310_64/lib/gcc;E:/qt/Tools/mingw1310_64/x86_64-w64-mingw32/lib;E:/qt/Tools/mingw1310_64/lib")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
||||
set(CMAKE_CXX_COMPILER_CLANG_RESOURCE_DIR "")
|
||||
|
@ -1,4 +1,4 @@
|
||||
set(CMAKE_RC_COMPILER "G:/Programs/QT/Tools/mingw1310_64/bin/windres.exe")
|
||||
set(CMAKE_RC_COMPILER "E:/qt/Tools/mingw1310_64/bin/windres.exe")
|
||||
set(CMAKE_RC_COMPILER_ARG1 "")
|
||||
set(CMAKE_RC_COMPILER_LOADED 1)
|
||||
set(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc;RC)
|
||||
|
@ -1,13 +1,13 @@
|
||||
set(CMAKE_HOST_SYSTEM "Windows-10.0.26100")
|
||||
set(CMAKE_HOST_SYSTEM "Windows-10.0.19045")
|
||||
set(CMAKE_HOST_SYSTEM_NAME "Windows")
|
||||
set(CMAKE_HOST_SYSTEM_VERSION "10.0.26100")
|
||||
set(CMAKE_HOST_SYSTEM_VERSION "10.0.19045")
|
||||
set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_SYSTEM "Windows-10.0.26100")
|
||||
set(CMAKE_SYSTEM "Windows-10.0.19045")
|
||||
set(CMAKE_SYSTEM_NAME "Windows")
|
||||
set(CMAKE_SYSTEM_VERSION "10.0.26100")
|
||||
set(CMAKE_SYSTEM_VERSION "10.0.19045")
|
||||
set(CMAKE_SYSTEM_PROCESSOR "AMD64")
|
||||
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
|
Binary file not shown.
@ -99,6 +99,79 @@ static const unsigned char qt_resource_data[] = {
|
||||
0x7f,0x9a,0x22,0x88,0x8a,0xa5,0x99,0x9d,0x2a,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x48,0xb8,0xbf,0x3d,0xed,0xb2,0xe3,0x7e,0x81,0xad,
|
||||
0x3e,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// delete.png
|
||||
0x0,0x0,0x4,0x5d,
|
||||
0x89,
|
||||
0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0,
|
||||
0x0,0x0,0x30,0x0,0x0,0x0,0x36,0x8,0x6,0x0,0x0,0x0,0x81,0x5b,0x1a,0x9a,
|
||||
0x0,0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,
|
||||
0x1,0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,
|
||||
0x1c,0xe9,0x0,0x0,0x0,0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xb1,0x8f,0xb,0xfc,
|
||||
0x61,0x5,0x0,0x0,0x3,0xf2,0x49,0x44,0x41,0x54,0x78,0x1,0xd5,0x5a,0x4d,0x56,
|
||||
0x13,0x41,0x10,0xae,0xea,0x9,0xca,0x8e,0x78,0x2,0xc7,0x1b,0xc0,0xe,0x70,0x61,
|
||||
0x50,0xf1,0xb9,0x13,0x4f,0x20,0x9e,0x40,0x38,0x1,0xe6,0x4,0xe2,0xd,0xe4,0x4,
|
||||
0xe0,0xce,0xf7,0xc,0x1a,0x17,0x2,0x3b,0xf1,0x4,0xe,0x27,0x30,0xec,0x90,0x4c,
|
||||
0xba,0xec,0x9e,0x68,0xc8,0xf4,0xcf,0x4c,0x77,0xcf,0xc,0x79,0xf9,0x16,0xd0,0xe9,
|
||||
0xff,0xaf,0xbb,0xab,0xba,0xaa,0x6b,0x10,0x2a,0x80,0x9e,0xaf,0xc6,0x90,0x46,0x6f,
|
||||
0x80,0xd1,0x16,0x10,0xc4,0x1e,0x4d,0x7,0x0,0x78,0xe,0x38,0xfa,0x0,0xc,0xbe,
|
||||
0xe1,0xa7,0xb3,0x4,0x2,0x81,0x10,0x8,0xda,0x5c,0xdd,0x6,0x60,0xef,0x44,0xb2,
|
||||
0xd,0x55,0x80,0x94,0x88,0x5,0xd8,0x8,0x25,0x11,0x44,0x20,0x5b,0xf9,0x11,0xfb,
|
||||
0x5,0x75,0x41,0x92,0xb8,0xbe,0xbb,0x82,0xfd,0xfe,0x0,0x3c,0xd1,0x82,0x10,0x8c,
|
||||
0xd8,0x9e,0x96,0x47,0xd4,0x7,0xc2,0x4,0x5c,0xc0,0xa0,0x23,0xfe,0xc6,0x37,0x6d,
|
||||
0x31,0x86,0x68,0xf8,0x42,0xa4,0xe,0xc0,0x13,0x61,0x4,0x0,0x97,0xc5,0xa8,0x37,
|
||||
0x3f,0x89,0xbf,0xc5,0xde,0x59,0x17,0x3c,0x40,0xcf,0xd6,0xe,0xc5,0xc4,0xb7,0x26,
|
||||
0x19,0x8c,0x3a,0x10,0x40,0x80,0x41,0x10,0x28,0x77,0xee,0x7d,0x27,0x9f,0x61,0xd4,
|
||||
0xca,0x4f,0x96,0x28,0x48,0x96,0x2,0x9,0xd4,0x0,0x24,0xf5,0xbc,0xcf,0x19,0x81,
|
||||
0x9a,0x30,0xf7,0x4,0xf0,0x9f,0x4a,0x14,0x5a,0x5,0x63,0xf7,0x66,0x99,0xc0,0x4d,
|
||||
0x77,0xd3,0x7,0x6f,0x64,0x67,0x7e,0x79,0x2a,0x63,0x7c,0xb9,0xb9,0xb7,0x4f,0x20,
|
||||
0xe2,0xdd,0x16,0x70,0xf6,0x15,0x32,0x95,0x46,0x10,0xe,0x95,0x50,0x10,0xda,0xde,
|
||||
0xfd,0xa4,0xd8,0x66,0x62,0xde,0xd5,0x6e,0xd2,0xd9,0x42,0x10,0x0,0xbe,0x2b,0x12,
|
||||
0x9,0xcc,0x1f,0x84,0x2d,0x95,0xee,0x6a,0xa6,0x4,0x6d,0xae,0xcb,0x73,0xf9,0xe3,
|
||||
0x26,0x83,0x8e,0xb0,0x77,0xfa,0x12,0x66,0x0,0x31,0x97,0xdc,0xb9,0xc6,0xcf,0x27,
|
||||
0xda,0x7c,0x75,0x2d,0x14,0xf1,0x5a,0xf4,0xf3,0x6d,0xa1,0x5c,0x8d,0x22,0xce,0x84,
|
||||
0x0,0x75,0x3a,0xea,0xb8,0x89,0xa9,0x9e,0x46,0xc0,0x60,0xd6,0xce,0x66,0x7,0x16,
|
||||
0xaf,0x9c,0xc6,0xd,0x34,0xe6,0x26,0x26,0xf5,0x9e,0xd0,0x62,0x9,0xf6,0x4e,0xba,
|
||||
0xf6,0x72,0x1c,0x40,0xba,0xd0,0x55,0x4d,0xe5,0x89,0x33,0x24,0x61,0x28,0xd7,0x7,
|
||||
0x14,0x7a,0xdf,0x83,0x80,0xec,0xec,0xff,0xa,0x98,0x57,0x22,0x15,0xce,0xc,0xc2,
|
||||
0x96,0xf4,0x28,0xe8,0xc9,0xc3,0x4,0x8f,0xbf,0xe7,0x8d,0xb3,0xb1,0xc9,0xbd,0x2d,
|
||||
0xae,0x4a,0x80,0x85,0x3f,0x89,0x48,0xbf,0x57,0xda,0xbf,0x12,0x65,0x3b,0x59,0xda,
|
||||
0x58,0xde,0x8a,0x1,0x39,0x94,0x81,0x15,0x10,0x80,0x42,0x2,0x8,0xee,0xce,0x7,
|
||||
0x19,0xe4,0x88,0x4d,0xe5,0x51,0xb8,0x9c,0xcd,0xce,0x16,0xf2,0x35,0x9f,0xd1,0xec,
|
||||
0x2c,0x59,0x8,0xe4,0x2b,0xd3,0xe3,0xf5,0xfb,0x50,0x4,0xc6,0xab,0xfa,0xc5,0xfa,
|
||||
0x6e,0x22,0x8f,0xc1,0x1,0xf5,0xec,0x0,0x55,0x54,0xb5,0x9c,0x95,0x1f,0x47,0xa9,
|
||||
0xc,0xc,0x30,0x13,0x20,0x65,0x45,0xa2,0xe1,0x3d,0xad,0xe,0xa2,0xb7,0x3,0x9e,
|
||||
0x1f,0xa3,0x44,0x3d,0x13,0x28,0xbb,0x4e,0x1e,0x4,0x34,0x1,0x6d,0x2d,0x69,0x75,
|
||||
0x38,0x55,0x23,0x50,0xd3,0x5,0xe9,0x76,0x84,0x4a,0x8f,0x8,0xd6,0x2f,0x3,0xfa,
|
||||
0x1c,0x12,0x53,0xb6,0xe5,0x8,0x29,0xd7,0x76,0x19,0x1,0xa4,0x6,0x84,0xd8,0xed,
|
||||
0xa5,0x6f,0x7e,0x5c,0x4a,0xf4,0x92,0x1,0xa5,0xb2,0x49,0x4d,0x22,0x5c,0x40,0x25,
|
||||
0x50,0x5c,0x5c,0xac,0x8,0xb9,0x17,0x1,0xc0,0xcb,0x7c,0x67,0x33,0xb0,0x48,0x1d,
|
||||
0x85,0xbc,0xa6,0x7b,0xa0,0x64,0x35,0x4b,0x91,0x5e,0x86,0xd6,0x31,0x13,0xe0,0x51,
|
||||
0x7e,0xbb,0x1c,0x5,0x2a,0x18,0xa3,0x85,0xdf,0x86,0xdc,0xb6,0x43,0x1d,0x47,0x19,
|
||||
0x30,0x41,0x25,0xe9,0x8f,0xb8,0xb8,0x58,0xd1,0x6c,0xfc,0x8e,0xc7,0xe,0xa0,0xe2,
|
||||
0x56,0x9a,0xc,0xaf,0x69,0x92,0xb7,0xe0,0xb5,0xd9,0xfc,0x5,0x33,0x1,0x7f,0xbf,
|
||||
0xb8,0xa2,0x2d,0x64,0x5c,0xdd,0x18,0x1c,0xe0,0x26,0xc4,0xd,0xaf,0xb0,0x43,0x60,
|
||||
0xc3,0x5a,0x6e,0x26,0x70,0xb5,0x58,0xbe,0x3,0xc8,0x83,0x65,0xc0,0xe0,0xb0,0x97,
|
||||
0x95,0xfb,0x11,0x70,0xa,0xf5,0x44,0xe1,0x4,0x4a,0x1d,0x76,0xbd,0xdc,0x73,0x7,
|
||||
0xf4,0x46,0x65,0x47,0x28,0x86,0x26,0x41,0xd4,0x38,0x81,0x2a,0x48,0xb4,0x1c,0xe9,
|
||||
0xd0,0x3b,0x62,0x5e,0x8c,0xb9,0x90,0x1d,0xc8,0x7b,0x5c,0xaa,0x5f,0x5c,0x25,0x38,
|
||||
0xed,0xb3,0xc2,0xe3,0xc1,0xb0,0xf2,0x11,0x2a,0x45,0x99,0x66,0xf1,0x82,0xa3,0x43,
|
||||
0x2f,0x61,0x27,0xe0,0xe2,0x17,0xe7,0x7a,0xba,0x5e,0x82,0x10,0x58,0x5e,0xdc,0xf2,
|
||||
0x75,0xec,0xcf,0xff,0x76,0x2,0x2e,0x7e,0xb1,0xe7,0x2e,0xb9,0x83,0x9c,0x17,0xc3,
|
||||
0x5d,0x88,0x4d,0x3e,0x1,0xf1,0x7d,0x90,0x5a,0x44,0x44,0xe9,0xf1,0xcb,0xc9,0x85,
|
||||
0x52,0x76,0x0,0x63,0xd,0x73,0xe,0x29,0xcf,0x3f,0x3b,0xa6,0xad,0xf3,0x2c,0x5f,
|
||||
0x2e,0x0,0x29,0x4f,0x8a,0xa6,0xb1,0xa,0x8c,0x4b,0xfb,0xe3,0xae,0x14,0x1c,0x22,
|
||||
0x7b,0xa7,0x30,0x9,0x70,0x1b,0x83,0xdc,0xa2,0xac,0x2f,0xfe,0x3d,0x30,0x96,0x8d,
|
||||
0x2f,0xca,0x15,0x70,0x45,0xc1,0xbb,0x91,0x7d,0x7,0xaa,0x3e,0x9b,0x54,0x81,0x87,
|
||||
0xff,0x51,0x20,0x3,0xaa,0x5f,0x5c,0x4b,0x24,0xd2,0x11,0x18,0xe7,0x7e,0x32,0x9e,
|
||||
0xd8,0x6a,0x16,0x69,0xa1,0x9f,0x4a,0xce,0x36,0x3d,0x5d,0xdb,0x81,0x6,0x21,0x55,
|
||||
0xb1,0x88,0x8b,0xed,0x6b,0xe1,0xd6,0x21,0x59,0x1f,0x10,0xa,0xbf,0x17,0x12,0x9d,
|
||||
0xc9,0x6f,0x82,0x62,0x43,0xab,0x4,0x9a,0x80,0xe9,0xab,0x2f,0xa9,0x20,0x7a,0xa7,
|
||||
0x1b,0xb6,0x26,0xc5,0x11,0x1a,0x4e,0xbb,0xe2,0x1d,0xff,0xd0,0x69,0xa0,0x66,0x20,
|
||||
0xa2,0x3b,0xf4,0xba,0xa8,0x42,0xa1,0x1a,0xc5,0xe3,0xd3,0x23,0xb1,0x2,0x33,0x8a,
|
||||
0x23,0xcb,0xb,0x6e,0xb8,0x81,0xfd,0x62,0x93,0xc5,0xe9,0x93,0x33,0xea,0x88,0x78,
|
||||
0x16,0x63,0x1d,0x51,0xfb,0x91,0x10,0xee,0x18,0x9a,0xc3,0x20,0x7b,0x46,0x8f,0xb0,
|
||||
0xf,0xd7,0xb,0x1f,0x5d,0xfc,0x92,0xbf,0xab,0x19,0x7d,0xfc,0x73,0x28,0xa2,0xe9,
|
||||
0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// arrowRight.png
|
||||
0x0,0x0,0x1,0x4c,
|
||||
0x89,
|
||||
@ -210,6 +283,23 @@ static const unsigned char qt_resource_data[] = {
|
||||
0x1b,0x9d,0x6f,0xf2,0x3c,0x5c,0x99,0x74,0xbd,0x8d,0x1a,0xf2,0x77,0x5f,0x26,0x7f,
|
||||
0x2f,0x6f,0xa8,0x4f,0xa6,0xf3,0xed,0x34,0xae,0x1,0xf5,0x91,0x9c,0xe1,0xe2,0x98,
|
||||
0xb5,0x4f,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// open.png
|
||||
0x0,0x0,0x0,0xde,
|
||||
0x89,
|
||||
0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0,
|
||||
0x0,0x0,0xc,0x0,0x0,0x0,0x8,0x8,0x6,0x0,0x0,0x0,0xcd,0xe4,0x1e,0xf1,
|
||||
0x0,0x0,0x0,0x4,0x73,0x42,0x49,0x54,0x8,0x8,0x8,0x8,0x7c,0x8,0x64,0x88,
|
||||
0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0,
|
||||
0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xb1,0x8f,0xb,0xfc,0x61,0x5,0x0,0x0,0x0,
|
||||
0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xe,0xc4,0x0,0x0,0xe,0xc4,0x1,0x95,0x2b,
|
||||
0xe,0x1b,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x53,0x6f,0x66,0x74,0x77,0x61,
|
||||
0x72,0x65,0x0,0x77,0x77,0x77,0x2e,0x69,0x6e,0x6b,0x73,0x63,0x61,0x70,0x65,0x2e,
|
||||
0x6f,0x72,0x67,0x9b,0xee,0x3c,0x1a,0x0,0x0,0x0,0x3e,0x49,0x44,0x41,0x54,0x28,
|
||||
0x53,0x63,0xbc,0x73,0xb1,0xe4,0x3f,0x3,0x9,0x80,0x9,0x4a,0x13,0xd,0x98,0x94,
|
||||
0xf5,0xba,0xa1,0x4c,0xc2,0x0,0xa4,0x16,0x6c,0x3,0x31,0x9a,0x60,0x6a,0xe0,0x4e,
|
||||
0xc2,0xa7,0x9,0x59,0x8e,0x74,0x3f,0x40,0x69,0x30,0xc0,0x66,0xb,0xba,0x18,0x86,
|
||||
0xd,0xc8,0xa,0x30,0xd,0x60,0x60,0x0,0x0,0xe9,0x19,0xb,0xc8,0x7a,0x5a,0xb8,
|
||||
0x7c,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// branch-more.png
|
||||
0x0,0x0,0x0,0xb0,
|
||||
0x89,
|
||||
@ -242,6 +332,25 @@ static const unsigned char qt_resource_data[] = {
|
||||
0x42,0x44,0x6d,0xea,0x79,0xc5,0x4e,0xfa,0x15,0xc9,0x55,0x3e,0xd6,0x44,0xb,0x4,
|
||||
0xfe,0x6,0xbd,0x89,0x85,0x37,0xc3,0x8c,0x6d,0x33,0x49,0x87,0x85,0x54,0x0,0x0,
|
||||
0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// close.png
|
||||
0x0,0x0,0x0,0xf9,
|
||||
0x89,
|
||||
0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0,
|
||||
0x0,0x0,0x8,0x0,0x0,0x0,0xc,0x8,0x6,0x0,0x0,0x0,0x5f,0x9e,0xfc,0x9d,
|
||||
0x0,0x0,0x0,0x4,0x73,0x42,0x49,0x54,0x8,0x8,0x8,0x8,0x7c,0x8,0x64,0x88,
|
||||
0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0,
|
||||
0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xb1,0x8f,0xb,0xfc,0x61,0x5,0x0,0x0,0x0,
|
||||
0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xe,0xc4,0x0,0x0,0xe,0xc4,0x1,0x95,0x2b,
|
||||
0xe,0x1b,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x53,0x6f,0x66,0x74,0x77,0x61,
|
||||
0x72,0x65,0x0,0x77,0x77,0x77,0x2e,0x69,0x6e,0x6b,0x73,0x63,0x61,0x70,0x65,0x2e,
|
||||
0x6f,0x72,0x67,0x9b,0xee,0x3c,0x1a,0x0,0x0,0x0,0x59,0x49,0x44,0x41,0x54,0x28,
|
||||
0x53,0x63,0xbc,0x73,0xb1,0xe4,0x3f,0x3,0x10,0x28,0xeb,0x75,0x83,0x28,0xc,0xc0,
|
||||
0x4,0xa5,0x19,0xee,0x5e,0x2a,0x85,0xb2,0x50,0x1,0x5c,0x1,0x8,0x60,0x53,0x84,
|
||||
0xa2,0x0,0x4,0x40,0x8a,0x90,0x15,0x62,0x28,0x80,0x1,0x98,0x22,0x9c,0xa,0x40,
|
||||
0x0,0xa4,0x8,0xaf,0x2,0x10,0xc0,0xab,0x0,0xe4,0x75,0x9c,0xa,0x60,0xe1,0x82,
|
||||
0xa1,0x0,0x24,0x81,0x1c,0x68,0x28,0xa,0xb0,0x85,0x26,0x5c,0x1,0x36,0x49,0x6,
|
||||
0x6,0x6,0x6,0x0,0xab,0x61,0x16,0x14,0x83,0x17,0x2c,0x6d,0x0,0x0,0x0,0x0,
|
||||
0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// chevron-down.png
|
||||
0x0,0x0,0x1,0x4b,
|
||||
0x89,
|
||||
@ -267,130 +376,131 @@ static const unsigned char qt_resource_data[] = {
|
||||
0xc,0xd1,0x82,0x6,0xbd,0x1,0xcd,0x6,0x82,0xb5,0x4d,0xed,0x9,0x91,0x0,0x0,
|
||||
0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
|
||||
// settings.svg
|
||||
0x0,0x0,0x7,0x9d,
|
||||
0x0,0x0,0x7,0xac,
|
||||
0x3c,
|
||||
0x73,0x76,0x67,0x20,0x77,0x69,0x64,0x74,0x68,0x3d,0x22,0x33,0x32,0x22,0x20,0x68,
|
||||
0x65,0x69,0x67,0x68,0x74,0x3d,0x22,0x33,0x32,0x22,0x20,0x76,0x69,0x65,0x77,0x42,
|
||||
0x6f,0x78,0x3d,0x22,0x30,0x20,0x30,0x20,0x33,0x32,0x20,0x33,0x32,0x22,0x20,0x66,
|
||||
0x69,0x6c,0x6c,0x3d,0x22,0x6e,0x6f,0x6e,0x65,0x22,0x20,0x78,0x6d,0x6c,0x6e,0x73,
|
||||
0x3d,0x22,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x77,0x33,0x2e,
|
||||
0x6f,0x72,0x67,0x2f,0x32,0x30,0x30,0x30,0x2f,0x73,0x76,0x67,0x22,0x3e,0xa,0x3c,
|
||||
0x67,0x20,0x63,0x6c,0x69,0x70,0x2d,0x70,0x61,0x74,0x68,0x3d,0x22,0x75,0x72,0x6c,
|
||||
0x28,0x23,0x63,0x6c,0x69,0x70,0x30,0x5f,0x34,0x5f,0x31,0x31,0x32,0x29,0x22,0x3e,
|
||||
0xa,0x3c,0x6d,0x61,0x73,0x6b,0x20,0x69,0x64,0x3d,0x22,0x6d,0x61,0x73,0x6b,0x30,
|
||||
0x5f,0x34,0x5f,0x31,0x31,0x32,0x22,0x20,0x73,0x74,0x79,0x6c,0x65,0x3d,0x22,0x6d,
|
||||
0x61,0x73,0x6b,0x2d,0x74,0x79,0x70,0x65,0x3a,0x6c,0x75,0x6d,0x69,0x6e,0x61,0x6e,
|
||||
0x63,0x65,0x22,0x20,0x6d,0x61,0x73,0x6b,0x55,0x6e,0x69,0x74,0x73,0x3d,0x22,0x75,
|
||||
0x73,0x65,0x72,0x53,0x70,0x61,0x63,0x65,0x4f,0x6e,0x55,0x73,0x65,0x22,0x20,0x78,
|
||||
0x3d,0x22,0x30,0x22,0x20,0x79,0x3d,0x22,0x30,0x22,0x20,0x77,0x69,0x64,0x74,0x68,
|
||||
0x3d,0x22,0x33,0x32,0x22,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x3d,0x22,0x33,0x32,
|
||||
0x22,0x3e,0xa,0x3c,0x70,0x61,0x74,0x68,0x20,0x64,0x3d,0x22,0x4d,0x30,0x20,0x30,
|
||||
0x48,0x33,0x32,0x56,0x33,0x32,0x48,0x30,0x56,0x30,0x5a,0x22,0x20,0x66,0x69,0x6c,
|
||||
0x6c,0x3d,0x22,0x77,0x68,0x69,0x74,0x65,0x22,0x2f,0x3e,0xa,0x3c,0x2f,0x6d,0x61,
|
||||
0x73,0x6b,0x3e,0xa,0x3c,0x67,0x20,0x6d,0x61,0x73,0x6b,0x3d,0x22,0x75,0x72,0x6c,
|
||||
0x28,0x23,0x6d,0x61,0x73,0x6b,0x30,0x5f,0x34,0x5f,0x31,0x31,0x32,0x29,0x22,0x3e,
|
||||
0xa,0x3c,0x70,0x61,0x74,0x68,0x20,0x64,0x3d,0x22,0x4d,0x31,0x34,0x2e,0x35,0x39,
|
||||
0x31,0x20,0x33,0x31,0x2e,0x39,0x38,0x35,0x48,0x31,0x37,0x2e,0x34,0x30,0x39,0x43,
|
||||
0x31,0x38,0x2e,0x32,0x30,0x35,0x20,0x33,0x31,0x2e,0x39,0x38,0x35,0x20,0x31,0x38,
|
||||
0x2e,0x37,0x38,0x37,0x20,0x33,0x31,0x2e,0x35,0x31,0x20,0x31,0x38,0x2e,0x39,0x35,
|
||||
0x35,0x20,0x33,0x30,0x2e,0x37,0x33,0x4c,0x31,0x39,0x2e,0x37,0x35,0x31,0x20,0x32,
|
||||
0x37,0x2e,0x33,0x36,0x33,0x43,0x32,0x30,0x2e,0x33,0x32,0x36,0x20,0x32,0x37,0x2e,
|
||||
0x31,0x37,0x34,0x36,0x20,0x32,0x30,0x2e,0x38,0x38,0x38,0x35,0x20,0x32,0x36,0x2e,
|
||||
0x39,0x34,0x39,0x38,0x20,0x32,0x31,0x2e,0x34,0x33,0x35,0x20,0x32,0x36,0x2e,0x36,
|
||||
0x39,0x4c,0x32,0x34,0x2e,0x33,0x39,0x20,0x32,0x38,0x2e,0x34,0x39,0x35,0x43,0x32,
|
||||
0x35,0x2e,0x30,0x34,0x39,0x20,0x32,0x38,0x2e,0x39,0x30,0x39,0x20,0x32,0x35,0x2e,
|
||||
0x37,0x39,0x39,0x20,0x32,0x38,0x2e,0x38,0x34,0x37,0x20,0x32,0x36,0x2e,0x33,0x35,
|
||||
0x20,0x32,0x38,0x2e,0x32,0x39,0x37,0x4c,0x32,0x38,0x2e,0x33,0x32,0x35,0x20,0x32,
|
||||
0x36,0x2e,0x33,0x33,0x37,0x43,0x32,0x38,0x2e,0x38,0x37,0x37,0x20,0x32,0x35,0x2e,
|
||||
0x37,0x38,0x37,0x20,0x32,0x38,0x2e,0x39,0x35,0x33,0x20,0x32,0x34,0x2e,0x39,0x39,
|
||||
0x31,0x20,0x32,0x38,0x2e,0x35,0x30,0x39,0x20,0x32,0x34,0x2e,0x33,0x33,0x33,0x4c,
|
||||
0x32,0x36,0x2e,0x37,0x30,0x32,0x20,0x32,0x31,0x2e,0x34,0x31,0x43,0x32,0x36,0x2e,
|
||||
0x39,0x36,0x32,0x20,0x32,0x30,0x2e,0x38,0x37,0x34,0x20,0x32,0x37,0x2e,0x31,0x39,
|
||||
0x32,0x20,0x32,0x30,0x2e,0x33,0x32,0x33,0x20,0x32,0x37,0x2e,0x33,0x36,0x31,0x20,
|
||||
0x31,0x39,0x2e,0x37,0x37,0x32,0x4c,0x33,0x30,0x2e,0x37,0x36,0x20,0x31,0x38,0x2e,
|
||||
0x39,0x36,0x32,0x43,0x33,0x31,0x2e,0x35,0x34,0x20,0x31,0x38,0x2e,0x37,0x39,0x32,
|
||||
0x20,0x33,0x32,0x20,0x31,0x38,0x2e,0x32,0x31,0x32,0x20,0x33,0x32,0x20,0x31,0x37,
|
||||
0x2e,0x34,0x31,0x36,0x56,0x31,0x34,0x2e,0x36,0x34,0x36,0x43,0x33,0x32,0x20,0x31,
|
||||
0x33,0x2e,0x38,0x36,0x36,0x20,0x33,0x31,0x2e,0x35,0x34,0x20,0x31,0x33,0x2e,0x32,
|
||||
0x38,0x34,0x20,0x33,0x30,0x2e,0x37,0x36,0x20,0x31,0x33,0x2e,0x31,0x31,0x36,0x4c,
|
||||
0x32,0x37,0x2e,0x33,0x39,0x31,0x20,0x31,0x32,0x2e,0x33,0x30,0x34,0x43,0x32,0x37,
|
||||
0x2e,0x32,0x30,0x34,0x38,0x20,0x31,0x31,0x2e,0x37,0x33,0x35,0x35,0x20,0x32,0x36,
|
||||
0x2e,0x39,0x38,0x35,0x31,0x20,0x31,0x31,0x2e,0x31,0x37,0x38,0x35,0x20,0x32,0x36,
|
||||
0x2e,0x37,0x33,0x33,0x20,0x31,0x30,0x2e,0x36,0x33,0x36,0x4c,0x32,0x38,0x2e,0x35,
|
||||
0x34,0x20,0x37,0x2e,0x36,0x36,0x37,0x43,0x32,0x38,0x2e,0x39,0x36,0x38,0x20,0x37,
|
||||
0x2e,0x30,0x30,0x39,0x20,0x32,0x38,0x2e,0x39,0x32,0x33,0x20,0x36,0x2e,0x32,0x35,
|
||||
0x39,0x20,0x32,0x38,0x2e,0x33,0x35,0x36,0x20,0x35,0x2e,0x37,0x30,0x38,0x4c,0x32,
|
||||
0x36,0x2e,0x33,0x35,0x20,0x33,0x2e,0x37,0x33,0x34,0x43,0x32,0x35,0x2e,0x37,0x38,
|
||||
0x34,0x20,0x33,0x2e,0x32,0x31,0x34,0x20,0x32,0x35,0x2e,0x31,0x31,0x20,0x33,0x2e,
|
||||
0x31,0x32,0x32,0x20,0x32,0x34,0x2e,0x34,0x33,0x36,0x20,0x33,0x2e,0x35,0x30,0x34,
|
||||
0x4c,0x32,0x31,0x2e,0x34,0x33,0x36,0x20,0x35,0x2e,0x33,0x35,0x36,0x43,0x32,0x30,
|
||||
0x2e,0x38,0x39,0x36,0x33,0x20,0x35,0x2e,0x30,0x37,0x36,0x33,0x32,0x20,0x32,0x30,
|
||||
0x2e,0x33,0x33,0x32,0x33,0x20,0x34,0x2e,0x38,0x34,0x36,0x30,0x35,0x20,0x31,0x39,
|
||||
0x2e,0x37,0x35,0x31,0x20,0x34,0x2e,0x36,0x36,0x38,0x4c,0x31,0x38,0x2e,0x39,0x35,
|
||||
0x35,0x20,0x31,0x2e,0x32,0x35,0x35,0x43,0x31,0x38,0x2e,0x37,0x38,0x37,0x20,0x30,
|
||||
0x2e,0x34,0x37,0x35,0x20,0x31,0x38,0x2e,0x32,0x30,0x35,0x20,0x30,0x20,0x31,0x37,
|
||||
0x2e,0x34,0x30,0x39,0x20,0x30,0x48,0x31,0x34,0x2e,0x35,0x39,0x43,0x31,0x33,0x2e,
|
||||
0x37,0x39,0x34,0x20,0x30,0x20,0x31,0x33,0x2e,0x32,0x31,0x32,0x20,0x30,0x2e,0x34,
|
||||
0x37,0x34,0x20,0x31,0x33,0x2e,0x30,0x32,0x39,0x20,0x31,0x2e,0x32,0x35,0x35,0x4c,
|
||||
0x31,0x32,0x2e,0x32,0x33,0x33,0x20,0x34,0x2e,0x36,0x33,0x37,0x43,0x31,0x31,0x2e,
|
||||
0x36,0x33,0x35,0x20,0x34,0x2e,0x38,0x33,0x36,0x20,0x31,0x31,0x2e,0x30,0x35,0x33,
|
||||
0x20,0x35,0x2e,0x30,0x36,0x36,0x20,0x31,0x30,0x2e,0x35,0x33,0x33,0x20,0x35,0x2e,
|
||||
0x33,0x34,0x31,0x4c,0x37,0x2e,0x35,0x36,0x33,0x30,0x32,0x20,0x33,0x2e,0x35,0x30,
|
||||
0x35,0x43,0x36,0x2e,0x38,0x38,0x39,0x30,0x32,0x20,0x33,0x2e,0x31,0x32,0x32,0x20,
|
||||
0x36,0x2e,0x32,0x30,0x30,0x30,0x32,0x20,0x33,0x2e,0x31,0x39,0x38,0x20,0x35,0x2e,
|
||||
0x36,0x33,0x33,0x30,0x32,0x20,0x33,0x2e,0x37,0x33,0x35,0x4c,0x33,0x2e,0x36,0x34,
|
||||
0x33,0x30,0x32,0x20,0x35,0x2e,0x37,0x30,0x38,0x43,0x33,0x2e,0x30,0x37,0x37,0x30,
|
||||
0x32,0x20,0x36,0x2e,0x32,0x35,0x39,0x20,0x33,0x2e,0x30,0x31,0x35,0x30,0x32,0x20,
|
||||
0x37,0x2e,0x30,0x30,0x39,0x20,0x33,0x2e,0x34,0x35,0x39,0x30,0x32,0x20,0x37,0x2e,
|
||||
0x36,0x36,0x38,0x4c,0x35,0x2e,0x32,0x35,0x31,0x30,0x32,0x20,0x31,0x30,0x2e,0x36,
|
||||
0x33,0x36,0x43,0x35,0x2e,0x30,0x35,0x31,0x30,0x32,0x20,0x31,0x31,0x2e,0x31,0x31,
|
||||
0x31,0x20,0x34,0x2e,0x38,0x30,0x37,0x30,0x32,0x20,0x31,0x31,0x2e,0x36,0x37,0x36,
|
||||
0x20,0x34,0x2e,0x36,0x30,0x38,0x30,0x32,0x20,0x31,0x32,0x2e,0x33,0x30,0x34,0x4c,
|
||||
0x31,0x2e,0x32,0x33,0x39,0x30,0x32,0x20,0x31,0x33,0x2e,0x31,0x31,0x35,0x43,0x30,
|
||||
0x2e,0x34,0x35,0x39,0x30,0x32,0x33,0x20,0x31,0x33,0x2e,0x32,0x38,0x34,0x20,0x2d,
|
||||
0x30,0x2e,0x30,0x30,0x30,0x39,0x37,0x36,0x35,0x36,0x32,0x20,0x31,0x33,0x2e,0x38,
|
||||
0x36,0x35,0x20,0x2d,0x30,0x2e,0x30,0x30,0x30,0x39,0x37,0x36,0x35,0x36,0x32,0x20,
|
||||
0x31,0x34,0x2e,0x36,0x34,0x35,0x56,0x31,0x37,0x2e,0x34,0x31,0x35,0x43,0x2d,0x30,
|
||||
0x2e,0x30,0x30,0x30,0x39,0x37,0x36,0x35,0x36,0x32,0x20,0x31,0x38,0x2e,0x32,0x31,
|
||||
0x31,0x20,0x30,0x2e,0x34,0x35,0x39,0x30,0x32,0x33,0x20,0x31,0x38,0x2e,0x37,0x39,
|
||||
0x33,0x20,0x31,0x2e,0x32,0x33,0x39,0x30,0x32,0x20,0x31,0x38,0x2e,0x39,0x36,0x31,
|
||||
0x4c,0x34,0x2e,0x36,0x33,0x39,0x30,0x32,0x20,0x31,0x39,0x2e,0x37,0x37,0x32,0x43,
|
||||
0x34,0x2e,0x38,0x30,0x37,0x30,0x32,0x20,0x32,0x30,0x2e,0x33,0x32,0x33,0x20,0x35,
|
||||
0x2e,0x30,0x33,0x36,0x30,0x32,0x20,0x32,0x30,0x2e,0x38,0x37,0x34,0x20,0x35,0x2e,
|
||||
0x32,0x38,0x31,0x30,0x32,0x20,0x32,0x31,0x2e,0x34,0x31,0x4c,0x33,0x2e,0x34,0x39,
|
||||
0x30,0x30,0x32,0x20,0x32,0x34,0x2e,0x33,0x33,0x33,0x43,0x33,0x2e,0x30,0x33,0x30,
|
||||
0x30,0x32,0x20,0x32,0x34,0x2e,0x39,0x39,0x31,0x20,0x33,0x2e,0x31,0x32,0x32,0x30,
|
||||
0x32,0x20,0x32,0x35,0x2e,0x37,0x38,0x37,0x20,0x33,0x2e,0x36,0x37,0x34,0x30,0x32,
|
||||
0x20,0x32,0x36,0x2e,0x33,0x33,0x38,0x4c,0x35,0x2e,0x36,0x33,0x34,0x30,0x32,0x20,
|
||||
0x32,0x38,0x2e,0x32,0x39,0x37,0x43,0x36,0x2e,0x31,0x38,0x34,0x30,0x32,0x20,0x32,
|
||||
0x38,0x2e,0x38,0x34,0x37,0x20,0x36,0x2e,0x39,0x35,0x30,0x30,0x32,0x20,0x32,0x38,
|
||||
0x2e,0x39,0x30,0x39,0x20,0x37,0x2e,0x36,0x30,0x39,0x30,0x32,0x20,0x32,0x38,0x2e,
|
||||
0x34,0x39,0x35,0x4c,0x31,0x30,0x2e,0x35,0x34,0x39,0x20,0x32,0x36,0x2e,0x36,0x39,
|
||||
0x43,0x31,0x31,0x2e,0x30,0x36,0x39,0x20,0x32,0x36,0x2e,0x39,0x33,0x34,0x20,0x31,
|
||||
0x31,0x2e,0x36,0x33,0x35,0x20,0x32,0x37,0x2e,0x31,0x36,0x34,0x20,0x31,0x32,0x2e,
|
||||
0x32,0x33,0x32,0x20,0x32,0x37,0x2e,0x33,0x36,0x33,0x4c,0x31,0x33,0x2e,0x30,0x32,
|
||||
0x39,0x20,0x33,0x30,0x2e,0x37,0x33,0x43,0x31,0x33,0x2e,0x32,0x31,0x32,0x20,0x33,
|
||||
0x31,0x2e,0x35,0x31,0x20,0x31,0x33,0x2e,0x37,0x39,0x35,0x20,0x33,0x31,0x2e,0x39,
|
||||
0x38,0x35,0x20,0x31,0x34,0x2e,0x35,0x39,0x31,0x20,0x33,0x31,0x2e,0x39,0x38,0x35,
|
||||
0x5a,0x4d,0x31,0x36,0x20,0x32,0x31,0x2e,0x33,0x39,0x35,0x43,0x31,0x33,0x2e,0x30,
|
||||
0x33,0x20,0x32,0x31,0x2e,0x33,0x39,0x35,0x20,0x31,0x30,0x2e,0x35,0x39,0x35,0x20,
|
||||
0x31,0x38,0x2e,0x39,0x34,0x36,0x20,0x31,0x30,0x2e,0x35,0x39,0x35,0x20,0x31,0x35,
|
||||
0x2e,0x39,0x37,0x37,0x43,0x31,0x30,0x2e,0x35,0x39,0x35,0x20,0x31,0x33,0x2e,0x30,
|
||||
0x32,0x33,0x20,0x31,0x33,0x2e,0x30,0x33,0x20,0x31,0x30,0x2e,0x35,0x39,0x20,0x31,
|
||||
0x36,0x20,0x31,0x30,0x2e,0x35,0x39,0x43,0x31,0x38,0x2e,0x39,0x37,0x20,0x31,0x30,
|
||||
0x2e,0x35,0x39,0x20,0x32,0x31,0x2e,0x34,0x30,0x35,0x20,0x31,0x33,0x2e,0x30,0x32,
|
||||
0x34,0x20,0x32,0x31,0x2e,0x34,0x30,0x35,0x20,0x31,0x35,0x2e,0x39,0x37,0x37,0x43,
|
||||
0x32,0x31,0x2e,0x34,0x30,0x35,0x20,0x31,0x38,0x2e,0x39,0x34,0x36,0x20,0x31,0x38,
|
||||
0x2e,0x39,0x37,0x20,0x32,0x31,0x2e,0x33,0x39,0x35,0x20,0x31,0x36,0x20,0x32,0x31,
|
||||
0x2e,0x33,0x39,0x35,0x5a,0x22,0x20,0x66,0x69,0x6c,0x6c,0x3d,0x22,0x23,0x31,0x33,
|
||||
0x33,0x38,0x35,0x46,0x22,0x2f,0x3e,0xa,0x3c,0x2f,0x67,0x3e,0xa,0x3c,0x2f,0x67,
|
||||
0x3e,0xa,0x3c,0x64,0x65,0x66,0x73,0x3e,0xa,0x3c,0x63,0x6c,0x69,0x70,0x50,0x61,
|
||||
0x74,0x68,0x20,0x69,0x64,0x3d,0x22,0x63,0x6c,0x69,0x70,0x30,0x5f,0x34,0x5f,0x31,
|
||||
0x31,0x32,0x22,0x3e,0xa,0x3c,0x72,0x65,0x63,0x74,0x20,0x77,0x69,0x64,0x74,0x68,
|
||||
0x3d,0x22,0x33,0x32,0x22,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x3d,0x22,0x33,0x32,
|
||||
0x22,0x20,0x66,0x69,0x6c,0x6c,0x3d,0x22,0x77,0x68,0x69,0x74,0x65,0x22,0x2f,0x3e,
|
||||
0xa,0x3c,0x2f,0x63,0x6c,0x69,0x70,0x50,0x61,0x74,0x68,0x3e,0xa,0x3c,0x2f,0x64,
|
||||
0x65,0x66,0x73,0x3e,0xa,0x3c,0x2f,0x73,0x76,0x67,0x3e,0xa,
|
||||
0x6f,0x72,0x67,0x2f,0x32,0x30,0x30,0x30,0x2f,0x73,0x76,0x67,0x22,0x3e,0xd,0xa,
|
||||
0x3c,0x67,0x20,0x63,0x6c,0x69,0x70,0x2d,0x70,0x61,0x74,0x68,0x3d,0x22,0x75,0x72,
|
||||
0x6c,0x28,0x23,0x63,0x6c,0x69,0x70,0x30,0x5f,0x34,0x5f,0x31,0x31,0x32,0x29,0x22,
|
||||
0x3e,0xd,0xa,0x3c,0x6d,0x61,0x73,0x6b,0x20,0x69,0x64,0x3d,0x22,0x6d,0x61,0x73,
|
||||
0x6b,0x30,0x5f,0x34,0x5f,0x31,0x31,0x32,0x22,0x20,0x73,0x74,0x79,0x6c,0x65,0x3d,
|
||||
0x22,0x6d,0x61,0x73,0x6b,0x2d,0x74,0x79,0x70,0x65,0x3a,0x6c,0x75,0x6d,0x69,0x6e,
|
||||
0x61,0x6e,0x63,0x65,0x22,0x20,0x6d,0x61,0x73,0x6b,0x55,0x6e,0x69,0x74,0x73,0x3d,
|
||||
0x22,0x75,0x73,0x65,0x72,0x53,0x70,0x61,0x63,0x65,0x4f,0x6e,0x55,0x73,0x65,0x22,
|
||||
0x20,0x78,0x3d,0x22,0x30,0x22,0x20,0x79,0x3d,0x22,0x30,0x22,0x20,0x77,0x69,0x64,
|
||||
0x74,0x68,0x3d,0x22,0x33,0x32,0x22,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x3d,0x22,
|
||||
0x33,0x32,0x22,0x3e,0xd,0xa,0x3c,0x70,0x61,0x74,0x68,0x20,0x64,0x3d,0x22,0x4d,
|
||||
0x30,0x20,0x30,0x48,0x33,0x32,0x56,0x33,0x32,0x48,0x30,0x56,0x30,0x5a,0x22,0x20,
|
||||
0x66,0x69,0x6c,0x6c,0x3d,0x22,0x77,0x68,0x69,0x74,0x65,0x22,0x2f,0x3e,0xd,0xa,
|
||||
0x3c,0x2f,0x6d,0x61,0x73,0x6b,0x3e,0xd,0xa,0x3c,0x67,0x20,0x6d,0x61,0x73,0x6b,
|
||||
0x3d,0x22,0x75,0x72,0x6c,0x28,0x23,0x6d,0x61,0x73,0x6b,0x30,0x5f,0x34,0x5f,0x31,
|
||||
0x31,0x32,0x29,0x22,0x3e,0xd,0xa,0x3c,0x70,0x61,0x74,0x68,0x20,0x64,0x3d,0x22,
|
||||
0x4d,0x31,0x34,0x2e,0x35,0x39,0x31,0x20,0x33,0x31,0x2e,0x39,0x38,0x35,0x48,0x31,
|
||||
0x37,0x2e,0x34,0x30,0x39,0x43,0x31,0x38,0x2e,0x32,0x30,0x35,0x20,0x33,0x31,0x2e,
|
||||
0x39,0x38,0x35,0x20,0x31,0x38,0x2e,0x37,0x38,0x37,0x20,0x33,0x31,0x2e,0x35,0x31,
|
||||
0x20,0x31,0x38,0x2e,0x39,0x35,0x35,0x20,0x33,0x30,0x2e,0x37,0x33,0x4c,0x31,0x39,
|
||||
0x2e,0x37,0x35,0x31,0x20,0x32,0x37,0x2e,0x33,0x36,0x33,0x43,0x32,0x30,0x2e,0x33,
|
||||
0x32,0x36,0x20,0x32,0x37,0x2e,0x31,0x37,0x34,0x36,0x20,0x32,0x30,0x2e,0x38,0x38,
|
||||
0x38,0x35,0x20,0x32,0x36,0x2e,0x39,0x34,0x39,0x38,0x20,0x32,0x31,0x2e,0x34,0x33,
|
||||
0x35,0x20,0x32,0x36,0x2e,0x36,0x39,0x4c,0x32,0x34,0x2e,0x33,0x39,0x20,0x32,0x38,
|
||||
0x2e,0x34,0x39,0x35,0x43,0x32,0x35,0x2e,0x30,0x34,0x39,0x20,0x32,0x38,0x2e,0x39,
|
||||
0x30,0x39,0x20,0x32,0x35,0x2e,0x37,0x39,0x39,0x20,0x32,0x38,0x2e,0x38,0x34,0x37,
|
||||
0x20,0x32,0x36,0x2e,0x33,0x35,0x20,0x32,0x38,0x2e,0x32,0x39,0x37,0x4c,0x32,0x38,
|
||||
0x2e,0x33,0x32,0x35,0x20,0x32,0x36,0x2e,0x33,0x33,0x37,0x43,0x32,0x38,0x2e,0x38,
|
||||
0x37,0x37,0x20,0x32,0x35,0x2e,0x37,0x38,0x37,0x20,0x32,0x38,0x2e,0x39,0x35,0x33,
|
||||
0x20,0x32,0x34,0x2e,0x39,0x39,0x31,0x20,0x32,0x38,0x2e,0x35,0x30,0x39,0x20,0x32,
|
||||
0x34,0x2e,0x33,0x33,0x33,0x4c,0x32,0x36,0x2e,0x37,0x30,0x32,0x20,0x32,0x31,0x2e,
|
||||
0x34,0x31,0x43,0x32,0x36,0x2e,0x39,0x36,0x32,0x20,0x32,0x30,0x2e,0x38,0x37,0x34,
|
||||
0x20,0x32,0x37,0x2e,0x31,0x39,0x32,0x20,0x32,0x30,0x2e,0x33,0x32,0x33,0x20,0x32,
|
||||
0x37,0x2e,0x33,0x36,0x31,0x20,0x31,0x39,0x2e,0x37,0x37,0x32,0x4c,0x33,0x30,0x2e,
|
||||
0x37,0x36,0x20,0x31,0x38,0x2e,0x39,0x36,0x32,0x43,0x33,0x31,0x2e,0x35,0x34,0x20,
|
||||
0x31,0x38,0x2e,0x37,0x39,0x32,0x20,0x33,0x32,0x20,0x31,0x38,0x2e,0x32,0x31,0x32,
|
||||
0x20,0x33,0x32,0x20,0x31,0x37,0x2e,0x34,0x31,0x36,0x56,0x31,0x34,0x2e,0x36,0x34,
|
||||
0x36,0x43,0x33,0x32,0x20,0x31,0x33,0x2e,0x38,0x36,0x36,0x20,0x33,0x31,0x2e,0x35,
|
||||
0x34,0x20,0x31,0x33,0x2e,0x32,0x38,0x34,0x20,0x33,0x30,0x2e,0x37,0x36,0x20,0x31,
|
||||
0x33,0x2e,0x31,0x31,0x36,0x4c,0x32,0x37,0x2e,0x33,0x39,0x31,0x20,0x31,0x32,0x2e,
|
||||
0x33,0x30,0x34,0x43,0x32,0x37,0x2e,0x32,0x30,0x34,0x38,0x20,0x31,0x31,0x2e,0x37,
|
||||
0x33,0x35,0x35,0x20,0x32,0x36,0x2e,0x39,0x38,0x35,0x31,0x20,0x31,0x31,0x2e,0x31,
|
||||
0x37,0x38,0x35,0x20,0x32,0x36,0x2e,0x37,0x33,0x33,0x20,0x31,0x30,0x2e,0x36,0x33,
|
||||
0x36,0x4c,0x32,0x38,0x2e,0x35,0x34,0x20,0x37,0x2e,0x36,0x36,0x37,0x43,0x32,0x38,
|
||||
0x2e,0x39,0x36,0x38,0x20,0x37,0x2e,0x30,0x30,0x39,0x20,0x32,0x38,0x2e,0x39,0x32,
|
||||
0x33,0x20,0x36,0x2e,0x32,0x35,0x39,0x20,0x32,0x38,0x2e,0x33,0x35,0x36,0x20,0x35,
|
||||
0x2e,0x37,0x30,0x38,0x4c,0x32,0x36,0x2e,0x33,0x35,0x20,0x33,0x2e,0x37,0x33,0x34,
|
||||
0x43,0x32,0x35,0x2e,0x37,0x38,0x34,0x20,0x33,0x2e,0x32,0x31,0x34,0x20,0x32,0x35,
|
||||
0x2e,0x31,0x31,0x20,0x33,0x2e,0x31,0x32,0x32,0x20,0x32,0x34,0x2e,0x34,0x33,0x36,
|
||||
0x20,0x33,0x2e,0x35,0x30,0x34,0x4c,0x32,0x31,0x2e,0x34,0x33,0x36,0x20,0x35,0x2e,
|
||||
0x33,0x35,0x36,0x43,0x32,0x30,0x2e,0x38,0x39,0x36,0x33,0x20,0x35,0x2e,0x30,0x37,
|
||||
0x36,0x33,0x32,0x20,0x32,0x30,0x2e,0x33,0x33,0x32,0x33,0x20,0x34,0x2e,0x38,0x34,
|
||||
0x36,0x30,0x35,0x20,0x31,0x39,0x2e,0x37,0x35,0x31,0x20,0x34,0x2e,0x36,0x36,0x38,
|
||||
0x4c,0x31,0x38,0x2e,0x39,0x35,0x35,0x20,0x31,0x2e,0x32,0x35,0x35,0x43,0x31,0x38,
|
||||
0x2e,0x37,0x38,0x37,0x20,0x30,0x2e,0x34,0x37,0x35,0x20,0x31,0x38,0x2e,0x32,0x30,
|
||||
0x35,0x20,0x30,0x20,0x31,0x37,0x2e,0x34,0x30,0x39,0x20,0x30,0x48,0x31,0x34,0x2e,
|
||||
0x35,0x39,0x43,0x31,0x33,0x2e,0x37,0x39,0x34,0x20,0x30,0x20,0x31,0x33,0x2e,0x32,
|
||||
0x31,0x32,0x20,0x30,0x2e,0x34,0x37,0x34,0x20,0x31,0x33,0x2e,0x30,0x32,0x39,0x20,
|
||||
0x31,0x2e,0x32,0x35,0x35,0x4c,0x31,0x32,0x2e,0x32,0x33,0x33,0x20,0x34,0x2e,0x36,
|
||||
0x33,0x37,0x43,0x31,0x31,0x2e,0x36,0x33,0x35,0x20,0x34,0x2e,0x38,0x33,0x36,0x20,
|
||||
0x31,0x31,0x2e,0x30,0x35,0x33,0x20,0x35,0x2e,0x30,0x36,0x36,0x20,0x31,0x30,0x2e,
|
||||
0x35,0x33,0x33,0x20,0x35,0x2e,0x33,0x34,0x31,0x4c,0x37,0x2e,0x35,0x36,0x33,0x30,
|
||||
0x32,0x20,0x33,0x2e,0x35,0x30,0x35,0x43,0x36,0x2e,0x38,0x38,0x39,0x30,0x32,0x20,
|
||||
0x33,0x2e,0x31,0x32,0x32,0x20,0x36,0x2e,0x32,0x30,0x30,0x30,0x32,0x20,0x33,0x2e,
|
||||
0x31,0x39,0x38,0x20,0x35,0x2e,0x36,0x33,0x33,0x30,0x32,0x20,0x33,0x2e,0x37,0x33,
|
||||
0x35,0x4c,0x33,0x2e,0x36,0x34,0x33,0x30,0x32,0x20,0x35,0x2e,0x37,0x30,0x38,0x43,
|
||||
0x33,0x2e,0x30,0x37,0x37,0x30,0x32,0x20,0x36,0x2e,0x32,0x35,0x39,0x20,0x33,0x2e,
|
||||
0x30,0x31,0x35,0x30,0x32,0x20,0x37,0x2e,0x30,0x30,0x39,0x20,0x33,0x2e,0x34,0x35,
|
||||
0x39,0x30,0x32,0x20,0x37,0x2e,0x36,0x36,0x38,0x4c,0x35,0x2e,0x32,0x35,0x31,0x30,
|
||||
0x32,0x20,0x31,0x30,0x2e,0x36,0x33,0x36,0x43,0x35,0x2e,0x30,0x35,0x31,0x30,0x32,
|
||||
0x20,0x31,0x31,0x2e,0x31,0x31,0x31,0x20,0x34,0x2e,0x38,0x30,0x37,0x30,0x32,0x20,
|
||||
0x31,0x31,0x2e,0x36,0x37,0x36,0x20,0x34,0x2e,0x36,0x30,0x38,0x30,0x32,0x20,0x31,
|
||||
0x32,0x2e,0x33,0x30,0x34,0x4c,0x31,0x2e,0x32,0x33,0x39,0x30,0x32,0x20,0x31,0x33,
|
||||
0x2e,0x31,0x31,0x35,0x43,0x30,0x2e,0x34,0x35,0x39,0x30,0x32,0x33,0x20,0x31,0x33,
|
||||
0x2e,0x32,0x38,0x34,0x20,0x2d,0x30,0x2e,0x30,0x30,0x30,0x39,0x37,0x36,0x35,0x36,
|
||||
0x32,0x20,0x31,0x33,0x2e,0x38,0x36,0x35,0x20,0x2d,0x30,0x2e,0x30,0x30,0x30,0x39,
|
||||
0x37,0x36,0x35,0x36,0x32,0x20,0x31,0x34,0x2e,0x36,0x34,0x35,0x56,0x31,0x37,0x2e,
|
||||
0x34,0x31,0x35,0x43,0x2d,0x30,0x2e,0x30,0x30,0x30,0x39,0x37,0x36,0x35,0x36,0x32,
|
||||
0x20,0x31,0x38,0x2e,0x32,0x31,0x31,0x20,0x30,0x2e,0x34,0x35,0x39,0x30,0x32,0x33,
|
||||
0x20,0x31,0x38,0x2e,0x37,0x39,0x33,0x20,0x31,0x2e,0x32,0x33,0x39,0x30,0x32,0x20,
|
||||
0x31,0x38,0x2e,0x39,0x36,0x31,0x4c,0x34,0x2e,0x36,0x33,0x39,0x30,0x32,0x20,0x31,
|
||||
0x39,0x2e,0x37,0x37,0x32,0x43,0x34,0x2e,0x38,0x30,0x37,0x30,0x32,0x20,0x32,0x30,
|
||||
0x2e,0x33,0x32,0x33,0x20,0x35,0x2e,0x30,0x33,0x36,0x30,0x32,0x20,0x32,0x30,0x2e,
|
||||
0x38,0x37,0x34,0x20,0x35,0x2e,0x32,0x38,0x31,0x30,0x32,0x20,0x32,0x31,0x2e,0x34,
|
||||
0x31,0x4c,0x33,0x2e,0x34,0x39,0x30,0x30,0x32,0x20,0x32,0x34,0x2e,0x33,0x33,0x33,
|
||||
0x43,0x33,0x2e,0x30,0x33,0x30,0x30,0x32,0x20,0x32,0x34,0x2e,0x39,0x39,0x31,0x20,
|
||||
0x33,0x2e,0x31,0x32,0x32,0x30,0x32,0x20,0x32,0x35,0x2e,0x37,0x38,0x37,0x20,0x33,
|
||||
0x2e,0x36,0x37,0x34,0x30,0x32,0x20,0x32,0x36,0x2e,0x33,0x33,0x38,0x4c,0x35,0x2e,
|
||||
0x36,0x33,0x34,0x30,0x32,0x20,0x32,0x38,0x2e,0x32,0x39,0x37,0x43,0x36,0x2e,0x31,
|
||||
0x38,0x34,0x30,0x32,0x20,0x32,0x38,0x2e,0x38,0x34,0x37,0x20,0x36,0x2e,0x39,0x35,
|
||||
0x30,0x30,0x32,0x20,0x32,0x38,0x2e,0x39,0x30,0x39,0x20,0x37,0x2e,0x36,0x30,0x39,
|
||||
0x30,0x32,0x20,0x32,0x38,0x2e,0x34,0x39,0x35,0x4c,0x31,0x30,0x2e,0x35,0x34,0x39,
|
||||
0x20,0x32,0x36,0x2e,0x36,0x39,0x43,0x31,0x31,0x2e,0x30,0x36,0x39,0x20,0x32,0x36,
|
||||
0x2e,0x39,0x33,0x34,0x20,0x31,0x31,0x2e,0x36,0x33,0x35,0x20,0x32,0x37,0x2e,0x31,
|
||||
0x36,0x34,0x20,0x31,0x32,0x2e,0x32,0x33,0x32,0x20,0x32,0x37,0x2e,0x33,0x36,0x33,
|
||||
0x4c,0x31,0x33,0x2e,0x30,0x32,0x39,0x20,0x33,0x30,0x2e,0x37,0x33,0x43,0x31,0x33,
|
||||
0x2e,0x32,0x31,0x32,0x20,0x33,0x31,0x2e,0x35,0x31,0x20,0x31,0x33,0x2e,0x37,0x39,
|
||||
0x35,0x20,0x33,0x31,0x2e,0x39,0x38,0x35,0x20,0x31,0x34,0x2e,0x35,0x39,0x31,0x20,
|
||||
0x33,0x31,0x2e,0x39,0x38,0x35,0x5a,0x4d,0x31,0x36,0x20,0x32,0x31,0x2e,0x33,0x39,
|
||||
0x35,0x43,0x31,0x33,0x2e,0x30,0x33,0x20,0x32,0x31,0x2e,0x33,0x39,0x35,0x20,0x31,
|
||||
0x30,0x2e,0x35,0x39,0x35,0x20,0x31,0x38,0x2e,0x39,0x34,0x36,0x20,0x31,0x30,0x2e,
|
||||
0x35,0x39,0x35,0x20,0x31,0x35,0x2e,0x39,0x37,0x37,0x43,0x31,0x30,0x2e,0x35,0x39,
|
||||
0x35,0x20,0x31,0x33,0x2e,0x30,0x32,0x33,0x20,0x31,0x33,0x2e,0x30,0x33,0x20,0x31,
|
||||
0x30,0x2e,0x35,0x39,0x20,0x31,0x36,0x20,0x31,0x30,0x2e,0x35,0x39,0x43,0x31,0x38,
|
||||
0x2e,0x39,0x37,0x20,0x31,0x30,0x2e,0x35,0x39,0x20,0x32,0x31,0x2e,0x34,0x30,0x35,
|
||||
0x20,0x31,0x33,0x2e,0x30,0x32,0x34,0x20,0x32,0x31,0x2e,0x34,0x30,0x35,0x20,0x31,
|
||||
0x35,0x2e,0x39,0x37,0x37,0x43,0x32,0x31,0x2e,0x34,0x30,0x35,0x20,0x31,0x38,0x2e,
|
||||
0x39,0x34,0x36,0x20,0x31,0x38,0x2e,0x39,0x37,0x20,0x32,0x31,0x2e,0x33,0x39,0x35,
|
||||
0x20,0x31,0x36,0x20,0x32,0x31,0x2e,0x33,0x39,0x35,0x5a,0x22,0x20,0x66,0x69,0x6c,
|
||||
0x6c,0x3d,0x22,0x23,0x31,0x33,0x33,0x38,0x35,0x46,0x22,0x2f,0x3e,0xd,0xa,0x3c,
|
||||
0x2f,0x67,0x3e,0xd,0xa,0x3c,0x2f,0x67,0x3e,0xd,0xa,0x3c,0x64,0x65,0x66,0x73,
|
||||
0x3e,0xd,0xa,0x3c,0x63,0x6c,0x69,0x70,0x50,0x61,0x74,0x68,0x20,0x69,0x64,0x3d,
|
||||
0x22,0x63,0x6c,0x69,0x70,0x30,0x5f,0x34,0x5f,0x31,0x31,0x32,0x22,0x3e,0xd,0xa,
|
||||
0x3c,0x72,0x65,0x63,0x74,0x20,0x77,0x69,0x64,0x74,0x68,0x3d,0x22,0x33,0x32,0x22,
|
||||
0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x3d,0x22,0x33,0x32,0x22,0x20,0x66,0x69,0x6c,
|
||||
0x6c,0x3d,0x22,0x77,0x68,0x69,0x74,0x65,0x22,0x2f,0x3e,0xd,0xa,0x3c,0x2f,0x63,
|
||||
0x6c,0x69,0x70,0x50,0x61,0x74,0x68,0x3e,0xd,0xa,0x3c,0x2f,0x64,0x65,0x66,0x73,
|
||||
0x3e,0xd,0xa,0x3c,0x2f,0x73,0x76,0x67,0x3e,0xd,0xa,
|
||||
// fema-wing.svg
|
||||
0x0,0x0,0x34,0x55,
|
||||
0x3c,
|
||||
@ -1232,11 +1342,118 @@ static const unsigned char qt_resource_data[] = {
|
||||
0x65,0x22,0x2f,0x3e,0xd,0xa,0x3c,0x2f,0x63,0x6c,0x69,0x70,0x50,0x61,0x74,0x68,
|
||||
0x3e,0xd,0xa,0x3c,0x2f,0x64,0x65,0x66,0x73,0x3e,0xd,0xa,0x3c,0x2f,0x73,0x76,
|
||||
0x67,0x3e,0xd,0xa,
|
||||
// map.qml
|
||||
0x0,0x0,0x2,0xf5,
|
||||
0x0,
|
||||
0x0,0xa,0x7,0x78,0xda,0xad,0x55,0x4d,0x6b,0xdb,0x40,0x10,0xbd,0x7,0xf2,0x1f,
|
||||
0x16,0x9f,0xec,0x7c,0x6c,0xec,0x80,0xa1,0x28,0xd,0x25,0x38,0x94,0x16,0x1c,0x70,
|
||||
0xda,0x43,0xe3,0xe3,0x56,0x9a,0x48,0x4b,0xa5,0xdd,0x65,0x77,0x64,0xc7,0x2d,0xfd,
|
||||
0xef,0x9d,0x95,0x2c,0x5b,0xb2,0x64,0x39,0x87,0x2e,0x6,0xcb,0x3b,0xef,0x8d,0xe7,
|
||||
0xe3,0xcd,0x48,0x66,0x46,0x5b,0x64,0xcf,0xf8,0x9c,0xcb,0xf0,0x17,0xbb,0xe5,0x93,
|
||||
0xe9,0xf9,0x99,0xac,0x2e,0xe7,0x3a,0x14,0x28,0xb5,0x62,0xd3,0xe6,0xfd,0x42,0x3b,
|
||||
0xe9,0xef,0xa5,0x8a,0xb7,0xa6,0xf3,0xb3,0xaf,0x8,0x19,0xfb,0x73,0x7e,0xc6,0xe8,
|
||||
0x8,0x15,0x26,0xda,0x3a,0xfe,0x2a,0xd3,0x34,0x60,0x46,0x58,0x50,0xe8,0x31,0xde,
|
||||
0xf6,0x24,0x4c,0x5,0xf3,0x47,0x46,0x1,0xcb,0x84,0xd9,0x5f,0x74,0x73,0x2b,0xab,
|
||||
0x49,0xf3,0x58,0xaa,0x80,0x2d,0x8a,0xef,0xba,0x23,0x7f,0x94,0xc8,0x20,0x60,0x3,
|
||||
0xed,0xb2,0x41,0xd3,0x50,0xc2,0x17,0xc2,0x12,0x0,0xc1,0x1e,0xf2,0x9a,0x5c,0x4e,
|
||||
0xf1,0x18,0x4a,0x8d,0x87,0xb9,0x43,0x9d,0xf1,0x44,0x3b,0x1c,0xb4,0x9,0x2b,0x91,
|
||||
0xe6,0x9e,0x91,0x20,0x1a,0x17,0xdc,0xdc,0xa0,0x4c,0x81,0x6b,0x3,0xca,0xa1,0x5,
|
||||
0x40,0x72,0xc2,0xb5,0x8d,0x6f,0xe,0x98,0x7f,0xff,0x47,0x60,0xc6,0xea,0x95,0x8c,
|
||||
0xc0,0x3a,0xb,0xc6,0xb7,0x42,0xdb,0xd,0x8f,0xa4,0x13,0x3f,0x53,0x88,0x7a,0x22,
|
||||
0x45,0x9b,0xc3,0xf1,0x70,0x6a,0x8f,0x21,0xd5,0x1c,0x6c,0xd0,0xec,0x34,0xf,0xb5,
|
||||
0xb6,0x91,0x54,0x2,0x61,0x48,0x81,0xcc,0xa,0xc,0x4f,0x49,0x20,0x98,0x47,0x70,
|
||||
0xc5,0x6a,0x77,0x5a,0xc5,0xc5,0xe5,0x68,0xef,0xf2,0xb7,0xd6,0xd9,0x1c,0x56,0x40,
|
||||
0x3d,0xf5,0x7a,0xa9,0xae,0xbf,0x81,0x1,0xd1,0x4e,0x3c,0xd3,0x91,0x47,0x1a,0x2d,
|
||||
0x15,0xba,0xb9,0x74,0xd8,0x8c,0x9a,0x34,0x54,0xe8,0xb5,0xae,0xb9,0xfa,0xf1,0xa2,
|
||||
0x2a,0xb8,0x6d,0xd3,0x3e,0x89,0xa0,0xfc,0x97,0x47,0x81,0xa2,0xd,0x2b,0x55,0xb8,
|
||||
0xf0,0x3e,0xf8,0x1b,0x85,0x3c,0xee,0x87,0x6c,0x4a,0x48,0x1b,0xe4,0x74,0x6e,0x43,
|
||||
0xf0,0x71,0x6,0x94,0x6b,0x88,0x42,0xc5,0x29,0x74,0x85,0xec,0xcf,0x5a,0x46,0x98,
|
||||
0x4,0xec,0x76,0xdc,0x6d,0x4e,0x40,0xc6,0x9,0x1e,0xb7,0x87,0x3a,0xd5,0xd4,0xb4,
|
||||
0x81,0xed,0x14,0x81,0x3f,0x56,0x44,0x32,0x77,0xdd,0xe9,0xfc,0xed,0x13,0xc6,0xfe,
|
||||
0xc7,0x93,0xce,0x1d,0x3c,0x58,0x10,0x87,0x49,0x14,0x83,0x5c,0x19,0x9b,0xa6,0xfe,
|
||||
0x91,0xf6,0x27,0xb2,0x22,0xe6,0x28,0x6c,0xc,0xb8,0x5d,0x7,0x4d,0x3b,0x9,0xde,
|
||||
0x80,0xc5,0xd,0x23,0xdf,0x29,0x73,0x84,0xc4,0xb9,0x28,0xa1,0x3c,0x6c,0xa,0xf1,
|
||||
0x34,0x51,0xab,0x26,0xb1,0x52,0xeb,0x49,0xe6,0x4b,0xc0,0xc6,0x27,0x41,0xcb,0x2,
|
||||
0xd4,0x7,0xf3,0xa3,0xf0,0x59,0x84,0xe8,0x9b,0xf5,0x24,0x30,0xe1,0x46,0xaf,0x87,
|
||||
0xb7,0xc5,0x0,0xf1,0xdd,0x98,0xb0,0x6b,0x9a,0x93,0xd1,0xa1,0xa3,0x30,0xb7,0x4e,
|
||||
0xdb,0xef,0x89,0x30,0xe0,0xa7,0x93,0x3f,0x58,0xab,0xd7,0xb3,0xe2,0xf2,0x10,0xaa,
|
||||
0xd5,0xc2,0x82,0x73,0x40,0x6d,0xe9,0x90,0x5b,0x55,0x42,0x76,0x7f,0xba,0x86,0x7b,
|
||||
0x3c,0xbd,0x9,0xee,0xdf,0x51,0xba,0x1d,0xe1,0xc5,0xc3,0x2b,0x4d,0xf0,0xe2,0xe9,
|
||||
0xe5,0x8,0x74,0xd9,0x86,0x2e,0x5b,0x8a,0x6c,0x65,0xb8,0xdd,0x4e,0xb3,0x84,0xe6,
|
||||
0xea,0x48,0xa6,0x2b,0x61,0x59,0xf4,0xd6,0x11,0x8,0x55,0xb8,0xc,0xf2,0x8,0x67,
|
||||
0xd3,0x11,0x51,0xc5,0x59,0x76,0xcd,0xba,0x67,0xbd,0x16,0x7d,0x25,0x66,0xbd,0xb1,
|
||||
0x93,0x29,0xf1,0x1a,0xdd,0x1d,0xb1,0xb,0x36,0xe6,0x63,0x3a,0xd3,0xbb,0x2e,0x57,
|
||||
0xfb,0x1a,0x93,0xab,0xa3,0x5b,0xb8,0x7b,0xc8,0x77,0xad,0xbd,0xf6,0x39,0x5c,0xb0,
|
||||
0xeb,0x32,0xa6,0xab,0x3e,0x34,0x35,0xf6,0xd2,0x57,0x69,0x87,0x6e,0x83,0x47,0x27,
|
||||
0xbb,0xf1,0x23,0x1,0xbf,0xb4,0xbb,0xf6,0xf1,0x2b,0x1b,0xae,0xbd,0x95,0x17,0xfb,
|
||||
0xef,0x11,0x52,0x14,0x7c,0xc3,0x3e,0xb2,0xf1,0xe8,0xd8,0x2e,0x3c,0x18,0x86,0x7b,
|
||||
0x36,0xe9,0x58,0x59,0xc,0x52,0x7,0xef,0xf3,0x70,0xd9,0xed,0xa1,0xbb,0xf4,0x7b,
|
||||
0xda,0xb6,0x91,0x99,0x78,0x1b,0x4e,0xae,0xb6,0xcf,0x52,0xd,0x1b,0x20,0x6a,0xf0,
|
||||
0x87,0xd1,0xe8,0xee,0x64,0x7d,0x66,0x5a,0xa1,0x90,0xca,0x15,0x2b,0xb4,0x4f,0xb2,
|
||||
0xb5,0x29,0x6f,0x68,0x30,0xac,0x3b,0x60,0x9f,0xfc,0x2,0x98,0xa5,0x9a,0x46,0xfc,
|
||||
0x8b,0x50,0x51,0xb9,0x5,0x58,0x7b,0x2d,0xf4,0xbf,0xee,0xe9,0x8b,0x3e,0xff,0x0,
|
||||
0x94,0xce,0x8c,0xed,
|
||||
// map.qml
|
||||
0x0,0x0,0x2,0xf5,
|
||||
0x0,
|
||||
0x0,0xa,0x7,0x78,0xda,0xad,0x55,0x4d,0x6b,0xdb,0x40,0x10,0xbd,0x7,0xf2,0x1f,
|
||||
0x16,0x9f,0xec,0x7c,0x6c,0xec,0x80,0xa1,0x28,0xd,0x25,0x38,0x94,0x16,0x1c,0x70,
|
||||
0xda,0x43,0xe3,0xe3,0x56,0x9a,0x48,0x4b,0xa5,0xdd,0x65,0x77,0x64,0xc7,0x2d,0xfd,
|
||||
0xef,0x9d,0x95,0x2c,0x5b,0xb2,0x64,0x39,0x87,0x2e,0x6,0xcb,0x3b,0xef,0x8d,0xe7,
|
||||
0xe3,0xcd,0x48,0x66,0x46,0x5b,0x64,0xcf,0xf8,0x9c,0xcb,0xf0,0x17,0xbb,0xe5,0x93,
|
||||
0xe9,0xf9,0x99,0xac,0x2e,0xe7,0x3a,0x14,0x28,0xb5,0x62,0xd3,0xe6,0xfd,0x42,0x3b,
|
||||
0xe9,0xef,0xa5,0x8a,0xb7,0xa6,0xf3,0xb3,0xaf,0x8,0x19,0xfb,0x73,0x7e,0xc6,0xe8,
|
||||
0x8,0x15,0x26,0xda,0x3a,0xfe,0x2a,0xd3,0x34,0x60,0x46,0x58,0x50,0xe8,0x31,0xde,
|
||||
0xf6,0x24,0x4c,0x5,0xf3,0x47,0x46,0x1,0xcb,0x84,0xd9,0x5f,0x74,0x73,0x2b,0xab,
|
||||
0x49,0xf3,0x58,0xaa,0x80,0x2d,0x8a,0xef,0xba,0x23,0x7f,0x94,0xc8,0x20,0x60,0x3,
|
||||
0xed,0xb2,0x41,0xd3,0x50,0xc2,0x17,0xc2,0x12,0x0,0xc1,0x1e,0xf2,0x9a,0x5c,0x4e,
|
||||
0xf1,0x18,0x4a,0x8d,0x87,0xb9,0x43,0x9d,0xf1,0x44,0x3b,0x1c,0xb4,0x9,0x2b,0x91,
|
||||
0xe6,0x9e,0x91,0x20,0x1a,0x17,0xdc,0xdc,0xa0,0x4c,0x81,0x6b,0x3,0xca,0xa1,0x5,
|
||||
0x40,0x72,0xc2,0xb5,0x8d,0x6f,0xe,0x98,0x7f,0xff,0x47,0x60,0xc6,0xea,0x95,0x8c,
|
||||
0xc0,0x3a,0xb,0xc6,0xb7,0x42,0xdb,0xd,0x8f,0xa4,0x13,0x3f,0x53,0x88,0x7a,0x22,
|
||||
0x45,0x9b,0xc3,0xf1,0x70,0x6a,0x8f,0x21,0xd5,0x1c,0x6c,0xd0,0xec,0x34,0xf,0xb5,
|
||||
0xb6,0x91,0x54,0x2,0x61,0x48,0x81,0xcc,0xa,0xc,0x4f,0x49,0x20,0x98,0x47,0x70,
|
||||
0xc5,0x6a,0x77,0x5a,0xc5,0xc5,0xe5,0x68,0xef,0xf2,0xb7,0xd6,0xd9,0x1c,0x56,0x40,
|
||||
0x3d,0xf5,0x7a,0xa9,0xae,0xbf,0x81,0x1,0xd1,0x4e,0x3c,0xd3,0x91,0x47,0x1a,0x2d,
|
||||
0x15,0xba,0xb9,0x74,0xd8,0x8c,0x9a,0x34,0x54,0xe8,0xb5,0xae,0xb9,0xfa,0xf1,0xa2,
|
||||
0x2a,0xb8,0x6d,0xd3,0x3e,0x89,0xa0,0xfc,0x97,0x47,0x81,0xa2,0xd,0x2b,0x55,0xb8,
|
||||
0xf0,0x3e,0xf8,0x1b,0x85,0x3c,0xee,0x87,0x6c,0x4a,0x48,0x1b,0xe4,0x74,0x6e,0x43,
|
||||
0xf0,0x71,0x6,0x94,0x6b,0x88,0x42,0xc5,0x29,0x74,0x85,0xec,0xcf,0x5a,0x46,0x98,
|
||||
0x4,0xec,0x76,0xdc,0x6d,0x4e,0x40,0xc6,0x9,0x1e,0xb7,0x87,0x3a,0xd5,0xd4,0xb4,
|
||||
0x81,0xed,0x14,0x81,0x3f,0x56,0x44,0x32,0x77,0xdd,0xe9,0xfc,0xed,0x13,0xc6,0xfe,
|
||||
0xc7,0x93,0xce,0x1d,0x3c,0x58,0x10,0x87,0x49,0x14,0x83,0x5c,0x19,0x9b,0xa6,0xfe,
|
||||
0x91,0xf6,0x27,0xb2,0x22,0xe6,0x28,0x6c,0xc,0xb8,0x5d,0x7,0x4d,0x3b,0x9,0xde,
|
||||
0x80,0xc5,0xd,0x23,0xdf,0x29,0x73,0x84,0xc4,0xb9,0x28,0xa1,0x3c,0x6c,0xa,0xf1,
|
||||
0x34,0x51,0xab,0x26,0xb1,0x52,0xeb,0x49,0xe6,0x4b,0xc0,0xc6,0x27,0x41,0xcb,0x2,
|
||||
0xd4,0x7,0xf3,0xa3,0xf0,0x59,0x84,0xe8,0x9b,0xf5,0x24,0x30,0xe1,0x46,0xaf,0x87,
|
||||
0xb7,0xc5,0x0,0xf1,0xdd,0x98,0xb0,0x6b,0x9a,0x93,0xd1,0xa1,0xa3,0x30,0xb7,0x4e,
|
||||
0xdb,0xef,0x89,0x30,0xe0,0xa7,0x93,0x3f,0x58,0xab,0xd7,0xb3,0xe2,0xf2,0x10,0xaa,
|
||||
0xd5,0xc2,0x82,0x73,0x40,0x6d,0xe9,0x90,0x5b,0x55,0x42,0x76,0x7f,0xba,0x86,0x7b,
|
||||
0x3c,0xbd,0x9,0xee,0xdf,0x51,0xba,0x1d,0xe1,0xc5,0xc3,0x2b,0x4d,0xf0,0xe2,0xe9,
|
||||
0xe5,0x8,0x74,0xd9,0x86,0x2e,0x5b,0x8a,0x6c,0x65,0xb8,0xdd,0x4e,0xb3,0x84,0xe6,
|
||||
0xea,0x48,0xa6,0x2b,0x61,0x59,0xf4,0xd6,0x11,0x8,0x55,0xb8,0xc,0xf2,0x8,0x67,
|
||||
0xd3,0x11,0x51,0xc5,0x59,0x76,0xcd,0xba,0x67,0xbd,0x16,0x7d,0x25,0x66,0xbd,0xb1,
|
||||
0x93,0x29,0xf1,0x1a,0xdd,0x1d,0xb1,0xb,0x36,0xe6,0x63,0x3a,0xd3,0xbb,0x2e,0x57,
|
||||
0xfb,0x1a,0x93,0xab,0xa3,0x5b,0xb8,0x7b,0xc8,0x77,0xad,0xbd,0xf6,0x39,0x5c,0xb0,
|
||||
0xeb,0x32,0xa6,0xab,0x3e,0x34,0x35,0xf6,0xd2,0x57,0x69,0x87,0x6e,0x83,0x47,0x27,
|
||||
0xbb,0xf1,0x23,0x1,0xbf,0xb4,0xbb,0xf6,0xf1,0x2b,0x1b,0xae,0xbd,0x95,0x17,0xfb,
|
||||
0xef,0x11,0x52,0x14,0x7c,0xc3,0x3e,0xb2,0xf1,0xe8,0xd8,0x2e,0x3c,0x18,0x86,0x7b,
|
||||
0x36,0xe9,0x58,0x59,0xc,0x52,0x7,0xef,0xf3,0x70,0xd9,0xed,0xa1,0xbb,0xf4,0x7b,
|
||||
0xda,0xb6,0x91,0x99,0x78,0x1b,0x4e,0xae,0xb6,0xcf,0x52,0xd,0x1b,0x20,0x6a,0xf0,
|
||||
0x87,0xd1,0xe8,0xee,0x64,0x7d,0x66,0x5a,0xa1,0x90,0xca,0x15,0x2b,0xb4,0x4f,0xb2,
|
||||
0xb5,0x29,0x6f,0x68,0x30,0xac,0x3b,0x60,0x9f,0xfc,0x2,0x98,0xa5,0x9a,0x46,0xfc,
|
||||
0x8b,0x50,0x51,0xb9,0x5,0x58,0x7b,0x2d,0xf4,0xbf,0xee,0xe9,0x8b,0x3e,0xff,0x0,
|
||||
0x94,0xce,0x8c,0xed,
|
||||
|
||||
};
|
||||
|
||||
static const unsigned char qt_resource_name[] = {
|
||||
// visual
|
||||
// qml
|
||||
0x0,0x3,
|
||||
0x0,0x0,0x78,0x3c,
|
||||
0x0,0x71,
|
||||
0x0,0x6d,0x0,0x6c,
|
||||
// visual
|
||||
0x0,0x6,
|
||||
0x7,0xd0,0xab,0x7c,
|
||||
0x0,0x76,
|
||||
@ -1261,6 +1478,11 @@ static const unsigned char qt_resource_name[] = {
|
||||
0xd,0x4e,0x7b,0x47,
|
||||
0x0,0x62,
|
||||
0x0,0x72,0x0,0x61,0x0,0x6e,0x0,0x63,0x0,0x68,0x0,0x2d,0x0,0x65,0x0,0x6e,0x0,0x64,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
|
||||
// delete.png
|
||||
0x0,0xa,
|
||||
0xc,0xad,0xf,0x7,
|
||||
0x0,0x64,
|
||||
0x0,0x65,0x0,0x6c,0x0,0x65,0x0,0x74,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
|
||||
// arrowRight.png
|
||||
0x0,0xe,
|
||||
0xe,0xda,0xdc,0x87,
|
||||
@ -1281,6 +1503,11 @@ static const unsigned char qt_resource_name[] = {
|
||||
0xc,0x2f,0x5a,0x47,
|
||||
0x0,0x62,
|
||||
0x0,0x65,0x0,0x6c,0x0,0x6c,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
|
||||
// open.png
|
||||
0x0,0x8,
|
||||
0x6,0xc1,0x59,0x87,
|
||||
0x0,0x6f,
|
||||
0x0,0x70,0x0,0x65,0x0,0x6e,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
|
||||
// branch-more.png
|
||||
0x0,0xf,
|
||||
0x6,0x16,0x91,0xe7,
|
||||
@ -1291,6 +1518,11 @@ static const unsigned char qt_resource_name[] = {
|
||||
0x1,0x64,0x80,0x7,
|
||||
0x0,0x63,
|
||||
0x0,0x68,0x0,0x65,0x0,0x63,0x0,0x6b,0x0,0x65,0x0,0x64,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
|
||||
// close.png
|
||||
0x0,0x9,
|
||||
0x6,0x98,0x83,0x27,
|
||||
0x0,0x63,
|
||||
0x0,0x6c,0x0,0x6f,0x0,0x73,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
|
||||
// svg
|
||||
0x0,0x3,
|
||||
0x0,0x0,0x7a,0xc7,
|
||||
@ -1311,64 +1543,93 @@ static const unsigned char qt_resource_name[] = {
|
||||
0x9,0xd0,0xd2,0xc7,
|
||||
0x0,0x66,
|
||||
0x0,0x65,0x0,0x6d,0x0,0x61,0x0,0x2d,0x0,0x77,0x0,0x69,0x0,0x6e,0x0,0x67,0x0,0x2e,0x0,0x73,0x0,0x76,0x0,0x67,
|
||||
// map.qml
|
||||
0x0,0x7,
|
||||
0x3,0x83,0x58,0xdc,
|
||||
0x0,0x6d,
|
||||
0x0,0x61,0x0,0x70,0x0,0x2e,0x0,0x71,0x0,0x6d,0x0,0x6c,
|
||||
|
||||
};
|
||||
|
||||
static const unsigned char qt_resource_struct[] = {
|
||||
// :
|
||||
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,
|
||||
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x3,0x0,0x0,0x0,0x1,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/png
|
||||
0x0,0x0,0x0,0x12,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x8,
|
||||
0x0,0x0,0x0,0x1e,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xd,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/qml
|
||||
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x9,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/visual
|
||||
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x3,
|
||||
0x0,0x0,0x0,0xc,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/visual/res
|
||||
0x0,0x0,0x0,0x1e,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,
|
||||
0x0,0x0,0x0,0x2a,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x5,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/visual/res/svg
|
||||
0x0,0x0,0x1,0x22,0x0,0x2,0x0,0x0,0x0,0x3,0x0,0x0,0x0,0x5,
|
||||
0x0,0x0,0x1,0x76,0x0,0x2,0x0,0x0,0x0,0x3,0x0,0x0,0x0,0x6,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/visual/res/svg/fema-wing.svg
|
||||
0x0,0x0,0x1,0x72,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x15,0xcd,
|
||||
0x0,0x0,0x1,0x93,0xaa,0x2d,0x2b,0xfe,
|
||||
0x0,0x0,0x1,0xc6,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x1c,0x1c,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x17,
|
||||
// :/visual/res/svg/settings.svg
|
||||
0x0,0x0,0x1,0x54,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xe,0x2c,
|
||||
0x0,0x0,0x1,0x93,0xb1,0x33,0x6,0x6e,
|
||||
0x0,0x0,0x1,0xa8,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x14,0x6c,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x17,
|
||||
// :/visual/res/svg/chevron-down.png
|
||||
0x0,0x0,0x1,0x2e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xc,0xdd,
|
||||
0x0,0x0,0x1,0x93,0xaa,0x2d,0x2b,0xfe,
|
||||
0x0,0x0,0x1,0x82,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x13,0x1d,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x16,
|
||||
// :/qml/res
|
||||
0x0,0x0,0x0,0x2a,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xb,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/qml/map.qml
|
||||
0x0,0x0,0x1,0xe6,0x0,0x1,0x0,0x0,0x0,0x1,0x0,0x0,0x50,0x75,
|
||||
0x0,0x0,0x1,0x94,0x22,0x1f,0xb5,0xe9,
|
||||
// :/qml/res/qml
|
||||
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xc,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/qml/res/qml/map.qml
|
||||
0x0,0x0,0x1,0xe6,0x0,0x1,0x0,0x0,0x0,0x1,0x0,0x0,0x53,0x6e,
|
||||
0x0,0x0,0x1,0x94,0x22,0x1f,0xb5,0xe9,
|
||||
// :/png/res
|
||||
0x0,0x0,0x0,0x1e,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x9,
|
||||
0x0,0x0,0x0,0x2a,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xe,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/png/res/png
|
||||
0x0,0x0,0x0,0x12,0x0,0x2,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0xa,
|
||||
0x0,0x0,0x0,0x1e,0x0,0x2,0x0,0x0,0x0,0xb,0x0,0x0,0x0,0xf,
|
||||
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
|
||||
// :/png/res/png/vline.png
|
||||
0x0,0x0,0x0,0xb4,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x7,0xb2,
|
||||
0x0,0x0,0x1,0x93,0xcb,0x7c,0xe2,0x72,
|
||||
0x0,0x0,0x0,0xda,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xc,0x13,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x15,
|
||||
// :/png/res/png/checked.png
|
||||
0x0,0x0,0x1,0x6,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xb,0xee,
|
||||
0x0,0x0,0x1,0x93,0xcb,0xab,0xe6,0x16,
|
||||
0x0,0x0,0x1,0x42,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x11,0x31,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x14,
|
||||
// :/png/res/png/branch-more.png
|
||||
0x0,0x0,0x0,0xe2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xb,0x3a,
|
||||
0x0,0x0,0x1,0x93,0xcb,0x93,0x3a,0x4c,
|
||||
0x0,0x0,0x1,0x1e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x10,0x7d,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x14,
|
||||
// :/png/res/png/close.png
|
||||
0x0,0x0,0x1,0x5e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x12,0x20,
|
||||
0x0,0x0,0x1,0x94,0x32,0x40,0x4e,0x90,
|
||||
// :/png/res/png/open.png
|
||||
0x0,0x0,0x1,0x8,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xf,0x9b,
|
||||
0x0,0x0,0x1,0x94,0x32,0x41,0x97,0x64,
|
||||
// :/png/res/png/arrowLeft.png
|
||||
0x0,0x0,0x0,0x94,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x6,0x62,
|
||||
0x0,0x0,0x1,0x93,0xcb,0xed,0xe4,0x54,
|
||||
0x0,0x0,0x0,0xba,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xa,0xc3,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x13,
|
||||
// :/png/res/png/bell.png
|
||||
0x0,0x0,0x0,0xcc,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x8,0xc7,
|
||||
0x0,0x0,0x1,0x93,0xd6,0x85,0xb7,0x62,
|
||||
0x0,0x0,0x0,0xf2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xd,0x28,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x13,
|
||||
// :/png/res/png/delete.png
|
||||
0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x5,0x12,
|
||||
0x0,0x0,0x1,0x94,0x42,0x8d,0x10,0x79,
|
||||
// :/png/res/png/branch-end.png
|
||||
0x0,0x0,0x0,0x50,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x2,0x20,
|
||||
0x0,0x0,0x1,0x93,0xcb,0x98,0x21,0xc5,
|
||||
0x0,0x0,0x0,0x5c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x2,0x20,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x14,
|
||||
// :/png/res/png/arrowRight.png
|
||||
0x0,0x0,0x0,0x72,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x5,0x12,
|
||||
0x0,0x0,0x1,0x93,0xcb,0xee,0xf,0x3c,
|
||||
0x0,0x0,0x0,0x98,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x9,0x73,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x13,
|
||||
// :/png/res/png/branch-close.png
|
||||
0x0,0x0,0x0,0x2a,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
|
||||
0x0,0x0,0x1,0x93,0xcb,0x9e,0x47,0x33,
|
||||
0x0,0x0,0x0,0x36,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
|
||||
0x0,0x0,0x1,0x94,0x1d,0xb3,0xc8,0x13,
|
||||
|
||||
};
|
||||
|
||||
@ -1393,6 +1654,16 @@ namespace QT_NAMESPACE {
|
||||
bool qRegisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *);
|
||||
bool qUnregisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *);
|
||||
|
||||
#if defined(__ELF__) || defined(__APPLE__)
|
||||
static inline unsigned char qResourceFeatureZlib()
|
||||
{
|
||||
extern const unsigned char qt_resourceFeatureZlib;
|
||||
return qt_resourceFeatureZlib;
|
||||
}
|
||||
#else
|
||||
unsigned char qResourceFeatureZlib();
|
||||
#endif
|
||||
|
||||
#ifdef QT_NAMESPACE
|
||||
}
|
||||
#endif
|
||||
@ -1410,6 +1681,7 @@ int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_resources)();
|
||||
int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_resources)()
|
||||
{
|
||||
int version = 3;
|
||||
version += QT_RCC_PREPEND_NAMESPACE(qResourceFeatureZlib());
|
||||
QT_RCC_PREPEND_NAMESPACE(qUnregisterResourceData)
|
||||
(version, qt_resource_struct, qt_resource_name, qt_resource_data);
|
||||
return 1;
|
||||
|
@ -10,6 +10,7 @@
|
||||
#define UI_ALARMDIALOG_H
|
||||
|
||||
#include <QtCore/QVariant>
|
||||
#include <QtQuickWidgets/QQuickWidget>
|
||||
#include <QtWidgets/QApplication>
|
||||
#include <QtWidgets/QHBoxLayout>
|
||||
#include <QtWidgets/QLabel>
|
||||
@ -26,22 +27,21 @@ public:
|
||||
QVBoxLayout *verticalLayout;
|
||||
QHBoxLayout *horizontalLayout_7;
|
||||
QLabel *label_2;
|
||||
QLabel *label;
|
||||
QLabel *nameHead;
|
||||
QSpacerItem *horizontalSpacer;
|
||||
QHBoxLayout *horizontalLayout_6;
|
||||
QLabel *label_3;
|
||||
QHBoxLayout *horizontalLayout_4;
|
||||
QLabel *label_4;
|
||||
QVBoxLayout *verticalLayout_2;
|
||||
QLabel *dateStart;
|
||||
QLabel *dateEnd;
|
||||
QHBoxLayout *horizontalLayout;
|
||||
QLabel *label_5;
|
||||
QLabel *name;
|
||||
QHBoxLayout *chartLayout;
|
||||
QHBoxLayout *horizontalLayout_2;
|
||||
QLabel *label_6;
|
||||
QQuickWidget *map;
|
||||
QHBoxLayout *horizontalLayout_5;
|
||||
QSpacerItem *horizontalSpacer_2;
|
||||
QPushButton *cancelButton;
|
||||
QPushButton *pushButton_2;
|
||||
QPushButton *pushButton;
|
||||
QPushButton *statisticButton;
|
||||
|
||||
void setupUi(QWidget *alarmdialog)
|
||||
{
|
||||
@ -54,7 +54,9 @@ public:
|
||||
"background: white;\n"
|
||||
"}"));
|
||||
verticalLayout = new QVBoxLayout(alarmdialog);
|
||||
verticalLayout->setSpacing(0);
|
||||
verticalLayout->setObjectName("verticalLayout");
|
||||
verticalLayout->setContentsMargins(0, 0, 0, 0);
|
||||
horizontalLayout_7 = new QHBoxLayout();
|
||||
horizontalLayout_7->setSpacing(20);
|
||||
horizontalLayout_7->setObjectName("horizontalLayout_7");
|
||||
@ -67,16 +69,16 @@ public:
|
||||
|
||||
horizontalLayout_7->addWidget(label_2);
|
||||
|
||||
label = new QLabel(alarmdialog);
|
||||
label->setObjectName("label");
|
||||
nameHead = new QLabel(alarmdialog);
|
||||
nameHead->setObjectName("nameHead");
|
||||
QSizePolicy sizePolicy(QSizePolicy::Policy::Preferred, QSizePolicy::Policy::Preferred);
|
||||
sizePolicy.setHorizontalStretch(0);
|
||||
sizePolicy.setVerticalStretch(29);
|
||||
sizePolicy.setHeightForWidth(label->sizePolicy().hasHeightForWidth());
|
||||
label->setSizePolicy(sizePolicy);
|
||||
label->setMinimumSize(QSize(0, 29));
|
||||
label->setMaximumSize(QSize(16777215, 29));
|
||||
label->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
sizePolicy.setHeightForWidth(nameHead->sizePolicy().hasHeightForWidth());
|
||||
nameHead->setSizePolicy(sizePolicy);
|
||||
nameHead->setMinimumSize(QSize(0, 29));
|
||||
nameHead->setMaximumSize(QSize(16777215, 29));
|
||||
nameHead->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 24px;\n"
|
||||
"font-weight: 400;\n"
|
||||
@ -85,7 +87,7 @@ public:
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_7->addWidget(label);
|
||||
horizontalLayout_7->addWidget(nameHead);
|
||||
|
||||
horizontalSpacer = new QSpacerItem(40, 29, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);
|
||||
|
||||
@ -97,12 +99,16 @@ public:
|
||||
horizontalLayout_6 = new QHBoxLayout();
|
||||
horizontalLayout_6->setSpacing(0);
|
||||
horizontalLayout_6->setObjectName("horizontalLayout_6");
|
||||
horizontalLayout_6->setContentsMargins(25, -1, 25, 15);
|
||||
label_3 = new QLabel(alarmdialog);
|
||||
label_3->setObjectName("label_3");
|
||||
label_3->setMinimumSize(QSize(0, 27));
|
||||
label_3->setMaximumSize(QSize(16777215, 27));
|
||||
label_3->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
horizontalLayout_6->setContentsMargins(0, -1, 0, 0);
|
||||
verticalLayout_2 = new QVBoxLayout();
|
||||
verticalLayout_2->setSpacing(0);
|
||||
verticalLayout_2->setObjectName("verticalLayout_2");
|
||||
verticalLayout_2->setContentsMargins(25, -1, 25, 15);
|
||||
dateStart = new QLabel(alarmdialog);
|
||||
dateStart->setObjectName("dateStart");
|
||||
dateStart->setMinimumSize(QSize(0, 27));
|
||||
dateStart->setMaximumSize(QSize(16777215, 27));
|
||||
dateStart->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
@ -111,42 +117,37 @@ public:
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_6->addWidget(label_3);
|
||||
verticalLayout_2->addWidget(dateStart);
|
||||
|
||||
dateEnd = new QLabel(alarmdialog);
|
||||
dateEnd->setObjectName("dateEnd");
|
||||
dateEnd->setMaximumSize(QSize(16777215, 27));
|
||||
dateEnd->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
verticalLayout_2->addWidget(dateEnd);
|
||||
|
||||
|
||||
horizontalLayout_6->addLayout(verticalLayout_2);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_6);
|
||||
|
||||
horizontalLayout_4 = new QHBoxLayout();
|
||||
horizontalLayout_4->setSpacing(0);
|
||||
horizontalLayout_4->setObjectName("horizontalLayout_4");
|
||||
horizontalLayout_4->setContentsMargins(25, -1, 25, 15);
|
||||
label_4 = new QLabel(alarmdialog);
|
||||
label_4->setObjectName("label_4");
|
||||
label_4->setMinimumSize(QSize(0, 27));
|
||||
label_4->setMaximumSize(QSize(16777215, 27));
|
||||
label_4->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_4->addWidget(label_4);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_4);
|
||||
|
||||
horizontalLayout = new QHBoxLayout();
|
||||
horizontalLayout->setSpacing(0);
|
||||
horizontalLayout->setObjectName("horizontalLayout");
|
||||
horizontalLayout->setContentsMargins(25, -1, 25, 15);
|
||||
label_5 = new QLabel(alarmdialog);
|
||||
label_5->setObjectName("label_5");
|
||||
label_5->setMinimumSize(QSize(0, 27));
|
||||
label_5->setMaximumSize(QSize(16777215, 27));
|
||||
label_5->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
name = new QLabel(alarmdialog);
|
||||
name->setObjectName("name");
|
||||
name->setMinimumSize(QSize(0, 27));
|
||||
name->setMaximumSize(QSize(16777215, 27));
|
||||
name->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
@ -155,7 +156,7 @@ public:
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout->addWidget(label_5);
|
||||
horizontalLayout->addWidget(name);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout);
|
||||
@ -171,13 +172,13 @@ public:
|
||||
horizontalLayout_2->setSpacing(0);
|
||||
horizontalLayout_2->setObjectName("horizontalLayout_2");
|
||||
horizontalLayout_2->setContentsMargins(25, -1, 25, -1);
|
||||
label_6 = new QLabel(alarmdialog);
|
||||
label_6->setObjectName("label_6");
|
||||
label_6->setMinimumSize(QSize(710, 318));
|
||||
label_6->setMaximumSize(QSize(710, 318));
|
||||
label_6->setStyleSheet(QString::fromUtf8("background: black;"));
|
||||
map = new QQuickWidget(alarmdialog);
|
||||
map->setObjectName("map");
|
||||
map->setMinimumSize(QSize(710, 320));
|
||||
map->setMaximumSize(QSize(710, 320));
|
||||
map->setResizeMode(QQuickWidget::ResizeMode::SizeRootObjectToView);
|
||||
|
||||
horizontalLayout_2->addWidget(label_6);
|
||||
horizontalLayout_2->addWidget(map);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_2);
|
||||
@ -221,11 +222,11 @@ public:
|
||||
|
||||
horizontalLayout_5->addWidget(cancelButton);
|
||||
|
||||
pushButton_2 = new QPushButton(alarmdialog);
|
||||
pushButton_2->setObjectName("pushButton_2");
|
||||
pushButton_2->setMinimumSize(QSize(266, 41));
|
||||
pushButton_2->setMaximumSize(QSize(266, 41));
|
||||
pushButton_2->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
statisticButton = new QPushButton(alarmdialog);
|
||||
statisticButton->setObjectName("statisticButton");
|
||||
statisticButton->setMinimumSize(QSize(266, 41));
|
||||
statisticButton->setMaximumSize(QSize(266, 41));
|
||||
statisticButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
@ -249,37 +250,7 @@ public:
|
||||
" border-color: #102E47;\n"
|
||||
"}"));
|
||||
|
||||
horizontalLayout_5->addWidget(pushButton_2);
|
||||
|
||||
pushButton = new QPushButton(alarmdialog);
|
||||
pushButton->setObjectName("pushButton");
|
||||
pushButton->setMinimumSize(QSize(117, 41));
|
||||
pushButton->setMaximumSize(QSize(117, 41));
|
||||
pushButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
" border-width: 1px;\n"
|
||||
" background-color: #13385F;\n"
|
||||
" color: white;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 22px;\n"
|
||||
" font-weight: 500;\n"
|
||||
" line-height: 26.63px;\n"
|
||||
" text-align: center;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:hover {\n"
|
||||
" background-color: #1A4A73;\n"
|
||||
" border-color: #1A4A73;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:pressed {\n"
|
||||
" background-color: #102E47;\n"
|
||||
" border-color: #102E47;\n"
|
||||
"}"));
|
||||
|
||||
horizontalLayout_5->addWidget(pushButton);
|
||||
horizontalLayout_5->addWidget(statisticButton);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_5);
|
||||
@ -294,14 +265,12 @@ public:
|
||||
{
|
||||
alarmdialog->setWindowTitle(QCoreApplication::translate("alarmdialog", "Form", nullptr));
|
||||
label_2->setText(QString());
|
||||
label->setText(QCoreApplication::translate("alarmdialog", "\320\235\320\260\320\267\320\262\320\260\320\275\320\270\320\265 \320\264\320\260\321\202\321\207\320\270\320\272\320\260", nullptr));
|
||||
label_3->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
label_4->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
label_5->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
label_6->setText(QString());
|
||||
nameHead->setText(QCoreApplication::translate("alarmdialog", "\320\235\320\260\320\267\320\262\320\260\320\275\320\270\320\265 \320\264\320\260\321\202\321\207\320\270\320\272\320\260", nullptr));
|
||||
dateStart->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
dateEnd->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
name->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
cancelButton->setText(QCoreApplication::translate("alarmdialog", "\320\236\321\202\320\274\320\265\320\275\320\260", nullptr));
|
||||
pushButton_2->setText(QCoreApplication::translate("alarmdialog", "\320\237\320\265\321\200\320\265\320\271\321\202\320\270 \320\272 \321\201\321\202\320\260\321\202\320\270\321\201\321\202\320\270\320\272\320\265", nullptr));
|
||||
pushButton->setText(QCoreApplication::translate("alarmdialog", "\320\255\320\272\321\201\320\277\320\276\321\200\321\202", nullptr));
|
||||
statisticButton->setText(QCoreApplication::translate("alarmdialog", "\320\237\320\265\321\200\320\265\320\271\321\202\320\270 \320\272 \321\201\321\202\320\260\321\202\320\270\321\201\321\202\320\270\320\272\320\265", nullptr));
|
||||
} // retranslateUi
|
||||
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -2,14 +2,18 @@
|
||||
#include "EWIEGA46WW/moc_alarmdialog.cpp"
|
||||
#include "EWIEGA46WW/moc_alarmsservice.cpp"
|
||||
#include "EWIEGA46WW/moc_alarmwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_apiform.cpp"
|
||||
#include "EWIEGA46WW/moc_httpclient.cpp"
|
||||
#include "EWIEGA46WW/moc_incedentwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_journalservice.cpp"
|
||||
#include "EWIEGA46WW/moc_logwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_mainwindow.cpp"
|
||||
#include "EWIEGA46WW/moc_paginationbar.cpp"
|
||||
#include "EWIEGA46WW/moc_plotservice.cpp"
|
||||
#include "EWIEGA46WW/moc_qcustomplot.cpp"
|
||||
#include "EWIEGA46WW/moc_savesensorservice.cpp"
|
||||
#include "EWIEGA46WW/moc_sensordialog.cpp"
|
||||
#include "EWIEGA46WW/moc_sensorlogervice.cpp"
|
||||
#include "EWIEGA46WW/moc_sensorservice.cpp"
|
||||
#include "EWIEGA46WW/moc_sensorwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_serverwidget.cpp"
|
||||
|
Binary file not shown.
@ -0,0 +1,10 @@
|
||||
set(qml_import_scanner_imports_count 8)
|
||||
set(qml_import_scanner_import_0 "CLASSNAME;QtQuick2Plugin;LINKTARGET;Qt6::qtquick2plugin;NAME;QtQuick;PATH;E:/qt/6.8.1/mingw_64/qml/QtQuick;PLUGIN;qtquick2plugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/;RELATIVEPATH;QtQuick;TYPE;module;")
|
||||
set(qml_import_scanner_import_1 "CLASSNAME;QtQmlPlugin;LINKTARGET;Qt6::qmlplugin;NAME;QtQml;PATH;E:/qt/6.8.1/mingw_64/qml/QtQml;PLUGIN;qmlplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/;RELATIVEPATH;QtQml;TYPE;module;")
|
||||
set(qml_import_scanner_import_2 "NAME;QML;PATH;E:/qt/6.8.1/mingw_64/qml/QML;PREFER;:/qt-project.org/imports/QML/;RELATIVEPATH;QML;TYPE;module;")
|
||||
set(qml_import_scanner_import_3 "CLASSNAME;QtQmlModelsPlugin;LINKTARGET;Qt6::modelsplugin;NAME;QtQml.Models;PATH;E:/qt/6.8.1/mingw_64/qml/QtQml/Models;PLUGIN;modelsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/Models/;RELATIVEPATH;QtQml/Models;TYPE;module;")
|
||||
set(qml_import_scanner_import_4 "CLASSNAME;QtQmlWorkerScriptPlugin;LINKTARGET;Qt6::workerscriptplugin;NAME;QtQml.WorkerScript;PATH;E:/qt/6.8.1/mingw_64/qml/QtQml/WorkerScript;PLUGIN;workerscriptplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/WorkerScript/;RELATIVEPATH;QtQml/WorkerScript;TYPE;module;")
|
||||
set(qml_import_scanner_import_5 "CLASSNAME;QtLocationDeclarativeModule;COMPONENTS;E:/qt/6.8.1/mingw_64/qml/QtLocation/MapView.qml;LINKTARGET;Qt6::declarative_location;NAME;QtLocation;PATH;E:/qt/6.8.1/mingw_64/qml/QtLocation;PLUGIN;declarative_locationplugin;PREFER;:/qt-project.org/imports/QtLocation/;RELATIVEPATH;QtLocation;TYPE;module;")
|
||||
set(qml_import_scanner_import_6 "CLASSNAME;QtPositioningDeclarativeModule;LINKTARGET;Qt6::positioningquickplugin;NAME;QtPositioning;PATH;E:/qt/6.8.1/mingw_64/qml/QtPositioning;PLUGIN;positioningquickplugin;PREFER;:/qt-project.org/imports/QtPositioning/;RELATIVEPATH;QtPositioning;TYPE;module;")
|
||||
set(qml_import_scanner_import_7 "CLASSNAME;QtLabsAnimationPlugin;LINKTARGET;Qt6::labsanimationplugin;NAME;Qt.labs.animation;PATH;E:/qt/6.8.1/mingw_64/qml/Qt/labs/animation;PLUGIN;labsanimationplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/Qt/labs/animation/;RELATIVEPATH;Qt/labs/animation;TYPE;module;")
|
||||
|
@ -0,0 +1,314 @@
|
||||
#
|
||||
# Internal Qt Creator variable reference
|
||||
#
|
||||
foreach(qtcreator_var
|
||||
QT_QMAKE_EXECUTABLE CMAKE_PREFIX_PATH CMAKE_C_COMPILER CMAKE_CXX_COMPILER
|
||||
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO)
|
||||
set(__just_reference_${qtcreator_var} ${${qtcreator_var}})
|
||||
endforeach()
|
||||
|
||||
option(QT_CREATOR_SOURCE_GROUPS "Qt Creator source groups extensions" ON)
|
||||
if (QT_CREATOR_SOURCE_GROUPS)
|
||||
source_group("Resources" REGULAR_EXPRESSION "\\.(pdf|plist|png|jpeg|jpg|storyboard|xcassets|qrc|svg|gif|ico|webp)$")
|
||||
source_group("Forms" REGULAR_EXPRESSION "\\.(ui)$")
|
||||
source_group("State charts" REGULAR_EXPRESSION "\\.(scxml)$")
|
||||
endif()
|
||||
|
||||
if (EXISTS "${CMAKE_SOURCE_DIR}/QtCreatorPackageManager.cmake")
|
||||
include("${CMAKE_SOURCE_DIR}/QtCreatorPackageManager.cmake")
|
||||
endif()
|
||||
|
||||
if (QT_CREATOR_SKIP_PACKAGE_MANAGER_SETUP)
|
||||
return()
|
||||
endif()
|
||||
option(QT_CREATOR_SKIP_PACKAGE_MANAGER_SETUP "Skip Qt Creator's package manager auto-setup" OFF)
|
||||
|
||||
# Store the C/C++ object output extension
|
||||
if (CMAKE_VERSION GREATER_EQUAL "3.19")
|
||||
cmake_language(DEFER CALL set CMAKE_C_OUTPUT_EXTENSION "${CMAKE_C_OUTPUT_EXTENSION}" CACHE STRING "" FORCE)
|
||||
cmake_language(DEFER CALL set CMAKE_CXX_OUTPUT_EXTENSION "${CMAKE_CXX_OUTPUT_EXTENSION}" CACHE STRING "" FORCE)
|
||||
endif()
|
||||
|
||||
macro(qtc_auto_setup_compiler_standard toolchainFile)
|
||||
foreach(lang_var C CXX CUDA OBJC OBJCXX)
|
||||
foreach(prop_var STANDARD STANDARD_REQUIRED EXTENSIONS)
|
||||
if (CMAKE_${lang_var}_${prop_var})
|
||||
file(APPEND "${toolchainFile}"
|
||||
"set(CMAKE_${lang_var}_${prop_var} ${CMAKE_${lang_var}_${prop_var}})\n")
|
||||
endif()
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
# Forward important CMake variables to the package manager in the toolchain file
|
||||
foreach(fwd_var CMAKE_MSVC_RUNTIME_LIBRARY CMAKE_SYSROOT CMAKE_OSX_SYSROOT CMAKE_OSX_ARCHITECTURES)
|
||||
if (${fwd_var})
|
||||
file(APPEND "${toolchainFile}"
|
||||
"set(${fwd_var} ${${fwd_var}})\n")
|
||||
endif()
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# conan
|
||||
#
|
||||
macro(qtc_auto_setup_conan)
|
||||
foreach(file conanfile.txt conanfile.py)
|
||||
if (EXISTS "${CMAKE_SOURCE_DIR}/${file}")
|
||||
set(conanfile_txt "${CMAKE_SOURCE_DIR}/${file}")
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
if (conanfile_txt AND NOT QT_CREATOR_SKIP_CONAN_SETUP)
|
||||
option(QT_CREATOR_SKIP_CONAN_SETUP "Skip Qt Creator's conan package manager auto-setup" OFF)
|
||||
set(QT_CREATOR_CONAN_BUILD_POLICY "missing" CACHE STRING "Qt Creator's conan package manager auto-setup build policy. This is used for the BUILD property of cmake_conan_run")
|
||||
|
||||
set_property(
|
||||
DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
APPEND
|
||||
PROPERTY CMAKE_CONFIGURE_DEPENDS "${conanfile_txt}")
|
||||
|
||||
find_program(conan_program conan)
|
||||
if (NOT conan_program)
|
||||
message(WARNING "Qt Creator: conan executable not found. "
|
||||
"Package manager auto-setup will be skipped. "
|
||||
"To disable this warning set QT_CREATOR_SKIP_CONAN_SETUP to ON.")
|
||||
return()
|
||||
endif()
|
||||
execute_process(COMMAND ${conan_program} --version
|
||||
RESULT_VARIABLE result_code
|
||||
OUTPUT_VARIABLE conan_version_output
|
||||
ERROR_VARIABLE conan_version_output)
|
||||
if (NOT result_code EQUAL 0)
|
||||
message(FATAL_ERROR "conan --version failed='${result_code}: ${conan_version_output}")
|
||||
endif()
|
||||
|
||||
string(REGEX REPLACE ".*Conan version ([0-9].[0-9]).*" "\\1" conan_version "${conan_version_output}")
|
||||
|
||||
set(conanfile_timestamp_file "${CMAKE_BINARY_DIR}/conan-dependencies/conanfile.timestamp")
|
||||
file(TIMESTAMP "${conanfile_txt}" conanfile_timestamp)
|
||||
|
||||
set(do_conan_installation ON)
|
||||
if (EXISTS "${conanfile_timestamp_file}")
|
||||
file(READ "${conanfile_timestamp_file}" old_conanfile_timestamp)
|
||||
if ("${conanfile_timestamp}" STREQUAL "${old_conanfile_timestamp}")
|
||||
set(do_conan_installation OFF)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(conanfile_build_policy_file "${CMAKE_BINARY_DIR}/conan-dependencies/conanfile.buildpolicy")
|
||||
if (EXISTS "${conanfile_build_policy_file}")
|
||||
file(READ "${conanfile_build_policy_file}" build_policy)
|
||||
if (NOT "${build_policy}" STREQUAL "${QT_CREATOR_CONAN_BUILD_POLICY}")
|
||||
set(do_conan_installation ON)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (do_conan_installation)
|
||||
message(STATUS "Qt Creator: conan package manager auto-setup. "
|
||||
"Skip this step by setting QT_CREATOR_SKIP_CONAN_SETUP to ON.")
|
||||
|
||||
file(COPY "${conanfile_txt}" DESTINATION "${CMAKE_BINARY_DIR}/conan-dependencies/")
|
||||
|
||||
file(WRITE "${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake" "
|
||||
set(CMAKE_C_COMPILER \"${CMAKE_C_COMPILER}\")
|
||||
set(CMAKE_CXX_COMPILER \"${CMAKE_CXX_COMPILER}\")
|
||||
")
|
||||
qtc_auto_setup_compiler_standard("${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake")
|
||||
|
||||
if (CMAKE_TOOLCHAIN_FILE)
|
||||
file(APPEND "${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake"
|
||||
"include(\"${CMAKE_TOOLCHAIN_FILE}\")\n")
|
||||
endif()
|
||||
|
||||
file(WRITE "${CMAKE_BINARY_DIR}/conan-dependencies/CMakeLists.txt" "
|
||||
cmake_minimum_required(VERSION 3.15)
|
||||
|
||||
unset(CMAKE_PROJECT_INCLUDE_BEFORE CACHE)
|
||||
project(conan-setup)
|
||||
|
||||
if (${conan_version} VERSION_GREATER_EQUAL 2.0)
|
||||
set(CONAN_COMMAND \"${conan_program}\")
|
||||
include(\"${CMAKE_CURRENT_LIST_DIR}/conan_provider.cmake\")
|
||||
conan_profile_detect_default()
|
||||
detect_host_profile(\"${CMAKE_BINARY_DIR}/conan-dependencies/conan_host_profile\")
|
||||
|
||||
set(build_types \${CMAKE_BUILD_TYPE})
|
||||
if (CMAKE_CONFIGURATION_TYPES)
|
||||
set(build_types \${CMAKE_CONFIGURATION_TYPES})
|
||||
endif()
|
||||
|
||||
foreach(type \${build_types})
|
||||
conan_install(
|
||||
-pr \"${CMAKE_BINARY_DIR}/conan-dependencies/conan_host_profile\"
|
||||
--build=${QT_CREATOR_CONAN_BUILD_POLICY}
|
||||
-s build_type=\${type}
|
||||
-g CMakeDeps)
|
||||
endforeach()
|
||||
|
||||
get_property(CONAN_INSTALL_SUCCESS GLOBAL PROPERTY CONAN_INSTALL_SUCCESS)
|
||||
if (CONAN_INSTALL_SUCCESS)
|
||||
get_property(CONAN_GENERATORS_FOLDER GLOBAL PROPERTY CONAN_GENERATORS_FOLDER)
|
||||
file(TO_CMAKE_PATH \"\${CONAN_GENERATORS_FOLDER}\" CONAN_GENERATORS_FOLDER)
|
||||
file(WRITE \"${CMAKE_BINARY_DIR}/conan-dependencies/conan_paths.cmake\" \"
|
||||
list(PREPEND CMAKE_PREFIX_PATH \\\"\${CONAN_GENERATORS_FOLDER}\\\")
|
||||
list(PREPEND CMAKE_MODULE_PATH \\\"\${CONAN_GENERATORS_FOLDER}\\\")
|
||||
list(PREPEND CMAKE_FIND_ROOT_PATH \\\"\${CONAN_GENERATORS_FOLDER}\\\")
|
||||
list(REMOVE_DUPLICATES CMAKE_PREFIX_PATH)
|
||||
list(REMOVE_DUPLICATES CMAKE_MODULE_PATH)
|
||||
list(REMOVE_DUPLICATES CMAKE_FIND_ROOT_PATH)
|
||||
set(CMAKE_PREFIX_PATH \\\"\\\${CMAKE_PREFIX_PATH}\\\" CACHE STRING \\\"\\\" FORCE)
|
||||
set(CMAKE_MODULE_PATH \\\"\\\${CMAKE_MODULE_PATH}\\\" CACHE STRING \\\"\\\" FORCE)
|
||||
set(CMAKE_FIND_ROOT_PATH \\\"\\\${CMAKE_FIND_ROOT_PATH}\\\" CACHE STRING \\\"\\\" FORCE)
|
||||
\")
|
||||
endif()
|
||||
else()
|
||||
include(\"${CMAKE_CURRENT_LIST_DIR}/conan.cmake\")
|
||||
conan_cmake_run(
|
||||
CONANFILE \"${conanfile_txt}\"
|
||||
INSTALL_FOLDER \"${CMAKE_BINARY_DIR}/conan-dependencies\"
|
||||
GENERATORS cmake_paths cmake_find_package json
|
||||
BUILD ${QT_CREATOR_CONAN_BUILD_POLICY}
|
||||
ENV CONAN_CMAKE_TOOLCHAIN_FILE=\"${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake\"
|
||||
)
|
||||
endif()
|
||||
")
|
||||
|
||||
if (NOT DEFINED CMAKE_BUILD_TYPE AND NOT DEFINED CMAKE_CONFIGURATION_TYPES)
|
||||
set(CMAKE_CONFIGURATION_TYPES "Debug;Release")
|
||||
endif()
|
||||
|
||||
execute_process(COMMAND ${CMAKE_COMMAND}
|
||||
-S "${CMAKE_BINARY_DIR}/conan-dependencies/"
|
||||
-B "${CMAKE_BINARY_DIR}/conan-dependencies/build"
|
||||
-C "${CMAKE_BINARY_DIR}/qtcsettings.cmake"
|
||||
-D "CMAKE_TOOLCHAIN_FILE=${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake"
|
||||
-G ${CMAKE_GENERATOR}
|
||||
-D CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
-D "CMAKE_CONFIGURATION_TYPES=${CMAKE_CONFIGURATION_TYPES}"
|
||||
RESULT_VARIABLE result
|
||||
)
|
||||
if (result EQUAL 0)
|
||||
file(WRITE "${conanfile_timestamp_file}" "${conanfile_timestamp}")
|
||||
file(WRITE "${conanfile_build_policy_file}" ${QT_CREATOR_CONAN_BUILD_POLICY})
|
||||
else()
|
||||
message(WARNING "Qt Creator's conan package manager auto-setup failed. Consider setting "
|
||||
"QT_CREATOR_SKIP_CONAN_SETUP to ON and reconfigure to skip this step.")
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
include("${CMAKE_BINARY_DIR}/conan-dependencies/conan_paths.cmake")
|
||||
endif()
|
||||
unset(conanfile_txt)
|
||||
endmacro()
|
||||
qtc_auto_setup_conan()
|
||||
|
||||
#
|
||||
# vcpkg
|
||||
#
|
||||
macro(qtc_auto_setup_vcpkg)
|
||||
if (EXISTS "${CMAKE_SOURCE_DIR}/vcpkg.json" AND NOT QT_CREATOR_SKIP_VCPKG_SETUP)
|
||||
option(QT_CREATOR_SKIP_VCPKG_SETUP "Skip Qt Creator's vcpkg package manager auto-setup" OFF)
|
||||
|
||||
set_property(
|
||||
DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
APPEND
|
||||
PROPERTY CMAKE_CONFIGURE_DEPENDS "${CMAKE_SOURCE_DIR}/vcpkg.json")
|
||||
|
||||
find_program(vcpkg_program vcpkg
|
||||
PATHS $ENV{VCPKG_ROOT} ${CMAKE_SOURCE_DIR}/vcpkg ${CMAKE_SOURCE_DIR}/3rdparty/vcpkg
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
if (NOT vcpkg_program)
|
||||
message(WARNING "Qt Creator: vcpkg executable not found. "
|
||||
"Package manager auto-setup will be skipped. "
|
||||
"To disable this warning set QT_CREATOR_SKIP_VCPKG_SETUP to ON.")
|
||||
return()
|
||||
endif()
|
||||
execute_process(COMMAND ${vcpkg_program} version
|
||||
RESULT_VARIABLE result_code
|
||||
OUTPUT_VARIABLE vcpkg_version_output
|
||||
ERROR_VARIABLE vcpkg_version_output)
|
||||
if (NOT result_code EQUAL 0)
|
||||
message(FATAL_ERROR "vcpkg version failed='${result_code}: ${vcpkg_version_output}")
|
||||
endif()
|
||||
|
||||
# Resolve any symlinks
|
||||
get_filename_component(vpkg_program_real_path ${vcpkg_program} REALPATH)
|
||||
get_filename_component(vpkg_root ${vpkg_program_real_path} DIRECTORY)
|
||||
|
||||
if (NOT EXISTS "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake")
|
||||
message(STATUS "Qt Creator: vcpkg package manager auto-setup. "
|
||||
"Skip this step by setting QT_CREATOR_SKIP_VCPKG_SETUP to ON.")
|
||||
|
||||
file(WRITE "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" "
|
||||
set(CMAKE_C_COMPILER \"${CMAKE_C_COMPILER}\")
|
||||
set(CMAKE_CXX_COMPILER \"${CMAKE_CXX_COMPILER}\")
|
||||
")
|
||||
qtc_auto_setup_compiler_standard("${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake")
|
||||
|
||||
if (CMAKE_TOOLCHAIN_FILE AND NOT
|
||||
CMAKE_TOOLCHAIN_FILE STREQUAL "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake")
|
||||
file(APPEND "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake"
|
||||
"include(\"${CMAKE_TOOLCHAIN_FILE}\")\n")
|
||||
endif()
|
||||
|
||||
if (VCPKG_TARGET_TRIPLET)
|
||||
set(vcpkg_triplet ${VCPKG_TARGET_TRIPLET})
|
||||
else()
|
||||
if (ANDROID_ABI)
|
||||
if (ANDROID_ABI STREQUAL "armeabi-v7a")
|
||||
set(vcpkg_triplet arm-neon-android)
|
||||
elseif (ANDROID_ABI STREQUAL "arm64-v8a")
|
||||
set(vcpkg_triplet arm64-android)
|
||||
elseif (ANDROID_ABI STREQUAL "x86")
|
||||
set(vcpkg_triplet x86-android)
|
||||
elseif (ANDROID_ABI STREQUAL "x86_64")
|
||||
set(vcpkg_triplet x64-android)
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported Android ABI: ${ANDROID_ABI}")
|
||||
endif()
|
||||
# Needed by vcpkg/scripts/toolchains/android.cmake
|
||||
file(APPEND "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" "
|
||||
set(ENV{ANDROID_NDK_HOME} \"${ANDROID_NDK}\")
|
||||
")
|
||||
elseif (WIN32)
|
||||
set(vcpkg_triplet x64-mingw-static)
|
||||
if (CMAKE_CXX_COMPILER MATCHES ".*/(.*)/cl.exe")
|
||||
set(vcpkg_triplet ${CMAKE_MATCH_1}-windows)
|
||||
endif()
|
||||
elseif(APPLE)
|
||||
# We're too early to use CMAKE_HOST_SYSTEM_PROCESSOR
|
||||
execute_process(
|
||||
COMMAND uname -m
|
||||
OUTPUT_VARIABLE __apple_host_system_processor
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if (__apple_host_system_processor MATCHES "arm64")
|
||||
set(vcpkg_triplet arm64-osx)
|
||||
else()
|
||||
set(vcpkg_triplet x64-osx)
|
||||
endif()
|
||||
else()
|
||||
set(vcpkg_triplet x64-linux)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
file(APPEND "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" "
|
||||
set(VCPKG_TARGET_TRIPLET ${vcpkg_triplet})
|
||||
include(\"${vpkg_root}/scripts/buildsystems/vcpkg.cmake\")
|
||||
")
|
||||
endif()
|
||||
|
||||
set(CMAKE_TOOLCHAIN_FILE "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" CACHE PATH "" FORCE)
|
||||
|
||||
# Save CMAKE_PREFIX_PATH and CMAKE_MODULE_PATH as cache variables
|
||||
if (CMAKE_VERSION GREATER_EQUAL "3.19")
|
||||
cmake_language(DEFER CALL list REMOVE_DUPLICATES CMAKE_PREFIX_PATH)
|
||||
cmake_language(DEFER CALL list REMOVE_DUPLICATES CMAKE_MODULE_PATH)
|
||||
cmake_language(DEFER CALL set CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH}" CACHE STRING "" FORCE)
|
||||
cmake_language(DEFER CALL set CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" CACHE STRING "" FORCE)
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
qtc_auto_setup_vcpkg()
|
@ -0,0 +1,92 @@
|
||||
set(CMAKE_CXX_COMPILER "E:/qt/Tools/mingw1310_64/bin/g++.exe")
|
||||
set(CMAKE_CXX_COMPILER_ARG1 "")
|
||||
set(CMAKE_CXX_COMPILER_ID "GNU")
|
||||
set(CMAKE_CXX_COMPILER_VERSION "13.1.0")
|
||||
set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
|
||||
set(CMAKE_CXX_COMPILER_WRAPPER "")
|
||||
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17")
|
||||
set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON")
|
||||
set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23")
|
||||
set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
|
||||
set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
|
||||
set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
|
||||
set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
|
||||
set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
|
||||
set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
|
||||
|
||||
set(CMAKE_CXX_PLATFORM_ID "MinGW")
|
||||
set(CMAKE_CXX_SIMULATE_ID "")
|
||||
set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU")
|
||||
set(CMAKE_CXX_SIMULATE_VERSION "")
|
||||
|
||||
|
||||
|
||||
|
||||
set(CMAKE_AR "E:/qt/Tools/mingw1310_64/bin/ar.exe")
|
||||
set(CMAKE_CXX_COMPILER_AR "E:/qt/Tools/mingw1310_64/bin/gcc-ar.exe")
|
||||
set(CMAKE_RANLIB "E:/qt/Tools/mingw1310_64/bin/ranlib.exe")
|
||||
set(CMAKE_CXX_COMPILER_RANLIB "E:/qt/Tools/mingw1310_64/bin/gcc-ranlib.exe")
|
||||
set(CMAKE_LINKER "E:/qt/Tools/mingw1310_64/bin/ld.exe")
|
||||
set(CMAKE_LINKER_LINK "")
|
||||
set(CMAKE_LINKER_LLD "")
|
||||
set(CMAKE_CXX_COMPILER_LINKER "../src/gcc-13.1.0/configure --host=x86_64-w64-mingw32 --build=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --prefix=/mingw64 --with-sysroot=/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64 --enable-host-shared --disable-multilib --enable-languages=c,c++,fortran,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --enable-libstdcxx-filesystem-ts=yes --disable-libssp --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=nocona --with-tune=core2 --with-libiconv --with-system-zlib --with-gmp=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-mpfr=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-mpc=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-isl=/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-pkgversion='x86_64-posix-seh-rev1, Built by MinGW-Builds project' --with-bugurl=https:/github.com/niXman/mingw-builds CFLAGS='-O2 -pipe -fno-ident -I/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -fno-ident -I/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include' CPPFLAGS=' -I/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include' LDFLAGS='-pipe -fno-ident -L/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/opt/lib -L/c/buildroot/prerequisites/x86_64-zlib-static/lib -L/c/buildroot/prerequisites/x86_64-w64-mingw32-static/lib ' LD_FOR_TARGET=/c/buildroot/x86_64-1310-posix-seh-msvcrt-rt_v11-rev1/mingw64/bin/ld.exe")
|
||||
set(CMAKE_CXX_COMPILER_LINKER_ID "")
|
||||
set(CMAKE_CXX_COMPILER_LINKER_VERSION )
|
||||
set(CMAKE_CXX_COMPILER_LINKER_FRONTEND_VARIANT )
|
||||
set(CMAKE_MT "")
|
||||
set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
|
||||
set(CMAKE_COMPILER_IS_GNUCXX 1)
|
||||
set(CMAKE_CXX_COMPILER_LOADED 1)
|
||||
set(CMAKE_CXX_COMPILER_WORKS TRUE)
|
||||
set(CMAKE_CXX_ABI_COMPILED TRUE)
|
||||
|
||||
set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
|
||||
|
||||
set(CMAKE_CXX_COMPILER_ID_RUN 1)
|
||||
set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m)
|
||||
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
|
||||
|
||||
foreach (lang IN ITEMS C OBJC OBJCXX)
|
||||
if (CMAKE_${lang}_COMPILER_ID_RUN)
|
||||
foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
|
||||
list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
|
||||
endforeach()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(CMAKE_CXX_LINKER_PREFERENCE 30)
|
||||
set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
|
||||
set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED FALSE)
|
||||
|
||||
# Save compiler ABI information.
|
||||
set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
|
||||
set(CMAKE_CXX_COMPILER_ABI "")
|
||||
set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
|
||||
set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
|
||||
|
||||
if(CMAKE_CXX_SIZEOF_DATA_PTR)
|
||||
set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ABI)
|
||||
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
|
||||
set(CMAKE_LIBRARY_ARCHITECTURE "")
|
||||
endif()
|
||||
|
||||
set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
|
||||
if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
|
||||
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/x86_64-w64-mingw32;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/backward;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include;E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0/include-fixed;E:/qt/Tools/mingw1310_64/x86_64-w64-mingw32/include")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;mingw32;gcc_s;gcc;moldname;mingwex;kernel32;pthread;advapi32;shell32;user32;kernel32;iconv;mingw32;gcc_s;gcc;moldname;mingwex;kernel32")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "E:/qt/Tools/mingw1310_64/lib/gcc/x86_64-w64-mingw32/13.1.0;E:/qt/Tools/mingw1310_64/lib/gcc;E:/qt/Tools/mingw1310_64/x86_64-w64-mingw32/lib;E:/qt/Tools/mingw1310_64/lib")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
||||
set(CMAKE_CXX_COMPILER_CLANG_RESOURCE_DIR "")
|
@ -0,0 +1,6 @@
|
||||
set(CMAKE_RC_COMPILER "E:/qt/Tools/mingw1310_64/bin/windres.exe")
|
||||
set(CMAKE_RC_COMPILER_ARG1 "")
|
||||
set(CMAKE_RC_COMPILER_LOADED 1)
|
||||
set(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc;RC)
|
||||
set(CMAKE_RC_OUTPUT_EXTENSION .obj)
|
||||
set(CMAKE_RC_COMPILER_ENV_VAR "RC")
|
@ -0,0 +1,15 @@
|
||||
set(CMAKE_HOST_SYSTEM "Windows-10.0.19045")
|
||||
set(CMAKE_HOST_SYSTEM_NAME "Windows")
|
||||
set(CMAKE_HOST_SYSTEM_VERSION "10.0.19045")
|
||||
set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_SYSTEM "Windows-10.0.19045")
|
||||
set(CMAKE_SYSTEM_NAME "Windows")
|
||||
set(CMAKE_SYSTEM_VERSION "10.0.19045")
|
||||
set(CMAKE_SYSTEM_PROCESSOR "AMD64")
|
||||
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
|
||||
set(CMAKE_SYSTEM_LOADED 1)
|
BIN
build/Desktop_Qt_6_8_1_MinGW_64_bit-Release/FemaSoftware.exe
Normal file
BIN
build/Desktop_Qt_6_8_1_MinGW_64_bit-Release/FemaSoftware.exe
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,284 @@
|
||||
/********************************************************************************
|
||||
** Form generated from reading UI file 'alarmdialog.ui'
|
||||
**
|
||||
** Created by: Qt User Interface Compiler version 6.8.1
|
||||
**
|
||||
** WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
********************************************************************************/
|
||||
|
||||
#ifndef UI_ALARMDIALOG_H
|
||||
#define UI_ALARMDIALOG_H
|
||||
|
||||
#include <QtCore/QVariant>
|
||||
#include <QtQuickWidgets/QQuickWidget>
|
||||
#include <QtWidgets/QApplication>
|
||||
#include <QtWidgets/QHBoxLayout>
|
||||
#include <QtWidgets/QLabel>
|
||||
#include <QtWidgets/QPushButton>
|
||||
#include <QtWidgets/QSpacerItem>
|
||||
#include <QtWidgets/QVBoxLayout>
|
||||
#include <QtWidgets/QWidget>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
class Ui_alarmdialog
|
||||
{
|
||||
public:
|
||||
QVBoxLayout *verticalLayout;
|
||||
QHBoxLayout *horizontalLayout_7;
|
||||
QLabel *label_2;
|
||||
QLabel *nameHead;
|
||||
QSpacerItem *horizontalSpacer;
|
||||
QHBoxLayout *horizontalLayout_6;
|
||||
QVBoxLayout *verticalLayout_2;
|
||||
QLabel *dateStart;
|
||||
QLabel *dateEnd;
|
||||
QHBoxLayout *horizontalLayout;
|
||||
QLabel *name;
|
||||
QHBoxLayout *chartLayout;
|
||||
QHBoxLayout *horizontalLayout_2;
|
||||
QQuickWidget *map;
|
||||
QHBoxLayout *horizontalLayout_5;
|
||||
QSpacerItem *horizontalSpacer_2;
|
||||
QPushButton *cancelButton;
|
||||
QPushButton *statisticButton;
|
||||
|
||||
void setupUi(QWidget *alarmdialog)
|
||||
{
|
||||
if (alarmdialog->objectName().isEmpty())
|
||||
alarmdialog->setObjectName("alarmdialog");
|
||||
alarmdialog->resize(775, 850);
|
||||
alarmdialog->setMinimumSize(QSize(775, 850));
|
||||
alarmdialog->setMaximumSize(QSize(775, 850));
|
||||
alarmdialog->setStyleSheet(QString::fromUtf8("QWidget#alarmdialog{\n"
|
||||
"background: white;\n"
|
||||
"}"));
|
||||
verticalLayout = new QVBoxLayout(alarmdialog);
|
||||
verticalLayout->setSpacing(0);
|
||||
verticalLayout->setObjectName("verticalLayout");
|
||||
verticalLayout->setContentsMargins(0, 0, 0, 0);
|
||||
horizontalLayout_7 = new QHBoxLayout();
|
||||
horizontalLayout_7->setSpacing(20);
|
||||
horizontalLayout_7->setObjectName("horizontalLayout_7");
|
||||
horizontalLayout_7->setContentsMargins(25, -1, -1, 25);
|
||||
label_2 = new QLabel(alarmdialog);
|
||||
label_2->setObjectName("label_2");
|
||||
label_2->setMinimumSize(QSize(29, 32));
|
||||
label_2->setMaximumSize(QSize(29, 32));
|
||||
label_2->setPixmap(QPixmap(QString::fromUtf8(":/png/res/png/bell.png")));
|
||||
|
||||
horizontalLayout_7->addWidget(label_2);
|
||||
|
||||
nameHead = new QLabel(alarmdialog);
|
||||
nameHead->setObjectName("nameHead");
|
||||
QSizePolicy sizePolicy(QSizePolicy::Policy::Preferred, QSizePolicy::Policy::Preferred);
|
||||
sizePolicy.setHorizontalStretch(0);
|
||||
sizePolicy.setVerticalStretch(29);
|
||||
sizePolicy.setHeightForWidth(nameHead->sizePolicy().hasHeightForWidth());
|
||||
nameHead->setSizePolicy(sizePolicy);
|
||||
nameHead->setMinimumSize(QSize(0, 29));
|
||||
nameHead->setMaximumSize(QSize(16777215, 29));
|
||||
nameHead->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 24px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 29.05px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_7->addWidget(nameHead);
|
||||
|
||||
horizontalSpacer = new QSpacerItem(40, 29, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);
|
||||
|
||||
horizontalLayout_7->addItem(horizontalSpacer);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_7);
|
||||
|
||||
horizontalLayout_6 = new QHBoxLayout();
|
||||
horizontalLayout_6->setSpacing(0);
|
||||
horizontalLayout_6->setObjectName("horizontalLayout_6");
|
||||
horizontalLayout_6->setContentsMargins(0, -1, 0, 0);
|
||||
verticalLayout_2 = new QVBoxLayout();
|
||||
verticalLayout_2->setSpacing(0);
|
||||
verticalLayout_2->setObjectName("verticalLayout_2");
|
||||
verticalLayout_2->setContentsMargins(25, -1, 25, 15);
|
||||
dateStart = new QLabel(alarmdialog);
|
||||
dateStart->setObjectName("dateStart");
|
||||
dateStart->setMinimumSize(QSize(0, 27));
|
||||
dateStart->setMaximumSize(QSize(16777215, 27));
|
||||
dateStart->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
verticalLayout_2->addWidget(dateStart);
|
||||
|
||||
dateEnd = new QLabel(alarmdialog);
|
||||
dateEnd->setObjectName("dateEnd");
|
||||
dateEnd->setMaximumSize(QSize(16777215, 27));
|
||||
dateEnd->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
verticalLayout_2->addWidget(dateEnd);
|
||||
|
||||
|
||||
horizontalLayout_6->addLayout(verticalLayout_2);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_6);
|
||||
|
||||
horizontalLayout = new QHBoxLayout();
|
||||
horizontalLayout->setSpacing(0);
|
||||
horizontalLayout->setObjectName("horizontalLayout");
|
||||
horizontalLayout->setContentsMargins(25, -1, 25, 15);
|
||||
name = new QLabel(alarmdialog);
|
||||
name->setObjectName("name");
|
||||
name->setMinimumSize(QSize(0, 27));
|
||||
name->setMaximumSize(QSize(16777215, 27));
|
||||
name->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout->addWidget(name);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout);
|
||||
|
||||
chartLayout = new QHBoxLayout();
|
||||
chartLayout->setSpacing(0);
|
||||
chartLayout->setObjectName("chartLayout");
|
||||
chartLayout->setContentsMargins(25, -1, 25, -1);
|
||||
|
||||
verticalLayout->addLayout(chartLayout);
|
||||
|
||||
horizontalLayout_2 = new QHBoxLayout();
|
||||
horizontalLayout_2->setSpacing(0);
|
||||
horizontalLayout_2->setObjectName("horizontalLayout_2");
|
||||
horizontalLayout_2->setContentsMargins(25, -1, 25, -1);
|
||||
map = new QQuickWidget(alarmdialog);
|
||||
map->setObjectName("map");
|
||||
map->setMinimumSize(QSize(710, 320));
|
||||
map->setMaximumSize(QSize(710, 320));
|
||||
map->setResizeMode(QQuickWidget::ResizeMode::SizeRootObjectToView);
|
||||
|
||||
horizontalLayout_2->addWidget(map);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_2);
|
||||
|
||||
horizontalLayout_5 = new QHBoxLayout();
|
||||
horizontalLayout_5->setSpacing(10);
|
||||
horizontalLayout_5->setObjectName("horizontalLayout_5");
|
||||
horizontalLayout_5->setContentsMargins(25, -1, 25, -1);
|
||||
horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);
|
||||
|
||||
horizontalLayout_5->addItem(horizontalSpacer_2);
|
||||
|
||||
cancelButton = new QPushButton(alarmdialog);
|
||||
cancelButton->setObjectName("cancelButton");
|
||||
cancelButton->setMinimumSize(QSize(110, 41));
|
||||
cancelButton->setMaximumSize(QSize(110, 41));
|
||||
cancelButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
" border-width: 1px;\n"
|
||||
" color: #13385F;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 22px;\n"
|
||||
" font-weight: 500;\n"
|
||||
" line-height: 26.63px;\n"
|
||||
" text-align: center;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:hover {\n"
|
||||
" background-color: #e0f2f7;\n"
|
||||
" border-color: #1A4A73;\n"
|
||||
" color: #1A4A73;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:pressed {\n"
|
||||
" background-color: #102E47;\n"
|
||||
" border-color: #102E47;\n"
|
||||
" color: white; \n"
|
||||
"}"));
|
||||
|
||||
horizontalLayout_5->addWidget(cancelButton);
|
||||
|
||||
statisticButton = new QPushButton(alarmdialog);
|
||||
statisticButton->setObjectName("statisticButton");
|
||||
statisticButton->setMinimumSize(QSize(266, 41));
|
||||
statisticButton->setMaximumSize(QSize(266, 41));
|
||||
statisticButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
" border-width: 1px;\n"
|
||||
" background-color: #13385F;\n"
|
||||
" color: white;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 22px;\n"
|
||||
" font-weight: 500;\n"
|
||||
" line-height: 26.63px;\n"
|
||||
" text-align: center;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:hover {\n"
|
||||
" background-color: #1A4A73;\n"
|
||||
" border-color: #1A4A73;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:pressed {\n"
|
||||
" background-color: #102E47;\n"
|
||||
" border-color: #102E47;\n"
|
||||
"}"));
|
||||
|
||||
horizontalLayout_5->addWidget(statisticButton);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_5);
|
||||
|
||||
|
||||
retranslateUi(alarmdialog);
|
||||
|
||||
QMetaObject::connectSlotsByName(alarmdialog);
|
||||
} // setupUi
|
||||
|
||||
void retranslateUi(QWidget *alarmdialog)
|
||||
{
|
||||
alarmdialog->setWindowTitle(QCoreApplication::translate("alarmdialog", "Form", nullptr));
|
||||
label_2->setText(QString());
|
||||
nameHead->setText(QCoreApplication::translate("alarmdialog", "\320\235\320\260\320\267\320\262\320\260\320\275\320\270\320\265 \320\264\320\260\321\202\321\207\320\270\320\272\320\260", nullptr));
|
||||
dateStart->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
dateEnd->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
name->setText(QCoreApplication::translate("alarmdialog", "TextLabel", nullptr));
|
||||
cancelButton->setText(QCoreApplication::translate("alarmdialog", "\320\236\321\202\320\274\320\265\320\275\320\260", nullptr));
|
||||
statisticButton->setText(QCoreApplication::translate("alarmdialog", "\320\237\320\265\321\200\320\265\320\271\321\202\320\270 \320\272 \321\201\321\202\320\260\321\202\320\270\321\201\321\202\320\270\320\272\320\265", nullptr));
|
||||
} // retranslateUi
|
||||
|
||||
};
|
||||
|
||||
namespace Ui {
|
||||
class alarmdialog: public Ui_alarmdialog {};
|
||||
} // namespace Ui
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif // UI_ALARMDIALOG_H
|
@ -0,0 +1,201 @@
|
||||
/********************************************************************************
|
||||
** Form generated from reading UI file 'apiform.ui'
|
||||
**
|
||||
** Created by: Qt User Interface Compiler version 6.8.1
|
||||
**
|
||||
** WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
********************************************************************************/
|
||||
|
||||
#ifndef UI_APIFORM_H
|
||||
#define UI_APIFORM_H
|
||||
|
||||
#include <QtCore/QVariant>
|
||||
#include <QtWidgets/QApplication>
|
||||
#include <QtWidgets/QHBoxLayout>
|
||||
#include <QtWidgets/QLabel>
|
||||
#include <QtWidgets/QLineEdit>
|
||||
#include <QtWidgets/QPushButton>
|
||||
#include <QtWidgets/QSpacerItem>
|
||||
#include <QtWidgets/QVBoxLayout>
|
||||
#include <QtWidgets/QWidget>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
class Ui_ApiForm
|
||||
{
|
||||
public:
|
||||
QVBoxLayout *verticalLayout;
|
||||
QLabel *label_3;
|
||||
QHBoxLayout *horizontalLayout;
|
||||
QLabel *label;
|
||||
QLabel *label_2;
|
||||
QHBoxLayout *horizontalLayout_2;
|
||||
QLineEdit *adres;
|
||||
QLineEdit *port;
|
||||
QSpacerItem *verticalSpacer_2;
|
||||
QPushButton *loginButton;
|
||||
QSpacerItem *verticalSpacer;
|
||||
|
||||
void setupUi(QWidget *ApiForm)
|
||||
{
|
||||
if (ApiForm->objectName().isEmpty())
|
||||
ApiForm->setObjectName("ApiForm");
|
||||
ApiForm->resize(800, 400);
|
||||
ApiForm->setMinimumSize(QSize(800, 400));
|
||||
ApiForm->setMaximumSize(QSize(800, 400));
|
||||
ApiForm->setStyleSheet(QString::fromUtf8("#ApiForm{\n"
|
||||
" image: url(:/visual/res/svg/fema-wing.svg);\n"
|
||||
" background-color: #ffffff; \n"
|
||||
" image-position: bottom right;\n"
|
||||
" border: none;\n"
|
||||
"}"));
|
||||
verticalLayout = new QVBoxLayout(ApiForm);
|
||||
verticalLayout->setSpacing(0);
|
||||
verticalLayout->setObjectName("verticalLayout");
|
||||
verticalLayout->setContentsMargins(25, 25, 25, 0);
|
||||
label_3 = new QLabel(ApiForm);
|
||||
label_3->setObjectName("label_3");
|
||||
label_3->setMaximumSize(QSize(16777215, 30));
|
||||
label_3->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 20px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 36.31px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
verticalLayout->addWidget(label_3);
|
||||
|
||||
horizontalLayout = new QHBoxLayout();
|
||||
horizontalLayout->setSpacing(10);
|
||||
horizontalLayout->setObjectName("horizontalLayout");
|
||||
label = new QLabel(ApiForm);
|
||||
label->setObjectName("label");
|
||||
label->setMinimumSize(QSize(0, 40));
|
||||
label->setMaximumSize(QSize(16777215, 40));
|
||||
label->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 20px;\n"
|
||||
"font-weight: 500;\n"
|
||||
"line-height: 36.31px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout->addWidget(label);
|
||||
|
||||
label_2 = new QLabel(ApiForm);
|
||||
label_2->setObjectName("label_2");
|
||||
label_2->setMinimumSize(QSize(0, 40));
|
||||
label_2->setMaximumSize(QSize(16777215, 40));
|
||||
label_2->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 20px;\n"
|
||||
"font-weight: 500;\n"
|
||||
"line-height: 36.31px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout->addWidget(label_2);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout);
|
||||
|
||||
horizontalLayout_2 = new QHBoxLayout();
|
||||
horizontalLayout_2->setSpacing(10);
|
||||
horizontalLayout_2->setObjectName("horizontalLayout_2");
|
||||
adres = new QLineEdit(ApiForm);
|
||||
adres->setObjectName("adres");
|
||||
adres->setMinimumSize(QSize(0, 40));
|
||||
adres->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 20px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_2->addWidget(adres);
|
||||
|
||||
port = new QLineEdit(ApiForm);
|
||||
port->setObjectName("port");
|
||||
port->setMinimumSize(QSize(0, 40));
|
||||
port->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 20px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_2->addWidget(port);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_2);
|
||||
|
||||
verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Fixed);
|
||||
|
||||
verticalLayout->addItem(verticalSpacer_2);
|
||||
|
||||
loginButton = new QPushButton(ApiForm);
|
||||
loginButton->setObjectName("loginButton");
|
||||
loginButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
" border-width: 1px;\n"
|
||||
" background-color: #13385F;\n"
|
||||
" color: white;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 22px;\n"
|
||||
" font-weight: 500;\n"
|
||||
" line-height: 26.63px;\n"
|
||||
" text-align: center;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:hover {\n"
|
||||
" background-color: #1A4A73;\n"
|
||||
" border-color: #1A4A73;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:pressed {\n"
|
||||
" background-color: #102E47;\n"
|
||||
" border-color: #102E47;\n"
|
||||
"}"));
|
||||
|
||||
verticalLayout->addWidget(loginButton);
|
||||
|
||||
verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Expanding);
|
||||
|
||||
verticalLayout->addItem(verticalSpacer);
|
||||
|
||||
|
||||
retranslateUi(ApiForm);
|
||||
|
||||
QMetaObject::connectSlotsByName(ApiForm);
|
||||
} // setupUi
|
||||
|
||||
void retranslateUi(QWidget *ApiForm)
|
||||
{
|
||||
ApiForm->setWindowTitle(QCoreApplication::translate("ApiForm", "Form", nullptr));
|
||||
label_3->setText(QCoreApplication::translate("ApiForm", "\320\227\320\264\321\200\320\260\320\262\321\201\321\202\320\262\321\203\320\271\321\202\320\265! \320\222\320\262\320\265\320\264\320\270\321\202\320\265 \320\277\320\276\320\266\320\260\320\273\321\203\320\271\321\201\321\202\320\260 \320\260\320\264\321\200\320\265\321\201 \320\270 \320\277\320\276\321\200\321\202 \321\203\321\201\321\202\321\200\320\276\320\271\321\201\321\202\320\262\320\260", nullptr));
|
||||
label->setText(QCoreApplication::translate("ApiForm", "\320\220\320\264\321\200\320\265\321\201:", nullptr));
|
||||
label_2->setText(QCoreApplication::translate("ApiForm", "\320\237\320\276\321\200\321\202:", nullptr));
|
||||
loginButton->setText(QCoreApplication::translate("ApiForm", "\320\222\320\276\320\271\321\202\320\270 \320\262 \320\277\321\200\320\270\320\273\320\276\320\266\320\265\320\275\320\270\320\265", nullptr));
|
||||
} // retranslateUi
|
||||
|
||||
};
|
||||
|
||||
namespace Ui {
|
||||
class ApiForm: public Ui_ApiForm {};
|
||||
} // namespace Ui
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif // UI_APIFORM_H
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,792 @@
|
||||
/********************************************************************************
|
||||
** Form generated from reading UI file 'sensordialog.ui'
|
||||
**
|
||||
** Created by: Qt User Interface Compiler version 6.8.1
|
||||
**
|
||||
** WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||
********************************************************************************/
|
||||
|
||||
#ifndef UI_SENSORDIALOG_H
|
||||
#define UI_SENSORDIALOG_H
|
||||
|
||||
#include <QtCore/QVariant>
|
||||
#include <QtWidgets/QApplication>
|
||||
#include <QtWidgets/QComboBox>
|
||||
#include <QtWidgets/QDialog>
|
||||
#include <QtWidgets/QHBoxLayout>
|
||||
#include <QtWidgets/QLabel>
|
||||
#include <QtWidgets/QLineEdit>
|
||||
#include <QtWidgets/QPushButton>
|
||||
#include <QtWidgets/QSpacerItem>
|
||||
#include <QtWidgets/QTextEdit>
|
||||
#include <QtWidgets/QVBoxLayout>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
class Ui_SensorDialog
|
||||
{
|
||||
public:
|
||||
QVBoxLayout *verticalLayout;
|
||||
QHBoxLayout *horizontalLayout_18;
|
||||
QLabel *label_14;
|
||||
QLabel *nameHeader;
|
||||
QSpacerItem *horizontalSpacer_2;
|
||||
QHBoxLayout *horizontalLayout_17;
|
||||
QLabel *label;
|
||||
QLineEdit *name;
|
||||
QHBoxLayout *horizontalLayout_16;
|
||||
QLabel *label_2;
|
||||
QLineEdit *unitName;
|
||||
QHBoxLayout *horizontalLayout_15;
|
||||
QLabel *label_3;
|
||||
QComboBox *isBooled;
|
||||
QHBoxLayout *horizontalLayout_14;
|
||||
QLabel *label_4;
|
||||
QComboBox *isAlarm;
|
||||
QHBoxLayout *horizontalLayout_13;
|
||||
QLabel *label_5;
|
||||
QLineEdit *alarmLow;
|
||||
QHBoxLayout *horizontalLayout_12;
|
||||
QLabel *label_6;
|
||||
QLineEdit *alarmUp;
|
||||
QHBoxLayout *horizontalLayout_11;
|
||||
QLabel *label_7;
|
||||
QLineEdit *alarmCooldown;
|
||||
QHBoxLayout *horizontalLayout_10;
|
||||
QLabel *label_8;
|
||||
QHBoxLayout *horizontalLayout_9;
|
||||
QTextEdit *logError;
|
||||
QHBoxLayout *horizontalLayout_8;
|
||||
QLabel *label_9;
|
||||
QHBoxLayout *horizontalLayout_7;
|
||||
QTextEdit *logManual;
|
||||
QHBoxLayout *horizontalLayout_6;
|
||||
QLabel *label_10;
|
||||
QLineEdit *alarmSleepage;
|
||||
QHBoxLayout *horizontalLayout_5;
|
||||
QLabel *label_11;
|
||||
QHBoxLayout *horizontalLayout_4;
|
||||
QTextEdit *logHugeError;
|
||||
QHBoxLayout *horizontalLayout_3;
|
||||
QLabel *label_12;
|
||||
QComboBox *isVisible;
|
||||
QHBoxLayout *horizontalLayout_2;
|
||||
QSpacerItem *horizontalSpacer;
|
||||
QPushButton *cancelButton;
|
||||
QPushButton *saveButton;
|
||||
|
||||
void setupUi(QDialog *SensorDialog)
|
||||
{
|
||||
if (SensorDialog->objectName().isEmpty())
|
||||
SensorDialog->setObjectName("SensorDialog");
|
||||
SensorDialog->resize(759, 947);
|
||||
QSizePolicy sizePolicy(QSizePolicy::Policy::Fixed, QSizePolicy::Policy::Fixed);
|
||||
sizePolicy.setHorizontalStretch(0);
|
||||
sizePolicy.setVerticalStretch(0);
|
||||
sizePolicy.setHeightForWidth(SensorDialog->sizePolicy().hasHeightForWidth());
|
||||
SensorDialog->setSizePolicy(sizePolicy);
|
||||
SensorDialog->setStyleSheet(QString::fromUtf8("background-color: white;"));
|
||||
verticalLayout = new QVBoxLayout(SensorDialog);
|
||||
verticalLayout->setSpacing(0);
|
||||
verticalLayout->setObjectName("verticalLayout");
|
||||
verticalLayout->setContentsMargins(25, 0, 25, 0);
|
||||
horizontalLayout_18 = new QHBoxLayout();
|
||||
horizontalLayout_18->setSpacing(20);
|
||||
horizontalLayout_18->setObjectName("horizontalLayout_18");
|
||||
horizontalLayout_18->setContentsMargins(-1, 25, -1, 25);
|
||||
label_14 = new QLabel(SensorDialog);
|
||||
label_14->setObjectName("label_14");
|
||||
sizePolicy.setHeightForWidth(label_14->sizePolicy().hasHeightForWidth());
|
||||
label_14->setSizePolicy(sizePolicy);
|
||||
label_14->setMinimumSize(QSize(32, 32));
|
||||
label_14->setMaximumSize(QSize(32, 32));
|
||||
label_14->setStyleSheet(QString::fromUtf8(""));
|
||||
label_14->setPixmap(QPixmap(QString::fromUtf8(":/visual/res/svg/settings.svg")));
|
||||
|
||||
horizontalLayout_18->addWidget(label_14);
|
||||
|
||||
nameHeader = new QLabel(SensorDialog);
|
||||
nameHeader->setObjectName("nameHeader");
|
||||
nameHeader->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_18->addWidget(nameHeader);
|
||||
|
||||
horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);
|
||||
|
||||
horizontalLayout_18->addItem(horizontalSpacer_2);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_18);
|
||||
|
||||
horizontalLayout_17 = new QHBoxLayout();
|
||||
horizontalLayout_17->setSpacing(15);
|
||||
horizontalLayout_17->setObjectName("horizontalLayout_17");
|
||||
horizontalLayout_17->setContentsMargins(-1, -1, -1, 10);
|
||||
label = new QLabel(SensorDialog);
|
||||
label->setObjectName("label");
|
||||
label->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_17->addWidget(label);
|
||||
|
||||
name = new QLineEdit(SensorDialog);
|
||||
name->setObjectName("name");
|
||||
name->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_17->addWidget(name);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_17);
|
||||
|
||||
horizontalLayout_16 = new QHBoxLayout();
|
||||
horizontalLayout_16->setSpacing(15);
|
||||
horizontalLayout_16->setObjectName("horizontalLayout_16");
|
||||
horizontalLayout_16->setContentsMargins(-1, -1, -1, 10);
|
||||
label_2 = new QLabel(SensorDialog);
|
||||
label_2->setObjectName("label_2");
|
||||
label_2->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_16->addWidget(label_2);
|
||||
|
||||
unitName = new QLineEdit(SensorDialog);
|
||||
unitName->setObjectName("unitName");
|
||||
unitName->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_16->addWidget(unitName);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_16);
|
||||
|
||||
horizontalLayout_15 = new QHBoxLayout();
|
||||
horizontalLayout_15->setSpacing(15);
|
||||
horizontalLayout_15->setObjectName("horizontalLayout_15");
|
||||
horizontalLayout_15->setContentsMargins(-1, -1, -1, 10);
|
||||
label_3 = new QLabel(SensorDialog);
|
||||
label_3->setObjectName("label_3");
|
||||
QSizePolicy sizePolicy1(QSizePolicy::Policy::Maximum, QSizePolicy::Policy::Preferred);
|
||||
sizePolicy1.setHorizontalStretch(0);
|
||||
sizePolicy1.setVerticalStretch(0);
|
||||
sizePolicy1.setHeightForWidth(label_3->sizePolicy().hasHeightForWidth());
|
||||
label_3->setSizePolicy(sizePolicy1);
|
||||
label_3->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_15->addWidget(label_3);
|
||||
|
||||
isBooled = new QComboBox(SensorDialog);
|
||||
isBooled->setObjectName("isBooled");
|
||||
isBooled->setStyleSheet(QString::fromUtf8("QComboBox::drop-down {\n"
|
||||
" border: 0px;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox::down-arrow {\n"
|
||||
" image: url(:/visual/res/svg/chevron-down.png);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox {\n"
|
||||
" border: 2px solid #DCD174;\n"
|
||||
" background: transparent;\n"
|
||||
" color: #13385F;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 20px;\n"
|
||||
" font-weight: 400;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView {\n"
|
||||
" border: 2px solid #DCD174; \n"
|
||||
" background: white; \n"
|
||||
" selection-color: red;\n"
|
||||
" selection-background-color: blue;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView::item {\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 50px;\n"
|
||||
" font-weight: 400;\n"
|
||||
" text-align: left;\n"
|
||||
" padding: 5px;\n"
|
||||
" color: #13385F;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView::item:hover {\n"
|
||||
" background-color: #13385F; \n"
|
||||
" selection-color: white;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_15->addWidget(isBooled);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_15);
|
||||
|
||||
horizontalLayout_14 = new QHBoxLayout();
|
||||
horizontalLayout_14->setSpacing(15);
|
||||
horizontalLayout_14->setObjectName("horizontalLayout_14");
|
||||
horizontalLayout_14->setContentsMargins(-1, -1, -1, 10);
|
||||
label_4 = new QLabel(SensorDialog);
|
||||
label_4->setObjectName("label_4");
|
||||
sizePolicy1.setHeightForWidth(label_4->sizePolicy().hasHeightForWidth());
|
||||
label_4->setSizePolicy(sizePolicy1);
|
||||
label_4->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_14->addWidget(label_4);
|
||||
|
||||
isAlarm = new QComboBox(SensorDialog);
|
||||
isAlarm->setObjectName("isAlarm");
|
||||
isAlarm->setStyleSheet(QString::fromUtf8("QComboBox::drop-down {\n"
|
||||
" border: 0px;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox::down-arrow {\n"
|
||||
" image: url(:/visual/res/svg/chevron-down.png);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox {\n"
|
||||
" border: 2px solid #DCD174;\n"
|
||||
" background: transparent;\n"
|
||||
" color: #13385F;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 20px;\n"
|
||||
" font-weight: 400;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView {\n"
|
||||
" border: 2px solid #DCD174; \n"
|
||||
" background: white; \n"
|
||||
" selection-color: red;\n"
|
||||
" selection-background-color: blue;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView::item {\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 50px;\n"
|
||||
" font-weight: 400;\n"
|
||||
" text-align: left;\n"
|
||||
" padding: 5px;\n"
|
||||
" color: #13385F;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView::item:hover {\n"
|
||||
" background-color: #13385F; \n"
|
||||
" selection-color: white;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_14->addWidget(isAlarm);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_14);
|
||||
|
||||
horizontalLayout_13 = new QHBoxLayout();
|
||||
horizontalLayout_13->setSpacing(15);
|
||||
horizontalLayout_13->setObjectName("horizontalLayout_13");
|
||||
horizontalLayout_13->setContentsMargins(-1, -1, -1, 10);
|
||||
label_5 = new QLabel(SensorDialog);
|
||||
label_5->setObjectName("label_5");
|
||||
sizePolicy1.setHeightForWidth(label_5->sizePolicy().hasHeightForWidth());
|
||||
label_5->setSizePolicy(sizePolicy1);
|
||||
label_5->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_13->addWidget(label_5);
|
||||
|
||||
alarmLow = new QLineEdit(SensorDialog);
|
||||
alarmLow->setObjectName("alarmLow");
|
||||
alarmLow->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_13->addWidget(alarmLow);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_13);
|
||||
|
||||
horizontalLayout_12 = new QHBoxLayout();
|
||||
horizontalLayout_12->setSpacing(15);
|
||||
horizontalLayout_12->setObjectName("horizontalLayout_12");
|
||||
horizontalLayout_12->setContentsMargins(-1, -1, -1, 10);
|
||||
label_6 = new QLabel(SensorDialog);
|
||||
label_6->setObjectName("label_6");
|
||||
sizePolicy1.setHeightForWidth(label_6->sizePolicy().hasHeightForWidth());
|
||||
label_6->setSizePolicy(sizePolicy1);
|
||||
label_6->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_12->addWidget(label_6);
|
||||
|
||||
alarmUp = new QLineEdit(SensorDialog);
|
||||
alarmUp->setObjectName("alarmUp");
|
||||
alarmUp->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_12->addWidget(alarmUp);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_12);
|
||||
|
||||
horizontalLayout_11 = new QHBoxLayout();
|
||||
horizontalLayout_11->setSpacing(15);
|
||||
horizontalLayout_11->setObjectName("horizontalLayout_11");
|
||||
horizontalLayout_11->setContentsMargins(-1, -1, -1, 10);
|
||||
label_7 = new QLabel(SensorDialog);
|
||||
label_7->setObjectName("label_7");
|
||||
label_7->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_11->addWidget(label_7);
|
||||
|
||||
alarmCooldown = new QLineEdit(SensorDialog);
|
||||
alarmCooldown->setObjectName("alarmCooldown");
|
||||
alarmCooldown->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_11->addWidget(alarmCooldown);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_11);
|
||||
|
||||
horizontalLayout_10 = new QHBoxLayout();
|
||||
horizontalLayout_10->setObjectName("horizontalLayout_10");
|
||||
horizontalLayout_10->setContentsMargins(-1, -1, -1, 5);
|
||||
label_8 = new QLabel(SensorDialog);
|
||||
label_8->setObjectName("label_8");
|
||||
label_8->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_10->addWidget(label_8);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_10);
|
||||
|
||||
horizontalLayout_9 = new QHBoxLayout();
|
||||
horizontalLayout_9->setObjectName("horizontalLayout_9");
|
||||
horizontalLayout_9->setContentsMargins(-1, -1, -1, 10);
|
||||
logError = new QTextEdit(SensorDialog);
|
||||
logError->setObjectName("logError");
|
||||
QSizePolicy sizePolicy2(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Fixed);
|
||||
sizePolicy2.setHorizontalStretch(0);
|
||||
sizePolicy2.setVerticalStretch(0);
|
||||
sizePolicy2.setHeightForWidth(logError->sizePolicy().hasHeightForWidth());
|
||||
logError->setSizePolicy(sizePolicy2);
|
||||
logError->setMinimumSize(QSize(707, 80));
|
||||
logError->setMaximumSize(QSize(16777215, 80));
|
||||
logError->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_9->addWidget(logError);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_9);
|
||||
|
||||
horizontalLayout_8 = new QHBoxLayout();
|
||||
horizontalLayout_8->setObjectName("horizontalLayout_8");
|
||||
horizontalLayout_8->setContentsMargins(-1, -1, -1, 5);
|
||||
label_9 = new QLabel(SensorDialog);
|
||||
label_9->setObjectName("label_9");
|
||||
label_9->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_8->addWidget(label_9);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_8);
|
||||
|
||||
horizontalLayout_7 = new QHBoxLayout();
|
||||
horizontalLayout_7->setObjectName("horizontalLayout_7");
|
||||
horizontalLayout_7->setContentsMargins(-1, -1, -1, 10);
|
||||
logManual = new QTextEdit(SensorDialog);
|
||||
logManual->setObjectName("logManual");
|
||||
sizePolicy2.setHeightForWidth(logManual->sizePolicy().hasHeightForWidth());
|
||||
logManual->setSizePolicy(sizePolicy2);
|
||||
logManual->setMinimumSize(QSize(707, 80));
|
||||
logManual->setMaximumSize(QSize(16777215, 80));
|
||||
logManual->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_7->addWidget(logManual);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_7);
|
||||
|
||||
horizontalLayout_6 = new QHBoxLayout();
|
||||
horizontalLayout_6->setSpacing(15);
|
||||
horizontalLayout_6->setObjectName("horizontalLayout_6");
|
||||
horizontalLayout_6->setContentsMargins(-1, -1, -1, 10);
|
||||
label_10 = new QLabel(SensorDialog);
|
||||
label_10->setObjectName("label_10");
|
||||
label_10->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_6->addWidget(label_10);
|
||||
|
||||
alarmSleepage = new QLineEdit(SensorDialog);
|
||||
alarmSleepage->setObjectName("alarmSleepage");
|
||||
alarmSleepage->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_6->addWidget(alarmSleepage);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_6);
|
||||
|
||||
horizontalLayout_5 = new QHBoxLayout();
|
||||
horizontalLayout_5->setObjectName("horizontalLayout_5");
|
||||
horizontalLayout_5->setContentsMargins(-1, -1, -1, 5);
|
||||
label_11 = new QLabel(SensorDialog);
|
||||
label_11->setObjectName("label_11");
|
||||
label_11->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_5->addWidget(label_11);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_5);
|
||||
|
||||
horizontalLayout_4 = new QHBoxLayout();
|
||||
horizontalLayout_4->setObjectName("horizontalLayout_4");
|
||||
horizontalLayout_4->setContentsMargins(-1, -1, -1, 10);
|
||||
logHugeError = new QTextEdit(SensorDialog);
|
||||
logHugeError->setObjectName("logHugeError");
|
||||
sizePolicy2.setHeightForWidth(logHugeError->sizePolicy().hasHeightForWidth());
|
||||
logHugeError->setSizePolicy(sizePolicy2);
|
||||
logHugeError->setMinimumSize(QSize(707, 80));
|
||||
logHugeError->setMaximumSize(QSize(16777215, 80));
|
||||
logHugeError->setStyleSheet(QString::fromUtf8("border: 2px solid #DCD174;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 26px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 31.47px;\n"
|
||||
"text-align: left;\n"
|
||||
"background: #00000000;\n"
|
||||
"color: #13385F;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_4->addWidget(logHugeError);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_4);
|
||||
|
||||
horizontalLayout_3 = new QHBoxLayout();
|
||||
horizontalLayout_3->setSpacing(15);
|
||||
horizontalLayout_3->setObjectName("horizontalLayout_3");
|
||||
horizontalLayout_3->setContentsMargins(-1, -1, -1, 25);
|
||||
label_12 = new QLabel(SensorDialog);
|
||||
label_12->setObjectName("label_12");
|
||||
sizePolicy1.setHeightForWidth(label_12->sizePolicy().hasHeightForWidth());
|
||||
label_12->setSizePolicy(sizePolicy1);
|
||||
label_12->setStyleSheet(QString::fromUtf8("background: transparent;\n"
|
||||
"font-family: Inter;\n"
|
||||
"font-size: 22px;\n"
|
||||
"font-weight: 400;\n"
|
||||
"line-height: 26.63px;\n"
|
||||
"text-align: left;\n"
|
||||
"color: #FF453A;\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_3->addWidget(label_12);
|
||||
|
||||
isVisible = new QComboBox(SensorDialog);
|
||||
isVisible->setObjectName("isVisible");
|
||||
isVisible->setStyleSheet(QString::fromUtf8("QComboBox::drop-down {\n"
|
||||
" border: 0px;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox::down-arrow {\n"
|
||||
" image: url(:/visual/res/svg/chevron-down.png);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox {\n"
|
||||
" border: 2px solid #DCD174;\n"
|
||||
" background: transparent;\n"
|
||||
" color: #13385F;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 20px;\n"
|
||||
" font-weight: 400;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView {\n"
|
||||
" border: 2px solid #DCD174; \n"
|
||||
" background: white; \n"
|
||||
" selection-color: red;\n"
|
||||
" selection-background-color: blue;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView::item {\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 50px;\n"
|
||||
" font-weight: 400;\n"
|
||||
" text-align: left;\n"
|
||||
" padding: 5px;\n"
|
||||
" color: #13385F;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QComboBox QAbstractItemView::item:hover {\n"
|
||||
" background-color: #13385F; \n"
|
||||
" selection-color: white;\n"
|
||||
" outline: 0px;;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
""));
|
||||
|
||||
horizontalLayout_3->addWidget(isVisible);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_3);
|
||||
|
||||
horizontalLayout_2 = new QHBoxLayout();
|
||||
horizontalLayout_2->setSpacing(15);
|
||||
horizontalLayout_2->setObjectName("horizontalLayout_2");
|
||||
horizontalLayout_2->setContentsMargins(-1, -1, -1, 25);
|
||||
horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);
|
||||
|
||||
horizontalLayout_2->addItem(horizontalSpacer);
|
||||
|
||||
cancelButton = new QPushButton(SensorDialog);
|
||||
cancelButton->setObjectName("cancelButton");
|
||||
sizePolicy.setHeightForWidth(cancelButton->sizePolicy().hasHeightForWidth());
|
||||
cancelButton->setSizePolicy(sizePolicy);
|
||||
cancelButton->setMinimumSize(QSize(110, 41));
|
||||
cancelButton->setMaximumSize(QSize(110, 41));
|
||||
cancelButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
" border-width: 1px;\n"
|
||||
" color: #13385F;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 22px;\n"
|
||||
" font-weight: 500;\n"
|
||||
" line-height: 26.63px;\n"
|
||||
" text-align: center;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:hover {\n"
|
||||
" background-color: #e0f2f7;\n"
|
||||
" border-color: #1A4A73;\n"
|
||||
" color: #1A4A73;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:pressed {\n"
|
||||
" background-color: #102E47;\n"
|
||||
" border-color: #102E47;\n"
|
||||
" color: white; \n"
|
||||
"}"));
|
||||
|
||||
horizontalLayout_2->addWidget(cancelButton);
|
||||
|
||||
saveButton = new QPushButton(SensorDialog);
|
||||
saveButton->setObjectName("saveButton");
|
||||
sizePolicy.setHeightForWidth(saveButton->sizePolicy().hasHeightForWidth());
|
||||
saveButton->setSizePolicy(sizePolicy);
|
||||
saveButton->setMinimumSize(QSize(143, 41));
|
||||
saveButton->setMaximumSize(QSize(143, 41));
|
||||
saveButton->setStyleSheet(QString::fromUtf8("QPushButton {\n"
|
||||
" border-style: outset;\n"
|
||||
" border-radius: 5px;\n"
|
||||
" border-color: #13385F;\n"
|
||||
" border-width: 1px;\n"
|
||||
" background-color: #13385F;\n"
|
||||
" color: white;\n"
|
||||
" font-family: Inter;\n"
|
||||
" font-size: 22px;\n"
|
||||
" font-weight: 500;\n"
|
||||
" line-height: 26.63px;\n"
|
||||
" text-align: center;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:hover {\n"
|
||||
" background-color: #1A4A73;\n"
|
||||
" border-color: #1A4A73;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QPushButton:pressed {\n"
|
||||
" background-color: #102E47;\n"
|
||||
" border-color: #102E47;\n"
|
||||
"}"));
|
||||
|
||||
horizontalLayout_2->addWidget(saveButton);
|
||||
|
||||
|
||||
verticalLayout->addLayout(horizontalLayout_2);
|
||||
|
||||
|
||||
retranslateUi(SensorDialog);
|
||||
|
||||
QMetaObject::connectSlotsByName(SensorDialog);
|
||||
} // setupUi
|
||||
|
||||
void retranslateUi(QDialog *SensorDialog)
|
||||
{
|
||||
SensorDialog->setWindowTitle(QCoreApplication::translate("SensorDialog", "Dialog", nullptr));
|
||||
label_14->setText(QString());
|
||||
nameHeader->setText(QCoreApplication::translate("SensorDialog", "TextLabel", nullptr));
|
||||
label->setText(QCoreApplication::translate("SensorDialog", "\320\235\320\260\320\270\320\274\320\265\320\275\320\276\320\262\320\260\320\275\320\270\320\265", nullptr));
|
||||
label_2->setText(QCoreApplication::translate("SensorDialog", "\320\225\320\264\320\270\320\275\320\270\321\206\320\260 \320\270\320\267\320\274\320\265\321\200\320\265\320\275\320\270\321\217", nullptr));
|
||||
label_3->setText(QCoreApplication::translate("SensorDialog", "\320\236\321\202\320\276\320\261\321\200\320\260\320\266\320\260\321\202\321\214 \321\202\320\276\320\273\321\214\320\272\320\276 \320\224\320\260/\320\235\320\265\321\202 \320\262\320\274\320\265\321\201\321\202\320\276 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\320\271 \320\264\320\260\321\202\321\207\320\270\320\272\320\260", nullptr));
|
||||
label_4->setText(QCoreApplication::translate("SensorDialog", "\320\230\320\274\320\265\320\265\321\202 \320\273\320\270 \320\277\320\276\321\200\320\276\320\263\320\276\320\262\321\213\320\265 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217", nullptr));
|
||||
label_5->setText(QCoreApplication::translate("SensorDialog", "\320\237\320\276\321\200\320\276\320\263\320\276\320\262\320\276\320\265 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\320\265 (\320\274\320\270\320\275\320\270\320\274\321\203\320\274)", nullptr));
|
||||
label_6->setText(QCoreApplication::translate("SensorDialog", "\320\237\320\276\321\200\320\276\320\263\320\276\320\262\320\276\320\265 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\320\265 (\320\274\320\260\320\272\321\201\320\270\320\274\321\203\320\274)", nullptr));
|
||||
label_7->setText(QCoreApplication::translate("SensorDialog", "\320\224\320\273\320\270\321\202\320\265\320\273\321\214\320\275\320\276\321\201\321\202\321\214, \321\201\320\265\320\272\321\203\320\275\320\264", nullptr));
|
||||
label_8->setText(QCoreApplication::translate("SensorDialog", "\320\233\320\276\320\263 \320\276\321\210\320\270\320\261\320\272\320\270", nullptr));
|
||||
label_9->setText(QCoreApplication::translate("SensorDialog", "\320\233\320\276\320\263 \320\270\320\275\321\201\321\202\321\200\321\203\320\272\321\206\320\270\320\270", nullptr));
|
||||
label_10->setText(QCoreApplication::translate("SensorDialog", "\320\222\321\200\320\265\320\274\321\217 \320\277\320\276\320\262\321\202\320\276\321\200\320\260, \321\201\320\265\320\272\321\203\320\275\320\264", nullptr));
|
||||
label_11->setText(QCoreApplication::translate("SensorDialog", "\320\233\320\276\320\263 \320\277\320\276\320\262\321\202\320\276\321\200\321\217\321\216\321\211\320\265\320\271\321\201\321\217 \320\276\321\210\320\270\320\261\320\272\320\270", nullptr));
|
||||
label_12->setText(QCoreApplication::translate("SensorDialog", "\320\241\320\272\321\200\321\213\321\202\321\214 \320\264\320\260\321\202\321\207\320\270\320\272?", nullptr));
|
||||
cancelButton->setText(QCoreApplication::translate("SensorDialog", "\320\236\321\202\320\274\320\265\320\275\320\260", nullptr));
|
||||
saveButton->setText(QCoreApplication::translate("SensorDialog", "\320\241\320\276\321\205\321\200\320\260\320\275\320\270\321\202\321\214", nullptr));
|
||||
} // retranslateUi
|
||||
|
||||
};
|
||||
|
||||
namespace Ui {
|
||||
class SensorDialog: public Ui_SensorDialog {};
|
||||
} // namespace Ui
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif // UI_SENSORDIALOG_H
|
@ -0,0 +1,19 @@
|
||||
// This file is autogenerated. Changes will be overwritten.
|
||||
#include "EWIEGA46WW/moc_alarmdialog.cpp"
|
||||
#include "EWIEGA46WW/moc_alarmsservice.cpp"
|
||||
#include "EWIEGA46WW/moc_alarmwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_apiform.cpp"
|
||||
#include "EWIEGA46WW/moc_httpclient.cpp"
|
||||
#include "EWIEGA46WW/moc_incedentwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_journalservice.cpp"
|
||||
#include "EWIEGA46WW/moc_logwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_mainwindow.cpp"
|
||||
#include "EWIEGA46WW/moc_paginationbar.cpp"
|
||||
#include "EWIEGA46WW/moc_plotservice.cpp"
|
||||
#include "EWIEGA46WW/moc_qcustomplot.cpp"
|
||||
#include "EWIEGA46WW/moc_savesensorservice.cpp"
|
||||
#include "EWIEGA46WW/moc_sensordialog.cpp"
|
||||
#include "EWIEGA46WW/moc_sensorlogervice.cpp"
|
||||
#include "EWIEGA46WW/moc_sensorservice.cpp"
|
||||
#include "EWIEGA46WW/moc_sensorwidget.cpp"
|
||||
#include "EWIEGA46WW/moc_serverwidget.cpp"
|
@ -4,18 +4,23 @@
|
||||
#include <utility>
|
||||
|
||||
FlowLayout::FlowLayout(QWidget *parent, int margin, int hSpacing, int vSpacing)
|
||||
: QLayout(parent), m_hSpacing(hSpacing), m_vSpacing(vSpacing) {
|
||||
: QLayout(parent)
|
||||
, m_hSpacing(hSpacing)
|
||||
, m_vSpacing(vSpacing)
|
||||
{
|
||||
setContentsMargins(margin, margin, margin, margin);
|
||||
}
|
||||
|
||||
FlowLayout::~FlowLayout() {
|
||||
FlowLayout::~FlowLayout()
|
||||
{
|
||||
QLayoutItem *item;
|
||||
while ((item = takeAt(0))) {
|
||||
delete item;
|
||||
}
|
||||
}
|
||||
|
||||
void FlowLayout::clear() {
|
||||
void FlowLayout::clear()
|
||||
{
|
||||
while (QLayoutItem *item = takeAt(0)) {
|
||||
if (item->widget()) {
|
||||
item->widget()->hide();
|
||||
@ -24,44 +29,54 @@ void FlowLayout::clear() {
|
||||
}
|
||||
}
|
||||
|
||||
void FlowLayout::addItem(QLayoutItem *item) {
|
||||
void FlowLayout::addItem(QLayoutItem *item)
|
||||
{
|
||||
m_items.append(item);
|
||||
}
|
||||
|
||||
int FlowLayout::count() const {
|
||||
int FlowLayout::count() const
|
||||
{
|
||||
return m_items.size();
|
||||
}
|
||||
|
||||
QLayoutItem *FlowLayout::itemAt(int index) const {
|
||||
QLayoutItem *FlowLayout::itemAt(int index) const
|
||||
{
|
||||
return m_items.value(index);
|
||||
}
|
||||
|
||||
QLayoutItem *FlowLayout::takeAt(int index) {
|
||||
QLayoutItem *FlowLayout::takeAt(int index)
|
||||
{
|
||||
return (index >= 0 && index < m_items.size()) ? m_items.takeAt(index) : nullptr;
|
||||
}
|
||||
|
||||
Qt::Orientations FlowLayout::expandingDirections() const {
|
||||
Qt::Orientations FlowLayout::expandingDirections() const
|
||||
{
|
||||
return Qt::Orientation(0);
|
||||
}
|
||||
|
||||
bool FlowLayout::hasHeightForWidth() const {
|
||||
bool FlowLayout::hasHeightForWidth() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
int FlowLayout::heightForWidth(int width) const {
|
||||
int FlowLayout::heightForWidth(int width) const
|
||||
{
|
||||
return doLayout(QRect(0, 0, width, 0), true);
|
||||
}
|
||||
|
||||
void FlowLayout::setGeometry(const QRect &rect) {
|
||||
void FlowLayout::setGeometry(const QRect &rect)
|
||||
{
|
||||
QLayout::setGeometry(rect);
|
||||
doLayout(rect, false);
|
||||
}
|
||||
|
||||
QSize FlowLayout::sizeHint() const {
|
||||
QSize FlowLayout::sizeHint() const
|
||||
{
|
||||
return minimumSize();
|
||||
}
|
||||
|
||||
QSize FlowLayout::minimumSize() const {
|
||||
QSize FlowLayout::minimumSize() const
|
||||
{
|
||||
QSize size;
|
||||
for (const QLayoutItem *item : std::as_const(m_items)) {
|
||||
size = size.expandedTo(item->minimumSize());
|
||||
@ -71,7 +86,8 @@ QSize FlowLayout::minimumSize() const {
|
||||
return size;
|
||||
}
|
||||
|
||||
int FlowLayout::doLayout(const QRect &rect, bool testOnly) const {
|
||||
int FlowLayout::doLayout(const QRect &rect, bool testOnly) const
|
||||
{
|
||||
int x = rect.x();
|
||||
int y = rect.y();
|
||||
int lineHeight = 0;
|
||||
@ -98,20 +114,25 @@ int FlowLayout::doLayout(const QRect &rect, bool testOnly) const {
|
||||
return y + lineHeight - rect.y();
|
||||
}
|
||||
|
||||
int FlowLayout::horizontalSpacing() const {
|
||||
int FlowLayout::horizontalSpacing() const
|
||||
{
|
||||
return (m_hSpacing >= 0) ? m_hSpacing : smartSpacing(QStyle::PM_LayoutHorizontalSpacing);
|
||||
}
|
||||
|
||||
int FlowLayout::verticalSpacing() const {
|
||||
int FlowLayout::verticalSpacing() const
|
||||
{
|
||||
return (m_vSpacing >= 0) ? m_vSpacing : smartSpacing(QStyle::PM_LayoutVerticalSpacing);
|
||||
}
|
||||
|
||||
int FlowLayout::smartSpacing(QStyle::PixelMetric pm) const {
|
||||
int FlowLayout::smartSpacing(QStyle::PixelMetric pm) const
|
||||
{
|
||||
QObject *parent = this->parent();
|
||||
if (!parent) {
|
||||
return -1;
|
||||
} else if (parent->isWidgetType()) {
|
||||
return static_cast<QWidget *>(parent)->style()->pixelMetric(pm, nullptr, static_cast<QWidget *>(parent));
|
||||
return static_cast<QWidget *>(parent)->style()->pixelMetric(pm,
|
||||
nullptr,
|
||||
static_cast<QWidget *>(parent));
|
||||
} else {
|
||||
return static_cast<QLayout *>(parent)->spacing();
|
||||
}
|
||||
|
12
flowlayout.h
12
flowlayout.h
@ -2,13 +2,17 @@
|
||||
#define FLOWLAYOUT_H
|
||||
|
||||
#include <QLayout>
|
||||
#include <QStyle>
|
||||
#include <QRect>
|
||||
#include <QList>
|
||||
#include <QRect>
|
||||
#include <QStyle>
|
||||
|
||||
class FlowLayout : public QLayout {
|
||||
class FlowLayout : public QLayout
|
||||
{
|
||||
public:
|
||||
explicit FlowLayout(QWidget *parent = nullptr, int margin = 0, int hSpacing = -1, int vSpacing = -1);
|
||||
explicit FlowLayout(QWidget *parent = nullptr,
|
||||
int margin = 0,
|
||||
int hSpacing = -1,
|
||||
int vSpacing = -1);
|
||||
~FlowLayout() override;
|
||||
|
||||
void clear();
|
||||
|
@ -1,19 +1,19 @@
|
||||
#ifndef GETSENSORS_P_H
|
||||
#define GETSENSORS_P_H
|
||||
#include <QString>
|
||||
#include <QByteArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QByteArray>
|
||||
#include <QString>
|
||||
|
||||
class GetSensorsP {
|
||||
class GetSensorsP
|
||||
{
|
||||
public:
|
||||
GetSensorsP() = default;
|
||||
|
||||
void setGroup(const QString& group) {
|
||||
this->group = group;
|
||||
}
|
||||
void setGroup(const QString &group) { this->group = group; }
|
||||
|
||||
QByteArray createRequestJson() const {
|
||||
QByteArray createRequestJson() const
|
||||
{
|
||||
QJsonObject obj;
|
||||
obj["group"] = group;
|
||||
|
||||
|
@ -1,19 +1,20 @@
|
||||
#ifndef GETSENSORS_R_H
|
||||
#define GETSENSORS_R_H
|
||||
|
||||
#include <QString>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QList>
|
||||
#include <QString>
|
||||
|
||||
class Sensor {
|
||||
class Sensor
|
||||
{
|
||||
public:
|
||||
int alarmCooldown;
|
||||
double alarmLowerBound;
|
||||
double alarmUpperBound;
|
||||
bool isBooled; // Поле из EXTRA
|
||||
bool isHide; // Поле из EXTRA
|
||||
bool isHide; // Поле из EXTRA
|
||||
QString group;
|
||||
QString id;
|
||||
bool isAlarmEnabled;
|
||||
@ -22,7 +23,8 @@ public:
|
||||
QString name;
|
||||
QString unitName;
|
||||
|
||||
void parseSensor(const QJsonObject& sensorObj) {
|
||||
void parseSensor(const QJsonObject &sensorObj)
|
||||
{
|
||||
alarmCooldown = sensorObj["ALARM_COOLDOWN"].toInt();
|
||||
alarmLowerBound = sensorObj["ALARM_LOWERBOUND"].toDouble();
|
||||
alarmUpperBound = sensorObj["ALARM_UPPERBOUND"].toDouble();
|
||||
@ -55,14 +57,16 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class GetSensorsR {
|
||||
class GetSensorsR
|
||||
{
|
||||
public:
|
||||
GetSensorsR() = default;
|
||||
|
||||
void parseResponse(const QJsonObject& responseObj) {
|
||||
void parseResponse(const QJsonObject &responseObj)
|
||||
{
|
||||
if (responseObj.contains("sensors") && responseObj["sensors"].isArray()) {
|
||||
QJsonArray sensorsArray = responseObj["sensors"].toArray();
|
||||
for (const QJsonValue& value : sensorsArray) {
|
||||
for (const QJsonValue &value : sensorsArray) {
|
||||
if (value.isObject()) {
|
||||
Sensor sensor;
|
||||
sensor.parseSensor(value.toObject());
|
||||
@ -72,9 +76,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
const QList<Sensor>& getSensors() const {
|
||||
return sensors;
|
||||
}
|
||||
const QList<Sensor> &getSensors() const { return sensors; }
|
||||
|
||||
private:
|
||||
QList<Sensor> sensors;
|
||||
|
@ -2,10 +2,10 @@
|
||||
#include <QEventLoop>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonParseError>
|
||||
#include <QMessageBox>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QNetworkRequest>
|
||||
#include <QMessageBox>
|
||||
|
||||
HttpClient::HttpClient(QObject *parent)
|
||||
: QObject(parent)
|
||||
|
@ -1,7 +1,11 @@
|
||||
#include "incedentwidget.h"
|
||||
|
||||
IncedentWidget::IncedentWidget(const QString& time, const QString& log, const QString& sender,
|
||||
const QString& section, const QString& status, QWidget *parent)
|
||||
IncedentWidget::IncedentWidget(const QString &time,
|
||||
const QString &log,
|
||||
const QString &sender,
|
||||
const QString §ion,
|
||||
const QString &status,
|
||||
QWidget *parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
setAttribute(Qt::WA_StyledBackground);
|
||||
@ -15,8 +19,8 @@ IncedentWidget::IncedentWidget(const QString& time, const QString& log, const QS
|
||||
|
||||
// Горизонтальный layout
|
||||
QHBoxLayout *mainLayout = new QHBoxLayout(this);
|
||||
mainLayout->setSpacing(70); // Отступы между элементами
|
||||
mainLayout->setContentsMargins(25, 5, 25, 5); // Внутренние отступы
|
||||
mainLayout->setSpacing(70); // Отступы между элементами
|
||||
mainLayout->setContentsMargins(25, 5, 25, 5); // Внутренние отступы
|
||||
setLayout(mainLayout);
|
||||
|
||||
// Создаем лейблы
|
||||
@ -32,10 +36,9 @@ IncedentWidget::IncedentWidget(const QString& time, const QString& log, const QS
|
||||
mainLayout->addWidget(senderLabel);
|
||||
mainLayout->addWidget(sectionLabel);
|
||||
mainLayout->addWidget(statusLabel);
|
||||
|
||||
}
|
||||
|
||||
QLabel* IncedentWidget::createLabel(const QString &text, int minSize, int maxSize)
|
||||
QLabel *IncedentWidget::createLabel(const QString &text, int minSize, int maxSize)
|
||||
{
|
||||
QLabel *label = new QLabel(text);
|
||||
label->setAlignment(Qt::AlignLeft);
|
||||
|
@ -1,20 +1,24 @@
|
||||
#ifndef INCEDENTWIDGET_H
|
||||
#define INCEDENTWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QFrame>
|
||||
#include <QHBoxLayout>
|
||||
#include <QLabel>
|
||||
#include <QPushButton>
|
||||
#include <QVBoxLayout>
|
||||
#include <QHBoxLayout>
|
||||
#include <QFrame>
|
||||
#include <QWidget>
|
||||
|
||||
class IncedentWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit IncedentWidget(const QString& time, const QString& log, const QString& sender,
|
||||
const QString& section, const QString& status, QWidget *parent = nullptr);
|
||||
explicit IncedentWidget(const QString &time,
|
||||
const QString &log,
|
||||
const QString &sender,
|
||||
const QString §ion,
|
||||
const QString &status,
|
||||
QWidget *parent = nullptr);
|
||||
|
||||
private:
|
||||
QLabel *createLabel(const QString &text, int minSize = 100, int maxSize = 250);
|
||||
@ -27,5 +31,4 @@ private:
|
||||
QLabel *statusLabel;
|
||||
};
|
||||
|
||||
|
||||
#endif // INCEDENTWIDGET_H
|
||||
|
124
journalservice.h
124
journalservice.h
@ -1,42 +1,68 @@
|
||||
#ifndef JOURNALSERVICE_H
|
||||
#define JOURNALSERVICE_H
|
||||
|
||||
#include "utils.h"
|
||||
#include "HttpClient.h"
|
||||
#include "logs_r.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QList>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QList>
|
||||
#include <QStringList>
|
||||
#include <QJsonDocument>
|
||||
|
||||
struct JournalSettings{
|
||||
QMap<QString, QList<QString>> groupsWithSensors;
|
||||
qint64 start_time;
|
||||
qint64 end_time;
|
||||
bool cmp;
|
||||
QList<int> status;
|
||||
JournalSettings(QMap<QString, QList<QString>> a, qint64 b, qint64 c, bool d, QList<int> e) {
|
||||
groupsWithSensors = a;
|
||||
start_time = b;
|
||||
end_time = c;
|
||||
cmp = d;
|
||||
status = e;
|
||||
}
|
||||
};
|
||||
|
||||
class JournalService : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit JournalService(HttpClient* client, QObject *parent = nullptr)
|
||||
: QObject(parent), httpClient(client) {}
|
||||
explicit JournalService(HttpClient *client, QObject *parent = nullptr)
|
||||
: QObject(parent)
|
||||
, httpClient(client)
|
||||
{}
|
||||
|
||||
int getLogsAmount(const QMap<QString, QString>& groupWithSensors, qint64 start, qint64 end) {
|
||||
int getLogsAmount(const QMap<QString, QList<QString>> &groupWithSensors, const QList<int> &threatLevels,
|
||||
qint64 start, qint64 end)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
QJsonArray threatLevelsArray;
|
||||
for (int level : threatLevels) {
|
||||
threatLevelsArray.append(level);
|
||||
}
|
||||
rootObj["threat_levels"] = threatLevelsArray;
|
||||
QJsonObject sensorsObj;
|
||||
for (auto it = groupWithSensors.constBegin(); it != groupWithSensors.constEnd(); ++it) {
|
||||
QJsonArray sensorArray;
|
||||
sensorArray.append(it.value());
|
||||
for (QString sensorId : it.value()) {
|
||||
sensorArray.append(sensorId);
|
||||
}
|
||||
sensorsObj[it.key()] = sensorArray;
|
||||
}
|
||||
rootObj["sensors"] = sensorsObj;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/logs/getLogsAmount", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/logs/getLogsAmount",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
if (responseJson.contains("amount")) {
|
||||
return responseJson["amount"].toInt();
|
||||
@ -44,52 +70,14 @@ public:
|
||||
return 0;
|
||||
}
|
||||
|
||||
QList<LogsR> tmpB(int pageNum, int pageSize, qint64 start = 1734063255, qint64 end = 1735392656) {
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
rootObj["page_number"] = pageNum;
|
||||
rootObj["page_size"] = pageSize;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/logs/getLogs", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QList<LogsR> logList;
|
||||
|
||||
if (responseJson.contains("logs") && responseJson["logs"].isArray()) {
|
||||
QJsonArray alarmsArray = responseJson["logs"].toArray();
|
||||
|
||||
for (const QJsonValue& value : alarmsArray) {
|
||||
if (value.isObject()) {
|
||||
LogsR log;
|
||||
log.parseResponse(value.toObject());
|
||||
logList.append(log);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return logList;
|
||||
}
|
||||
|
||||
int tmpA(qint64 start = 1734063255, qint64 end = 1735392656) {
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/logs/getLogsAmount", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
if (responseJson.contains("amount")) {
|
||||
return responseJson["amount"].toInt();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
QStringList getLogs(const QMap<QString, QString>& groupWithSensors, const QList<int>& threatLevels, qint64 start, qint64 end, int pageNum, int pageSize) {
|
||||
QList<LogsR> getLogs(const QMap<QString, QList<QString>> &groupWithSensors,
|
||||
const QList<int> &threatLevels,
|
||||
bool cmp,
|
||||
qint64 start,
|
||||
qint64 end,
|
||||
int pageNum,
|
||||
int pageSize)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
QJsonArray threatLevelsArray;
|
||||
for (int level : threatLevels) {
|
||||
@ -103,26 +91,34 @@ public:
|
||||
QJsonObject sensorsObj;
|
||||
for (auto it = groupWithSensors.constBegin(); it != groupWithSensors.constEnd(); ++it) {
|
||||
QJsonArray sensorArray;
|
||||
sensorArray.append(it.value());
|
||||
for (QString sensorId : it.value()) {
|
||||
sensorArray.append(sensorId);
|
||||
}
|
||||
sensorsObj[it.key()] = sensorArray;
|
||||
}
|
||||
rootObj["sensors"] = sensorsObj;
|
||||
QJsonArray orderArray;
|
||||
QJsonArray orderItem;
|
||||
cmp ? orderItem.append("threat_level") : orderItem.append("date");
|
||||
orderItem.append("-");
|
||||
orderArray.append(orderItem);
|
||||
rootObj["order"] = orderArray;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/logs/getLogs",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/logs/getLogs", QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QStringList logsList;
|
||||
QList<LogsR> logsList;
|
||||
|
||||
if (responseJson.contains("logs") && responseJson["logs"].isArray()) {
|
||||
QJsonArray logsArray = responseJson["logs"].toArray();
|
||||
|
||||
for (const QJsonValue& logValue : logsArray) {
|
||||
for (const QJsonValue &logValue : logsArray) {
|
||||
if (logValue.isObject()) {
|
||||
LogsR log;
|
||||
log.parseResponse(logValue.toObject());
|
||||
logsList.append(log.getMark() + " - " + log.getMessage());
|
||||
logsList.append(log);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -131,7 +127,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
HttpClient* httpClient;
|
||||
HttpClient *httpClient;
|
||||
};
|
||||
|
||||
#endif // JOURNALSERVICE_H
|
||||
|
35
logs_r.h
35
logs_r.h
@ -1,21 +1,34 @@
|
||||
#ifndef LOGS_R_H
|
||||
#define LOGS_R_H
|
||||
|
||||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonObject>
|
||||
#include <QList>
|
||||
#include <QString>
|
||||
|
||||
class LogsR {
|
||||
class LogsR
|
||||
{
|
||||
public:
|
||||
LogsR() = default;
|
||||
|
||||
LogsR(const QString& mark, const QString& message, const QString& sensorGroup,
|
||||
const QString& sensorId, const QString& serial, int threatLevel, const QString& time)
|
||||
: mark(mark), message(message), sensor_group(sensorGroup), sensor_id(sensorId),
|
||||
serial(serial), threat_level(threatLevel), time(time) {}
|
||||
LogsR(const QString &mark,
|
||||
const QString &message,
|
||||
const QString &sensorGroup,
|
||||
const QString &sensorId,
|
||||
const QString &serial,
|
||||
int threatLevel,
|
||||
const QString &time)
|
||||
: mark(mark)
|
||||
, message(message)
|
||||
, sensor_group(sensorGroup)
|
||||
, sensor_id(sensorId)
|
||||
, serial(serial)
|
||||
, threat_level(threatLevel)
|
||||
, time(time)
|
||||
{}
|
||||
|
||||
void parseResponse(const QJsonObject& json) {
|
||||
void parseResponse(const QJsonObject &json)
|
||||
{
|
||||
if (json.contains("mark") && json["mark"].isString()) {
|
||||
mark = json["mark"].toString();
|
||||
}
|
||||
@ -34,8 +47,10 @@ public:
|
||||
if (json.contains("threat_level") && json["threat_level"].isDouble()) {
|
||||
threat_level = json["threat_level"].toInt();
|
||||
}
|
||||
if (json.contains("time") && json["time"].isString()) {
|
||||
time = json["time"].toString();
|
||||
if (json.contains("time") && json["time"].isDouble()) {
|
||||
qint64 unixTime = json["time"].toVariant().toLongLong();
|
||||
QDateTime dateTime = QDateTime::fromSecsSinceEpoch(unixTime);
|
||||
time = dateTime.toString("HH:mm dd.MM.yyyy");
|
||||
}
|
||||
}
|
||||
|
||||
|
71
logwidget.cpp
Normal file
71
logwidget.cpp
Normal file
@ -0,0 +1,71 @@
|
||||
#include "logwidget.h"
|
||||
|
||||
#include <QHBoxLayout>
|
||||
|
||||
LogWidget::LogWidget(QMap<QString, QMap<QString, QPair<QString, QString>>> &translate,
|
||||
const QString &time,
|
||||
const QString &log,
|
||||
const QString &sensorId,
|
||||
const QString &group,
|
||||
const int status,
|
||||
QWidget *parent)
|
||||
: QWidget(parent)
|
||||
, _translate(translate)
|
||||
{
|
||||
setAttribute(Qt::WA_StyledBackground);
|
||||
setStyleSheet(R"(
|
||||
QWidget {
|
||||
border: 1px solid #E5E7EB;
|
||||
background-color: transparent;
|
||||
}
|
||||
)");
|
||||
|
||||
QHBoxLayout *mainLayout = new QHBoxLayout(this);
|
||||
mainLayout->setSpacing(70);
|
||||
mainLayout->setContentsMargins(25, 5, 25, 5);
|
||||
setLayout(mainLayout);
|
||||
|
||||
timeLabel = createLabel(time, 100, 230);
|
||||
logLabel = createLabel(log, 100, 250);
|
||||
sensorIdLabel = createLabel(translate[group][sensorId].second, 150, 220);
|
||||
groupLabel = createLabel(translate[group][sensorId].first, 150, 100);
|
||||
QString msg;
|
||||
if (status == 0) {
|
||||
msg = "Отладка";
|
||||
} else if (status == 1) {
|
||||
msg = "Информация";
|
||||
} else if (status == 2) {
|
||||
msg = "Предупреждение";
|
||||
} else if (status == 3) {
|
||||
msg = "Ошибка";
|
||||
} else {
|
||||
msg = "Экстренно";
|
||||
}
|
||||
statusLabel = createLabel(msg, 100, 120);
|
||||
|
||||
mainLayout->addWidget(timeLabel);
|
||||
mainLayout->addWidget(logLabel);
|
||||
mainLayout->addWidget(sensorIdLabel);
|
||||
mainLayout->addWidget(groupLabel);
|
||||
mainLayout->addWidget(statusLabel);
|
||||
}
|
||||
|
||||
QLabel *LogWidget::createLabel(const QString &text, int minSize, int maxSize)
|
||||
{
|
||||
QLabel *label = new QLabel(text);
|
||||
label->setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
|
||||
label->setWordWrap(true);
|
||||
label->setMinimumWidth(minSize);
|
||||
label->setMaximumWidth(maxSize);
|
||||
label->setFixedHeight(200);
|
||||
label->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
|
||||
label->setStyleSheet(R"(
|
||||
background: transparent;
|
||||
font-family: Inter;
|
||||
font-size: 20px;
|
||||
font-weight: 400;
|
||||
color: #13385F;
|
||||
border: none;
|
||||
)");
|
||||
return label;
|
||||
}
|
31
logwidget.h
Normal file
31
logwidget.h
Normal file
@ -0,0 +1,31 @@
|
||||
#ifndef LOGWIDGET_H
|
||||
#define LOGWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QLabel>
|
||||
|
||||
class LogWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit LogWidget(QMap<QString, QMap<QString, QPair<QString, QString>>> &translate,
|
||||
const QString &time = "",
|
||||
const QString &log = "",
|
||||
const QString &sensorId = "",
|
||||
const QString &group = "",
|
||||
const int status = 4,
|
||||
QWidget *parent = nullptr);
|
||||
|
||||
private:
|
||||
QLabel *createLabel(const QString &text, int minSize = 100, int maxSize = 250);
|
||||
|
||||
private:
|
||||
QMap<QString, QMap<QString, QPair<QString, QString>>> _translate;
|
||||
QLabel *timeLabel;
|
||||
QLabel *logLabel;
|
||||
QLabel *sensorIdLabel;
|
||||
QLabel *groupLabel;
|
||||
QLabel *statusLabel;
|
||||
};
|
||||
|
||||
#endif // LOGWIDGET_H
|
45
main.cpp
45
main.cpp
@ -1,29 +1,44 @@
|
||||
#include "mainwindow.h"
|
||||
#include "sensordialog.h"
|
||||
#include "alarmdialog.h"
|
||||
#include "apiform.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QApplication>
|
||||
#include <QCoreApplication>
|
||||
#include <QLocale>
|
||||
#include <QTranslator>
|
||||
|
||||
#include <QTreeWidget>
|
||||
#include <QTreeWidgetItem>
|
||||
#include <QHeaderView>
|
||||
#include <QObject>
|
||||
#include <QWidget>
|
||||
#include <QMessageBox>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
QApplication a(argc, argv);
|
||||
|
||||
QTranslator translator;
|
||||
const QStringList uiLanguages = QLocale::system().uiLanguages();
|
||||
for (const QString &locale : uiLanguages) {
|
||||
const QString baseName = "FemaSoftware_" + QLocale(locale).name();
|
||||
if (translator.load(":/i18n/" + baseName)) {
|
||||
a.installTranslator(&translator);
|
||||
break;
|
||||
try {
|
||||
QTranslator translator;
|
||||
const QStringList uiLanguages = QLocale::system().uiLanguages();
|
||||
for (const QString &locale : uiLanguages) {
|
||||
const QString baseName = "FemaSoftware_" + QLocale(locale).name();
|
||||
if (translator.load(":/i18n/" + baseName)) {
|
||||
a.installTranslator(&translator);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
ApiForm *apiForm = new ApiForm();
|
||||
apiForm->exec();
|
||||
|
||||
if (!utils::API_URL.isEmpty()) {
|
||||
MainWindow *mainWindow = new MainWindow();
|
||||
mainWindow->show();
|
||||
} else {
|
||||
throw std::runtime_error("Invalid API URL or parameters.");
|
||||
}
|
||||
|
||||
} catch (const std::exception &e) {
|
||||
QMessageBox::critical(nullptr, "Ошибка", "Произошла ошибка: " + QString::fromStdString(e.what()));
|
||||
return 1;
|
||||
}
|
||||
MainWindow w;
|
||||
w.show();
|
||||
|
||||
return a.exec();
|
||||
}
|
||||
|
1165
mainwindow.cpp
1165
mainwindow.cpp
File diff suppressed because it is too large
Load Diff
66
mainwindow.h
66
mainwindow.h
@ -1,18 +1,20 @@
|
||||
#ifndef MAINWINDOW_H
|
||||
#define MAINWINDOW_H
|
||||
|
||||
#include "flowlayout.h"
|
||||
#include "sensorwidget.h"
|
||||
#include "sensorservice.h"
|
||||
#include "httpclient.h"
|
||||
#include "alarmsservice.h"
|
||||
#include "flowlayout.h"
|
||||
#include "httpclient.h"
|
||||
#include "journalservice.h"
|
||||
#include "sensorservice.h"
|
||||
#include "sensorwidget.h"
|
||||
#include "paginationbar.h"
|
||||
#include "qcustomplot.h"
|
||||
|
||||
#include <QMainWindow>
|
||||
#include <QPixmap>
|
||||
#include <QVBoxLayout>
|
||||
#include <QTreeWidget>
|
||||
#include <QMap>
|
||||
#include <QPixmap>
|
||||
#include <QTreeWidget>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
#include <Qlabel>
|
||||
@ -40,6 +42,20 @@ class MainWindow : public QMainWindow
|
||||
private slots:
|
||||
void onIncidentsPageChanged(int page);
|
||||
void onJournalPageChanged(int page);
|
||||
void onSearchIncidentsClicked();
|
||||
void onSearchJournalClicked();
|
||||
void updateTreeClicked();
|
||||
void onRealTimeStatisticClicked();
|
||||
void onArchiveStatisticClicked();
|
||||
void onShowStatisticClicked();
|
||||
void updateRealTimeChart();
|
||||
void onSensorSelectStatisticChanged(int index);
|
||||
void ondialogClosedFromWidget(QString groupWithSensor, QDateTime start, QDateTime end);
|
||||
void onSaveButtonSettings();
|
||||
void onCancelButtonSettings();
|
||||
void onImportButtonSettings();
|
||||
void onExportButtonSettings();
|
||||
void onServerButtonSettings();
|
||||
|
||||
public:
|
||||
MainWindow(QWidget *parent = nullptr);
|
||||
@ -53,14 +69,30 @@ private:
|
||||
JournalService *jsr;
|
||||
HttpClient *httpClient;
|
||||
QWidget *widgetContainer;
|
||||
PaginationBar *paginationBarIncident;
|
||||
PaginationBar *paginationBarJournal;
|
||||
FlowLayout *layout;
|
||||
SensorService *sensorService;
|
||||
JournalService *journalService;
|
||||
AlarmsService *alarmsService;
|
||||
QMap<QString, QString> nameToId;
|
||||
|
||||
AlarmSettings *settingsIncident;
|
||||
JournalSettings *journalSettings;
|
||||
bool statisticType;
|
||||
QMap<QString, int> groupWithSensorToIndex;
|
||||
QList<QString> groupWithSensor;
|
||||
QTimer *realTimeChartTimer;
|
||||
QCustomPlot *statisticChart;
|
||||
QMap<QString, QMap<QString, QPair<QString, QString>>> translate;
|
||||
Settings settings;
|
||||
|
||||
private:
|
||||
//COMMON------------------------------------------------------
|
||||
void loadSenorsTree(QTreeWidget* tree);
|
||||
void loadSensorsTree(QTreeWidget *treeWidget);
|
||||
void moveTopLevelItems(QTreeWidget *source, QTreeWidget *destination);
|
||||
void startTranslateUpdateTimer();
|
||||
void TranslateUpdate();
|
||||
void startRefreshTimer();
|
||||
//------------------------------------------------------------
|
||||
|
||||
//SENSOR------------------------------------------------------
|
||||
@ -68,7 +100,7 @@ private:
|
||||
void showSensorDialog(SensorWidget *sensor);
|
||||
void onSensorDialogFinished(int result);
|
||||
//api requests
|
||||
void loadSensors(const QString& group);
|
||||
void loadSensors(const QString &group);
|
||||
void loadSensorGroups();
|
||||
//update widgets
|
||||
void updateDisplayedWidgets();
|
||||
@ -76,7 +108,6 @@ private:
|
||||
void onGroupSelected(int index);
|
||||
void onShowHiddenSelected(int index);
|
||||
//utility
|
||||
void startSensorTabRefreshTimer();
|
||||
void SetupSensorTab();
|
||||
//------------------------------------------------------------
|
||||
|
||||
@ -84,13 +115,26 @@ private:
|
||||
//update widgets
|
||||
void onSearchIncedentsTextChanged(const QString &text);
|
||||
void onTreeIncidentsChanged(QTreeWidgetItem *item, int column);
|
||||
void onTimeIntervalChanged(const QString &selectedInterval);
|
||||
AlarmSettings* getIncidentDataSettings();
|
||||
//utility
|
||||
void SetupIncidentTab();
|
||||
//------------------------------------------------------------
|
||||
|
||||
//JOURNAL-----------------------------------------------------
|
||||
//update widgets
|
||||
void onSearchJournalTextChanged(const QString &text);
|
||||
void onTreeJournalChanged(QTreeWidgetItem *item, int column);
|
||||
JournalSettings* getJournalDataSettings();
|
||||
//utility
|
||||
void SetupJournalTab();
|
||||
//------------------------------------------------------------
|
||||
|
||||
//Statistic---------------------------------------------------
|
||||
//update widgets
|
||||
void updateComboboxStatistic();
|
||||
//utility
|
||||
void SetupStatisticTab();
|
||||
//------------------------------------------------------------
|
||||
};
|
||||
#endif // MAINWINDOW_H
|
||||
|
2193
mainwindow.ui
2193
mainwindow.ui
File diff suppressed because it is too large
Load Diff
88
map.qml
Normal file
88
map.qml
Normal file
@ -0,0 +1,88 @@
|
||||
import QtQuick 2.15
|
||||
import QtLocation 5.15
|
||||
import QtPositioning 5.15
|
||||
|
||||
Item {
|
||||
anchors.fill: parent
|
||||
|
||||
Map {
|
||||
id: map
|
||||
anchors.fill: parent
|
||||
plugin: Plugin {
|
||||
name: "osm"
|
||||
PluginParameter {
|
||||
name: "osm.mapping.custom.host"
|
||||
value: "https://tile.openstreetmap.org/"
|
||||
}
|
||||
PluginParameter {
|
||||
name: "osm.mapping.providersrepository.disabled"
|
||||
value: "true"
|
||||
}
|
||||
}
|
||||
center: QtPositioning.coordinate(mapCenter.latitude, mapCenter.longitude)
|
||||
zoomLevel: 15
|
||||
Repeater {
|
||||
model: pointsList
|
||||
MapQuickItem {
|
||||
id: point
|
||||
coordinate: modelData
|
||||
anchorPoint.x: 10
|
||||
anchorPoint.y: 10
|
||||
|
||||
sourceItem: Rectangle {
|
||||
width: 20
|
||||
height: 20
|
||||
color: "red"
|
||||
radius: 10
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
id: mouseArea
|
||||
anchors.fill: parent
|
||||
drag.target: map
|
||||
|
||||
property real startLat: map.center.latitude
|
||||
property real startLon: map.center.longitude
|
||||
property real startX: 0
|
||||
property real startY: 0
|
||||
|
||||
property real zoomFactor: Math.pow(2, map.zoomLevel - 15)
|
||||
|
||||
cursorShape: Qt.ArrowCursor
|
||||
|
||||
onPressed: {
|
||||
startLat = map.center.latitude
|
||||
startLon = map.center.longitude
|
||||
startX = mouseArea.mouseX
|
||||
startY = mouseArea.mouseY
|
||||
}
|
||||
|
||||
onPositionChanged: {
|
||||
var dx = mouseArea.mouseX - startX
|
||||
var dy = mouseArea.mouseY - startY
|
||||
|
||||
var factor = Math.pow(2, 15 - map.zoomLevel) * 0.00005;
|
||||
|
||||
map.center = QtPositioning.coordinate(
|
||||
startLat - dy * -factor,
|
||||
startLon + dx * -factor
|
||||
)
|
||||
}
|
||||
|
||||
onWheel: {
|
||||
if (wheel.angleDelta.y < 0) {
|
||||
map.zoomLevel -= 1
|
||||
} else {
|
||||
map.zoomLevel += 1
|
||||
}
|
||||
map.zoomLevel = Math.max(1, Math.min(map.zoomLevel, 18));
|
||||
}
|
||||
|
||||
onContainsMouseChanged: {
|
||||
cursorShape = mouseArea.containsMouse ? Qt.ClosedHandCursor : Qt.ArrowCursor
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,10 +1,13 @@
|
||||
#include "PaginationBar.h"
|
||||
#include <QStyle>
|
||||
#include <QIntValidator>
|
||||
#include <QDebug>
|
||||
#include <QIntValidator>
|
||||
#include <QStyle>
|
||||
|
||||
PaginationBar::PaginationBar(int totalPages, QWidget *parent)
|
||||
: QWidget(parent), totalPages(totalPages), currentPage(1) {
|
||||
: QWidget(parent)
|
||||
, totalPages(totalPages)
|
||||
, currentPage(1)
|
||||
{
|
||||
layout = new QHBoxLayout(this);
|
||||
layout->setContentsMargins(0, 0, 0, 0);
|
||||
layout->setSpacing(5);
|
||||
@ -50,13 +53,15 @@ PaginationBar::PaginationBar(int totalPages, QWidget *parent)
|
||||
updateButtons();
|
||||
}
|
||||
|
||||
void PaginationBar::onPageButtonClicked(int page) {
|
||||
void PaginationBar::onPageButtonClicked(int page)
|
||||
{
|
||||
currentPage = page;
|
||||
emit pageChanged(currentPage);
|
||||
updateButtons();
|
||||
}
|
||||
|
||||
void PaginationBar::goToPreviousPage() {
|
||||
void PaginationBar::goToPreviousPage()
|
||||
{
|
||||
if (currentPage > 1) {
|
||||
currentPage--;
|
||||
emit pageChanged(currentPage);
|
||||
@ -64,7 +69,8 @@ void PaginationBar::goToPreviousPage() {
|
||||
}
|
||||
}
|
||||
|
||||
void PaginationBar::goToNextPage() {
|
||||
void PaginationBar::goToNextPage()
|
||||
{
|
||||
if (currentPage < totalPages) {
|
||||
currentPage++;
|
||||
emit pageChanged(currentPage);
|
||||
@ -72,7 +78,8 @@ void PaginationBar::goToNextPage() {
|
||||
}
|
||||
}
|
||||
|
||||
void PaginationBar::onEllipsisClicked(QPushButton *ellipsisButton) {
|
||||
void PaginationBar::onEllipsisClicked(QPushButton *ellipsisButton)
|
||||
{
|
||||
if (activeLineEdit) {
|
||||
layout->replaceWidget(activeLineEdit, previousEllipsisButton);
|
||||
activeLineEdit->deleteLater();
|
||||
@ -121,7 +128,8 @@ void PaginationBar::onEllipsisClicked(QPushButton *ellipsisButton) {
|
||||
});
|
||||
}
|
||||
|
||||
void PaginationBar::updateButtons() {
|
||||
void PaginationBar::updateButtons()
|
||||
{
|
||||
if (activeLineEdit) {
|
||||
for (auto *button : pageButtons) {
|
||||
if (!button->isVisible()) {
|
||||
@ -146,24 +154,28 @@ void PaginationBar::updateButtons() {
|
||||
}
|
||||
} else {
|
||||
if (currentPage <= 4) {
|
||||
for (int i = 1; i <= 5; ++i) addPageButton(i);
|
||||
for (int i = 1; i <= 5; ++i)
|
||||
addPageButton(i);
|
||||
addEllipsisButton();
|
||||
addPageButton(totalPages);
|
||||
} else if (currentPage >= totalPages - 3) {
|
||||
addPageButton(1);
|
||||
addEllipsisButton();
|
||||
for (int i = totalPages - 4; i <= totalPages; ++i) addPageButton(i);
|
||||
for (int i = totalPages - 4; i <= totalPages; ++i)
|
||||
addPageButton(i);
|
||||
} else {
|
||||
addPageButton(1);
|
||||
addEllipsisButton();
|
||||
for (int i = currentPage - 1; i <= currentPage + 1; ++i) addPageButton(i);
|
||||
for (int i = currentPage - 1; i <= currentPage + 1; ++i)
|
||||
addPageButton(i);
|
||||
addEllipsisButton();
|
||||
addPageButton(totalPages);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void PaginationBar::addPageButton(int page) {
|
||||
void PaginationBar::addPageButton(int page)
|
||||
{
|
||||
auto *button = new QPushButton(QString::number(page), this);
|
||||
button->setFixedSize(40, 40);
|
||||
if (page == currentPage) {
|
||||
@ -193,7 +205,8 @@ void PaginationBar::addPageButton(int page) {
|
||||
layout->insertWidget(layout->count() - 1, button);
|
||||
}
|
||||
|
||||
void PaginationBar::addEllipsisButton() {
|
||||
void PaginationBar::addEllipsisButton()
|
||||
{
|
||||
auto *button = new QPushButton("...", this);
|
||||
button->setFixedSize(40, 40);
|
||||
button->setStyleSheet(R"(
|
||||
@ -207,3 +220,11 @@ void PaginationBar::addEllipsisButton() {
|
||||
pageButtons.append(button);
|
||||
layout->insertWidget(layout->count() - 1, button);
|
||||
}
|
||||
|
||||
void PaginationBar::setTotalPages(int newTotalPages)
|
||||
{
|
||||
totalPages = newTotalPages;
|
||||
currentPage = 1;
|
||||
updateButtons();
|
||||
//emit pageChanged(currentPage);
|
||||
}
|
||||
|
@ -1,17 +1,21 @@
|
||||
#ifndef PAGINATIONBAR_H
|
||||
#define PAGINATIONBAR_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QPushButton>
|
||||
#include <QLineEdit>
|
||||
#include <QHBoxLayout>
|
||||
#include <QLineEdit>
|
||||
#include <QPushButton>
|
||||
#include <QWidget>
|
||||
|
||||
class PaginationBar : public QWidget {
|
||||
class PaginationBar : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PaginationBar(int totalPages, QWidget *parent = nullptr);
|
||||
|
||||
public:
|
||||
void setTotalPages(int newTotalPages);
|
||||
|
||||
signals:
|
||||
void pageChanged(int page);
|
||||
|
||||
@ -26,17 +30,17 @@ private:
|
||||
QPushButton *previousEllipsisButton = nullptr;
|
||||
|
||||
private:
|
||||
int totalPages; // Общее количество страниц
|
||||
int currentPage; // Текущая страница
|
||||
int totalPages; // Общее количество страниц
|
||||
int currentPage; // Текущая страница
|
||||
|
||||
QPushButton *leftArrow; // Кнопка влево
|
||||
QPushButton *rightArrow; // Кнопка вправо
|
||||
QHBoxLayout *layout; // Макет для размещения кнопок
|
||||
QPushButton *leftArrow; // Кнопка влево
|
||||
QPushButton *rightArrow; // Кнопка вправо
|
||||
QHBoxLayout *layout; // Макет для размещения кнопок
|
||||
QList<QPushButton *> pageButtons; // Список кнопок страниц
|
||||
|
||||
void updateButtons(); // Обновление кнопок в зависимости от состояния
|
||||
void addPageButton(int page); // Добавить кнопку страницы
|
||||
void addEllipsisButton(); // Добавить кнопку с троеточием
|
||||
void updateButtons(); // Обновление кнопок в зависимости от состояния
|
||||
void addPageButton(int page); // Добавить кнопку страницы
|
||||
void addEllipsisButton(); // Добавить кнопку с троеточием
|
||||
};
|
||||
|
||||
#endif // PAGINATIONBAR_H
|
||||
|
59
plotservice.h
Normal file
59
plotservice.h
Normal file
@ -0,0 +1,59 @@
|
||||
#ifndef PLOTSERVICE_H
|
||||
#define PLOTSERVICE_H
|
||||
|
||||
#include "HttpClient.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QList>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QStringList>
|
||||
|
||||
|
||||
class PlotService : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PlotService(HttpClient *client, QObject *parent = nullptr)
|
||||
: QObject(parent)
|
||||
, httpClient(client)
|
||||
{}
|
||||
|
||||
int getDeviceSensorData(const QMap<QString, QList<QString>> &groupsWithSensors,
|
||||
qint64 start,
|
||||
qint64 end)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
QJsonObject sensorsObj;
|
||||
for (auto it = groupsWithSensors.constBegin(); it != groupsWithSensors.constEnd(); ++it) {
|
||||
QJsonArray sensorArray;
|
||||
for (QString sensorId : it.value()) {
|
||||
sensorArray.append(sensorId);
|
||||
}
|
||||
sensorsObj[it.key()] = sensorArray;
|
||||
}
|
||||
rootObj["sensors"] = sensorsObj;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/alarms/getAlarmsAmount",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
if (responseJson.contains("amount")) {
|
||||
return responseJson["amount"].toInt();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
HttpClient *httpClient;
|
||||
};
|
||||
|
||||
#endif // PLOTSERVICE_H
|
BIN
res/png/close.png
Normal file
BIN
res/png/close.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 249 B |
BIN
res/png/delete.png
Normal file
BIN
res/png/delete.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
BIN
res/png/open.png
Normal file
BIN
res/png/open.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 222 B |
88
res/qml/map.qml
Normal file
88
res/qml/map.qml
Normal file
@ -0,0 +1,88 @@
|
||||
import QtQuick 2.15
|
||||
import QtLocation 5.15
|
||||
import QtPositioning 5.15
|
||||
|
||||
Item {
|
||||
anchors.fill: parent
|
||||
|
||||
Map {
|
||||
id: map
|
||||
anchors.fill: parent
|
||||
plugin: Plugin {
|
||||
name: "osm"
|
||||
PluginParameter {
|
||||
name: "osm.mapping.custom.host"
|
||||
value: "https://tile.openstreetmap.org/"
|
||||
}
|
||||
PluginParameter {
|
||||
name: "osm.mapping.providersrepository.disabled"
|
||||
value: "true"
|
||||
}
|
||||
}
|
||||
center: QtPositioning.coordinate(mapCenter.latitude, mapCenter.longitude)
|
||||
zoomLevel: 15
|
||||
Repeater {
|
||||
model: pointsList
|
||||
MapQuickItem {
|
||||
id: point
|
||||
coordinate: modelData
|
||||
anchorPoint.x: 10
|
||||
anchorPoint.y: 10
|
||||
|
||||
sourceItem: Rectangle {
|
||||
width: 20
|
||||
height: 20
|
||||
color: "red"
|
||||
radius: 10
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
id: mouseArea
|
||||
anchors.fill: parent
|
||||
drag.target: map
|
||||
|
||||
property real startLat: map.center.latitude
|
||||
property real startLon: map.center.longitude
|
||||
property real startX: 0
|
||||
property real startY: 0
|
||||
|
||||
property real zoomFactor: Math.pow(2, map.zoomLevel - 15)
|
||||
|
||||
cursorShape: Qt.ArrowCursor
|
||||
|
||||
onPressed: {
|
||||
startLat = map.center.latitude
|
||||
startLon = map.center.longitude
|
||||
startX = mouseArea.mouseX
|
||||
startY = mouseArea.mouseY
|
||||
}
|
||||
|
||||
onPositionChanged: {
|
||||
var dx = mouseArea.mouseX - startX
|
||||
var dy = mouseArea.mouseY - startY
|
||||
|
||||
var factor = Math.pow(2, 15 - map.zoomLevel) * 0.00005;
|
||||
|
||||
map.center = QtPositioning.coordinate(
|
||||
startLat - dy * -factor,
|
||||
startLon + dx * -factor
|
||||
)
|
||||
}
|
||||
|
||||
onWheel: {
|
||||
if (wheel.angleDelta.y < 0) {
|
||||
map.zoomLevel -= 1
|
||||
} else {
|
||||
map.zoomLevel += 1
|
||||
}
|
||||
map.zoomLevel = Math.max(1, Math.min(map.zoomLevel, 18));
|
||||
}
|
||||
|
||||
onContainsMouseChanged: {
|
||||
cursorShape = mouseArea.containsMouse ? Qt.ClosedHandCursor : Qt.ArrowCursor
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -13,5 +13,12 @@
|
||||
<file>res/png/arrowLeft.png</file>
|
||||
<file>res/png/arrowRight.png</file>
|
||||
<file>res/png/bell.png</file>
|
||||
<file>res/png/close.png</file>
|
||||
<file>res/png/open.png</file>
|
||||
<file>res/png/delete.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="/qml">
|
||||
<file>map.qml</file>
|
||||
<file>res/qml/map.qml</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
@ -1,30 +1,34 @@
|
||||
#ifndef SAVESENSORSERVICE_H
|
||||
#define SAVESENSORSERVICE_H
|
||||
|
||||
#include "utils.h"
|
||||
#include "getsensors_r.h"
|
||||
#include "sensorlogs.h"
|
||||
#include "httpclient.h"
|
||||
#include "sensorlogs.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QObject>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QFile>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QFile>
|
||||
|
||||
class SaveSensorService : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SaveSensorService(HttpClient* client, QObject *parent = nullptr)
|
||||
: QObject(parent), httpClient(client) {}
|
||||
explicit SaveSensorService(HttpClient *client, QObject *parent = nullptr)
|
||||
: QObject(parent)
|
||||
, httpClient(client)
|
||||
{}
|
||||
|
||||
bool saveSensorLog(const Sensor &sensor, const SensorLogs &newSensorLogs) {
|
||||
QJsonObject responseSettingsJson = httpClient->get(utils::API_URL + "/settings/deviceSettings");
|
||||
bool saveSensorLog(const Sensor &sensor, const SensorLogs &newSensorLogs)
|
||||
{
|
||||
QJsonObject responseSettingsJson = httpClient->get(utils::API_URL
|
||||
+ "/settings/deviceSettings");
|
||||
|
||||
QJsonObject sensors = responseSettingsJson["SENSORS"].toObject();
|
||||
|
||||
@ -63,14 +67,14 @@ public:
|
||||
|
||||
responseSettingsJson["SENSORS"] = sensors;
|
||||
|
||||
QJsonObject putResponse = httpClient->post(utils::API_URL + "/settings/deviceSettings", responseSettingsJson);
|
||||
QJsonObject putResponse = httpClient->post(utils::API_URL + "/settings/deviceSettings",
|
||||
responseSettingsJson);
|
||||
|
||||
return putResponse["message"] == "OK";
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
HttpClient* httpClient;
|
||||
HttpClient *httpClient;
|
||||
};
|
||||
|
||||
#endif // SAVESENSORSERVICE_H
|
||||
|
@ -1,11 +1,11 @@
|
||||
#include "sensordialog.h"
|
||||
#include "ui_sensordialog.h"
|
||||
|
||||
#include "sensorlogervice.h"
|
||||
#include "savesensorservice.h"
|
||||
#include "sensorlogervice.h"
|
||||
|
||||
#include <QPainterPath>
|
||||
#include <QCloseEvent>
|
||||
#include <QPainterPath>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
@ -15,7 +15,6 @@ SensorDialog::SensorDialog(QWidget *parent, SensorWidget *sensor, HttpClient *ht
|
||||
, sensorWidget(sensor)
|
||||
, _httpClient(httpClient)
|
||||
{
|
||||
|
||||
ui->setupUi(this);
|
||||
|
||||
ui->isAlarm->addItems({"Да", "Нет"});
|
||||
@ -28,8 +27,6 @@ SensorDialog::SensorDialog(QWidget *parent, SensorWidget *sensor, HttpClient *ht
|
||||
ui->saveButton->setCursor(Qt::PointingHandCursor);
|
||||
ui->cancelButton->setCursor(Qt::PointingHandCursor);
|
||||
|
||||
|
||||
|
||||
ui->nameHeader->setText(sensorWidget->getSensor().id);
|
||||
ui->name->setText(sensorWidget->getSensor().name);
|
||||
ui->unitName->setText(sensorWidget->getSensor().unitName);
|
||||
@ -48,7 +45,6 @@ SensorDialog::SensorDialog(QWidget *parent, SensorWidget *sensor, HttpClient *ht
|
||||
ui->alarmSleepage->setText(QString::number(sensorLogs.getAlarmSleepage()));
|
||||
ui->logHugeError->setText(sensorLogs.getLogHugeError());
|
||||
|
||||
|
||||
connect(ui->cancelButton, &QPushButton::clicked, this, [this]() {
|
||||
isSavingSuccess = false;
|
||||
close();
|
||||
@ -68,51 +64,63 @@ SensorDialog::SensorDialog(QWidget *parent, SensorWidget *sensor, HttpClient *ht
|
||||
connect(ui->logHugeError, &QTextEdit::textChanged, this, &SensorDialog::onLogHugeErrorChanged);
|
||||
}
|
||||
|
||||
void SensorDialog::onIsAlarmChanged(const QString& value) {
|
||||
void SensorDialog::onIsAlarmChanged(const QString &value)
|
||||
{
|
||||
sensorC.isAlarmEnabled = (value == "Да");
|
||||
}
|
||||
|
||||
void SensorDialog::onIsBooledChanged(const QString& value) {
|
||||
void SensorDialog::onIsBooledChanged(const QString &value)
|
||||
{
|
||||
sensorC.isBooled = (value == "Да");
|
||||
}
|
||||
|
||||
void SensorDialog::onIsVisibleChanged(const QString& value) {
|
||||
void SensorDialog::onIsVisibleChanged(const QString &value)
|
||||
{
|
||||
sensorC.isHide = (value == "Да");
|
||||
}
|
||||
|
||||
void SensorDialog::onNameChanged(const QString& value) {
|
||||
void SensorDialog::onNameChanged(const QString &value)
|
||||
{
|
||||
sensorC.name = value;
|
||||
}
|
||||
|
||||
void SensorDialog::onUnitNameChanged(const QString& value) {
|
||||
void SensorDialog::onUnitNameChanged(const QString &value)
|
||||
{
|
||||
sensorC.unitName = value;
|
||||
}
|
||||
|
||||
void SensorDialog::onAlarmLowChanged(const QString& value) {
|
||||
void SensorDialog::onAlarmLowChanged(const QString &value)
|
||||
{
|
||||
sensorC.alarmLowerBound = value.toDouble();
|
||||
}
|
||||
|
||||
void SensorDialog::onAlarmUpChanged(const QString& value) {
|
||||
void SensorDialog::onAlarmUpChanged(const QString &value)
|
||||
{
|
||||
sensorC.alarmUpperBound = value.toDouble();
|
||||
}
|
||||
|
||||
void SensorDialog::onAlarmCooldownChanged(const QString& value) {
|
||||
void SensorDialog::onAlarmCooldownChanged(const QString &value)
|
||||
{
|
||||
sensorC.alarmCooldown = value.toDouble();
|
||||
}
|
||||
|
||||
void SensorDialog::onLogErrorChanged() {
|
||||
void SensorDialog::onLogErrorChanged()
|
||||
{
|
||||
sensorLogsC.setLogError(ui->logError->toPlainText());
|
||||
}
|
||||
|
||||
void SensorDialog::onLogManualChanged() {
|
||||
void SensorDialog::onLogManualChanged()
|
||||
{
|
||||
sensorLogsC.setLogManual(ui->logManual->toPlainText());
|
||||
}
|
||||
|
||||
void SensorDialog::onAlarmSleepageChanged(const QString& value) {
|
||||
void SensorDialog::onAlarmSleepageChanged(const QString &value)
|
||||
{
|
||||
sensorLogsC.setAlarmSleepage(value.toInt());
|
||||
}
|
||||
|
||||
void SensorDialog::onLogHugeErrorChanged() {
|
||||
void SensorDialog::onLogHugeErrorChanged()
|
||||
{
|
||||
sensorLogsC.setLogHugeError(ui->logHugeError->toPlainText());
|
||||
}
|
||||
|
||||
@ -140,7 +148,6 @@ void SensorDialog::closeEvent(QCloseEvent *event)
|
||||
event->accept();
|
||||
}
|
||||
|
||||
|
||||
SensorDialog::~SensorDialog()
|
||||
{
|
||||
delete ui;
|
||||
|
@ -1,9 +1,9 @@
|
||||
#ifndef SENSORDIALOG_H
|
||||
#define SENSORDIALOG_H
|
||||
|
||||
#include "sensorwidget.h"
|
||||
#include "httpclient.h"
|
||||
#include "sensorlogs.h"
|
||||
#include "sensorwidget.h"
|
||||
|
||||
#include <QDialog>
|
||||
|
||||
@ -16,14 +16,12 @@ class SensorDialog : public QDialog
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SensorDialog(QWidget *parent = nullptr, SensorWidget *sensor = nullptr, HttpClient *httpClient = nullptr);
|
||||
explicit SensorDialog(QWidget *parent = nullptr,
|
||||
SensorWidget *sensor = nullptr,
|
||||
HttpClient *httpClient = nullptr);
|
||||
~SensorDialog();
|
||||
|
||||
enum DialogResult {
|
||||
NoSave = 0,
|
||||
SaveSuccess,
|
||||
SaveError
|
||||
};
|
||||
enum DialogResult { NoSave = 0, SaveSuccess, SaveError };
|
||||
|
||||
signals:
|
||||
void resultReady(SensorDialog::DialogResult result);
|
||||
@ -41,17 +39,17 @@ private:
|
||||
|
||||
private:
|
||||
void onSaveButtonClicked();
|
||||
void onIsAlarmChanged(const QString& value);
|
||||
void onIsBooledChanged(const QString& value);
|
||||
void onIsVisibleChanged(const QString& value);
|
||||
void onNameChanged(const QString& value);
|
||||
void onUnitNameChanged(const QString& value);
|
||||
void onAlarmLowChanged(const QString& value);
|
||||
void onAlarmUpChanged(const QString& value);
|
||||
void onAlarmCooldownChanged(const QString& value);
|
||||
void onIsAlarmChanged(const QString &value);
|
||||
void onIsBooledChanged(const QString &value);
|
||||
void onIsVisibleChanged(const QString &value);
|
||||
void onNameChanged(const QString &value);
|
||||
void onUnitNameChanged(const QString &value);
|
||||
void onAlarmLowChanged(const QString &value);
|
||||
void onAlarmUpChanged(const QString &value);
|
||||
void onAlarmCooldownChanged(const QString &value);
|
||||
void onLogErrorChanged();
|
||||
void onLogManualChanged();
|
||||
void onAlarmSleepageChanged(const QString& value);
|
||||
void onAlarmSleepageChanged(const QString &value);
|
||||
void onLogHugeErrorChanged();
|
||||
|
||||
private:
|
||||
|
@ -1,20 +1,22 @@
|
||||
#ifndef SENSORGROUPS_R_H
|
||||
#define SENSORGROUPS_R_H
|
||||
|
||||
#include <QString>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QString>
|
||||
#include <QStringList>
|
||||
|
||||
class GetSensorsGroupsR {
|
||||
class GetSensorsGroupsR
|
||||
{
|
||||
public:
|
||||
GetSensorsGroupsR() = default;
|
||||
|
||||
void parseResponse(const QJsonObject& responseObj) {
|
||||
void parseResponse(const QJsonObject &responseObj)
|
||||
{
|
||||
if (responseObj.contains("groups") && responseObj["groups"].isArray()) {
|
||||
QJsonArray groupsArray = responseObj["groups"].toArray();
|
||||
for (const QJsonValue& value : groupsArray) {
|
||||
for (const QJsonValue &value : groupsArray) {
|
||||
if (value.isString()) {
|
||||
groups.append(value.toString());
|
||||
}
|
||||
@ -22,9 +24,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
const QStringList& getGroups() const {
|
||||
return groups;
|
||||
}
|
||||
const QStringList &getGroups() const { return groups; }
|
||||
|
||||
private:
|
||||
QStringList groups;
|
||||
|
@ -1,17 +1,17 @@
|
||||
#ifndef SENSORLOGSSERVICE_H
|
||||
#define SENSORLOGSSERVICE_H
|
||||
|
||||
#include "utils.h"
|
||||
#include "sensorlogs.h"
|
||||
#include "httpclient.h"
|
||||
#include "sensorlogs.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QObject>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QMessageBox>
|
||||
#include <QJsonArray>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QObject>
|
||||
|
||||
class SensorLogService : public QObject
|
||||
{
|
||||
@ -19,10 +19,14 @@ class SensorLogService : public QObject
|
||||
|
||||
public:
|
||||
explicit SensorLogService(HttpClient *client, QObject *parent = nullptr)
|
||||
: QObject(parent), httpClient(client) {}
|
||||
: QObject(parent)
|
||||
, httpClient(client)
|
||||
{}
|
||||
|
||||
SensorLogs getSensorLog(const QString &targetSensorId) {
|
||||
QJsonObject responseSettingsJson = httpClient->get(utils::API_URL + "/settings/deviceSettings");
|
||||
SensorLogs getSensorLog(const QString &targetSensorId)
|
||||
{
|
||||
QJsonObject responseSettingsJson = httpClient->get(utils::API_URL
|
||||
+ "/settings/deviceSettings");
|
||||
|
||||
QJsonObject sensors = responseSettingsJson["SENSORS"].toObject();
|
||||
for (const QString &groupKey : sensors.keys()) {
|
||||
@ -41,7 +45,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
HttpClient* httpClient;
|
||||
HttpClient *httpClient;
|
||||
};
|
||||
|
||||
#endif // SENSORLOGSSERVICE_H
|
||||
|
10
sensorlogs.h
10
sensorlogs.h
@ -1,15 +1,18 @@
|
||||
#ifndef SENSORLOGS_H
|
||||
#define SENSORLOGS_H
|
||||
|
||||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
#include <QString>
|
||||
|
||||
class SensorLogs
|
||||
{
|
||||
public:
|
||||
SensorLogs() = default;
|
||||
SensorLogs(const QString &logError, const QString &logManual, const QString &logHugeError)
|
||||
: logError(logError), logManual(logManual), logHugeError(logHugeError) {}
|
||||
: logError(logError)
|
||||
, logManual(logManual)
|
||||
, logHugeError(logHugeError)
|
||||
{}
|
||||
|
||||
QString getLogError() const { return logError; }
|
||||
void setLogError(const QString &value) { logError = value; }
|
||||
@ -23,7 +26,8 @@ public:
|
||||
int getAlarmSleepage() const { return AlarmSleepage; }
|
||||
void setAlarmSleepage(const int &value) { AlarmSleepage = value; }
|
||||
|
||||
void SensorLogsParse(QJsonObject &sensorData) {
|
||||
void SensorLogsParse(QJsonObject &sensorData)
|
||||
{
|
||||
logError = sensorData["LOG_ERROR"].toString();
|
||||
logManual = sensorData["LOG_MANUAL"].toString();
|
||||
logHugeError = sensorData["LOG_HUGE_ERROR"].toString();
|
||||
|
474
sensorservice.h
474
sensorservice.h
@ -1,33 +1,227 @@
|
||||
#ifndef SENSORSERVICE_H
|
||||
#define SENSORSERVICE_H
|
||||
|
||||
#include "utils.h"
|
||||
#include "HttpClient.h"
|
||||
#include "getsensors_r.h"
|
||||
#include "getsensors_p.h"
|
||||
#include "SensorGroups_r.h"
|
||||
#include "getsensors_p.h"
|
||||
#include "getsensors_r.h"
|
||||
#include "utils.h"
|
||||
|
||||
#include <QJsonArray>
|
||||
#include <QJsonObject>
|
||||
#include <QList>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QList>
|
||||
#include <QStringList>
|
||||
#include <QTime>
|
||||
#include <QGeoCoordinate>
|
||||
#include <QList>
|
||||
|
||||
class PlotData {
|
||||
public:
|
||||
QList<double> X;
|
||||
QList<double> Y;
|
||||
PlotData(QList<double>& x, QList<double> y)
|
||||
: X(x)
|
||||
, Y(y)
|
||||
{}
|
||||
};
|
||||
|
||||
struct sensorGroupTree {
|
||||
QMap<QString, QString> groupToLocalGroup;
|
||||
QMap<QString, QMap<QString, QString>> groupToSensorWithLocal;
|
||||
|
||||
sensorGroupTree(QMap<QString, QString>& a, QMap<QString, QMap<QString, QString>> b)
|
||||
: groupToLocalGroup(a)
|
||||
, groupToSensorWithLocal(b)
|
||||
{}
|
||||
};
|
||||
|
||||
struct Settings {
|
||||
QString serial;
|
||||
QString factory;
|
||||
QString exhuyant;
|
||||
QString fleet;
|
||||
QString side;
|
||||
QString gosNumber;
|
||||
QString factoryNumber;
|
||||
QString group;
|
||||
QString adres;
|
||||
QString userName;
|
||||
QString userPassword;
|
||||
QString argusSerial;
|
||||
QList<QPair<QString, QString>> servers;
|
||||
Settings(QString seriala,
|
||||
QString factorya,
|
||||
QString operatoroa,
|
||||
QString fleeta,
|
||||
QString sidea,
|
||||
QString gosNumbera,
|
||||
QString factoryNumbera,
|
||||
QString groupa,
|
||||
QString adresa,
|
||||
QString userNamea,
|
||||
QString userPassworda,
|
||||
QString argusSeriala,
|
||||
QList<QPair<QString, QString>> serversa)
|
||||
: serial(seriala)
|
||||
, factory(factorya)
|
||||
, exhuyant(operatoroa)
|
||||
, fleet(fleeta)
|
||||
, side(sidea)
|
||||
, gosNumber(gosNumbera)
|
||||
, factoryNumber(factoryNumbera)
|
||||
, group(groupa)
|
||||
, adres(adresa)
|
||||
, userName(userNamea)
|
||||
, userPassword(userPassworda)
|
||||
, argusSerial(argusSeriala)
|
||||
, servers(serversa)
|
||||
{}
|
||||
Settings()
|
||||
: serial("")
|
||||
, factory("")
|
||||
, exhuyant("")
|
||||
, fleet("")
|
||||
, side("")
|
||||
, gosNumber("")
|
||||
, factoryNumber("")
|
||||
, group("")
|
||||
, adres("")
|
||||
, userName("")
|
||||
, userPassword("")
|
||||
, argusSerial("")
|
||||
,servers({})
|
||||
{}
|
||||
};
|
||||
|
||||
class SensorService : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SensorService(HttpClient* client, QObject *parent = nullptr)
|
||||
: QObject(parent), httpClient(client) {}
|
||||
explicit SensorService(HttpClient *client, QObject *parent = nullptr)
|
||||
: QObject(parent)
|
||||
, httpClient(client)
|
||||
{}
|
||||
|
||||
QList<Sensor> getSensors(const QString& group) {
|
||||
Settings getSettings()
|
||||
{
|
||||
QJsonObject responseJson = httpClient->get(utils::API_URL + "/settings/deviceSettings");
|
||||
|
||||
Settings settings;
|
||||
|
||||
if (responseJson.isEmpty()) {
|
||||
return settings;
|
||||
}
|
||||
|
||||
if (responseJson.contains("SYSTEM")) {
|
||||
QJsonObject systemObj = responseJson.value("SYSTEM").toObject();
|
||||
settings.serial = systemObj.value("VIN").toString();
|
||||
settings.factory = systemObj.value("MANUFACTURER").toString();
|
||||
settings.exhuyant = systemObj.value("OPERATOR").toString();
|
||||
settings.fleet = systemObj.value("TP").toString();
|
||||
settings.gosNumber = systemObj.value("GOS_NUMBER").toString();
|
||||
settings.factoryNumber = systemObj.value("REG_NUMBER").toString();
|
||||
settings.group = systemObj.value("GROUP").toString();
|
||||
}
|
||||
|
||||
if (responseJson.contains("SENSORS")) {
|
||||
QJsonObject sensorsObj = responseJson.value("SENSORS").toObject();
|
||||
if (sensorsObj.contains("*SYSTEM")) {
|
||||
QJsonObject systemSensorsObj = sensorsObj.value("*SYSTEM").toObject();
|
||||
if (systemSensorsObj.contains("*ARGUS")) {
|
||||
QJsonObject argusObj = systemSensorsObj.value("*ARGUS").toObject();
|
||||
|
||||
QString extra = argusObj.value("EXTRA").toString();
|
||||
QJsonDocument extraDoc = QJsonDocument::fromJson(extra.toUtf8());
|
||||
if (!extraDoc.isNull() && extraDoc.isObject()) {
|
||||
QJsonObject extraObj = extraDoc.object();
|
||||
settings.adres = extraObj.value("IP").toString();
|
||||
settings.userName = extraObj.value("DB_USER").toString();
|
||||
settings.userPassword = extraObj.value("DB_PASSWORD").toString();
|
||||
settings.argusSerial = extraObj.value("SERIAL").toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (responseJson.contains("HOSTS")) {
|
||||
QJsonArray hostsArray = responseJson.value("HOSTS").toArray();
|
||||
for (const QJsonValue &hostValue : hostsArray) {
|
||||
QJsonObject hostObj = hostValue.toObject();
|
||||
QString domain = hostObj.value("DOMAIN").toString();
|
||||
int port = hostObj.value("PORT").toInt();
|
||||
settings.servers.append(qMakePair(domain, QString::number(port)));
|
||||
}
|
||||
}
|
||||
|
||||
return settings;
|
||||
}
|
||||
|
||||
void updateSettings(Settings& settings)
|
||||
{
|
||||
QJsonObject responseJson = httpClient->get(utils::API_URL + "/settings/deviceSettings");
|
||||
|
||||
if (responseJson.contains("SYSTEM")) {
|
||||
QJsonObject systemObj = responseJson.value("SYSTEM").toObject();
|
||||
systemObj["VIN"] = settings.serial;
|
||||
systemObj["MANUFACTURER"] = settings.factory;
|
||||
systemObj["OPERATOR"] = settings.exhuyant;
|
||||
systemObj["TP"] = settings.fleet;
|
||||
systemObj["GOS_NUMBER"] = settings.gosNumber;
|
||||
systemObj["REG_NUMBER"] = settings.factoryNumber;
|
||||
systemObj["GROUP"] = settings.group;
|
||||
|
||||
responseJson["SYSTEM"] = systemObj;
|
||||
}
|
||||
|
||||
if (responseJson.contains("SENSORS")) {
|
||||
QJsonObject sensorsObj = responseJson.value("SENSORS").toObject();
|
||||
if (sensorsObj.contains("*SYSTEM")) {
|
||||
QJsonObject systemSensorsObj = sensorsObj.value("*SYSTEM").toObject();
|
||||
if (systemSensorsObj.contains("*ARGUS")) {
|
||||
QJsonObject argusObj = systemSensorsObj.value("*ARGUS").toObject();
|
||||
|
||||
QJsonObject extraObj;
|
||||
extraObj["IP"] = settings.adres;
|
||||
extraObj["DB_USER"] = settings.userName;
|
||||
extraObj["DB_PASSWORD"] = settings.userPassword;
|
||||
extraObj["SERIAL"] = settings.argusSerial;
|
||||
|
||||
QJsonDocument extraDoc(extraObj);
|
||||
argusObj["EXTRA"] = QString(extraDoc.toJson(QJsonDocument::Compact));
|
||||
|
||||
systemSensorsObj["*ARGUS"] = argusObj;
|
||||
sensorsObj["*SYSTEM"] = systemSensorsObj;
|
||||
responseJson["SENSORS"] = sensorsObj;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (responseJson.contains("HOSTS")) {
|
||||
QJsonArray hostsArray;
|
||||
for (const auto& server : settings.servers) {
|
||||
QJsonObject newHostObj;
|
||||
newHostObj["DOMAIN"] = server.first;
|
||||
newHostObj["PORT"] = server.second.toInt();
|
||||
hostsArray.append(newHostObj);
|
||||
}
|
||||
|
||||
responseJson["HOSTS"] = hostsArray;
|
||||
}
|
||||
|
||||
httpClient->post(utils::API_URL + "/settings/deviceSettings", responseJson);
|
||||
}
|
||||
|
||||
QList<Sensor> getSensors(const QString &group)
|
||||
{
|
||||
GetSensorsP requestParams;
|
||||
requestParams.setGroup(group);
|
||||
QByteArray requestData = requestParams.createRequestJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/data/getDeviceSensors", QJsonDocument::fromJson(requestData).object());
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/data/getDeviceSensors",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
GetSensorsR response;
|
||||
response.parseResponse(responseJson);
|
||||
@ -35,8 +229,8 @@ public:
|
||||
return response.getSensors();
|
||||
}
|
||||
|
||||
QStringList getSensorGroups() {
|
||||
QJsonObject emptyJson;
|
||||
QStringList getSensorGroups()
|
||||
{
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/data/getDeviceSensorGroups");
|
||||
|
||||
GetSensorsGroupsR response;
|
||||
@ -45,8 +239,262 @@ public:
|
||||
return response.getGroups();
|
||||
}
|
||||
|
||||
QMap<QString, QString> getLocalizedSensorGroups()
|
||||
{
|
||||
QJsonObject responseJson = httpClient->get(utils::API_URL + "/data/getDeviceSensorsTree");
|
||||
|
||||
QMap<QString, QString> localizedGroupsMap;
|
||||
|
||||
if (responseJson.contains("groups") && responseJson["groups"].isObject()) {
|
||||
QJsonObject groupsObject = responseJson["groups"].toObject();
|
||||
|
||||
for (const QString &groupKey : groupsObject.keys()) {
|
||||
QJsonObject groupInfo = groupsObject[groupKey].toObject();
|
||||
|
||||
if (groupInfo.contains("name") && groupInfo["name"].isString()) {
|
||||
|
||||
if(groupInfo["name"].toString() == "*SYSTEM") {
|
||||
continue;
|
||||
}
|
||||
|
||||
QString localizedName = groupInfo["name"].toString();
|
||||
|
||||
localizedGroupsMap[localizedName] = groupKey;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return localizedGroupsMap;
|
||||
}
|
||||
|
||||
QMap<QString, QMap<QString, QPair<QString, QString>>> getTranslate()
|
||||
{
|
||||
QJsonObject responseJson = httpClient->get(utils::API_URL + "/data/getDeviceSensorsTree");
|
||||
|
||||
QMap<QString, QMap<QString, QPair<QString, QString>>> translate;
|
||||
|
||||
if (responseJson.contains("groups") && responseJson["groups"].isObject()) {
|
||||
QJsonObject groupsObject = responseJson["groups"].toObject();
|
||||
|
||||
for (const QString &groupKey : groupsObject.keys()) {
|
||||
QJsonObject groupInfo = groupsObject[groupKey].toObject();
|
||||
|
||||
if (groupInfo.contains("sensors") && groupInfo["sensors"].isObject() &&
|
||||
groupInfo.contains("name") && groupInfo["name"].isString()) {
|
||||
|
||||
if(groupInfo["name"].toString() == "*SYSTEM") {
|
||||
continue;
|
||||
}
|
||||
|
||||
QJsonObject sensors = groupInfo["sensors"].toObject();
|
||||
|
||||
QString localizedGroup = groupInfo["name"].toString();
|
||||
|
||||
for (auto sensorKey : sensors.keys()) {
|
||||
if (sensors[sensorKey].isString()) {
|
||||
translate[groupKey][sensorKey].first = localizedGroup;
|
||||
translate[groupKey][sensorKey].second = sensors[sensorKey].toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return translate;
|
||||
}
|
||||
|
||||
QMap<QString, QString> getSensorToLocalSensor()
|
||||
{
|
||||
QJsonObject responseJson = httpClient->get(utils::API_URL + "/data/getDeviceSensorsTree");
|
||||
|
||||
QMap<QString, QString> localizedGroupsMap;
|
||||
|
||||
if (responseJson.contains("groups") && responseJson["groups"].isObject()) {
|
||||
QJsonObject groupsObject = responseJson["groups"].toObject();
|
||||
|
||||
for (const QString &groupKey : groupsObject.keys()) {
|
||||
QJsonObject groupInfo = groupsObject[groupKey].toObject();
|
||||
|
||||
if (groupInfo.contains("name") && groupInfo["name"].isString()) {
|
||||
|
||||
if(groupInfo["name"].toString() == "*SYSTEM") {
|
||||
continue;
|
||||
}
|
||||
|
||||
QString localizedName = groupInfo["name"].toString();
|
||||
|
||||
localizedGroupsMap[localizedName] = groupKey;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return localizedGroupsMap;
|
||||
}
|
||||
|
||||
sensorGroupTree getSensorGroupsTree()
|
||||
{
|
||||
QJsonObject responseJson = httpClient->get(utils::API_URL + "/data/getDeviceSensorsTree");
|
||||
|
||||
GetSensorsGroupsR response;
|
||||
|
||||
QMap<QString, QString> groupToLocalGroup;
|
||||
QMap<QString, QMap<QString, QString>> groupToSensorWithLocal;
|
||||
|
||||
if (responseJson.contains("groups") && responseJson["groups"].isObject()) {
|
||||
QJsonObject groups = responseJson["groups"].toObject();
|
||||
|
||||
for (auto groupKey : groups.keys()) {
|
||||
QJsonObject group = groups[groupKey].toObject();
|
||||
|
||||
if(group["name"].toString() == "*SYSTEM") {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (group.contains("name") && group["name"].isString()) {
|
||||
groupToLocalGroup[groupKey] = group["name"].toString();
|
||||
}
|
||||
|
||||
if (group.contains("sensors") && group["sensors"].isObject()) {
|
||||
QJsonObject sensors = group["sensors"].toObject();
|
||||
QMap<QString, QString> sensorsMap;
|
||||
|
||||
for (auto sensorKey : sensors.keys()) {
|
||||
if (sensors[sensorKey].isString()) {
|
||||
sensorsMap[sensorKey] = sensors[sensorKey].toString();
|
||||
}
|
||||
}
|
||||
groupToSensorWithLocal[groupKey] = sensorsMap;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return sensorGroupTree(groupToLocalGroup, groupToSensorWithLocal);
|
||||
}
|
||||
|
||||
PlotData getDeviceSensorData(const QString &group, const QString &sensorId,
|
||||
qint64 start,
|
||||
qint64 end)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start"] = start;
|
||||
rootObj["end"] = end;
|
||||
rootObj["sensor"] = group + '/' + sensorId;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/data/getDeviceSensorData",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QList<double> x;
|
||||
QList<double> y;
|
||||
|
||||
if (responseJson.contains("data") && responseJson["data"].isArray() &&
|
||||
responseJson.contains("timestamp") && responseJson["timestamp"].isArray())
|
||||
{
|
||||
QJsonArray dataArray = responseJson["data"].toArray();
|
||||
QJsonArray timestampArray = responseJson["timestamp"].toArray();
|
||||
|
||||
if (dataArray.size() == timestampArray.size()) {
|
||||
for (int i = 0; i < dataArray.size(); ++i) {
|
||||
int value = dataArray[i].toInt();
|
||||
qint64 timestamp = timestampArray[i].toInt();
|
||||
x.append(timestamp);
|
||||
y.append(value);
|
||||
}
|
||||
} else {
|
||||
x.append(QTime::currentTime().msecsSinceStartOfDay());
|
||||
y.append(0);
|
||||
}
|
||||
} else {
|
||||
x.append(QTime::currentTime().msecsSinceStartOfDay());
|
||||
y.append(0);
|
||||
}
|
||||
if(x.empty()) {
|
||||
x.append(QTime::currentTime().msecsSinceStartOfDay());
|
||||
y.append(0);
|
||||
}
|
||||
return PlotData(x, y);
|
||||
}
|
||||
|
||||
PlotData getDeviceSensorData(const QString &groupWithSensor,
|
||||
qint64 start,
|
||||
qint64 end)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start"] = start;
|
||||
rootObj["end"] = end;
|
||||
rootObj["sensor"] = groupWithSensor;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/data/getDeviceSensorData",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QList<double> x;
|
||||
QList<double> y;
|
||||
|
||||
if (responseJson.contains("data") && responseJson["data"].isArray() &&
|
||||
responseJson.contains("timestamp") && responseJson["timestamp"].isArray())
|
||||
{
|
||||
QJsonArray dataArray = responseJson["data"].toArray();
|
||||
QJsonArray timestampArray = responseJson["timestamp"].toArray();
|
||||
|
||||
if (dataArray.size() == timestampArray.size()) {
|
||||
for (int i = 0; i < dataArray.size(); ++i) {
|
||||
int value = dataArray[i].toInt();
|
||||
qint64 timestamp = timestampArray[i].toInt();
|
||||
x.append(timestamp);
|
||||
y.append(value);
|
||||
}
|
||||
} else {
|
||||
x.append(QTime::currentTime().msecsSinceStartOfDay());
|
||||
y.append(0);
|
||||
}
|
||||
} else {
|
||||
x.append(QTime::currentTime().msecsSinceStartOfDay());
|
||||
y.append(0);
|
||||
}
|
||||
if(x.empty()) {
|
||||
x.append(QTime::currentTime().msecsSinceStartOfDay());
|
||||
y.append(0);
|
||||
}
|
||||
return PlotData(x, y);
|
||||
}
|
||||
|
||||
QVariantList getPoints(qint64 start, qint64 end)
|
||||
{
|
||||
QJsonObject rootObj;
|
||||
rootObj["start_time"] = start;
|
||||
rootObj["end_time"] = end;
|
||||
QJsonDocument doc(rootObj);
|
||||
QByteArray requestData = doc.toJson();
|
||||
|
||||
QJsonObject responseJson = httpClient->post(utils::API_URL + "/data/geo/getPoints",
|
||||
QJsonDocument::fromJson(requestData).object());
|
||||
|
||||
QVariantList points;
|
||||
if (responseJson.contains("time") && responseJson["time"].isArray() &&
|
||||
responseJson.contains("latitude") && responseJson["latitude"].isArray() &&
|
||||
responseJson.contains("longitude") && responseJson["longitude"].isArray())
|
||||
{
|
||||
QJsonArray timeArray = responseJson["time"].toArray();
|
||||
QJsonArray latitudeArray = responseJson["latitude"].toArray();
|
||||
QJsonArray longitudeArray = responseJson["longitude"].toArray();
|
||||
|
||||
if (timeArray.size() == latitudeArray.size() && timeArray.size() == longitudeArray.size()) {
|
||||
for (int i = 0; i < timeArray.size(); ++i) {
|
||||
qint64 timestamp = timeArray[i].toInt();
|
||||
points.append(QVariant::fromValue(QGeoCoordinate(latitudeArray[i].toDouble(), longitudeArray[i].toDouble())));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return points;
|
||||
}
|
||||
|
||||
private:
|
||||
HttpClient* httpClient;
|
||||
HttpClient *httpClient;
|
||||
};
|
||||
|
||||
#endif // SENSORSERVICE_H
|
||||
|
@ -2,9 +2,12 @@
|
||||
#include <QMouseEvent>
|
||||
|
||||
SensorWidget::SensorWidget(QWidget *parent, const Sensor &sensor)
|
||||
: QFrame(parent), sensor(sensor),
|
||||
titleLabel(new QLabel(this)), valueLabel(new QLabel(this)), incidentLabel(new QLabel(this)),
|
||||
layout(new QVBoxLayout(this))
|
||||
: QFrame(parent)
|
||||
, sensor(sensor)
|
||||
, titleLabel(new QLabel(this))
|
||||
, valueLabel(new QLabel(this))
|
||||
, incidentLabel(new QLabel(this))
|
||||
, layout(new QVBoxLayout(this))
|
||||
{
|
||||
setFrameStyle(QFrame::Box);
|
||||
setLineWidth(1);
|
||||
@ -27,19 +30,21 @@ SensorWidget::SensorWidget(QWidget *parent, const Sensor &sensor)
|
||||
titleLabel->setMinimumHeight(100);
|
||||
titleLabel->setAlignment(Qt::AlignTop | Qt::AlignLeft);
|
||||
|
||||
if(sensor.isBooled) {
|
||||
if (sensor.isBooled) {
|
||||
valueLabel->setText(sensor.lastValue != 0 ? "Да" : "Нет");
|
||||
} else {
|
||||
valueLabel->setText(QString::number(sensor.lastValue) + ' ' + sensor.unitName);
|
||||
incidentLabel->setText(QString::number(sensor.alarmLowerBound) + "-" + QString::number(sensor.alarmUpperBound));
|
||||
incidentLabel->setText(QString::number(sensor.alarmLowerBound) + "-"
|
||||
+ QString::number(sensor.alarmUpperBound));
|
||||
}
|
||||
layout->setContentsMargins(10, 10, 10, 10);
|
||||
layout->setSpacing(5);
|
||||
setLayout(layout);
|
||||
}
|
||||
|
||||
void SensorWidget::mousePressEvent(QMouseEvent *event) {
|
||||
emit clicked(this); // Генерация сигнала о клике
|
||||
void SensorWidget::mousePressEvent(QMouseEvent *event)
|
||||
{
|
||||
emit clicked(this); // Генерация сигнала о клике
|
||||
QFrame::mousePressEvent(event);
|
||||
}
|
||||
|
||||
@ -108,22 +113,26 @@ void SensorWidget::setErrorState()
|
||||
}
|
||||
}
|
||||
|
||||
Sensor SensorWidget::getSensor() const {
|
||||
Sensor SensorWidget::getSensor() const
|
||||
{
|
||||
return sensor;
|
||||
}
|
||||
|
||||
void SensorWidget::setSensor(const Sensor value) {
|
||||
void SensorWidget::setSensor(const Sensor value)
|
||||
{
|
||||
sensor = value;
|
||||
QString titleText = sensor.name;
|
||||
if (titleText.length() > 40) {
|
||||
titleText = titleText.left(37) + "...";
|
||||
}
|
||||
titleLabel->setText(titleText);
|
||||
if(sensor.isBooled) {
|
||||
if (sensor.isBooled) {
|
||||
valueLabel->setText(sensor.lastValue != 0 ? "Да" : "Нет");
|
||||
incidentLabel->hide();
|
||||
} else {
|
||||
valueLabel->setText(QString::number(sensor.lastValue) + ' ' + sensor.unitName);
|
||||
incidentLabel->setText(QString::number(sensor.alarmLowerBound) + "-" + QString::number(sensor.alarmUpperBound));
|
||||
incidentLabel->show();
|
||||
incidentLabel->setText(QString::number(sensor.alarmLowerBound) + "-"
|
||||
+ QString::number(sensor.alarmUpperBound));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,18 +1,17 @@
|
||||
#ifndef SENSORWIDGET_H
|
||||
#define SENSORWIDGET_H
|
||||
|
||||
#include "getsensors_r.h"
|
||||
#include <QFrame>
|
||||
#include <QLabel>
|
||||
#include <QVBoxLayout>
|
||||
#include "getsensors_r.h"
|
||||
|
||||
class SensorWidget : public QFrame
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SensorWidget(QWidget *parent = nullptr,
|
||||
const Sensor &sensor = Sensor());
|
||||
explicit SensorWidget(QWidget *parent = nullptr, const Sensor &sensor = Sensor());
|
||||
|
||||
void setErrorState();
|
||||
|
||||
|
63
serverwidget.cpp
Normal file
63
serverwidget.cpp
Normal file
@ -0,0 +1,63 @@
|
||||
#include "serverwidget.h"
|
||||
|
||||
ServerWidget::ServerWidget(const QString &domain, int port, QWidget *parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
deleted = 0;
|
||||
domainLineEdit = new QLineEdit(domain, this);
|
||||
portLineEdit = new QLineEdit(QString::number(port), this);
|
||||
removeButton = new QPushButton(QIcon(":/png/res/png/delete.png"), "", this);
|
||||
|
||||
domainLineEdit->setFixedSize(360, 35);
|
||||
domainLineEdit->setStyleSheet(R"(
|
||||
border: 2px solid #DCD174;
|
||||
font-family: Inter;
|
||||
font-size: 15px;
|
||||
font-weight: 400;
|
||||
line-height: 31.47px;
|
||||
text-align: left;
|
||||
background: #00000000;
|
||||
color: #13385F;
|
||||
)");
|
||||
portLineEdit->setFixedSize(150, 35);
|
||||
portLineEdit->setStyleSheet(R"(
|
||||
border: 2px solid #DCD174;
|
||||
font-family: Inter;
|
||||
font-size: 15px;
|
||||
font-weight: 400;
|
||||
line-height: 31.47px;
|
||||
text-align: left;
|
||||
background: #00000000;
|
||||
color: #13385F;
|
||||
)");
|
||||
removeButton->setFixedSize(35, 35);
|
||||
removeButton->setStyleSheet(R"(
|
||||
border: none;
|
||||
background: #00000000;
|
||||
)");
|
||||
|
||||
QHBoxLayout *layout = new QHBoxLayout(this);
|
||||
layout->setSpacing(10);
|
||||
layout->setContentsMargins(0, 0, 0, 0);
|
||||
layout->addWidget(domainLineEdit);
|
||||
layout->addWidget(portLineEdit);
|
||||
layout->addWidget(removeButton);
|
||||
|
||||
connect(removeButton, &QPushButton::clicked, this, [this]() {
|
||||
deleted = 1;
|
||||
emit removeWidget(this);
|
||||
});
|
||||
|
||||
setLayout(layout);
|
||||
}
|
||||
|
||||
QString ServerWidget::getDomain() const {
|
||||
return domainLineEdit->text();
|
||||
}
|
||||
|
||||
QString ServerWidget::getPort() const {
|
||||
return portLineEdit->text();
|
||||
}
|
||||
|
||||
ServerWidget::~ServerWidget() {
|
||||
}
|
33
serverwidget.h
Normal file
33
serverwidget.h
Normal file
@ -0,0 +1,33 @@
|
||||
// ServerWidget.h
|
||||
#ifndef SERVERWIDGET_H
|
||||
#define SERVERWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QLineEdit>
|
||||
#include <QPushButton>
|
||||
#include <QIcon>
|
||||
#include <QHBoxLayout>
|
||||
|
||||
class ServerWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit ServerWidget(const QString &domain, int port, QWidget *parent = nullptr);
|
||||
~ServerWidget();
|
||||
|
||||
signals:
|
||||
void removeWidget(ServerWidget *widget);
|
||||
|
||||
public:
|
||||
bool deleted = 0;
|
||||
QString getPort() const;
|
||||
QString getDomain() const;
|
||||
|
||||
private:
|
||||
QLineEdit *domainLineEdit;
|
||||
QLineEdit *portLineEdit;
|
||||
QPushButton *removeButton;
|
||||
};
|
||||
|
||||
#endif // SERVERWIDGET_H
|
@ -1,5 +1,5 @@
|
||||
#include "utils.h"
|
||||
|
||||
namespace utils {
|
||||
QString API_URL = "http://localhost:8080"; // Определение переменной
|
||||
QString API_URL = "http://localhost:8080";
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user