aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--Application/cluster-service.cpp120
-rw-r--r--Application/main.cpp23
-rw-r--r--Assets/Common/Shaders/Qt6/guageMask.frag17
-rw-r--r--Assets/Common/Shaders/Qt6/guageMask.vert13
-rw-r--r--CMakeLists.txt102
-rw-r--r--GUIModel/Map/Map.qml69
-rw-r--r--GUIModel/Menu/Menu.qml68
-rw-r--r--GUIModel/Menu/MenuAdas.qml344
-rw-r--r--GUIModel/Menu/MenuAdasIconAdas.qml102
-rw-r--r--GUIModel/Menu/MenuAdasIconNormal.qml100
-rw-r--r--GUIModel/Menu/MenuAudio.qml172
-rw-r--r--GUIModel/Menu/MenuContents.qml559
-rw-r--r--GUIModel/Menu/MenuFrame.qml434
-rw-r--r--GUIModel/Menu/MenuMain.qml448
-rw-r--r--GUIModel/Menu/MenuRadio.qml172
-rw-r--r--GUIModel/Menu/MenuShade.qml286
-rw-r--r--GUIModel/Meter/ChargeGuage.qml175
-rw-r--r--GUIModel/Meter/DigitalSpeed.qml2
-rw-r--r--GUIModel/Meter/Mask.qml2
-rw-r--r--GUIModel/Meter/Meter.qml106
-rw-r--r--GUIModel/Meter/Ready.qml2
-rw-r--r--GUIModel/Meter/Ring.qml2
-rw-r--r--GUIModel/Meter/Sideline.qml126
-rw-r--r--GUIModel/Meter/SpeedGuage.qml85
-rw-r--r--GUIModel/Meter/SpeedNeedle.qml243
-rw-r--r--GUIModel/Meter/Tachometer.qml105
-rw-r--r--GUIModel/MeterEffect/Effect.qrc8
-rw-r--r--GUIModel/MeterEffect/GaussianBlur.qml4
-rw-r--r--GUIModel/MeterEffect/OpacityMask.qml3
-rw-r--r--GUIModel/MeterEffect/Qt5/Effect.qrc8
-rw-r--r--GUIModel/MeterEffect/Qt5/GaussianBlur.qml3
-rw-r--r--GUIModel/MeterEffect/Qt5/OpacityMask.qml3
-rw-r--r--GUIModel/MeterEffect/Qt5/ShaderPath.qml7
-rw-r--r--GUIModel/MeterEffect/Qt5/qmldir3
-rw-r--r--GUIModel/MeterEffect/ShaderPath.qml7
-rw-r--r--GUIModel/MeterEffect/qmldir3
37 files changed, 2031 insertions, 1898 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..2cd9fa3
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+CMakeLists.txt.user*
+build-*
+build* \ No newline at end of file
diff --git a/Application/cluster-service.cpp b/Application/cluster-service.cpp
index 1bc86ad..37bd8cb 100644
--- a/Application/cluster-service.cpp
+++ b/Application/cluster-service.cpp
@@ -1,9 +1,12 @@
#include "cluster-service.hxx"
-#include <cluster_api.h>
-#include <cluster-api-sdevent.h>
+#if ENABLE_CLUSTER_BACKEND
+#include <climits>
+#include <cluster-api-sdevent.h>
+#include <cluster_api.h>
#include <systemd/sd-daemon.h>
#include <systemd/sd-event.h>
+#endif
//-----------------------------------------------------------------------------------
QClusterService::QClusterService()
@@ -21,8 +24,9 @@ Q_INVOKABLE int QClusterService::getSpAnalogVal()
{
uint32_t speed_u32 = 0;
int retval = 0;
-
+#if ENABLE_CLUSTER_BACKEND
speed_u32 = ::getSpAnalogVal();
+#endif
if (speed_u32 > (uint32_t)INT_MAX)
retval = INT_MAX;
else
@@ -35,8 +39,9 @@ Q_INVOKABLE int QClusterService::getTaAnalogVal()
{
uint32_t ta_u32 = 0;
int retval = 0;
-
+#if ENABLE_CLUSTER_BACKEND
ta_u32 = ::getTaAnalogVal();
+#endif
if (ta_u32 > (uint32_t)INT_MAX)
retval = INT_MAX;
else
@@ -49,8 +54,9 @@ Q_INVOKABLE int QClusterService::getTrcomTripAVal()
{
uint32_t tripa_u32 = 0;
int retval = 0;
-
+#if ENABLE_CLUSTER_BACKEND
tripa_u32 = ::getTrcomTripAVal();
+#endif
if (tripa_u32 > (uint32_t)INT_MAX)
retval = INT_MAX;
else
@@ -63,8 +69,9 @@ Q_INVOKABLE int QClusterService::getOTempVal()
{
int16_t tmp_val = -40;
int retval = -40;
-
+#if ENABLE_CLUSTER_BACKEND
tmp_val = ::getOTempVal();
+#endif
retval = (int)tmp_val;
return retval;
@@ -72,272 +79,292 @@ Q_INVOKABLE int QClusterService::getOTempVal()
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getTurnR()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getTurnR();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getTurnL()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getTurnL();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getFrontRightSeatbelt()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getFrontRightSeatbelt();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getFrontLeftSeatbelt()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getFrontLeftSeatbelt();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getGeneralWarn()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getGeneralWarn();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getEngine()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getEngine();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getLowBattery()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getLowBattery();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getLdwOff()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getLdwOff();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getSrsAirbag()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getSrsAirbag();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getEspOff()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getEspOff();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getBrake()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getBrake();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getAbs()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getAbs();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getEspAct()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getEspAct();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getHillDescent()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getHillDescent();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getImmobi()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getImmobi();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getDoor()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getDoor();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getEps()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getEps();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getAutoHiBeamGreen()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getAutoHiBeamGreen();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE bool QClusterService::getHighbeam()
{
- IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
bool retval = false;
+#if ENABLE_CLUSTER_BACKEND
+ IC_HMI_ON_OFF on_off_flag = IC_HMI_OFF;
on_off_flag = ::getHighbeam();
if (on_off_flag == IC_HMI_OFF)
retval = false;
else
retval = true;
-
+#endif
return retval;
}
//-----------------------------------------------------------------------------------
Q_INVOKABLE QString QClusterService::getGearAtVal()
{
+#if ENABLE_CLUSTER_BACKEND
IC_HMI_GEAR_AT_VAL gear_val = IC_HMI_AT_UNUSED;
QString gear_string = QString("");
@@ -385,6 +412,9 @@ Q_INVOKABLE QString QClusterService::getGearAtVal()
}
return gear_string;
+#else
+ return QStringLiteral("Test");
+#endif
}
//-----------------------------------------------------------------------------------
/*
@@ -395,6 +425,7 @@ static void ic_notify(uint64_t signal, IC_HMI_ON_OFF val)ui
*/
void QClusterService::run()
{
+#if ENABLE_CLUSTER_BACKEND
sd_event *event = NULL;
data_pool_client_handle_sdevent handle = NULL;
int ret = -1;
@@ -421,6 +452,7 @@ finish:
(void) data_pool_client_cleanup_sdevent(handle);
event = sd_event_unref(event);
+#endif
return;
}
diff --git a/Application/main.cpp b/Application/main.cpp
index 51b0c39..1593d25 100644
--- a/Application/main.cpp
+++ b/Application/main.cpp
@@ -14,17 +14,21 @@
* limitations under the License.
*/
+#include <QDebug>
+#include <QDir>
+#include <QDirIterator>
#include <QGuiApplication>
#include <QQmlApplicationEngine>
-#include <QSurfaceFormat>
-#include <QDir>
#include <QQmlContext>
-#include <QDebug>
-
+#include <QSurfaceFormat>
+#if QT_VERSION >= 0x060000
+#include <QQuickWindow>
+#endif
#include "cluster-service.hxx"
int main(int argc, char *argv[])
{
+#ifdef CROSSCOMPILING
QSurfaceFormat defaultFormat;
defaultFormat.setSwapBehavior(QSurfaceFormat::TripleBuffer);
defaultFormat.setRenderableType(QSurfaceFormat::OpenGLES);
@@ -34,6 +38,17 @@ int main(int argc, char *argv[])
defaultFormat.setDepthBufferSize(8);
defaultFormat.setAlphaBufferSize(8);
QSurfaceFormat::setDefaultFormat(defaultFormat);
+#endif
+
+#if QT_VERSION >= 0x060000
+ QQuickWindow::setGraphicsApi(QSGRendererInterface::OpenGL);
+ qputenv("QT_ENABLE_HIGHDPI_SCALING", "0");
+#endif
+
+ QDirIterator it(":", QDirIterator::Subdirectories);
+ while (it.hasNext()) {
+ qDebug() << it.next();
+ }
QGuiApplication app(argc, argv);
diff --git a/Assets/Common/Shaders/Qt6/guageMask.frag b/Assets/Common/Shaders/Qt6/guageMask.frag
new file mode 100644
index 0000000..28c8784
--- /dev/null
+++ b/Assets/Common/Shaders/Qt6/guageMask.frag
@@ -0,0 +1,17 @@
+#version 440
+layout(location = 0) in vec2 coord;
+layout(location = 0) out vec4 fragColor;
+layout(std140, binding = 0) uniform buf {
+ mat4 qt_Matrix;
+ float qt_Opacity;
+ float angleBase;
+ float angle;
+};
+layout(binding = 1) uniform sampler2D src;
+
+void main(){
+ mediump vec2 d=2.0*coord-vec2(1.0,1.0);
+ mediump float a=atan(d.x,-d.y);
+ mediump vec4 tex = texture(src, coord);
+ fragColor = (angleBase<=a && a<=angle) ? tex * qt_Opacity : tex * 0.0;
+}
diff --git a/Assets/Common/Shaders/Qt6/guageMask.vert b/Assets/Common/Shaders/Qt6/guageMask.vert
new file mode 100644
index 0000000..481dc61
--- /dev/null
+++ b/Assets/Common/Shaders/Qt6/guageMask.vert
@@ -0,0 +1,13 @@
+#version 440
+layout(location = 0) in vec4 qt_Vertex;
+layout(location = 1) in vec2 qt_MultiTexCoord0;
+layout(location = 0) out vec2 coord;
+layout(std140, binding = 0) uniform buf {
+ mat4 qt_Matrix;
+ float qt_Opacity;
+};
+
+void main(){
+ coord = qt_MultiTexCoord0;
+ gl_Position = qt_Matrix * qt_Vertex;
+}
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 79b168e..593534e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,57 +1,85 @@
-cmake_minimum_required(VERSION 3.10.0)
-project(cluster VERSION 1.0.0)
+cmake_minimum_required(VERSION 3.16.0)
+project(cluster VERSION 1.0.0 LANGUAGES CXX)
+
+set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_STANDARD 11)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(INSTALL_DIRECTORY "/opt/apps")
-find_package(PkgConfig REQUIRED)
-find_package(Qt5Core REQUIRED)
-find_package(Qt5Qml REQUIRED)
-find_package(Qt5Gui REQUIRED)
-find_package(Qt5QuickCompiler REQUIRED)
-
-pkg_check_modules(CLUSTERAPI REQUIRED cluster-api-systemd)
+find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Core Quick)
+find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Core Quick)
-include_directories(
- "${Qt5Core_INCLUDE_DIRS}"
- "${Qt5Qml_INCLUDE_DIRS}"
- "${Qt5Gui_INCLUDE_DIRS}"
-)
+if (CMAKE_CROSSCOMPILING)
+ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(CLUSTERAPI REQUIRED cluster-api-systemd)
+endif()
set(SOURCES
Application/main.cpp
Application/cluster-service.cpp
Application/cluster-service.hxx
- )
-
-qt5_add_resources(
- RESOURCES
- GUIModel/GUIModel.qrc
- Assets/Common/3DModelData.qrc
- Assets/Common/3DModelTexture.qrc
- Assets/Common/Fonts.qrc
- Assets/Common/Images.qrc
- Assets/Common/Shaders.qrc
)
-add_executable(
- ${PROJECT_NAME}
- ${SOURCES}
- ${RESOURCES}
-)
+if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
+ find_package(Qt6 COMPONENTS ShaderTools)
-target_link_libraries(
- ${PROJECT_NAME}
- Qt5::Core
- Qt5::Qml
- Qt5::Gui
+ qt_add_executable(${PROJECT_NAME}
+ MANUAL_FINALIZATION
+ ${SOURCES}
+ GUIModel/GUIModel.qrc
+ Assets/Common/3DModelData.qrc
+ Assets/Common/3DModelTexture.qrc
+ Assets/Common/Fonts.qrc
+ Assets/Common/Images.qrc
+ Assets/Common/Shaders.qrc
+ GUIModel/MeterEffect/Effect.qrc
+ )
+ qt6_add_shaders(${PROJECT_NAME} "${PROJECT_NAME}"
+ PREFIX
+ "/"
+ FILES
+ "Assets/Common/Shaders/Qt6/guageMask.frag"
+ "Assets/Common/Shaders/Qt6/guageMask.vert"
+ )
+else()
+ qt5_add_resources(RESOURCES
+ GUIModel/GUIModel.qrc
+ Assets/Common/3DModelData.qrc
+ Assets/Common/3DModelTexture.qrc
+ Assets/Common/Fonts.qrc
+ Assets/Common/Images.qrc
+ Assets/Common/Shaders.qrc
+ GUIModel/MeterEffect/Qt5/Effect.qrc
+ )
+
+ add_executable(
+ ${PROJECT_NAME}
+ ${SOURCES}
+ ${RESOURCES}
+ )
+endif()
+
+target_link_libraries(${PROJECT_NAME} PRIVATE
+ Qt${QT_VERSION_MAJOR}::Core
+ Qt${QT_VERSION_MAJOR}::Quick
+ Qt${QT_VERSION_MAJOR}::Gui
${CLUSTERAPI_LIBRARIES}
)
+if(CMAKE_CROSSCOMPILING)
+ target_compile_definitions(${PROJECT_NAME} PRIVATE
+ ENABLE_CLUSTER_BACKEND=1 CROSSCOMPILING=1
+ )
+else()
+ target_compile_definitions(${PROJECT_NAME} PRIVATE
+ ENABLE_CLUSTER_BACKEND=0
+ )
+endif()
+
link_directories( ${CLUSTERAPI_LIBRARY_DIRS} )
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CLUSTERAPI_CXX_FLAGS} ${CLUSTERAPI_C_FLAGS}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CLUSTERAPI_C_FLAGS}")
@@ -64,3 +92,7 @@ file(GLOB VIDEOS ${CMAKE_CURRENT_SOURCE_DIR}/Assets/Common/Videos/*)
install(FILES ${VIDEOS} DESTINATION ${APPS_INST_DIR})
install(TARGETS ${PROJECT_NAME} DESTINATION ${APPS_INST_DIR})
+if(QT_VERSION_MAJOR EQUAL 6)
+ qt_import_qml_plugins(${PROJECT_NAME})
+ qt_finalize_executable(${PROJECT_NAME})
+endif()
diff --git a/GUIModel/Map/Map.qml b/GUIModel/Map/Map.qml
index d9ab347..1d4fa90 100644
--- a/GUIModel/Map/Map.qml
+++ b/GUIModel/Map/Map.qml
@@ -16,55 +16,59 @@
import QtQuick 2.14
import QtMultimedia 5.14
-import QtGraphicalEffects 1.14
Item {
id: map
- x:1920 - 1200
- y:0
- width : 1200
- height : 720
+ x: 1920 - 1200
+ y: 0
+ width: 1200
+ height: 720
Component.onCompleted: {
- mapVideo.play()
+ mapVideo.play();
}
- Connections{
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- }
+ onTransNormalToAdas: {}
- onTransAdasToMap:{
- adasToMapAnimationMap.start()
+ onTransAdasToMap: {
+ adasToMapAnimationMap.start();
}
- onTransMapToNormal:{
- mapToNormalAnimationMap.start()
+ onTransMapToNormal: {
+ mapToNormalAnimationMap.start();
}
}
- Item{
+ Item {
id: mapParts
- visible:false
+ visible: false
anchors.fill: parent
- Item{
- id:mapMask
+ Item {
+ id: mapMask
x: 0
y: 0
- Image{
+ Image {
width: 1200
height: 720
source: "qrc:/Images/ADASView/MAP/map_mask.ktx"
}
- Image{ source:"qrc:/Images/ADASView/MAP/acc_cover.ktx"; width:1412; height:98; x:508-map.x; y:622 }
+ Image {
+ source: "qrc:/Images/ADASView/MAP/acc_cover.ktx"
+ width: 1412
+ height: 98
+ x: 508 - map.x
+ y: 622
+ }
}
- }
+ }
- SequentialAnimation{
- id:adasToMapAnimationMap
- onStarted: rootItem.focus=false
- onStopped: rootItem.focus=true
+ SequentialAnimation {
+ id: adasToMapAnimationMap
+ onStarted: rootItem.focus = false
+ onStopped: rootItem.focus = true
PauseAnimation {
duration: 330
@@ -77,24 +81,23 @@ Item {
to: true
}
- PropertyAnimation{
+ PropertyAnimation {
target: mapParts
property: "opacity"
duration: 330
- from:0
- to:1
+ from: 0
+ to: 1
}
}
- SequentialAnimation{
- id:mapToNormalAnimationMap
- onStarted: rootItem.focus=false
+ SequentialAnimation {
+ id: mapToNormalAnimationMap
+ onStarted: rootItem.focus = false
PauseAnimation {
duration: 254
}
-
- PropertyAnimation{
+ PropertyAnimation {
target: mapParts
property: "opacity"
duration: 330
@@ -109,6 +112,4 @@ Item {
to: false
}
}
-
-
}
diff --git a/GUIModel/Menu/Menu.qml b/GUIModel/Menu/Menu.qml
index 9610b49..7a6d534 100644
--- a/GUIModel/Menu/Menu.qml
+++ b/GUIModel/Menu/Menu.qml
@@ -15,65 +15,63 @@
*/
import QtQuick 2.0
-import QtGraphicalEffects 1.0
import QtQuick.Shapes 1.11
-
-Item{
+Item {
id: menuRoot
- Connections{
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- menuMain.startAnimationNormalToAdas()
- menuContents.startAnimationNormalToAdas()
- menuShade.startAnimationNormalToAdas()
+ onTransNormalToAdas: {
+ menuMain.startAnimationNormalToAdas();
+ menuContents.startAnimationNormalToAdas();
+ menuShade.startAnimationNormalToAdas();
}
- onKeyPressed_Up:{
- if(menu.state === "open"){
- menuMain.incrementIndex()
+ onKeyPressed_Up: {
+ if (menu.state === "open") {
+ menuMain.incrementIndex();
}
}
- onKeyPressed_Down:{
- if(menu.state === "open"){
- menuMain.decrementIndex()
+ onKeyPressed_Down: {
+ if (menu.state === "open") {
+ menuMain.decrementIndex();
}
}
- onKeyPressed_Left:{
- if(menu.state === "close"){
- menuContents.decrementIndex()
+ onKeyPressed_Left: {
+ if (menu.state === "close") {
+ menuContents.decrementIndex();
}
}
- onKeyPressed_Right:{
- if(menu.state === "close"){
- menuContents.incrementIndex()
+ onKeyPressed_Right: {
+ if (menu.state === "close") {
+ menuContents.incrementIndex();
}
}
- onKeyPressed_Enter:{
- if(menu.state === "close"){
- menuContents.enter()
- }else if(menu.state === "open"){
- menuContents.close()
- menuMain.close()
- menu.state = "close"
+ onKeyPressed_Enter: {
+ if (menu.state === "close") {
+ menuContents.enter();
+ } else if (menu.state === "open") {
+ menuContents.close();
+ menuMain.close();
+ menu.state = "close";
}
}
- onKeyPressed_Menu:{
- if(menu.state === "close"){
- menuContents.open()
- menuMain.open()
- menu.state = "open"
+ onKeyPressed_Menu: {
+ if (menu.state === "close") {
+ menuContents.open();
+ menuMain.open();
+ menu.state = "open";
}
}
}
- Item{
+ Item {
id: menu
property var mode: "normal" /* Normal or Adas */
@@ -92,8 +90,4 @@ Item{
id: menuShade
}
}
-
-
-
-
}
diff --git a/GUIModel/Menu/MenuAdas.qml b/GUIModel/Menu/MenuAdas.qml
index 4d031d2..493cb2c 100644
--- a/GUIModel/Menu/MenuAdas.qml
+++ b/GUIModel/Menu/MenuAdas.qml
@@ -14,175 +14,175 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item{
- id:menuAdasRoot
- visible: false
-
- /* public properties */
- property alias mode:menuAdas.mode
-
- /* public functions */
- function incrementIndex(){
- menuAdas.incrementIndex()
- }
-
- function decrementIndex(){
- menuAdas.decrementIndex()
- }
-
- function changeEnabled(){
- menuAdas.changeEnabled()
- }
-
-
- Item {
- id: menuAdas
- visible:true
- width: 826
- height: 358
-
- property var mode: "normal" /* normal or adas */
-
- property int index : 0
- property bool icon0Enabled : false
- property bool icon1Enabled : false
- property bool icon2Enabled : false
-
- property bool icon0Focused : true
- property bool icon1Focused : false
- property bool icon2Focused : false
-
- onModeChanged: {
- if(mode === "normal"){
- menuAdasNormal.visible = true
- menuAdasAdas.visible = false
- }else if(mode === "adas"){
- menuAdasNormal.visible = false
- menuAdasAdas.visible = true
- }else{
- menuAdasNormal.visible = true
- menuAdasAdas.visible = false
- }
- }
-
- function incrementIndex(){
- index++
- if(index === 3) index = 0
-
- if(index == 0){
- icon0Focused = true
- icon1Focused = false
- icon2Focused = false
- }
- else if(index == 1){
- icon0Focused = false
- icon1Focused = true
- icon2Focused = false
- }
- else if(index == 2){
- icon0Focused = false
- icon1Focused = false
- icon2Focused = true
- }
- }
- function decrementIndex(){
- index--
- if(index === -1) index = 2
-
- if(index == 0){
- icon0Focused = true
- icon1Focused = false
- icon2Focused = false
- }
- else if(index == 1){
- icon0Focused = false
- icon1Focused = true
- icon2Focused = false
- }
- else if(index == 2){
- icon0Focused = false
- icon1Focused = false
- icon2Focused = true
- }
- }
- function changeEnabled(){
- if(index === 0){ // left
- icon0Enabled = !(icon0Enabled)
- }
- if(index === 1) { //center
- icon1Enabled = !(icon1Enabled)
- }
- if(index === 2) { //right
- icon2Enabled = !(icon2Enabled)
- }
- }
-
- /**************adas image******************/
- Item{
- id: menuAdasNormal
-
- MenuAdasIconNormal {
- enabled: menuAdas.icon0Enabled
- focused: menuAdas.icon0Focused
- offImage: "qrc:/Images/NormalView/ADAS/adas_icon1_off.png"
- onImage: "qrc:/Images/NormalView/ADAS/adas_icon1_on.png"
- textImage: "qrc:/Images/NormalView/ADAS/adas_text1.png"
- }
-
- MenuAdasIconNormal {
- x:130
- enabled: menuAdas.icon1Enabled
- focused: menuAdas.icon1Focused
- offImage: "qrc:/Images/NormalView/ADAS/adas_icon2_off.png"
- onImage: "qrc:/Images/NormalView/ADAS/adas_icon2_on.png"
- textImage: "qrc:/Images/NormalView/ADAS/adas_text2.png"
- }
-
- MenuAdasIconNormal {
- x:260
- enabled: menuAdas.icon2Enabled
- focused: menuAdas.icon2Focused
- offImage: "qrc:/Images/NormalView/ADAS/adas_icon3_off.png"
- onImage: "qrc:/Images/NormalView/ADAS/adas_icon3_on.png"
- textImage: "qrc:/Images/NormalView/ADAS/adas_text3.png"
- }
- }
-
-
- Item{
- id: menuAdasAdas
- visible: false
-
- MenuAdasIconAdas {
- enabled: menuAdas.icon0Enabled
- focused: menuAdas.icon0Focused
- offImage: "qrc:/Images/ADASView/MENU/adas_icon1_off.png"
- onImage: "qrc:/Images/ADASView/MENU/adas_icon1_on.png"
- textImage: "qrc:/Images/ADASView/MENU/adas_text1.png"
- }
-
- MenuAdasIconAdas {
- x:120
- enabled: menuAdas.icon1Enabled
- focused: menuAdas.icon1Focused
- offImage: "qrc:/Images/ADASView/MENU/adas_icon2_off.png"
- onImage: "qrc:/Images/ADASView/MENU/adas_icon2_on.png"
- textImage: "qrc:/Images/ADASView/MENU/adas_text2.png"
- }
-
- MenuAdasIconAdas {
- x:240
- enabled: menuAdas.icon2Enabled
- focused: menuAdas.icon2Focused
- offImage: "qrc:/Images/ADASView/MENU/adas_icon3_off.png"
- onImage: "qrc:/Images/ADASView/MENU/adas_icon3_on.png"
- textImage: "qrc:/Images/ADASView/MENU/adas_text3.png"
- }
-
- }
- }
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item{
+ id:menuAdasRoot
+ visible: false
+
+ /* public properties */
+ property alias mode:menuAdas.mode
+
+ /* public functions */
+ function incrementIndex(){
+ menuAdas.incrementIndex()
+ }
+
+ function decrementIndex(){
+ menuAdas.decrementIndex()
+ }
+
+ function changeEnabled(){
+ menuAdas.changeEnabled()
+ }
+
+
+ Item {
+ id: menuAdas
+ visible:true
+ width: 826
+ height: 358
+
+ property var mode: "normal" /* normal or adas */
+
+ property int index : 0
+ property bool icon0Enabled : false
+ property bool icon1Enabled : false
+ property bool icon2Enabled : false
+
+ property bool icon0Focused : true
+ property bool icon1Focused : false
+ property bool icon2Focused : false
+
+ onModeChanged: {
+ if(mode === "normal"){
+ menuAdasNormal.visible = true
+ menuAdasAdas.visible = false
+ }else if(mode === "adas"){
+ menuAdasNormal.visible = false
+ menuAdasAdas.visible = true
+ }else{
+ menuAdasNormal.visible = true
+ menuAdasAdas.visible = false
+ }
+ }
+
+ function incrementIndex(){
+ index++
+ if(index === 3) index = 0
+
+ if(index == 0){
+ icon0Focused = true
+ icon1Focused = false
+ icon2Focused = false
+ }
+ else if(index == 1){
+ icon0Focused = false
+ icon1Focused = true
+ icon2Focused = false
+ }
+ else if(index == 2){
+ icon0Focused = false
+ icon1Focused = false
+ icon2Focused = true
+ }
+ }
+ function decrementIndex(){
+ index--
+ if(index === -1) index = 2
+
+ if(index == 0){
+ icon0Focused = true
+ icon1Focused = false
+ icon2Focused = false
+ }
+ else if(index == 1){
+ icon0Focused = false
+ icon1Focused = true
+ icon2Focused = false
+ }
+ else if(index == 2){
+ icon0Focused = false
+ icon1Focused = false
+ icon2Focused = true
+ }
+ }
+ function changeEnabled(){
+ if(index === 0){ // left
+ icon0Enabled = !(icon0Enabled)
+ }
+ if(index === 1) { //center
+ icon1Enabled = !(icon1Enabled)
+ }
+ if(index === 2) { //right
+ icon2Enabled = !(icon2Enabled)
+ }
+ }
+
+ /**************adas image******************/
+ Item{
+ id: menuAdasNormal
+
+ MenuAdasIconNormal {
+ enabled: menuAdas.icon0Enabled
+ focused: menuAdas.icon0Focused
+ offImage: "qrc:/Images/NormalView/ADAS/adas_icon1_off.png"
+ onImage: "qrc:/Images/NormalView/ADAS/adas_icon1_on.png"
+ textImage: "qrc:/Images/NormalView/ADAS/adas_text1.png"
+ }
+
+ MenuAdasIconNormal {
+ x:130
+ enabled: menuAdas.icon1Enabled
+ focused: menuAdas.icon1Focused
+ offImage: "qrc:/Images/NormalView/ADAS/adas_icon2_off.png"
+ onImage: "qrc:/Images/NormalView/ADAS/adas_icon2_on.png"
+ textImage: "qrc:/Images/NormalView/ADAS/adas_text2.png"
+ }
+
+ MenuAdasIconNormal {
+ x:260
+ enabled: menuAdas.icon2Enabled
+ focused: menuAdas.icon2Focused
+ offImage: "qrc:/Images/NormalView/ADAS/adas_icon3_off.png"
+ onImage: "qrc:/Images/NormalView/ADAS/adas_icon3_on.png"
+ textImage: "qrc:/Images/NormalView/ADAS/adas_text3.png"
+ }
+ }
+
+
+ Item{
+ id: menuAdasAdas
+ visible: false
+
+ MenuAdasIconAdas {
+ enabled: menuAdas.icon0Enabled
+ focused: menuAdas.icon0Focused
+ offImage: "qrc:/Images/ADASView/MENU/adas_icon1_off.png"
+ onImage: "qrc:/Images/ADASView/MENU/adas_icon1_on.png"
+ textImage: "qrc:/Images/ADASView/MENU/adas_text1.png"
+ }
+
+ MenuAdasIconAdas {
+ x:120
+ enabled: menuAdas.icon1Enabled
+ focused: menuAdas.icon1Focused
+ offImage: "qrc:/Images/ADASView/MENU/adas_icon2_off.png"
+ onImage: "qrc:/Images/ADASView/MENU/adas_icon2_on.png"
+ textImage: "qrc:/Images/ADASView/MENU/adas_text2.png"
+ }
+
+ MenuAdasIconAdas {
+ x:240
+ enabled: menuAdas.icon2Enabled
+ focused: menuAdas.icon2Focused
+ offImage: "qrc:/Images/ADASView/MENU/adas_icon3_off.png"
+ onImage: "qrc:/Images/ADASView/MENU/adas_icon3_on.png"
+ textImage: "qrc:/Images/ADASView/MENU/adas_text3.png"
+ }
+
+ }
+ }
+}
diff --git a/GUIModel/Menu/MenuAdasIconAdas.qml b/GUIModel/Menu/MenuAdasIconAdas.qml
index d1b8fef..0988cb8 100644
--- a/GUIModel/Menu/MenuAdasIconAdas.qml
+++ b/GUIModel/Menu/MenuAdasIconAdas.qml
@@ -14,54 +14,54 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item{
- id: adasIconAdas
-
- property bool enabled: false
- property bool focused: false
-
- property alias onImage: onImage.source
- property alias offImage: offImage.source
- property alias textImage: textImage.source
-
- Image{
- id: offImage
- source: "qrc:/Images/ADASView/MENU/adas_icon1_off.png"
- x:170
- y:186
- width:104
- height:90
- visible: !(adasIconAdas.enabled)
- }
- Image{
- id: onImage
- source: "qrc:/Images/ADASView/MENU/adas_icon1_on.png"
- x:170
- y:186
- width:104
- height:90
- visible: adasIconAdas.enabled
- }
- Image{
- id: textImage
- source: "qrc:/Images/ADASView/MENU/adas_text1.png"
- x:202
- y:278
- width:40
- height:18
- visible:true
- }
- Image{
- source: "qrc:/Images/ADASView/MENU/adas_panel1.png"
- x:165
- y:170
- width:114
- height:144
- visible: adasIconAdas.focused
- }
-
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item{
+ id: adasIconAdas
+
+ property bool enabled: false
+ property bool focused: false
+
+ property alias onImage: onImage.source
+ property alias offImage: offImage.source
+ property alias textImage: textImage.source
+
+ Image{
+ id: offImage
+ source: "qrc:/Images/ADASView/MENU/adas_icon1_off.png"
+ x:170
+ y:186
+ width:104
+ height:90
+ visible: !(adasIconAdas.enabled)
+ }
+ Image{
+ id: onImage
+ source: "qrc:/Images/ADASView/MENU/adas_icon1_on.png"
+ x:170
+ y:186
+ width:104
+ height:90
+ visible: adasIconAdas.enabled
+ }
+ Image{
+ id: textImage
+ source: "qrc:/Images/ADASView/MENU/adas_text1.png"
+ x:202
+ y:278
+ width:40
+ height:18
+ visible:true
+ }
+ Image{
+ source: "qrc:/Images/ADASView/MENU/adas_panel1.png"
+ x:165
+ y:170
+ width:114
+ height:144
+ visible: adasIconAdas.focused
+ }
+
+}
diff --git a/GUIModel/Menu/MenuAdasIconNormal.qml b/GUIModel/Menu/MenuAdasIconNormal.qml
index 8442c5d..78ddf20 100644
--- a/GUIModel/Menu/MenuAdasIconNormal.qml
+++ b/GUIModel/Menu/MenuAdasIconNormal.qml
@@ -14,53 +14,53 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item{
- id: adasIconNormal
- property bool enabled: false
- property bool focused: false
-
- property alias onImage: onImage.source
- property alias offImage: offImage.source
- property alias textImage: textImage.source
-
- Image{
- id: offImage
- source: "qrc:/Images/NormalView/ADAS/adas_icon1_off.png"
- x: 171
- y: 186
- width: 102
- height: 90
- visible: !(adasIconNormal.enabled)
- }
- Image{
- id: onImage
- source: "qrc:/Images/NormalView/ADAS/adas_icon1_on.png"
- x: 171
- y: 186
- width: 102
- height: 90
- visible: adasIconNormal.enabled
- }
- Image{
- id: textImage
- source: "qrc:/Images/NormalView/ADAS/adas_text1.png"
- x: 202
- y: 278
- width: 40
- height: 18
- visible: true
- }
- Image{
- id: focusImage
- source: "qrc:/Images/NormalView/ADAS/adas_panel1.png"
- x: 160
- y: 164
- width: 124
- height: 158
- visible: adasIconNormal.focused
- }
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item{
+ id: adasIconNormal
+ property bool enabled: false
+ property bool focused: false
+
+ property alias onImage: onImage.source
+ property alias offImage: offImage.source
+ property alias textImage: textImage.source
+
+ Image{
+ id: offImage
+ source: "qrc:/Images/NormalView/ADAS/adas_icon1_off.png"
+ x: 171
+ y: 186
+ width: 102
+ height: 90
+ visible: !(adasIconNormal.enabled)
+ }
+ Image{
+ id: onImage
+ source: "qrc:/Images/NormalView/ADAS/adas_icon1_on.png"
+ x: 171
+ y: 186
+ width: 102
+ height: 90
+ visible: adasIconNormal.enabled
+ }
+ Image{
+ id: textImage
+ source: "qrc:/Images/NormalView/ADAS/adas_text1.png"
+ x: 202
+ y: 278
+ width: 40
+ height: 18
+ visible: true
+ }
+ Image{
+ id: focusImage
+ source: "qrc:/Images/NormalView/ADAS/adas_panel1.png"
+ x: 160
+ y: 164
+ width: 124
+ height: 158
+ visible: adasIconNormal.focused
+ }
+}
diff --git a/GUIModel/Menu/MenuAudio.qml b/GUIModel/Menu/MenuAudio.qml
index e02ba24..e55ca51 100644
--- a/GUIModel/Menu/MenuAudio.qml
+++ b/GUIModel/Menu/MenuAudio.qml
@@ -14,89 +14,89 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item {
- id: menuAudio
- visible:false
- width: 826
- height: 358
- property string mode: "normal"
-
- function incrementIndex(){
- audioPanels.incrementIndex()
- }
-
- function decrementIndex(){
- audioPanels.decrementIndex()
- }
-
- Item{
- id: audioPanels
- height: 358
-
- property int index: 0
-
- function incrementIndex(){
- index++
- if(index === 3) index = 0
-
- if(index === 0){
- audioPanel2.slideOut(+1) /*Slide out to right*/
- audioPanel0.slideIn(+1) /*Slide in from left*/
- }else if(index === 1){
- audioPanel0.slideOut(+1)
- audioPanel1.slideIn(+1)
- }else if(index === 2){
- audioPanel1.slideOut(+1)
- audioPanel2.slideIn(+1)
- }
- }
-
- function decrementIndex(){
- index--
- if(index === -1) index = 2
-
- if(index === 2){
- audioPanel0.slideOut(-1) /*Slide out to left*/
- audioPanel2.slideIn(-1) /*Slide in from right*/
- }else if(index === 1){
- audioPanel2.slideOut(-1)
- audioPanel1.slideIn(-1)
- }else if(index === 0){
- audioPanel1.slideOut(-1)
- audioPanel0.slideIn(-1)
- }
- }
-
- MenuAudioPanel{
- id: audioPanel0
- mode: menuAudio.mode
- icon: "qrc:/Images/ADASView/MENU/jacket1.png"
- title: "You Don't Know Me"
- artist: "Martin Crown"
- bg: "qrc:/Images/ADASView/MENU/jacket_blur1.png"
- panelVisible: true
- }
- MenuAudioPanel{
- id: audioPanel1
- mode: menuAudio.mode
- icon: "qrc:/Images/ADASView/MENU/jacket2.png"
- title: "LIGHT"
- artist: "Amelia Sedgwick"
- bg: "qrc:/Images/ADASView/MENU/jacket_blur2.png"
- panelVisible: false
- }
- MenuAudioPanel{
- id: audioPanel2
- mode: menuAudio.mode
- icon: "qrc:/Images/ADASView/MENU/jacket3.png"
- title: "Ocean Power"
- artist: "Oceania Poseidon"
- bg: "qrc:/Images/ADASView/MENU/jacket_blur3.png"
- panelVisible: false
- }
- }
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item {
+ id: menuAudio
+ visible:false
+ width: 826
+ height: 358
+ property string mode: "normal"
+
+ function incrementIndex(){
+ audioPanels.incrementIndex()
+ }
+
+ function decrementIndex(){
+ audioPanels.decrementIndex()
+ }
+
+ Item{
+ id: audioPanels
+ height: 358
+
+ property int index: 0
+
+ function incrementIndex(){
+ index++
+ if(index === 3) index = 0
+
+ if(index === 0){
+ audioPanel2.slideOut(+1) /*Slide out to right*/
+ audioPanel0.slideIn(+1) /*Slide in from left*/
+ }else if(index === 1){
+ audioPanel0.slideOut(+1)
+ audioPanel1.slideIn(+1)
+ }else if(index === 2){
+ audioPanel1.slideOut(+1)
+ audioPanel2.slideIn(+1)
+ }
+ }
+
+ function decrementIndex(){
+ index--
+ if(index === -1) index = 2
+
+ if(index === 2){
+ audioPanel0.slideOut(-1) /*Slide out to left*/
+ audioPanel2.slideIn(-1) /*Slide in from right*/
+ }else if(index === 1){
+ audioPanel2.slideOut(-1)
+ audioPanel1.slideIn(-1)
+ }else if(index === 0){
+ audioPanel1.slideOut(-1)
+ audioPanel0.slideIn(-1)
+ }
+ }
+
+ MenuAudioPanel{
+ id: audioPanel0
+ mode: menuAudio.mode
+ icon: "qrc:/Images/ADASView/MENU/jacket1.png"
+ title: "You Don't Know Me"
+ artist: "Martin Crown"
+ bg: "qrc:/Images/ADASView/MENU/jacket_blur1.png"
+ panelVisible: true
+ }
+ MenuAudioPanel{
+ id: audioPanel1
+ mode: menuAudio.mode
+ icon: "qrc:/Images/ADASView/MENU/jacket2.png"
+ title: "LIGHT"
+ artist: "Amelia Sedgwick"
+ bg: "qrc:/Images/ADASView/MENU/jacket_blur2.png"
+ panelVisible: false
+ }
+ MenuAudioPanel{
+ id: audioPanel2
+ mode: menuAudio.mode
+ icon: "qrc:/Images/ADASView/MENU/jacket3.png"
+ title: "Ocean Power"
+ artist: "Oceania Poseidon"
+ bg: "qrc:/Images/ADASView/MENU/jacket_blur3.png"
+ panelVisible: false
+ }
+ }
+}
diff --git a/GUIModel/Menu/MenuContents.qml b/GUIModel/Menu/MenuContents.qml
index 136c790..e35f76e 100644
--- a/GUIModel/Menu/MenuContents.qml
+++ b/GUIModel/Menu/MenuContents.qml
@@ -14,285 +14,280 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-
-Item{
- /* public functions */
- function open(){
- menuContentsClear.open()
- }
-
- function close(){
- menuContentsClear.close()
- }
-
- function incrementIndex(){
- if(menuMain.index === 0){
- menuRadio.incrementIndex()
- }else if(menuMain.index === 1){
- menuAdas.incrementIndex()
- }else if(menuMain.index === 2){
- menuAudio.incrementIndex()
- }
- }
-
- function decrementIndex(){
- if(menuMain.index === 0){
- menuRadio.decrementIndex()
- }else if(menuMain.index === 1){
- menuAdas.decrementIndex()
- }else if(menuMain.index === 2){
- menuAudio.decrementIndex()
- }
- }
-
- function enter(){
- if(menuMain.index === 0){
- /* nop */
- }else if(menuMain.index === 1){
- menuAdas.changeEnabled()
- }else if(menuMain.index === 2){
- /* nop */
- }
- }
-
- function startAnimationNormalToAdas(){
- normalToAdasAnimation.start()
- }
-
- function startAnimationMapToNormal(){
- mapToNormalAnimation.start()
- }
-
-
- Item{
- id: menuContentsClear
- width:826
- height: 358
- visible: false
- x: 52
- y: 298
-
- function open(){
- menuContentsClear.visible = false
- menuContentsBlur.visible = true
- }
-
- function close(){
- checkVisibleMenuContent()
-
- menuContentsClear.visible = true
- menuContentsBlur.visible = false
- }
-
- function checkVisibleMenuContent(){
- if(menuMain.index === 0){//radio
- menuAudio.visible = false
- menuAdas.visible = false
- menuRadio.visible = true
- }
- else if(menuMain.index === 1){//adas
- menuAudio.visible = false
- menuRadio.visible = false
- menuAdas.visible = true
- }
- else if(menuMain.index === 2){//music
- menuRadio.visible = false
- menuAdas.visible = false
- menuAudio.visible = true
- }
- else{
- //NOP
- }
- }
-
- MenuAdas {
- id: menuAdas
- }
-
- MenuAudio {
- id: menuAudio
- }
-
- MenuRadio {
- id: menuRadio
- }
-
- }
-
- GaussianBlur {
- id:menuContentsBlur
- anchors.fill:menuContentsClear
- source: menuContentsClear
- deviation: 4
- radius: 8
- samples: 16
- visible: true
- }
-
- SequentialAnimation{
- id:normalToAdasAnimation
- onStarted: rootItem.focus=false
- ParallelAnimation{
- NumberAnimation {
- target: menuContentsClear
- property: "opacity"
- duration: 330
- from:1
- to:0
- }
-
- NumberAnimation {
- target: menuContentsBlur
- property: "opacity"
- duration: 330
- from:1
- to:0
- }
- }
-
- NumberAnimation{
- target: menuContentsClear
- property: "x"
- duration:0
- from:52
- to:582
- }
- NumberAnimation{
- target: menuContentsClear
- property: "y"
- duration:0
- from:298
- to:362
- }
-
- PropertyAnimation{
- target: menuAudio
- property: "mode"
- duration:0
- to:"adas"
- }
-
- PropertyAnimation{
- target: menuRadio
- property: "mode"
- duration:0
- to:"adas"
- }
-
- PropertyAnimation{
- target: menuAdas
- property: "mode"
- duration:0
- to:"adas"
- }
-
- PauseAnimation {
- duration:891
- }
-
- ParallelAnimation{
- NumberAnimation {
- target: menuContentsClear
- property: "opacity"
- duration: 330
- from:0
- to:1
- }
- NumberAnimation {
- target: menuContentsBlur
- property: "opacity"
- duration: 330
- from:0
- to:1
- }
- }
- }
-
- SequentialAnimation{
- id:mapToNormalAnimation
- onStarted: rootItem.focus=false
-
- PauseAnimation {
- duration: 254
- }
-
- ParallelAnimation{
- NumberAnimation {
- target: menuContentsClear
- property: "opacity"
- duration: 330
- from: 1
- to: 0
- }
-
- NumberAnimation {
- target: menuContentsBlur
- property: "opacity"
- duration: 330
- from: 1
- to: 0
- }
- }
-
- PauseAnimation {
- duration: 891
- }
-
- NumberAnimation{
- target: menuContentsClear
- property: "x"
- duration: 0
- from: 582
- to: 52
- }
- NumberAnimation{
- target: menuContentsClear
- property: "y"
- duration: 0
- from: 362
- to: 298
- }
-
- PropertyAnimation{
- target: menuAdas
- property: "mode"
- duration: 0
- to: "normal"
- }
-
- PropertyAnimation{
- target: menuRadio
- property: "mode"
- duration: 0
- to: "normal"
- }
-
- PropertyAnimation{
- target: menuAudio
- property: "mode"
- duration: 0
- to: "normal"
- }
-
- ParallelAnimation{
- NumberAnimation {
- target: menuContentsClear
- property: "opacity"
- duration: 330
- from: 0
- to: 1
- }
- NumberAnimation {
- target: menuContentsBlur
- property: "opacity"
- duration: 330
- from: 0
- to: 1
- }
- }
- }
-}
+import QtQuick 2.0
+import "qrc:/MeterEffect"
+
+Item {
+ /* public functions */
+ function open() {
+ menuContentsClear.open();
+ }
+
+ function close() {
+ menuContentsClear.close();
+ }
+
+ function incrementIndex() {
+ if (menuMain.index === 0) {
+ menuRadio.incrementIndex();
+ } else if (menuMain.index === 1) {
+ menuAdas.incrementIndex();
+ } else if (menuMain.index === 2) {
+ menuAudio.incrementIndex();
+ }
+ }
+
+ function decrementIndex() {
+ if (menuMain.index === 0) {
+ menuRadio.decrementIndex();
+ } else if (menuMain.index === 1) {
+ menuAdas.decrementIndex();
+ } else if (menuMain.index === 2) {
+ menuAudio.decrementIndex();
+ }
+ }
+
+ function enter() {
+ if (menuMain.index === 0)
+ /* nop */
+ {} else if (menuMain.index === 1) {
+ menuAdas.changeEnabled();
+ } else if (menuMain.index === 2)
+ /* nop */
+ {}
+ }
+
+ function startAnimationNormalToAdas() {
+ normalToAdasAnimation.start();
+ }
+
+ function startAnimationMapToNormal() {
+ mapToNormalAnimation.start();
+ }
+
+ Item {
+ id: menuContentsClear
+ width: 826
+ height: 358
+ visible: false
+ x: 52
+ y: 298
+
+ function open() {
+ menuContentsClear.visible = false;
+ menuContentsBlur.visible = true;
+ }
+
+ function close() {
+ checkVisibleMenuContent();
+ menuContentsClear.visible = true;
+ menuContentsBlur.visible = false;
+ }
+
+ function checkVisibleMenuContent() {
+ if (menuMain.index === 0) {
+ //radio
+ menuAudio.visible = false;
+ menuAdas.visible = false;
+ menuRadio.visible = true;
+ } else if (menuMain.index === 1) {
+ //adas
+ menuAudio.visible = false;
+ menuRadio.visible = false;
+ menuAdas.visible = true;
+ } else if (menuMain.index === 2) {
+ //music
+ menuRadio.visible = false;
+ menuAdas.visible = false;
+ menuAudio.visible = true;
+ } else
+ //NOP
+ {}
+ }
+
+ MenuAdas {
+ id: menuAdas
+ }
+
+ MenuAudio {
+ id: menuAudio
+ }
+
+ MenuRadio {
+ id: menuRadio
+ }
+ }
+
+ GaussianBlur {
+ id: menuContentsBlur
+ anchors.fill: menuContentsClear
+ source: menuContentsClear
+ deviation: 4
+ radius: 8
+ samples: 16
+ visible: true
+ }
+
+ SequentialAnimation {
+ id: normalToAdasAnimation
+ onStarted: rootItem.focus = false
+ ParallelAnimation {
+ NumberAnimation {
+ target: menuContentsClear
+ property: "opacity"
+ duration: 330
+ from: 1
+ to: 0
+ }
+
+ NumberAnimation {
+ target: menuContentsBlur
+ property: "opacity"
+ duration: 330
+ from: 1
+ to: 0
+ }
+ }
+
+ NumberAnimation {
+ target: menuContentsClear
+ property: "x"
+ duration: 0
+ from: 52
+ to: 582
+ }
+ NumberAnimation {
+ target: menuContentsClear
+ property: "y"
+ duration: 0
+ from: 298
+ to: 362
+ }
+
+ PropertyAnimation {
+ target: menuAudio
+ property: "mode"
+ duration: 0
+ to: "adas"
+ }
+
+ PropertyAnimation {
+ target: menuRadio
+ property: "mode"
+ duration: 0
+ to: "adas"
+ }
+
+ PropertyAnimation {
+ target: menuAdas
+ property: "mode"
+ duration: 0
+ to: "adas"
+ }
+
+ PauseAnimation {
+ duration: 891
+ }
+
+ ParallelAnimation {
+ NumberAnimation {
+ target: menuContentsClear
+ property: "opacity"
+ duration: 330
+ from: 0
+ to: 1
+ }
+ NumberAnimation {
+ target: menuContentsBlur
+ property: "opacity"
+ duration: 330
+ from: 0
+ to: 1
+ }
+ }
+ }
+
+ SequentialAnimation {
+ id: mapToNormalAnimation
+ onStarted: rootItem.focus = false
+
+ PauseAnimation {
+ duration: 254
+ }
+
+ ParallelAnimation {
+ NumberAnimation {
+ target: menuContentsClear
+ property: "opacity"
+ duration: 330
+ from: 1
+ to: 0
+ }
+
+ NumberAnimation {
+ target: menuContentsBlur
+ property: "opacity"
+ duration: 330
+ from: 1
+ to: 0
+ }
+ }
+
+ PauseAnimation {
+ duration: 891
+ }
+
+ NumberAnimation {
+ target: menuContentsClear
+ property: "x"
+ duration: 0
+ from: 582
+ to: 52
+ }
+ NumberAnimation {
+ target: menuContentsClear
+ property: "y"
+ duration: 0
+ from: 362
+ to: 298
+ }
+
+ PropertyAnimation {
+ target: menuAdas
+ property: "mode"
+ duration: 0
+ to: "normal"
+ }
+
+ PropertyAnimation {
+ target: menuRadio
+ property: "mode"
+ duration: 0
+ to: "normal"
+ }
+
+ PropertyAnimation {
+ target: menuAudio
+ property: "mode"
+ duration: 0
+ to: "normal"
+ }
+
+ ParallelAnimation {
+ NumberAnimation {
+ target: menuContentsClear
+ property: "opacity"
+ duration: 330
+ from: 0
+ to: 1
+ }
+ NumberAnimation {
+ target: menuContentsBlur
+ property: "opacity"
+ duration: 330
+ from: 0
+ to: 1
+ }
+ }
+ }
+}
diff --git a/GUIModel/Menu/MenuFrame.qml b/GUIModel/Menu/MenuFrame.qml
index 430439e..27a6402 100644
--- a/GUIModel/Menu/MenuFrame.qml
+++ b/GUIModel/Menu/MenuFrame.qml
@@ -15,9 +15,8 @@
*/
import QtQuick 2.0
-import QtGraphicalEffects 1.0
-Item{
+Item {
/* public properties */
property alias icon: menuFrame.icon
property alias txt: menuFrame.txt
@@ -25,25 +24,24 @@ Item{
property alias mode: menuFrame.mode
/* public functions */
- function upScroll(){
- menuFrame.upScroll()
+ function upScroll() {
+ menuFrame.upScroll();
}
- function downScroll(){
- menuFrame.downScroll()
+ function downScroll() {
+ menuFrame.downScroll();
}
- function open(){
- menuFrame.open()
+ function open() {
+ menuFrame.open();
}
- function close(){
- menuFrame.close()
+ function close() {
+ menuFrame.close();
}
-
- Item{
- id:menuFrame
+ Item {
+ id: menuFrame
property string icon: ""
property string txt: ""
@@ -53,212 +51,200 @@ Item{
property double direction: +1 /* +1:Left -1:Right */
property int margin: 0
- FontLoader { id: localFont; source: "qrc:/Fonts/Inter-Regular.ttf" }
+ FontLoader {
+ id: localFont
+ source: "qrc:/Fonts/Inter-Regular.ttf"
+ }
onModeChanged: {
- if(mode === "normal"){
- direction = +1
- margin = 0
- } else if(mode === "adas"){
- direction = -1
- margin = 380
+ if (mode === "normal") {
+ direction = +1;
+ margin = 0;
+ } else if (mode === "adas") {
+ direction = -1;
+ margin = 380;
} else {
- direction = +1
- margin = 0
+ direction = +1;
+ margin = 0;
}
-
- menuFrame.x = 0
- menuFrameItem.resetPosition()
+ menuFrame.x = 0;
+ menuFrameItem.resetPosition();
}
- onPositionChanged: {
- if(menuFrameItem.isInited === 0){
- menuFrameItem.resetPosition()
- menuFrameItem.isInited = 1
+ onPositionChanged: {
+ if (menuFrameItem.isInited === 0) {
+ menuFrameItem.resetPosition();
+ menuFrameItem.isInited = 1;
}
}
-
- function upScroll(){
- if(position === 0){
- position = 5
- }
- else if(position === 1){
- animationMenuScrollTo0.start()
- position = 0
- }
- else if(position === 2){
- animationMenuScrollTo1.start()
- position = 1
- }
- else if(position === 3){
- animationMenuScrollTo2.start()
- position = 2
- }
- else if(position === 4){
- animationMenuScrollTo3.start()
- position = 3
- }
- else if(position === 5){
- animationMenuScrollTo4.start()
- position = 4
+ function upScroll() {
+ if (position === 0) {
+ position = 5;
+ } else if (position === 1) {
+ animationMenuScrollTo0.start();
+ position = 0;
+ } else if (position === 2) {
+ animationMenuScrollTo1.start();
+ position = 1;
+ } else if (position === 3) {
+ animationMenuScrollTo2.start();
+ position = 2;
+ } else if (position === 4) {
+ animationMenuScrollTo3.start();
+ position = 3;
+ } else if (position === 5) {
+ animationMenuScrollTo4.start();
+ position = 4;
}
}
- function downScroll(){
- if(position === 0){
- animationMenuScrollTo1.start()
- position = 1
- }
- else if(position === 1){
- animationMenuScrollTo2.start()
- position = 2
- }
- else if(position === 2){
- animationMenuScrollTo3.start()
- position = 3
- }
- else if(position === 3){
- animationMenuScrollTo4.start()
- position = 4
- }
- else if(position === 4){
- position = 5
- }
- else if(position === 5){
- animationMenuScrollTo0.start()
- position = 0
+ function downScroll() {
+ if (position === 0) {
+ animationMenuScrollTo1.start();
+ position = 1;
+ } else if (position === 1) {
+ animationMenuScrollTo2.start();
+ position = 2;
+ } else if (position === 2) {
+ animationMenuScrollTo3.start();
+ position = 3;
+ } else if (position === 3) {
+ animationMenuScrollTo4.start();
+ position = 4;
+ } else if (position === 4) {
+ position = 5;
+ } else if (position === 5) {
+ animationMenuScrollTo0.start();
+ position = 0;
}
}
- function open(){
- animationMenuOpen.start()
+ function open() {
+ animationMenuOpen.start();
}
- function close(){
- animationMenuClose.start()
+ function close() {
+ animationMenuClose.start();
}
-
- Item{
+ Item {
id: menuFrameItem
- property double direction: menuFrame.direction
+ property alias direction: menuFrame.direction
property int margin: menuFrame.margin
property int isInited: 0
- function resetPosition(){
- if(position === 0){
- menuFrameBgTop.opacity = 1.0
- menuFrameBg.width = 460
- menuFrameBg.height = 116*0.4
- menuIcon.scale = 0.4
- menuFrameBg.x = 0
- menuIcon.x = 26 * 0.4 * menuFrameItem.direction + menuFrameItem.margin
- menuText.scale = 0.4
- menuText.x = 122 * 0.4 * menuFrameItem.direction + menuFrameItem.margin
- menuFrameItem.opacity = 0
- menuFrameItem.x = 100 * menuFrameItem.direction
- menuFrameItem.y = -68
+ function resetPosition() {
+ if (position === 0) {
+ menuFrameBgTop.opacity = 1.0;
+ menuFrameBg.width = 460;
+ menuFrameBg.height = 116 * 0.4;
+ menuIcon.scale = 0.4;
+ menuFrameBg.x = 0;
+ menuIcon.x = 26 * 0.4 * menuFrameItem.direction + menuFrameItem.margin;
+ menuText.scale = 0.4;
+ menuText.x = 122 * 0.4 * menuFrameItem.direction + menuFrameItem.margin;
+ menuFrameItem.opacity = 0;
+ menuFrameItem.x = 100 * menuFrameItem.direction;
+ menuFrameItem.y = -68;
}
- if(position === 1){
- menuFrameBgTop.opacity = 1.0
- menuFrameBg.width = 460
- menuFrameBg.height = 116*0.5
- menuFrameBg.x = 0
- menuIcon.scale = 0.5
- menuIcon.x = 26 * 0.5 * menuFrameItem.direction + menuFrameItem.margin
- menuText.scale = 0.5
- menuText.x = 122 * 0.5 * menuFrameItem.direction + menuFrameItem.margin
- menuFrameItem.opacity = 1
- menuFrameItem.x = 50 * menuFrameItem.direction
- menuFrameItem.y = -48
+ if (position === 1) {
+ menuFrameBgTop.opacity = 1.0;
+ menuFrameBg.width = 460;
+ menuFrameBg.height = 116 * 0.5;
+ menuFrameBg.x = 0;
+ menuIcon.scale = 0.5;
+ menuIcon.x = 26 * 0.5 * menuFrameItem.direction + menuFrameItem.margin;
+ menuText.scale = 0.5;
+ menuText.x = 122 * 0.5 * menuFrameItem.direction + menuFrameItem.margin;
+ menuFrameItem.opacity = 1;
+ menuFrameItem.x = 50 * menuFrameItem.direction;
+ menuFrameItem.y = -48;
}
- if(position === 2){
- menuFrameBgCenter.opacity = 1.0
- menuFrameBg.width = 460
- menuFrameBg.height = 116
- menuFrameBg.x = 0
- menuIcon.x = 26 * menuFrameItem.direction + menuFrameItem.margin
- menuText.x = 122 * menuFrameItem.direction + menuFrameItem.margin
- menuFrameItem.opacity = 1
- menuFrameItem.x = 0
- menuFrameItem.y = 0
+ if (position === 2) {
+ menuFrameBgCenter.opacity = 1.0;
+ menuFrameBg.width = 460;
+ menuFrameBg.height = 116;
+ menuFrameBg.x = 0;
+ menuIcon.x = 26 * menuFrameItem.direction + menuFrameItem.margin;
+ menuText.x = 122 * menuFrameItem.direction + menuFrameItem.margin;
+ menuFrameItem.opacity = 1;
+ menuFrameItem.x = 0;
+ menuFrameItem.y = 0;
}
-
- if(position === 3){
- menuFrameBgBottom.opacity = 1.0
- menuFrameBg.width = 460 - 50
- menuFrameBg.height = 74
- if(menuFrameItem.direction === +1) {
- menuFrameBg.x = 0
+ if (position === 3) {
+ menuFrameBgBottom.opacity = 1.0;
+ menuFrameBg.width = 460 - 50;
+ menuFrameBg.height = 74;
+ if (menuFrameItem.direction === +1) {
+ menuFrameBg.x = 0;
} else {
- menuFrameBg.x = 50
+ menuFrameBg.x = 50;
}
- menuIcon.scale = (74/116)
- menuIcon.x = 26 * (74/116) * menuFrameItem.direction + menuFrameItem.margin
- menuText.scale = (74/116)
- menuText.x = 122 * (74/116) * menuFrameItem.direction + menuFrameItem.margin
- menuFrameItem.opacity = 1
- menuFrameItem.x = 100 * menuFrameItem.direction
- menuFrameItem.y = 104
+ menuIcon.scale = (74 / 116);
+ menuIcon.x = 26 * (74 / 116) * menuFrameItem.direction + menuFrameItem.margin;
+ menuText.scale = (74 / 116);
+ menuText.x = 122 * (74 / 116) * menuFrameItem.direction + menuFrameItem.margin;
+ menuFrameItem.opacity = 1;
+ menuFrameItem.x = 100 * menuFrameItem.direction;
+ menuFrameItem.y = 104;
}
- if(position === 4){
- menuFrameBgBottom.opacity = 1.0
- menuFrameBg.width = 460 - 50
- menuFrameBg.height = 116*(0.7)
- if(menuFrameItem.direction === +1) {
- menuFrameBg.x = 0
+ if (position === 4) {
+ menuFrameBgBottom.opacity = 1.0;
+ menuFrameBg.width = 460 - 50;
+ menuFrameBg.height = 116 * (0.7);
+ if (menuFrameItem.direction === +1) {
+ menuFrameBg.x = 0;
} else {
- menuFrameBg.x = 50
+ menuFrameBg.x = 50;
}
- menuIcon.scale = (0.7)
- menuIcon.x = 26 * (0.7) * menuFrameItem.direction + menuFrameItem.margin
- menuText.scale = (0.7)
- menuText.x = 122 * (0.7) *menuFrameItem.direction + menuFrameItem.margin
- menuFrameItem.opacity = 0
- menuFrameItem.x = 160 * menuFrameItem.direction
- menuFrameItem.y = 140
+ menuIcon.scale = (0.7);
+ menuIcon.x = 26 * (0.7) * menuFrameItem.direction + menuFrameItem.margin;
+ menuText.scale = (0.7);
+ menuText.x = 122 * (0.7) * menuFrameItem.direction + menuFrameItem.margin;
+ menuFrameItem.opacity = 0;
+ menuFrameItem.x = 160 * menuFrameItem.direction;
+ menuFrameItem.y = 140;
}
- if(position === 5){
- menuFrameBgBottom.opacity = 1.0
- menuFrameBg.width = 460 - 50
- menuFrameBg.height = 116*(0.7)
- if(menuFrameItem.direction === +1) {
- menuFrameBg.x = 0
+ if (position === 5) {
+ menuFrameBgBottom.opacity = 1.0;
+ menuFrameBg.width = 460 - 50;
+ menuFrameBg.height = 116 * (0.7);
+ if (menuFrameItem.direction === +1) {
+ menuFrameBg.x = 0;
} else {
- menuFrameBg.x = 50
+ menuFrameBg.x = 50;
}
- menuIcon.scale = (0.7)
- menuIcon.x = 26 * (0.7) * menuFrameItem.direction + menuFrameItem.margin
- menuText.scale = (0.7)
- menuText.x = 122 * (0.7) * menuFrameItem.direction + menuFrameItem.margin
- menuFrameItem.opacity = 0
- menuFrameItem.x = 160 * menuFrameItem.direction
- menuFrameItem.y = 140
+ menuIcon.scale = (0.7);
+ menuIcon.x = 26 * (0.7) * menuFrameItem.direction + menuFrameItem.margin;
+ menuText.scale = (0.7);
+ menuText.x = 122 * (0.7) * menuFrameItem.direction + menuFrameItem.margin;
+ menuFrameItem.opacity = 0;
+ menuFrameItem.x = 160 * menuFrameItem.direction;
+ menuFrameItem.y = 140;
}
}
-
- Item{
+ Item {
id: menuFrameBg
- x:0
- y:0
+ x: 0
+ y: 0
width: 460
height: 116
- Image{
+ Image {
id: menuFrameBgTop
anchors.fill: parent
source: "qrc:/Images/NormalView/MENU/menu_panel1.png"
opacity: 0
}
- Image{
+ Image {
id: menuFrameBgCenter
anchors.fill: parent
source: "qrc:/Images/NormalView/MENU/menu_panel2.png"
opacity: 0
}
- Image{
+ Image {
id: menuFrameBgBottom
anchors.fill: parent
source: "qrc:/Images/NormalView/MENU/menu_panel3.png"
@@ -266,10 +252,10 @@ Item{
}
}
- Image{
+ Image {
id: menuIcon
- source:menuFrame.icon
- x: 26 * direction + margin
+ source: menuFrame.icon
+ x: 26 * parent.direction + parent.margin
width: 76
height: 90
anchors.verticalCenter: menuFrameBg.verticalCenter
@@ -277,79 +263,81 @@ Item{
Text {
id: menuText
- x: 122 * direction + margin
+ x: 122 * parent.direction + parent.margin
width: 68
height: 26
- y:46
+ y: 46
text: menuFrame.txt
- font { family: localFont.name; pointSize: 20; capitalization: Font.Capitalize }
+ font {
+ family: localFont.name
+ pointSize: 20
+ capitalization: Font.Capitalize
+ }
anchors.verticalCenter: menuFrameBg.verticalCenter
color: "white"
-
}
- MenuFrameScrollTo0{
- id:animationMenuScrollTo0
+ MenuFrameScrollTo0 {
+ id: animationMenuScrollTo0
scrollDuration: 330
}
- MenuFrameScrollTo1{
- id:animationMenuScrollTo1
+ MenuFrameScrollTo1 {
+ id: animationMenuScrollTo1
scrollDuration: 330
}
MenuFrameScrollTo2 {
- id:animationMenuScrollTo2
+ id: animationMenuScrollTo2
scrollDuration: 330
}
MenuFrameScrollTo3 {
- id:animationMenuScrollTo3
+ id: animationMenuScrollTo3
scrollDuration: 330
}
- MenuFrameScrollTo4{
- id:animationMenuScrollTo4
+ MenuFrameScrollTo4 {
+ id: animationMenuScrollTo4
scrollDuration: 330
}
-
/* Open */
- SequentialAnimation{
- id:animationMenuOpen
+ SequentialAnimation {
+ id: animationMenuOpen
- NumberAnimation{
+ NumberAnimation {
target: menuFrame
property: "x"
to: 360 * menuFrameItem.direction
duration: 0
}
- PropertyAnimation{
+ PropertyAnimation {
target: menuFrame
property: "visible"
- from:false
+ from: false
to: true
duration: 0
}
PauseAnimation {
- duration: if(position === 0){
- 0
- }else if(position === 1){
- 48
- }else if(position === 2){
- 96
- }else if(position === 3){
- 144
- }else if(position === 4){
- 0
- }else if(position === 5){
- 0
- }
+ duration: if (menuFrame.position === 0) {
+ 0;
+ } else if (menuFrame.position === 1) {
+ 48;
+ } else if (menuFrame.position === 2) {
+ 96;
+ } else if (menuFrame.position === 3) {
+ 144;
+ } else if (menuFrame.position === 4) {
+ 0;
+ } else if (menuFrame.position === 5) {
+ 0;
+ }
}
- NumberAnimation{
+ NumberAnimation {
target: menuFrame
property: "x"
from: 360 * menuFrameItem.direction
@@ -357,13 +345,12 @@ Item{
duration: 260
easing.type: Easing.InQuad
}
-
}
- SequentialAnimation{
- id:animationMenuClose
+ SequentialAnimation {
+ id: animationMenuClose
- NumberAnimation{
+ NumberAnimation {
target: menuFrame
property: "x"
to: 0
@@ -371,22 +358,22 @@ Item{
}
PauseAnimation {
- duration: if(position === 0){
- 0
- }else if(position === 1){
- 48
- }else if(position === 2){
- 96
- }else if(position === 3){
- 144
- }else if(position === 4){
- 0
- }else if(position === 5){
- 0
- }
+ duration: if (position === 0) {
+ 0;
+ } else if (position === 1) {
+ 48;
+ } else if (position === 2) {
+ 96;
+ } else if (position === 3) {
+ 144;
+ } else if (position === 4) {
+ 0;
+ } else if (position === 5) {
+ 0;
+ }
}
- NumberAnimation{
+ NumberAnimation {
target: menuFrame
property: "x"
from: 0
@@ -395,7 +382,7 @@ Item{
easing.type: Easing.OutQuad
}
- PropertyAnimation{
+ PropertyAnimation {
target: menuFrame
property: "visible"
from: true
@@ -403,9 +390,6 @@ Item{
duration: 0
}
}
-
}
-
-
}
}
diff --git a/GUIModel/Menu/MenuMain.qml b/GUIModel/Menu/MenuMain.qml
index 8f662c6..3fd7ee7 100644
--- a/GUIModel/Menu/MenuMain.qml
+++ b/GUIModel/Menu/MenuMain.qml
@@ -14,227 +14,227 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item{
- id: menuMain
-
- /* public propeties */
- readonly property alias index: menuFrames.index
-
- /* public functions */
- function incrementIndex(){
- menuFrames.incrementIndex()
- }
-
- function decrementIndex(){
- menuFrames.decrementIndex()
- }
-
- function open(){
- menuFrames.open()
- }
-
- function close(){
- menuFrames.close()
- }
-
- function startAnimationNormalToAdas(){
- normalToAdasAnimation.start()
- }
-
- function startAnimationMapToNormal(){
- mapToNormalAnimation.start()
- }
-
- Item {
- id: menuFrames
- x: 326
- y: 468
- width: 500; height:280
- layer.textureMirroring: ShaderEffectSource.MirrorVertically
- property int index: 0 /* 0:radio 1:ADAS 2:audio */
- property var mode: "normal" /* normal or adas */
-
-
- function incrementIndex(){
- menuFrame0.upScroll()
- menuFrame1.upScroll()
- menuFrame2.upScroll()
- menuFrame3.upScroll()
- menuFrame4.upScroll()
- menuFrame5.upScroll()
-
- index++
- if(index === 3) index = 0
- }
-
- function decrementIndex(){
- menuFrame0.downScroll()
- menuFrame1.downScroll()
- menuFrame2.downScroll()
- menuFrame3.downScroll()
- menuFrame4.downScroll()
- menuFrame5.downScroll()
-
- index--
- if(index === -1) index = 2
- }
-
- function open(){
- menuFrame0.open()
- menuFrame1.open()
- menuFrame2.open()
- menuFrame3.open()
- menuFrame4.open()
- menuFrame5.open()
- }
-
- function close(){
- menuFrame0.close()
- menuFrame1.close()
- menuFrame2.close()
- menuFrame3.close()
- menuFrame4.close()
- menuFrame5.close()
- }
-
- MenuFrame{
- id: menuFrame0
- position: 0
- mode: menuFrames.mode
- icon: "qrc:/Images/NormalView/MENU/ADAS/L_icon_adas.png"
- txt: "ADAS"
- }
-
- MenuFrame{
- id: menuFrame1
- position: 1
- mode: menuFrames.mode
- icon: "qrc:/Images/NormalView/MENU/MUSIC/L_icon_music.png"
- txt: "MUSIC"
- }
-
- MenuFrame{
- id: menuFrame2
- position: 2
- mode: menuFrames.mode
- icon: "qrc:/Images/NormalView/MENU/RADIO/L_icon_radio.png"
- txt: "RADIO"
- }
-
- MenuFrame{
- id: menuFrame3
- position: 3
- mode: menuFrames.mode
- icon: "qrc:/Images/NormalView/MENU/ADAS/L_icon_adas.png"
- txt: "ADAS"
- }
-
- MenuFrame{
- id: menuFrame4
- position: 4
- mode: menuFrames.mode
- icon: "qrc:/Images/NormalView/MENU/MUSIC/L_icon_music.png"
- txt: "MUSIC"
- }
-
- MenuFrame{
- id: menuFrame5
- position: 5
- mode: menuFrames.mode
- icon: "qrc:/Images/NormalView/MENU/RADIO/L_icon_radio.png"
- txt: "RADIO"
- }
-
- SequentialAnimation{
- id:normalToAdasAnimation
- onStarted: rootItem.focus=false
- NumberAnimation {
- target: menuFrames
- property: "opacity"
- duration: 330
- from:1
- to:0
- }
- PauseAnimation {
- duration:891
- }
- PropertyAnimation {
- target: menuFrames
- property: "mode"
- duration: 0
- to: "adas"
- }
- NumberAnimation {
- target: menuFrames
- property: "x"
- duration: 0
- to:80 + 444
- }
- NumberAnimation {
- target: menuFrames
- property: "y"
- duration: 0
- to:498
- }
- NumberAnimation {
- target: menuFrames
- property: "opacity"
- duration: 330
- from:0
- to:1
- }
- }
-
- SequentialAnimation{
- id:mapToNormalAnimation
- onStarted: rootItem.focus=false
-
- PauseAnimation {
- duration: 254
- }
- ParallelAnimation{
- NumberAnimation {
- target: menuFrames
- property: "opacity"
- duration: 330
- from:1
- to:0
- }
- PauseAnimation {
- duration:891
- }
- }
-
- PropertyAnimation {
- target: menuFrames
- property: "mode"
- duration: 0
- to: "normal"
- }
- NumberAnimation {
- target: menuFrames
- property: "x"
- duration: 0
- to:326
- }
- NumberAnimation {
- target: menuFrames
- property: "y"
- duration: 0
- to:468
- }
-
- NumberAnimation {
- target: menuFrames
- property: "opacity"
- duration: 330
- from:0
- to:1
- }
- }
- }
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item{
+ id: menuMain
+
+ /* public propeties */
+ readonly property alias index: menuFrames.index
+
+ /* public functions */
+ function incrementIndex(){
+ menuFrames.incrementIndex()
+ }
+
+ function decrementIndex(){
+ menuFrames.decrementIndex()
+ }
+
+ function open(){
+ menuFrames.open()
+ }
+
+ function close(){
+ menuFrames.close()
+ }
+
+ function startAnimationNormalToAdas(){
+ normalToAdasAnimation.start()
+ }
+
+ function startAnimationMapToNormal(){
+ mapToNormalAnimation.start()
+ }
+
+ Item {
+ id: menuFrames
+ x: 326
+ y: 468
+ width: 500; height:280
+ layer.textureMirroring: ShaderEffectSource.MirrorVertically
+ property int index: 0 /* 0:radio 1:ADAS 2:audio */
+ property var mode: "normal" /* normal or adas */
+
+
+ function incrementIndex(){
+ menuFrame0.upScroll()
+ menuFrame1.upScroll()
+ menuFrame2.upScroll()
+ menuFrame3.upScroll()
+ menuFrame4.upScroll()
+ menuFrame5.upScroll()
+
+ index++
+ if(index === 3) index = 0
+ }
+
+ function decrementIndex(){
+ menuFrame0.downScroll()
+ menuFrame1.downScroll()
+ menuFrame2.downScroll()
+ menuFrame3.downScroll()
+ menuFrame4.downScroll()
+ menuFrame5.downScroll()
+
+ index--
+ if(index === -1) index = 2
+ }
+
+ function open(){
+ menuFrame0.open()
+ menuFrame1.open()
+ menuFrame2.open()
+ menuFrame3.open()
+ menuFrame4.open()
+ menuFrame5.open()
+ }
+
+ function close(){
+ menuFrame0.close()
+ menuFrame1.close()
+ menuFrame2.close()
+ menuFrame3.close()
+ menuFrame4.close()
+ menuFrame5.close()
+ }
+
+ MenuFrame{
+ id: menuFrame0
+ position: 0
+ mode: menuFrames.mode
+ icon: "qrc:/Images/NormalView/MENU/ADAS/L_icon_adas.png"
+ txt: "ADAS"
+ }
+
+ MenuFrame{
+ id: menuFrame1
+ position: 1
+ mode: menuFrames.mode
+ icon: "qrc:/Images/NormalView/MENU/MUSIC/L_icon_music.png"
+ txt: "MUSIC"
+ }
+
+ MenuFrame{
+ id: menuFrame2
+ position: 2
+ mode: menuFrames.mode
+ icon: "qrc:/Images/NormalView/MENU/RADIO/L_icon_radio.png"
+ txt: "RADIO"
+ }
+
+ MenuFrame{
+ id: menuFrame3
+ position: 3
+ mode: menuFrames.mode
+ icon: "qrc:/Images/NormalView/MENU/ADAS/L_icon_adas.png"
+ txt: "ADAS"
+ }
+
+ MenuFrame{
+ id: menuFrame4
+ position: 4
+ mode: menuFrames.mode
+ icon: "qrc:/Images/NormalView/MENU/MUSIC/L_icon_music.png"
+ txt: "MUSIC"
+ }
+
+ MenuFrame{
+ id: menuFrame5
+ position: 5
+ mode: menuFrames.mode
+ icon: "qrc:/Images/NormalView/MENU/RADIO/L_icon_radio.png"
+ txt: "RADIO"
+ }
+
+ SequentialAnimation{
+ id:normalToAdasAnimation
+ onStarted: rootItem.focus=false
+ NumberAnimation {
+ target: menuFrames
+ property: "opacity"
+ duration: 330
+ from:1
+ to:0
+ }
+ PauseAnimation {
+ duration:891
+ }
+ PropertyAnimation {
+ target: menuFrames
+ property: "mode"
+ duration: 0
+ to: "adas"
+ }
+ NumberAnimation {
+ target: menuFrames
+ property: "x"
+ duration: 0
+ to:80 + 444
+ }
+ NumberAnimation {
+ target: menuFrames
+ property: "y"
+ duration: 0
+ to:498
+ }
+ NumberAnimation {
+ target: menuFrames
+ property: "opacity"
+ duration: 330
+ from:0
+ to:1
+ }
+ }
+
+ SequentialAnimation{
+ id:mapToNormalAnimation
+ onStarted: rootItem.focus=false
+
+ PauseAnimation {
+ duration: 254
+ }
+ ParallelAnimation{
+ NumberAnimation {
+ target: menuFrames
+ property: "opacity"
+ duration: 330
+ from:1
+ to:0
+ }
+ PauseAnimation {
+ duration:891
+ }
+ }
+
+ PropertyAnimation {
+ target: menuFrames
+ property: "mode"
+ duration: 0
+ to: "normal"
+ }
+ NumberAnimation {
+ target: menuFrames
+ property: "x"
+ duration: 0
+ to:326
+ }
+ NumberAnimation {
+ target: menuFrames
+ property: "y"
+ duration: 0
+ to:468
+ }
+
+ NumberAnimation {
+ target: menuFrames
+ property: "opacity"
+ duration: 330
+ from:0
+ to:1
+ }
+ }
+ }
+}
diff --git a/GUIModel/Menu/MenuRadio.qml b/GUIModel/Menu/MenuRadio.qml
index e13f47d..6c05524 100644
--- a/GUIModel/Menu/MenuRadio.qml
+++ b/GUIModel/Menu/MenuRadio.qml
@@ -14,89 +14,89 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item {
- id: menuRadio
- visible:false
- width: 826
- height: 358
- property string mode: "normal"
-
- function incrementIndex(){
- radioPanels.incrementIndex()
- }
-
- function decrementIndex(){
- radioPanels.decrementIndex()
- }
-
- Item{
- id:radioPanels
-
- property int index: 0
-
- function incrementIndex(){
- index++
- if(index === 3) index = 0
-
- if(index === 0){
- radioPanel2.slideOut(+1) /*Slide out to right*/
- radioPanel0.slideIn(+1) /*Slide in from left*/
- }else if(index === 1){
- radioPanel0.slideOut(+1)
- radioPanel1.slideIn(+1)
- }else if(index === 2){
- radioPanel1.slideOut(+1)
- radioPanel2.slideIn(+1)
- }
- }
-
- function decrementIndex(){
- index--
- if(index === -1) index = 2
-
- if(index === 2){
- radioPanel0.slideOut(-1) /*Slide out to left*/
- radioPanel2.slideIn(-1) /*Slide in from right*/
- }else if(index === 1){
- radioPanel2.slideOut(-1)
- radioPanel1.slideIn(-1)
- }else if(index === 0){
- radioPanel1.slideOut(-1)
- radioPanel0.slideIn(-1)
- }
- }
-
-
- MenuRadioPanel{
- id: radioPanel0
- mode: menuRadio.mode
- icon: "qrc:/Images/ADASView/MENU/radio_icon_FM.png"
- title: "InterFM"
- channel: "89.7MHz"
- bg: "qrc:/Images/ADASView/MENU/radio_blur_FM.png"
- panelVisible: true
- }
- MenuRadioPanel{
- id: radioPanel1
- mode: menuRadio.mode
- icon: "qrc:/Images/ADASView/MENU/radio_icon_FM.png"
- title: "J-WAVE"
- channel: "81.3MHz"
- bg: "qrc:/Images/ADASView/MENU/radio_blur_FM.png"
- panelVisible: false
- }
- MenuRadioPanel{
- id: radioPanel2
- mode: menuRadio.mode
- icon: "qrc:/Images/ADASView/MENU/radio_icon_AM.png"
- title: "TBS Radio"
- channel: "954kHz"
- bg: "qrc:/Images/ADASView/MENU/radio_blur_AM.png"
- panelVisible: false
- }
- }
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item {
+ id: menuRadio
+ visible:false
+ width: 826
+ height: 358
+ property string mode: "normal"
+
+ function incrementIndex(){
+ radioPanels.incrementIndex()
+ }
+
+ function decrementIndex(){
+ radioPanels.decrementIndex()
+ }
+
+ Item{
+ id:radioPanels
+
+ property int index: 0
+
+ function incrementIndex(){
+ index++
+ if(index === 3) index = 0
+
+ if(index === 0){
+ radioPanel2.slideOut(+1) /*Slide out to right*/
+ radioPanel0.slideIn(+1) /*Slide in from left*/
+ }else if(index === 1){
+ radioPanel0.slideOut(+1)
+ radioPanel1.slideIn(+1)
+ }else if(index === 2){
+ radioPanel1.slideOut(+1)
+ radioPanel2.slideIn(+1)
+ }
+ }
+
+ function decrementIndex(){
+ index--
+ if(index === -1) index = 2
+
+ if(index === 2){
+ radioPanel0.slideOut(-1) /*Slide out to left*/
+ radioPanel2.slideIn(-1) /*Slide in from right*/
+ }else if(index === 1){
+ radioPanel2.slideOut(-1)
+ radioPanel1.slideIn(-1)
+ }else if(index === 0){
+ radioPanel1.slideOut(-1)
+ radioPanel0.slideIn(-1)
+ }
+ }
+
+
+ MenuRadioPanel{
+ id: radioPanel0
+ mode: menuRadio.mode
+ icon: "qrc:/Images/ADASView/MENU/radio_icon_FM.png"
+ title: "InterFM"
+ channel: "89.7MHz"
+ bg: "qrc:/Images/ADASView/MENU/radio_blur_FM.png"
+ panelVisible: true
+ }
+ MenuRadioPanel{
+ id: radioPanel1
+ mode: menuRadio.mode
+ icon: "qrc:/Images/ADASView/MENU/radio_icon_FM.png"
+ title: "J-WAVE"
+ channel: "81.3MHz"
+ bg: "qrc:/Images/ADASView/MENU/radio_blur_FM.png"
+ panelVisible: false
+ }
+ MenuRadioPanel{
+ id: radioPanel2
+ mode: menuRadio.mode
+ icon: "qrc:/Images/ADASView/MENU/radio_icon_AM.png"
+ title: "TBS Radio"
+ channel: "954kHz"
+ bg: "qrc:/Images/ADASView/MENU/radio_blur_AM.png"
+ panelVisible: false
+ }
+ }
+}
diff --git a/GUIModel/Menu/MenuShade.qml b/GUIModel/Menu/MenuShade.qml
index c3b9aa5..61825d7 100644
--- a/GUIModel/Menu/MenuShade.qml
+++ b/GUIModel/Menu/MenuShade.qml
@@ -14,146 +14,146 @@
* limitations under the License.
*/
-import QtQuick 2.0
-import QtGraphicalEffects 1.0
-import QtQuick.Shapes 1.11
-
-Item{
- /* public function */
- function startAnimationNormalToAdas(){
- normalToAdasAnimation.start()
- }
-
- function startAnimationMapToNormal(){
- mapToNormalAnimation.start()
- }
-
- Item{
- id: menuShades
- Item{
- id: menuShadeNormal
- visible: true
-
- Image{
- source: "qrc:/Images/NormalView/MENU/menu_shade.png"
- x: 522
- y: 390
- width: 444
- height: 330
- }
-
- Rectangle{
- color: "black"
- x: 960
- y: 390
- width: 300
- height: 300
- }
- }
-
- Item{
- id: menuShadeAdas
- visible: false
-
- Image{
- source: "qrc:/Images/ADASView/MENU/menu_shade.png"
- x: 436
- y: 360
- width: 444
- height: 332
-
- }
-
- Rectangle{
- color: "black"
- x: 100
- y: 400
- width: 440
- height: 300
- }
- }
-
- SequentialAnimation{
- id:normalToAdasAnimation
- onStarted: rootItem.focus=false
- NumberAnimation {
- target: menuShades
- property: "opacity"
- duration: 330
- from:1
- to: 0
- }
- PropertyAnimation{
- target: menuShadeNormal
- property: "visible"
- duration: 0
- from: true
- to: false
- }
- PropertyAnimation{
- target: menuShadeAdas
- property:"visible"
- duration: 0
- from: false
- to: true
- }
-
- PauseAnimation {
- duration: 891
- }
-
- NumberAnimation {
- target: menuShades
- property: "opacity"
- duration: 330
- from: 0
- to: 1
- }
- }
-
-
- SequentialAnimation{
- id: mapToNormalAnimation
- onStarted: rootItem.focus=false
-
- PauseAnimation {
- duration: 254
- }
-
- NumberAnimation {
- target: menuShades
- property: "opacity"
- duration: 330
- from: 1
- to: 0
- }
- PropertyAnimation{
- target: menuShadeNormal
- property: "visible"
- duration: 0
- from: false
- to: true
- }
- PropertyAnimation{
- target: menuShadeAdas
- property: "visible"
- duration: 0
- from: true
- to: false
- }
-
- PauseAnimation {
- duration: 891
- }
-
- NumberAnimation {
- target: menuShades
- property: "opacity"
- duration: 330
- from: 0
- to: 1
- }
- }
- }
-
-}
+import QtQuick 2.0
+
+import QtQuick.Shapes 1.11
+
+Item{
+ /* public function */
+ function startAnimationNormalToAdas(){
+ normalToAdasAnimation.start()
+ }
+
+ function startAnimationMapToNormal(){
+ mapToNormalAnimation.start()
+ }
+
+ Item{
+ id: menuShades
+ Item{
+ id: menuShadeNormal
+ visible: true
+
+ Image{
+ source: "qrc:/Images/NormalView/MENU/menu_shade.png"
+ x: 522
+ y: 390
+ width: 444
+ height: 330
+ }
+
+ Rectangle{
+ color: "black"
+ x: 960
+ y: 390
+ width: 300
+ height: 300
+ }
+ }
+
+ Item{
+ id: menuShadeAdas
+ visible: false
+
+ Image{
+ source: "qrc:/Images/ADASView/MENU/menu_shade.png"
+ x: 436
+ y: 360
+ width: 444
+ height: 332
+
+ }
+
+ Rectangle{
+ color: "black"
+ x: 100
+ y: 400
+ width: 440
+ height: 300
+ }
+ }
+
+ SequentialAnimation{
+ id:normalToAdasAnimation
+ onStarted: rootItem.focus=false
+ NumberAnimation {
+ target: menuShades
+ property: "opacity"
+ duration: 330
+ from:1
+ to: 0
+ }
+ PropertyAnimation{
+ target: menuShadeNormal
+ property: "visible"
+ duration: 0
+ from: true
+ to: false
+ }
+ PropertyAnimation{
+ target: menuShadeAdas
+ property:"visible"
+ duration: 0
+ from: false
+ to: true
+ }
+
+ PauseAnimation {
+ duration: 891
+ }
+
+ NumberAnimation {
+ target: menuShades
+ property: "opacity"
+ duration: 330
+ from: 0
+ to: 1
+ }
+ }
+
+
+ SequentialAnimation{
+ id: mapToNormalAnimation
+ onStarted: rootItem.focus=false
+
+ PauseAnimation {
+ duration: 254
+ }
+
+ NumberAnimation {
+ target: menuShades
+ property: "opacity"
+ duration: 330
+ from: 1
+ to: 0
+ }
+ PropertyAnimation{
+ target: menuShadeNormal
+ property: "visible"
+ duration: 0
+ from: false
+ to: true
+ }
+ PropertyAnimation{
+ target: menuShadeAdas
+ property: "visible"
+ duration: 0
+ from: true
+ to: false
+ }
+
+ PauseAnimation {
+ duration: 891
+ }
+
+ NumberAnimation {
+ target: menuShades
+ property: "opacity"
+ duration: 330
+ from: 0
+ to: 1
+ }
+ }
+ }
+
+}
diff --git a/GUIModel/Meter/ChargeGuage.qml b/GUIModel/Meter/ChargeGuage.qml
index 038df02..ad0c5ac 100644
--- a/GUIModel/Meter/ChargeGuage.qml
+++ b/GUIModel/Meter/ChargeGuage.qml
@@ -15,14 +15,14 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+import "qrc:/MeterEffect/"
Item {
id: chargeGuage
- x:666
- y:97
- width:588
- height:588
+ x: 666
+ y: 97
+ width: 588
+ height: 588
property real chargeValue
readonly property real chargeGuageMax: 100
@@ -30,40 +30,40 @@ Item {
onChargeValueChanged: {
limitChargeValue();
- effectChr.angleBase = (-0.45 * chargeValue*Math.PI/180)+effectChr.angle
+ effectChr.angleBase = (-0.45 * chargeValue * Math.PI / 180) + effectChr.angle;
}
- Connections{
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- normalToAdasAnimation.start()
+ onTransNormalToAdas: {
+ normalToAdasAnimation.start();
}
}
- function limitChargeValue(){
- if(chargeValue > chargeGuageMax){
- chargeValue = chargeGuageMax
- }else if(chargeValue < chargeGuageMin){
- chargeValue = chargeGuageMin
+ function limitChargeValue() {
+ if (chargeValue > chargeGuageMax) {
+ chargeValue = chargeGuageMax;
+ } else if (chargeValue < chargeGuageMin) {
+ chargeValue = chargeGuageMin;
}
}
- Item{
+ Item {
id: chrGuageGroup
- width:588
- height:588
+ width: 588
+ height: 588
Item {
id: chrGuage
- width:588
- height:588
+ width: 588
+ height: 588
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
visible: false
- Image{
+ Image {
id: chrGuageImg
source: "qrc:/Images/NormalView/METER/charge_guage.ktx"
- width:588
- height:588
+ width: 588
+ height: 588
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
visible: true
@@ -71,119 +71,123 @@ Item {
Image {
id: chrEffect
source: ""
- width:588
- height:588
+ width: 588
+ height: 588
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
visible: true
}
}
- ShaderEffect{
+ ShaderEffect {
id: effectChr
anchors.fill: parent
visible: true
blending: true
supportsAtlasTextures: true
- property real angleBase: -pi*1/2
- property real angle:-pi*1/2
- property var src: ShaderEffectSource{
+ property real angleBase: -pi * 1 / 2
+ property real angle: -pi * 1 / 2
+ property var src: ShaderEffectSource {
sourceItem: chrGuage
live: false
}
readonly property real pi: 3.1415926535
- vertexShader: "qrc:/Shaders/vert/guageMask.vert"
- fragmentShader:"qrc:/Shaders/frag/guageMask.frag"
+ vertexShader: ShaderPath.guageMaskVert
+ fragmentShader: ShaderPath.guageMaskFrag
}
}
- SequentialAnimation{
+ SequentialAnimation {
id: normalToAdasAnimation
- onStarted: rootItem.focus=false
- SequentialAnimation{
- NumberAnimation{
+ onStarted: rootItem.focus = false
+ SequentialAnimation {
+ NumberAnimation {
target: chrGuageGroup
property: "opacity"
duration: 330
easing.type: Easing.InOutSine
- from:1.0
- to:0.0
+ from: 1.0
+ to: 0.0
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrGuageGroup
property: "visible"
duration: 0
easing.type: Easing.InOutSine
- from:true
- to:false
+ from: true
+ to: false
}
}
-
- ParallelAnimation{
+
+ ParallelAnimation {
/* down size */
- NumberAnimation{
+ NumberAnimation {
target: chargeGuage
property: "scale"
duration: 891
easing.type: meterParts.easing
- from:1
- to:0.75
+ from: 1
+ to: 0.75
}
-
+
/* translation */
- PathAnimation{
+ PathAnimation {
target: chargeGuage
- anchorPoint: Qt.point(chargeGuage.width/2, chargeGuage.height/2)
+ anchorPoint: Qt.point(chargeGuage.width / 2, chargeGuage.height / 2)
orientation: PathAnimation.Fixed
duration: 891
easing.type: meterParts.easing
-
+
path: Path {
- startX: 960; startY: 391
- PathLine { x: 540; y: 402 }
+ startX: 960
+ startY: 391
+ PathLine {
+ x: 540
+ y: 402
+ }
}
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrGuageImg
property: "source"
to: "qrc:/Images/ADASView/METER/chr_wave.png"
duration: 0
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrEffect
property: "source"
to: "qrc:/Images/ADASView/METER/chr_glow.png"
duration: 0
}
}
- PauseAnimation{
+ PauseAnimation {
duration: 396
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrGuageGroup
property: "visible"
to: true
duration: 0
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrGuageGroup
property: "opacity"
to: 1
duration: 198
}
}
-
- SequentialAnimation{
+
+ SequentialAnimation {
id: mapToNormalAnimation
- onStarted: rootItem.focus=false
- onStopped: rootItem.focus=true
- PropertyAnimation{
+ onStarted: rootItem.focus = false
+ onStopped: rootItem.focus = true
+ PropertyAnimation {
target: chrGuageGroup
property: "opacity"
to: 0
duration: 198
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrGuageGroup
property: "visible"
to: true
@@ -192,63 +196,66 @@ Item {
PauseAnimation {
duration: 254 + 330
}
-
-
- ParallelAnimation{
+
+ ParallelAnimation {
/* scaling */
- NumberAnimation{
+ NumberAnimation {
target: chargeGuage
property: "scale"
duration: 891
easing.type: meterParts.easing
- from:0.75
- to:1.0
+ from: 0.75
+ to: 1.0
}
-
+
/* slide */
- PathAnimation{
+ PathAnimation {
target: chargeGuage
- anchorPoint: Qt.point(chargeGuage.width/2, chargeGuage.height/2)
+ anchorPoint: Qt.point(chargeGuage.width / 2, chargeGuage.height / 2)
orientation: PathAnimation.Fixed
duration: 891
easing.type: meterParts.easing
-
+
path: Path {
- startX: 540; startY: 402
- PathLine { x: 960; y: 391 }
+ startX: 540
+ startY: 402
+ PathLine {
+ x: 960
+ y: 391
+ }
}
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrGuageImg
property: "source"
to: "qrc:/Images/NormalView/METER/charge_guage.ktx"
duration: 0
}
- PropertyAnimation{
+ PropertyAnimation {
target: chrEffect
property: "source"
to: ""
duration: 0
}
}
-
- SequentialAnimation{
- PropertyAnimation{
+
+ SequentialAnimation {
+ PropertyAnimation {
target: chrGuageGroup
property: "visible"
duration: 0
easing.type: Easing.InOutSine
- from:false
- to:true
+ from: false
+ to: true
}
-
- NumberAnimation{
+
+ NumberAnimation {
target: chrGuageGroup
property: "opacity"
duration: 330
easing.type: Easing.InOutSine
- from:0.0
- to:1.0
+ from: 0.0
+ to: 1.0
}
}
PauseAnimation {
diff --git a/GUIModel/Meter/DigitalSpeed.qml b/GUIModel/Meter/DigitalSpeed.qml
index 7d9534b..1cbf56a 100644
--- a/GUIModel/Meter/DigitalSpeed.qml
+++ b/GUIModel/Meter/DigitalSpeed.qml
@@ -15,7 +15,7 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+
Item{
id: digitalSpeed
diff --git a/GUIModel/Meter/Mask.qml b/GUIModel/Meter/Mask.qml
index 56a7497..31dcb47 100644
--- a/GUIModel/Meter/Mask.qml
+++ b/GUIModel/Meter/Mask.qml
@@ -15,7 +15,7 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+
Item{
id:mask
diff --git a/GUIModel/Meter/Meter.qml b/GUIModel/Meter/Meter.qml
index 7c2d5dd..d79d36f 100644
--- a/GUIModel/Meter/Meter.qml
+++ b/GUIModel/Meter/Meter.qml
@@ -15,75 +15,71 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
Item {
id: meter
property real speedValue: 0
property real tachoValue: 0
- property real chargeValue:100
+ property real chargeValue: 100
onSpeedValueChanged: {
- speedGuage.speedValue = speedValue
- speedNeedle.speedValue = speedValue
- digitalSpeed.speedValue = speedValue
+ speedGuage.speedValue = speedValue;
+ speedNeedle.speedValue = speedValue;
+ digitalSpeed.speedValue = speedValue;
}
onTachoValueChanged: {
- tachometer.tachoValue = tachoValue
+ tachometer.tachoValue = tachoValue;
}
onChargeValueChanged: {
- chargeGuage.chargeValue = chargeValue
+ chargeGuage.chargeValue = chargeValue;
}
-
Item {
- id: meterParts
- property var easing: Easing.InOutQuad
-
- Connections{
- target: rootItem
- onTransNormalToAdas:{
- / *nop */
- }
- }
-
- Sideline {
- id: sideline
- }
-
- Ring {
- id: ring
- }
-
- ChargeGuage {
- id: chargeGuage
- }
-
- SpeedGuage {
- id: speedGuage
- }
-
- SpeedNeedle {
- id: speedNeedle
- }
-
- Tachometer {
- id: tachometer
- }
-
- Ready {
- id: ready
- }
-
- Mask {
- id: mask
- }
-
- DigitalSpeed {
- id: digitalSpeed
- }
+ id: meterParts
+ property var easing: Easing.InOutQuad
+
+ Connections {
+ target: rootItem
+ onTransNormalToAdas: {
+ / *nop */;
+ }
+ }
+
+ Sideline {
+ id: sideline
+ }
+
+ Ring {
+ id: ring
+ }
+
+ ChargeGuage {
+ id: chargeGuage
+ }
+
+ SpeedGuage {
+ id: speedGuage
+ }
+
+ SpeedNeedle {
+ id: speedNeedle
+ }
+
+ Tachometer {
+ id: tachometer
+ }
+
+ Ready {
+ id: ready
+ }
+
+ Mask {
+ id: mask
+ }
+
+ DigitalSpeed {
+ id: digitalSpeed
+ }
}
}
-
-
diff --git a/GUIModel/Meter/Ready.qml b/GUIModel/Meter/Ready.qml
index fd2bde0..11f1a11 100644
--- a/GUIModel/Meter/Ready.qml
+++ b/GUIModel/Meter/Ready.qml
@@ -15,7 +15,7 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+
Item {
id: ready
diff --git a/GUIModel/Meter/Ring.qml b/GUIModel/Meter/Ring.qml
index c41188b..abc34f2 100644
--- a/GUIModel/Meter/Ring.qml
+++ b/GUIModel/Meter/Ring.qml
@@ -15,7 +15,7 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+
Item {
id: ring
diff --git a/GUIModel/Meter/Sideline.qml b/GUIModel/Meter/Sideline.qml
index 0da9931..fe903a6 100644
--- a/GUIModel/Meter/Sideline.qml
+++ b/GUIModel/Meter/Sideline.qml
@@ -15,138 +15,144 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
Item {
id: sideline
width: 1780
height: 1780
- x:70
- y:-499
-
- Connections{
+ x: 70
+ y: -499
+
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- normalToAdasAnimation.start()
+ onTransNormalToAdas: {
+ normalToAdasAnimation.start();
}
}
- Image{
- id:meterLineR
+ Image {
+ id: meterLineR
source: "qrc:/Images/NormalView/METER/meter_line_r.ktx"
- x:980
- y:0
- width:800
- height:636
+ x: 980
+ y: 0
+ width: 800
+ height: 636
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
anchors.rightMargin: 0
}
-
- Image{
- id:meterLineL
+
+ Image {
+ id: meterLineL
source: "qrc:/Images/NormalView/METER/meter_line_l.ktx"
- y:0
- width:800
- height:636
+ y: 0
+ width: 800
+ height: 636
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
anchors.leftMargin: 0
}
-
+
transform: Rotation {
- id:sidelineRotation
- origin.x: sideline.width/2;
- origin.y: sideline.height/2;
+ id: sidelineRotation
+ origin.x: sideline.width / 2
+ origin.y: sideline.height / 2
angle: 0
}
-
- SequentialAnimation{
+
+ SequentialAnimation {
id: normalToAdasAnimation
- onStarted: rootItem.focus=false
+ onStarted: rootItem.focus = false
PauseAnimation {
duration: 330
}
-
- ParallelAnimation{
+
+ ParallelAnimation {
/* down size */
- NumberAnimation{
+ NumberAnimation {
target: sideline
property: "scale"
duration: 891
easing.type: meterParts.easing
- from:1
- to:0.75
+ from: 1
+ to: 0.75
}
-
+
/* rotation */
- PropertyAnimation{
+ PropertyAnimation {
target: sidelineRotation
property: "angle"
duration: 891
easing.type: meterParts.easing
- from:0
- to:-90
+ from: 0
+ to: -90
}
-
+
/* translation */
- PathAnimation{
+ PathAnimation {
target: sideline
- anchorPoint: Qt.point(sideline.width/2, sideline.height/2)
+ anchorPoint: Qt.point(sideline.width / 2, sideline.height / 2)
orientation: PathAnimation.Fixed
duration: 891
easing.type: meterParts.easing
-
+
path: Path {
- startX: 960; startY: 391
- PathLine { x: 540; y: 402 }
+ startX: 960
+ startY: 391
+ PathLine {
+ x: 540
+ y: 402
+ }
}
}
}
}
-
- SequentialAnimation{
+
+ SequentialAnimation {
id: mapToNormalAnimation
- onStarted: rootItem.focus=false
+ onStarted: rootItem.focus = false
PauseAnimation {
duration: 254 + 330
}
-
- ParallelAnimation{
+
+ ParallelAnimation {
/* down size */
- NumberAnimation{
+ NumberAnimation {
target: sideline
property: "scale"
duration: 891
easing.type: meterParts.easing
- from:0.75
- to:1.0
+ from: 0.75
+ to: 1.0
}
-
+
/* rotation */
- PropertyAnimation{
+ PropertyAnimation {
target: sidelineRotation
property: "angle"
duration: 891
easing.type: meterParts.easing
- from:-90
- to:0
+ from: -90
+ to: 0
}
-
+
/* translation */
- PathAnimation{
+ PathAnimation {
target: sideline
- anchorPoint: Qt.point(sideline.width/2, sideline.height/2)
+ anchorPoint: Qt.point(sideline.width / 2, sideline.height / 2)
orientation: PathAnimation.Fixed
duration: 891
easing.type: meterParts.easing
-
+
path: Path {
- startX: 540; startY: 402
- PathLine { x: 960; y: 391 }
+ startX: 540
+ startY: 402
+ PathLine {
+ x: 960
+ y: 391
+ }
}
}
}
}
-
}
diff --git a/GUIModel/Meter/SpeedGuage.qml b/GUIModel/Meter/SpeedGuage.qml
index 6667cad..c268f61 100644
--- a/GUIModel/Meter/SpeedGuage.qml
+++ b/GUIModel/Meter/SpeedGuage.qml
@@ -15,15 +15,15 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
import QtQuick.Shapes 1.14
+import "qrc:/MeterEffect/"
Item {
id: speedGuage
- x:666
- y:97
- width:588
- height:588
+ x: 666
+ y: 97
+ width: 588
+ height: 588
property real speedValue
readonly property real speedGuageMax: 100
@@ -31,85 +31,84 @@ Item {
onSpeedValueChanged: {
limitSpeedValue();
- effectPwr.angle = (2.25 * speedValue*Math.PI/180)+effectPwr.angleBase
+ effectPwr.angle = (2.25 * speedValue * Math.PI / 180) + effectPwr.angleBase;
}
- Connections{
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- normalToAdasAnimation.start()
+ onTransNormalToAdas: {
+ normalToAdasAnimation.start();
}
}
- function limitSpeedValue(){
- if(speedGuageMax < speedValue){
- speedValue = speedGuageMax
- }else if(speedValue < speedGuageMin){
- speedValue = speedGuageMin
+ function limitSpeedValue() {
+ if (speedGuageMax < speedValue) {
+ speedValue = speedGuageMax;
+ } else if (speedValue < speedGuageMin) {
+ speedValue = speedGuageMin;
}
}
/* Guage - visible in Normal mode */
Item {
- id:pwrGuageGroup
- width:588
- height:588
-
- Image{
- id:pwrGuage
+ id: pwrGuageGroup
+ width: 588
+ height: 588
+
+ Image {
+ id: pwrGuage
source: "qrc:/Images/NormalView/METER/pwr_guage.png"
- width:588
- height:588
+ width: 588
+ height: 588
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
opacity: 1
visible: false
}
- ShaderEffect{
+ ShaderEffect {
id: effectPwr
anchors.fill: parent
visible: true
blending: true
supportsAtlasTextures: true
- property real angleBase: -pi*1/2
- property real angle:-pi*1/2
- property var src: ShaderEffectSource{
+ property real angleBase: -pi * 1 / 2
+ property real angle: -pi * 1 / 2
+ property var src: ShaderEffectSource {
sourceItem: pwrGuage
live: false
}
readonly property real pi: 3.1415926535
- vertexShader: "qrc:/Shaders/vert/guageMask.vert"
- fragmentShader:"qrc:/Shaders/frag/guageMask.frag"
+ vertexShader: ShaderPath.guageMaskVert
+ fragmentShader: ShaderPath.guageMaskFrag
}
}
-
-
- Image{
- id:ringLine
+
+ Image {
+ id: ringLine
source: "qrc:/Images/NormalView/METER/ring_line.ktx"
- width:588
- height:588
+ width: 588
+ height: 588
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
}
-
- Image{
- id:speedTxt
+
+ Image {
+ id: speedTxt
source: "qrc:/Images/NormalView/SPEED/speed_txt.png"
- width:588
- height:588
+ width: 588
+ height: 588
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
}
-
- Image{
- id:ring5
+
+ Image {
+ id: ring5
source: "qrc:/Images/NormalView/METER/ring5.png"
width: 34
- height:24
+ height: 24
anchors.left: parent.left
anchors.leftMargin: -11
anchors.verticalCenter: parent.verticalCenter
diff --git a/GUIModel/Meter/SpeedNeedle.qml b/GUIModel/Meter/SpeedNeedle.qml
index b2153ae..f04ecfa 100644
--- a/GUIModel/Meter/SpeedNeedle.qml
+++ b/GUIModel/Meter/SpeedNeedle.qml
@@ -15,12 +15,12 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+import "qrc:/MeterEffect/"
Item {
id: speedNeedle
- width:444
- height:444
+ width: 444
+ height: 444
x: 318
y: 180
visible: false
@@ -31,165 +31,160 @@ Item {
onSpeedValueChanged: {
setNeedleAngle();
- effectPwrNeedle.angle = (2.25 * speedValue*Math.PI/180)+effectPwrNeedle.angleBase
+ effectPwrNeedle.angle = (2.25 * speedValue * Math.PI / 180) + effectPwrNeedle.angleBase;
}
-
- Connections{
+
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- normalToAdasAnimation.start()
+ onTransNormalToAdas: {
+ normalToAdasAnimation.start();
}
}
- function setNeedleAngle(){
- if(speedNeedleMax < speedValue){
- speedValue = speedNeedleMax
- }else if( speedValue < speedNeedleMin){
- speedValue = speedNeedleMin
+ function setNeedleAngle() {
+ if (speedNeedleMax < speedValue) {
+ speedValue = speedNeedleMax;
+ } else if (speedValue < speedNeedleMin) {
+ speedValue = speedNeedleMin;
}
- rotateNeedle.angle = 2.25 * speedValue
+ rotateNeedle.angle = 2.25 * speedValue;
}
/* Needle - visible in ADAS/Map mode */
Item {
- id:needleGroup
- width:444
- height:444
-
- Image{
+ id: needleGroup
+ width: 444
+ height: 444
+
+ Image {
id: pwrNeedle
source: "qrc:/Images/ADASView/METER/needle.png"
x: 28
y: 220
- width:182
- height:4
+ width: 182
+ height: 4
visible: false
}
-
- Item{
+
+ Item {
id: needleMask
visible: false
- anchors.fill:pwrNeedle
+ anchors.fill: pwrNeedle
property double maskPercent: 0
-
- Rectangle{
+
+ Rectangle {
id: needleMaskInvisible
color: "red"
opacity: 0
anchors.left: parent.left
- width: pwrNeedle.width * (1.0 - needleMask.maskPercent/100.0)
+ width: pwrNeedle.width * (1.0 - needleMask.maskPercent / 100.0)
height: pwrNeedle.height
visible: true
}
- Rectangle{
+ Rectangle {
id: needleMaskVisible
color: "blue"
anchors.right: parent.right
opacity: 1
- width: pwrNeedle.width * (needleMask.maskPercent/100.0)
+ width: pwrNeedle.width * (needleMask.maskPercent / 100.0)
height: pwrNeedle.height
visible: true
}
}
-
-
+
OpacityMask {
id: maskedPwrNeedle
cached: false
width: pwrNeedle.x
- height:pwrNeedle.y
- anchors.fill:pwrNeedle
+ height: pwrNeedle.y
+ anchors.fill: pwrNeedle
source: pwrNeedle
maskSource: needleMask
}
-
- transform: Rotation{
- id:rotateNeedle
+
+ transform: Rotation {
+ id: rotateNeedle
origin.x: needleGroup.width / 2
origin.y: needleGroup.height / 2
- angle : 0
+ angle: 0
}
-
-
}
-
- Item{
+
+ Item {
id: centerCircleGroup
- width:124
- height:126
- x:160
- y:166
- Image{
+ width: 124
+ height: 126
+ x: 160
+ y: 166
+ Image {
id: centerCircle
source: "qrc:/Images/ADASView/METER/center_circle.png"
- width:124
- height:126
+ width: 124
+ height: 126
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
visible: true
}
}
-
+
Item {
id: pwrNeedleEffect
- width:444
- height:444
+ width: 444
+ height: 444
x: 0
y: 0
visible: false
-
- Image{
+
+ Image {
source: "qrc:/Images/ADASView/METER/pwr_wave.png"
- width:444
- height:442
+ width: 444
+ height: 442
visible: true
}
-
- Image{
+
+ Image {
source: "qrc:/Images/ADASView/METER/pwr_glow.png"
- width:444
- height:442
+ width: 444
+ height: 442
visible: true
}
}
-
- ShaderEffect{
+ ShaderEffect {
id: effectPwrNeedle
anchors.fill: pwrNeedleEffect
visible: false
blending: true
supportsAtlasTextures: true
- property real angleBase: -pi*1/2
- property real angle:-pi*1/2
- property var src: ShaderEffectSource{
+ property real angleBase: -pi * 1 / 2
+ property real angle: -pi * 1 / 2
+ property var src: ShaderEffectSource {
sourceItem: pwrNeedleEffect
}
readonly property real pi: 3.1415926535
- vertexShader: "qrc:/Shaders/vert/guageMask.vert"
- fragmentShader:"qrc:/Shaders/frag/guageMask.frag"
+ vertexShader: ShaderPath.guageMaskVert
+ fragmentShader: ShaderPath.guageMaskFrag
}
-
-
- SequentialAnimation{
+
+ SequentialAnimation {
id: normalToAdasAnimation
- onStarted: rootItem.focus=false
- onStopped: rootItem.focus=true
+ onStarted: rootItem.focus = false
+ onStopped: rootItem.focus = true
PauseAnimation {
duration: 330 + 891
}
-
- PropertyAnimation{
+
+ PropertyAnimation {
target: speedNeedle
property: "visible"
duration: 0
- from:false
- to:true
+ from: false
+ to: true
}
-
- NumberAnimation{
+
+ NumberAnimation {
target: centerCircle
property: "scale"
duration: 396
@@ -197,68 +192,67 @@ Item {
from: 0
to: 1
}
-
- PropertyAnimation{
- target:effectPwrNeedle
- property:"visible"
- duration:0
- from:false
- to:true
+
+ PropertyAnimation {
+ target: effectPwrNeedle
+ property: "visible"
+ duration: 0
+ from: false
+ to: true
}
-
- ParallelAnimation{
+
+ ParallelAnimation {
NumberAnimation {
- target:needleMask
+ target: needleMask
property: "maskPercent"
duration: 198
- from:0.0
- to:100.0
+ from: 0.0
+ to: 100.0
}
-
- NumberAnimation{
- target:effectPwrNeedle
- property:"opacity"
- duration:198
- from:0
- to:1
+
+ NumberAnimation {
+ target: effectPwrNeedle
+ property: "opacity"
+ duration: 198
+ from: 0
+ to: 1
}
}
PauseAnimation {
duration: 330
}
-
}
-
- SequentialAnimation{
+
+ SequentialAnimation {
id: mapToNormalAnimation
- onStarted: rootItem.focus=false
- ParallelAnimation{
+ onStarted: rootItem.focus = false
+ ParallelAnimation {
NumberAnimation {
- target:needleMask
+ target: needleMask
property: "maskPercent"
duration: 198
- from:100.0
- to:0.0
+ from: 100.0
+ to: 0.0
}
-
- NumberAnimation{
- target:effectPwrNeedle
- property:"opacity"
- duration:198
- from:1
- to:0
+
+ NumberAnimation {
+ target: effectPwrNeedle
+ property: "opacity"
+ duration: 198
+ from: 1
+ to: 0
}
}
-
- PropertyAnimation{
- target:effectPwrNeedle
- property:"visible"
- duration:0
- from:true
- to:false
+
+ PropertyAnimation {
+ target: effectPwrNeedle
+ property: "visible"
+ duration: 0
+ from: true
+ to: false
}
-
- NumberAnimation{
+
+ NumberAnimation {
target: centerCircle
property: "scale"
duration: 396
@@ -266,14 +260,13 @@ Item {
from: 1
to: 0
}
-
- PropertyAnimation{
+
+ PropertyAnimation {
target: speedNeedle
property: "visible"
duration: 0
- from:true
- to:false
+ from: true
+ to: false
}
}
-
}
diff --git a/GUIModel/Meter/Tachometer.qml b/GUIModel/Meter/Tachometer.qml
index 9ad0d7a..9974eea 100644
--- a/GUIModel/Meter/Tachometer.qml
+++ b/GUIModel/Meter/Tachometer.qml
@@ -15,7 +15,7 @@
*/
import QtQuick 2.14
-import QtGraphicalEffects 1.14
+import "qrc:/MeterEffect/"
Item {
id: tachometer
@@ -26,103 +26,100 @@ Item {
onTachoValueChanged: {
limitTachoValue();
- effectRpm.angle = (0.03375 * tachoValue*Math.PI/180)+effectRpm.angleBase
+ effectRpm.angle = (0.03375 * tachoValue * Math.PI / 180) + effectRpm.angleBase;
}
- Connections{
+ Connections {
target: rootItem
- onTransNormalToAdas:{
- normalToAdasAnimation.start()
+ onTransNormalToAdas: {
+ normalToAdasAnimation.start();
}
}
- function limitTachoValue(){
- if(tachoValue > tachoValueMax){
- tachoValue = tachoValueMax
- }else if(tachoValue < tachoValueMin){
- tachoValue = tachoValueMin
+ function limitTachoValue() {
+ if (tachoValue > tachoValueMax) {
+ tachoValue = tachoValueMax;
+ } else if (tachoValue < tachoValueMin) {
+ tachoValue = tachoValueMin;
}
}
- Image{
- id:rpmGuage
+ Image {
+ id: rpmGuage
source: "qrc:/Images/NormalView/METER/prm_guage.ktx"
- x:770
- y:200
- width:380
- height:382
+ x: 770
+ y: 200
+ width: 380
+ height: 382
visible: false
}
- ShaderEffect{
+ ShaderEffect {
id: effectRpm
anchors.fill: rpmGuage
visible: true
blending: true
supportsAtlasTextures: true
- property real angleBase: -pi*3/4
- property real angle:-pi*3/4
- property var src: ShaderEffectSource{
+ property real angleBase: -pi * 3 / 4
+ property real angle: -pi * 3 / 4
+ property var src: ShaderEffectSource {
sourceItem: rpmGuage
live: false
}
-
readonly property real pi: 3.1415926535
- vertexShader: "qrc:/Shaders/vert/guageMask.vert"
- fragmentShader:"qrc:/Shaders/frag/guageMask.frag"
+ vertexShader: ShaderPath.guageMaskVert
+ fragmentShader: ShaderPath.guageMaskFrag
}
-
- Image{
- id:rpmTxt
+ Image {
+ id: rpmTxt
source: "qrc:/Images/NormalView/METER/prm_txt.png"
- x:770
- y:190
- width:379
- height:401
+ x: 770
+ y: 190
+ width: 379
+ height: 401
}
-
- SequentialAnimation{
- id:normalToAdasAnimation
- onStarted: rootItem.focus=false
- PropertyAnimation{
- target:tachometer
- property:"opacity"
+
+ SequentialAnimation {
+ id: normalToAdasAnimation
+ onStarted: rootItem.focus = false
+ PropertyAnimation {
+ target: tachometer
+ property: "opacity"
duration: 330
easing.type: Easing.Linear
- to:0
+ to: 0
}
- PropertyAnimation{
+ PropertyAnimation {
target: tachometer
property: "visible"
duration: 0
- to:false
+ to: false
}
}
-
- SequentialAnimation{
- id:mapToNormalAnimation
- onStarted: rootItem.focus=false
-
+
+ SequentialAnimation {
+ id: mapToNormalAnimation
+ onStarted: rootItem.focus = false
+
PauseAnimation {
duration: 891 + 330 + 254
}
-
- PropertyAnimation{
+
+ PropertyAnimation {
target: tachometer
property: "visible"
duration: 0
- to:true
+ to: true
}
-
- PropertyAnimation{
- target:tachometer
- property:"opacity"
+
+ PropertyAnimation {
+ target: tachometer
+ property: "opacity"
duration: 330
easing.type: Easing.Linear
- to:1
+ to: 1
}
}
-
}
diff --git a/GUIModel/MeterEffect/Effect.qrc b/GUIModel/MeterEffect/Effect.qrc
new file mode 100644
index 0000000..776f80d
--- /dev/null
+++ b/GUIModel/MeterEffect/Effect.qrc
@@ -0,0 +1,8 @@
+<RCC>
+ <qresource prefix="/MeterEffect">
+ <file>qmldir</file>
+ <file>GaussianBlur.qml</file>
+ <file>OpacityMask.qml</file>
+ <file>ShaderPath.qml</file>
+ </qresource>
+</RCC>
diff --git a/GUIModel/MeterEffect/GaussianBlur.qml b/GUIModel/MeterEffect/GaussianBlur.qml
new file mode 100644
index 0000000..f729329
--- /dev/null
+++ b/GUIModel/MeterEffect/GaussianBlur.qml
@@ -0,0 +1,4 @@
+//import QtGraphicalEffects 1.0 as E
+import Qt5Compat.GraphicalEffects as E
+
+E.GaussianBlur {}
diff --git a/GUIModel/MeterEffect/OpacityMask.qml b/GUIModel/MeterEffect/OpacityMask.qml
new file mode 100644
index 0000000..18a8ec4
--- /dev/null
+++ b/GUIModel/MeterEffect/OpacityMask.qml
@@ -0,0 +1,3 @@
+import Qt5Compat.GraphicalEffects as E
+
+E.OpacityMask {}
diff --git a/GUIModel/MeterEffect/Qt5/Effect.qrc b/GUIModel/MeterEffect/Qt5/Effect.qrc
new file mode 100644
index 0000000..776f80d
--- /dev/null
+++ b/GUIModel/MeterEffect/Qt5/Effect.qrc
@@ -0,0 +1,8 @@
+<RCC>
+ <qresource prefix="/MeterEffect">
+ <file>qmldir</file>
+ <file>GaussianBlur.qml</file>
+ <file>OpacityMask.qml</file>
+ <file>ShaderPath.qml</file>
+ </qresource>
+</RCC>
diff --git a/GUIModel/MeterEffect/Qt5/GaussianBlur.qml b/GUIModel/MeterEffect/Qt5/GaussianBlur.qml
new file mode 100644
index 0000000..3a4b1ba
--- /dev/null
+++ b/GUIModel/MeterEffect/Qt5/GaussianBlur.qml
@@ -0,0 +1,3 @@
+import QtGraphicalEffects 1.0 as E
+
+E.GaussianBlur {}
diff --git a/GUIModel/MeterEffect/Qt5/OpacityMask.qml b/GUIModel/MeterEffect/Qt5/OpacityMask.qml
new file mode 100644
index 0000000..73df0a3
--- /dev/null
+++ b/GUIModel/MeterEffect/Qt5/OpacityMask.qml
@@ -0,0 +1,3 @@
+import QtGraphicalEffects 1.0 as E
+
+E.OpacityMask {}
diff --git a/GUIModel/MeterEffect/Qt5/ShaderPath.qml b/GUIModel/MeterEffect/Qt5/ShaderPath.qml
new file mode 100644
index 0000000..bdafa05
--- /dev/null
+++ b/GUIModel/MeterEffect/Qt5/ShaderPath.qml
@@ -0,0 +1,7 @@
+pragma Singleton
+import QtQuick 2.15
+
+QtObject {
+ readonly property string guageMaskVert: "qrc:/Shaders/vert/guageMask.vert"
+ readonly property string guageMaskFrag: "qrc:/Shaders/frag/guageMask.frag"
+}
diff --git a/GUIModel/MeterEffect/Qt5/qmldir b/GUIModel/MeterEffect/Qt5/qmldir
new file mode 100644
index 0000000..f0a0d1e
--- /dev/null
+++ b/GUIModel/MeterEffect/Qt5/qmldir
@@ -0,0 +1,3 @@
+singleton ShaderPath 1.0 ShaderPath.qml
+GaussianBlur 1.0 GaussianBlur.qml
+OpacityMask 1.0 OpacityMask.qml
diff --git a/GUIModel/MeterEffect/ShaderPath.qml b/GUIModel/MeterEffect/ShaderPath.qml
new file mode 100644
index 0000000..ebf1f9d
--- /dev/null
+++ b/GUIModel/MeterEffect/ShaderPath.qml
@@ -0,0 +1,7 @@
+pragma Singleton
+import QtQuick 2.15
+
+QtObject {
+ readonly property string guageMaskVert: "qrc:/Assets/Common/Shaders/Qt6/guageMask.vert.qsb"
+ readonly property string guageMaskFrag: "qrc:/Assets/Common/Shaders/Qt6/guageMask.frag.qsb"
+}
diff --git a/GUIModel/MeterEffect/qmldir b/GUIModel/MeterEffect/qmldir
new file mode 100644
index 0000000..f0a0d1e
--- /dev/null
+++ b/GUIModel/MeterEffect/qmldir
@@ -0,0 +1,3 @@
+singleton ShaderPath 1.0 ShaderPath.qml
+GaussianBlur 1.0 GaussianBlur.qml
+OpacityMask 1.0 OpacityMask.qml