├── Component ├── BackButton.qml ├── Footer.qml ├── Header.qml ├── IconButton.qml ├── IconWithLabel.qml ├── InfoPopup.qml ├── ListItemDelegate.qml ├── MapDetails.qml ├── PrefsButton.qml ├── PrefsLabel.qml ├── PrefsSlider.qml ├── PrefsSwitch.qml ├── PrefsTimeLine.qml ├── ProgressRunning.qml ├── RoundRectangle.qml ├── T_TimeLine.qml ├── TextFieldInput.qml └── Toast.qml ├── EagleTheme.pro ├── EagleTheme.pro.user ├── Icons ├── Down.svg ├── Eagle.png ├── Eagle │ ├── 1.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.png │ └── 7.png ├── HorizontalSeparator.png ├── MapIcons │ ├── Add.svg │ ├── Line.png │ ├── Plus.svg │ ├── Search.svg │ ├── charing.svg │ ├── direction.svg │ ├── pump.svg │ ├── save.svg │ ├── saveLocation.svg │ ├── searchIcon.svg │ └── switch.svg ├── Music │ ├── AddPlaylist.svg │ ├── Left.svg │ ├── Like.svg │ ├── Play.svg │ ├── Repeat.svg │ ├── Repeat2.svg │ ├── Settings.svg │ ├── Share.svg │ ├── Suffle.svg │ ├── codex-omega.png │ ├── first_page.svg │ ├── last_page.svg │ ├── pause_paly.svg │ └── right.svg ├── Notification │ ├── Error.svg │ ├── Info.svg │ ├── Success.svg │ └── Warning.svg ├── Toast │ ├── Error.svg │ ├── Info.svg │ ├── Success.svg │ ├── Warning.svg │ └── close-icon.svg ├── bluetooth.svg ├── bottomIcons │ ├── Music.svg │ ├── home.svg │ ├── map.svg │ ├── petrol.svg │ ├── phone.svg │ └── settings.svg ├── brightness 2.svg ├── button.png ├── button.svg ├── call.svg ├── calling │ ├── bi_mic-mute-fill.svg │ ├── calling.svg │ ├── eva_keypad-fill.svg │ └── fluent_call-add-20-filled.svg ├── cross.svg ├── dark │ ├── background.png │ ├── bottom_dark.png │ ├── bottom_dark2.png │ ├── stars.png │ └── top_dark.png ├── doc │ ├── Adhaar.png │ ├── driving.png │ └── pencard.png ├── dummyMap.png ├── entypo_arrow-left.svg ├── fooo.svg ├── footerbar.svg ├── footericon.svg ├── gps-signal.gif ├── green.png ├── image.png ├── location.svg ├── rightArrow.svg ├── scooty.png ├── scooty.svg ├── separator.png ├── seprator.png ├── smallSeparator.png ├── time.svg ├── tooltip.svg ├── topIcons │ ├── eva_bluetooth-fill -on.svg │ ├── eva_bluetooth-fill.svg │ ├── icn_batterytemp.svg │ ├── icn_batterytemp_glow.svg │ ├── icn_highbeam.svg │ ├── icn_highbeam_glow.svg │ ├── icn_leftindicator.svg │ ├── icn_leftindicator_glow.svg │ ├── icn_lowbeam.svg │ ├── icn_lowbeam_glow.svg │ ├── icn_rightindicator _glow.svg │ ├── icn_rightindicator.svg │ ├── icn_sidestandenabled.svg │ ├── icn_sidestandenabled_glow.svg │ ├── icn_tyrepressure.svg │ ├── icn_tyrepressure_glow.svg │ ├── wifi.svg │ ├── wifi │ │ ├── network-cellular-signal-excellent-svgrepo-com.svg │ │ ├── network-cellular-signal-good-svgrepo-com.svg │ │ ├── network-cellular-signal-none-svgrepo-com.svg │ │ ├── network-cellular-signal-ok-svgrepo-com.svg │ │ └── network-cellular-signal-weak-svgrepo-com.svg │ ├── wifi1.svg │ ├── wifi2.svg │ └── wifi3.svg ├── topbar.svg ├── verticalLine.png └── white.png ├── Pages ├── About.qml ├── Bluetooth.qml ├── Callling.qml ├── Charing.qml ├── Display.qml ├── EaglePage.qml ├── HomePage.qml ├── Keypad.qml ├── MapPage.qml ├── MusicPage.qml ├── MyTrips.qml ├── Profile.qml ├── SettingsPage.qml ├── Sound.qml ├── SystemNotification.qml ├── SystemUpdate.qml └── TripDetails.qml ├── README.md ├── StyleTheme.qml ├── app.ico ├── fonts ├── HelveticaNeueLTCom-Bd.ttf ├── HelveticaNeueLTCom-Lt.ttf ├── HelveticaNeueLTCom-Md.ttf └── HelveticaNeueLTCom-Roman.ttf ├── main.cpp ├── main.qml ├── qml.qrc └── screenshots ├── Home.png ├── about-dark.png ├── about.png ├── bluetooth-dark.png ├── bluetooth.png ├── calling.png ├── charing.png ├── clling-dark.png ├── display-dark.png ├── display.png ├── home-dark.png ├── home2.png ├── keypad.png ├── music-dark.png ├── music.png ├── notification.png ├── profile-dark.png ├── profile.png ├── sound.png ├── trip.png ├── tripDetails.png ├── tripdetailsmap.png └── update.png /Component/BackButton.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | Button{ 6 | id:control 7 | contentItem:PrefsLabel{ 8 | text: control.text 9 | } 10 | 11 | background: Rectangle{ 12 | anchors.fill: parent 13 | color: "transparent" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Component/Footer.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.9 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | Image{ 6 | id:root 7 | width: parent.width 8 | source: Style.isDark ? "qrc:/Icons/dark/bottom_dark.png" : "qrc:/Icons/green.png" 9 | sourceSize: Qt.size(root.width , Style.isDark ? 150 : 134) 10 | signal settingsClicked() 11 | signal musicClicked() 12 | signal callingClicked() 13 | signal homeClicked() 14 | signal mapClicked() 15 | signal chargeClicked() 16 | Image{ 17 | visible: !Style.isDark 18 | source: Style.isDark ? "qrc:/Icons/dark/bottom_dark2.png" : "qrc:/Icons/white.png" 19 | sourceSize.height: 116 20 | width: parent.width 21 | anchors.horizontalCenter: parent.horizontalCenter 22 | anchors.bottom: parent.bottom 23 | } 24 | RowLayout{ 25 | width: parent.width * 0.35 26 | anchors.horizontalCenter: parent.horizontalCenter 27 | anchors.top: parent.top 28 | spacing: 10 29 | ColumnLayout{ 30 | PrefsLabel{ 31 | isStyle: true 32 | text: qsTr("72%") 33 | } 34 | PrefsLabel{ 35 | isStyle: true 36 | text: qsTr("Battery") 37 | } 38 | } 39 | ProgressRunning{ 40 | height: 24 41 | Layout.fillWidth: true 42 | } 43 | ColumnLayout{ 44 | PrefsLabel{ 45 | isStyle: true 46 | text: qsTr("136KM") 47 | } 48 | PrefsLabel{ 49 | isStyle: true 50 | text: qsTr("Range") 51 | } 52 | } 53 | } 54 | RowLayout{ 55 | anchors.horizontalCenter: parent.horizontalCenter 56 | anchors.verticalCenter: parent.verticalCenter 57 | anchors.verticalCenterOffset: 12 58 | width: parent.width * 0.9 59 | Item{ 60 | Layout.preferredWidth: 75 61 | } 62 | RowLayout{ 63 | Layout.preferredWidth: parent.width /4.5 64 | IconButton{ 65 | roundIcon: true 66 | iconWidth: 55 67 | iconHeight: 55 68 | checkable: true 69 | setIcon:"qrc:/Icons/bottomIcons/home.svg" 70 | onClicked: homeClicked() 71 | } 72 | IconButton{ 73 | roundIcon: true 74 | iconWidth: 55 75 | iconHeight: 55 76 | checkable: true 77 | setIcon:"qrc:/Icons/bottomIcons/map.svg" 78 | onClicked: mapClicked() 79 | } 80 | IconButton{ 81 | roundIcon: true 82 | iconWidth: 55 83 | iconHeight: 55 84 | checkable: true 85 | setIcon:"qrc:/Icons/bottomIcons/phone.svg" 86 | onClicked: callingClicked() 87 | } 88 | } 89 | Item{ 90 | Layout.fillWidth: true 91 | Layout.fillHeight: true 92 | } 93 | 94 | RowLayout{ 95 | Layout.preferredWidth: parent.width /4.5 96 | IconButton{ 97 | roundIcon: true 98 | iconWidth: 55 99 | iconHeight: 55 100 | checkable: true 101 | setIcon:"qrc:/Icons/bottomIcons/Music.svg" 102 | onClicked: musicClicked() 103 | } 104 | IconButton{ 105 | roundIcon: true 106 | iconWidth: 55 107 | iconHeight: 55 108 | checkable: true 109 | setIcon:"qrc:/Icons/bottomIcons/petrol.svg" 110 | onClicked: chargeClicked() 111 | } 112 | IconButton{ 113 | roundIcon: true 114 | iconWidth: 55 115 | iconHeight: 55 116 | checkable: true 117 | setIcon:"qrc:/Icons/bottomIcons/settings.svg" 118 | onClicked: settingsClicked() 119 | } 120 | } 121 | } 122 | 123 | } 124 | 125 | -------------------------------------------------------------------------------- /Component/IconButton.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.9 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtGraphicalEffects 1.15 5 | import Style 1.0 6 | Button { 7 | property string setIcon : "" 8 | property string setIconText : "" 9 | property string setIconColor : Style.fontColor 10 | property string iconBackground: "transparent" 11 | 12 | property real setIconSize: 25 13 | property real radius: height /2 14 | property real iconWidth: 28 15 | property real iconHeight: 28 16 | 17 | property bool isMirror: false 18 | property bool isGlow: false 19 | property bool roundIcon: false 20 | property alias iconSource: iconSource 21 | property alias roundIconSource: roundIconSource 22 | 23 | id: control 24 | implicitHeight: 55 25 | implicitWidth: 55 26 | contentItem: PrefsLabel{ 27 | text: control.text 28 | } 29 | 30 | Image{ 31 | id:iconSource 32 | z:2 33 | visible: !roundIcon && !setIconText 34 | mirror: isMirror 35 | anchors.centerIn: parent 36 | source: setIcon 37 | scale: control.pressed ? 0.9 : 1.0 38 | Behavior on scale { NumberAnimation { duration: 200; } } 39 | } 40 | 41 | Image{ 42 | id:roundIconSource 43 | z:2 44 | visible: roundIcon && !setIconText 45 | mirror: isMirror 46 | sourceSize: Qt.size(iconWidth,iconHeight) 47 | anchors.centerIn: parent 48 | source: setIcon 49 | scale: control.pressed ? 0.9 : 1.0 50 | Behavior on scale { NumberAnimation { duration: 200; } } 51 | } 52 | 53 | background: Rectangle { 54 | z:1 55 | anchors.fill: parent 56 | radius: control.radius 57 | color: control.iconBackground 58 | visible: true 59 | Behavior on color { 60 | ColorAnimation { 61 | duration: 200; 62 | easing.type: Easing.Linear; 63 | } 64 | } 65 | 66 | Rectangle { 67 | id: indicator 68 | property int mx 69 | property int my 70 | x: mx - width / 2 71 | y: my - height / 2 72 | height: width 73 | radius: width / 2 74 | color: isGlow ? Qt.lighter("#29BEB6") : Qt.lighter("#B8FF01") 75 | } 76 | } 77 | 78 | Rectangle { 79 | id: mask 80 | radius: height /2 81 | anchors.fill: parent 82 | visible: false 83 | } 84 | 85 | OpacityMask { 86 | anchors.fill: background 87 | source: background 88 | maskSource: mask 89 | } 90 | 91 | MouseArea { 92 | id: mouseArea 93 | hoverEnabled: true 94 | acceptedButtons: Qt.NoButton 95 | cursorShape: Qt.PointingHandCursor 96 | anchors.fill: parent 97 | } 98 | 99 | ParallelAnimation { 100 | id: anim 101 | NumberAnimation { 102 | target: indicator 103 | property: 'width' 104 | from: 0 105 | to: control.width * 1.5 106 | duration: 200 107 | } 108 | NumberAnimation { 109 | target: indicator; 110 | property: 'opacity' 111 | from: 0.9 112 | to: 0 113 | duration: 200 114 | } 115 | } 116 | 117 | onPressed: { 118 | indicator.mx = mouseArea.mouseX 119 | indicator.my = mouseArea.mouseY 120 | anim.restart(); 121 | } 122 | } 123 | -------------------------------------------------------------------------------- /Component/IconWithLabel.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtGraphicalEffects 1.15 5 | import Style 1.0 6 | 7 | 8 | Button { 9 | id:control 10 | 11 | property real radius: 4 12 | property color backgroundColor: "#14A44D" 13 | property color smallBackgroundColor: "#14A44D" 14 | property string setIcon: "" 15 | property color textColor: "#FFFFFF" 16 | 17 | property real borderWidth: 0 18 | property color borderColor: "transparent" 19 | property real iconWidth: 18 20 | property real iconHeight: 18 21 | implicitHeight: 45 22 | implicitWidth: 120 23 | SystemPalette { id: myPalette; colorGroup: SystemPalette.Active } 24 | 25 | contentItem:RowLayout{ 26 | anchors.centerIn: parent 27 | width: parent.width 28 | IconButton{ 29 | z:2 30 | implicitWidth: control.iconWidth 31 | implicitHeight: control.iconHeight 32 | setIcon: control.setIcon 33 | iconWidth: control.iconWidth 34 | iconHeight: control.iconHeight 35 | iconBackground:control.smallBackgroundColor 36 | } 37 | PrefsLabel{ 38 | z:2 39 | color: control.textColor 40 | font.pixelSize: Style.paragraph 41 | text: control.text 42 | } 43 | } 44 | 45 | background: Rectangle{ 46 | implicitHeight: control.implicitHeight 47 | implicitWidth: control.implicitWidth 48 | radius: control.radius 49 | color: control.backgroundColor 50 | border.width: control.borderWidth 51 | border.color: control.borderColor 52 | 53 | visible: false 54 | 55 | Behavior on color { 56 | 57 | ColorAnimation { 58 | easing.type: Easing.Linear 59 | duration: 200 60 | } 61 | } 62 | 63 | Rectangle{ 64 | id:indicator 65 | property int mx 66 | property int my 67 | x:mx-width/2 68 | y:my-height/2 69 | height:width 70 | radius: control.radius 71 | color: Qt.lighter(myPalette.highlight) 72 | } 73 | } 74 | 75 | Rectangle{ 76 | id:mask 77 | radius: control.radius 78 | anchors.fill: parent 79 | visible: false 80 | } 81 | 82 | OpacityMask{ 83 | anchors.fill: background 84 | source: background 85 | maskSource: mask 86 | } 87 | 88 | MouseArea{ 89 | id:mouseArea 90 | hoverEnabled: true 91 | acceptedButtons: Qt.NoButton 92 | cursorShape: Qt.PointingHandCursor 93 | anchors.fill: parent 94 | } 95 | 96 | ParallelAnimation{ 97 | id:main 98 | NumberAnimation{ 99 | target: indicator 100 | properties: 'width' 101 | from:0 102 | to:control.width *2.5 103 | duration: 200 104 | } 105 | NumberAnimation{ 106 | target: indicator 107 | properties: 'opacity' 108 | from:0.9 109 | to:0 110 | duration: 200 111 | } 112 | } 113 | 114 | onPressed: { 115 | indicator.mx = mouseArea.mouseX 116 | indicator.my = mouseArea.mouseY 117 | main.restart() 118 | } 119 | } 120 | -------------------------------------------------------------------------------- /Component/InfoPopup.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtLocation 5.15 5 | import QtPositioning 5.6 6 | import Style 1.0 7 | import "../Component" 8 | 9 | Pane{ 10 | id:info 11 | property color infoColor: "#00CC99" 12 | property string icon: "qrc:/Icons/Notification/Success.svg" 13 | property string title: qsTr("Success") 14 | property string subTitle: qsTr("Order Placed Successfully. Thank you for shopping with us.") 15 | padding: 0 16 | width: 650 17 | height: 130 18 | background: Rectangle{ 19 | anchors.fill: parent 20 | color : Style.isDark ? palette.dark : palette.light 21 | radius: 15 22 | 23 | Rectangle{ 24 | anchors.left: parent.left 25 | anchors.verticalCenter: parent.verticalCenter 26 | height: 130 27 | width: 10 28 | radius: 10 29 | color: info.infoColor 30 | } 31 | } 32 | 33 | contentItem: Item{ 34 | anchors.fill: parent 35 | Rectangle{ 36 | id:notifIcon 37 | width: 70 38 | height: width 39 | radius: height /2 40 | color: info.infoColor 41 | 42 | anchors.left: parent.left 43 | anchors.verticalCenter: parent.verticalCenter 44 | anchors.leftMargin: 33.5 45 | 46 | Image{ 47 | anchors.centerIn: parent 48 | source: info.icon 49 | sourceSize: Qt.size(notifIcon.width * 0.6,notifIcon.width * 0.6) 50 | } 51 | } 52 | ColumnLayout{ 53 | width: info.width *0.8 54 | spacing: 10 55 | anchors.left: notifIcon.right 56 | anchors.leftMargin: 23.5 57 | anchors.verticalCenter: parent.verticalCenter 58 | PrefsLabel{ 59 | isStyle: true 60 | text: info.title 61 | } 62 | PrefsLabel{ 63 | Layout.maximumWidth: parent.width 64 | font.pixelSize: Style.h5 65 | isStyle: true 66 | text: info.subTitle 67 | } 68 | } 69 | } 70 | } 71 | 72 | -------------------------------------------------------------------------------- /Component/ListItemDelegate.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | ItemDelegate { 6 | id:root 7 | property string title: "" 8 | highlighted: ListView.isCurrentItem 9 | height: 50 10 | hoverEnabled: true 11 | focus: true 12 | 13 | background: Rectangle{ 14 | color: "transparent" 15 | anchors.fill: parent 16 | radius: 8 17 | } 18 | 19 | PrefsLabel { 20 | anchors.centerIn: parent 21 | opacity: 0.87 22 | text: title 23 | font.pixelSize: root.highlighted ? Style.h2 : Style.h3 24 | isBold: root.highlighted 25 | isStyle: root.highlighted 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Component/PrefsButton.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtGraphicalEffects 1.15 5 | import Style 1.0 6 | 7 | 8 | Button { 9 | id:control 10 | 11 | property real radius: 8 12 | property color backgroundColor: "#14A44D" 13 | property string setIcon: "" 14 | property color textColor: "#FFFFFF" 15 | 16 | property real borderWidth: 0 17 | property color borderColor: "transparent" 18 | property real iconFactor: 0.8 19 | property bool mirror: false 20 | 21 | implicitWidth: 55 22 | implicitHeight: 55 23 | SystemPalette { id: myPalette; colorGroup: SystemPalette.Active } 24 | 25 | contentItem:ColumnLayout{ 26 | width: parent.width 27 | height: parent.height 28 | anchors.horizontalCenter: parent.horizontalCenter 29 | PrefsLabel{ 30 | z:2 31 | Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter 32 | font.pixelSize: Style.h3 33 | text: control.text 34 | color: control.textColor 35 | visible: !setIcon 36 | } 37 | 38 | Image{ 39 | Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter 40 | sourceSize: Qt.size(control.implicitWidth* iconFactor,control.implicitHeight*iconFactor) 41 | source: setIcon 42 | mirror: control.mirror 43 | } 44 | } 45 | 46 | background: Rectangle{ 47 | implicitHeight: control.implicitHeight 48 | implicitWidth: control.implicitWidth 49 | radius: control.radius 50 | color: control.backgroundColor 51 | border.width: control.borderWidth 52 | border.color: control.borderColor 53 | 54 | visible: false 55 | 56 | Behavior on color { 57 | 58 | ColorAnimation { 59 | easing.type: Easing.Linear 60 | duration: 200 61 | } 62 | } 63 | 64 | Rectangle{ 65 | id:indicator 66 | property int mx 67 | property int my 68 | x:mx-width/2 69 | y:my-height/2 70 | height:width 71 | radius: control.radius 72 | color: Qt.lighter(myPalette.highlight) 73 | } 74 | } 75 | 76 | Rectangle{ 77 | id:mask 78 | radius: control.radius 79 | anchors.fill: parent 80 | visible: false 81 | } 82 | 83 | OpacityMask{ 84 | anchors.fill: background 85 | source: background 86 | maskSource: mask 87 | } 88 | 89 | MouseArea{ 90 | id:mouseArea 91 | hoverEnabled: true 92 | acceptedButtons: Qt.NoButton 93 | cursorShape: Qt.PointingHandCursor 94 | anchors.fill: parent 95 | } 96 | 97 | ParallelAnimation{ 98 | id:main 99 | NumberAnimation{ 100 | target: indicator 101 | properties: 'width' 102 | from:0 103 | to:control.width *2.5 104 | duration: 200 105 | } 106 | NumberAnimation{ 107 | target: indicator 108 | properties: 'opacity' 109 | from:0.9 110 | to:0 111 | duration: 200 112 | } 113 | } 114 | 115 | onPressed: { 116 | indicator.mx = mouseArea.mouseX 117 | indicator.my = mouseArea.mouseY 118 | main.restart() 119 | } 120 | } 121 | -------------------------------------------------------------------------------- /Component/PrefsLabel.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import Style 1.0 4 | 5 | Label { 6 | property bool isBold: false 7 | property bool isStyle: false 8 | clip: true 9 | color: isStyle ? Style.styleColor : Style.baseColor 10 | font.pixelSize: Style.h3 11 | font.capitalization: Font.Capitalize 12 | font.bold: isBold ? Font.Bold : Font.Normal 13 | font.weight: isBold ? Font.Bold : Font.Normal 14 | font.family: isBold ? Style.helveticaNeureBold.name : Style.helveticaNeureMedium.name 15 | wrapMode: Text.WrapAtWordBoundaryOrAnywhere 16 | } 17 | -------------------------------------------------------------------------------- /Component/PrefsSlider.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls.Styles 1.4 3 | import QtQuick.Controls 2.0 4 | import QtGraphicalEffects 1.0 5 | import Style 1.0 6 | Slider { 7 | id: control 8 | property bool labelVisible: true 9 | property real setHandleHeight: height + 5 10 | property color checkedColor: "#69FFF6" 11 | property color handlerColor: "#212325" 12 | property bool tooltipVisible: true 13 | width: 680 14 | height: 20 15 | leftPadding:5 16 | from:0 17 | to:100 18 | background: Rectangle { 19 | x: -2 20 | y: control.topPadding + control.availableHeight / 2 - height / 2 21 | implicitWidth: control.width 22 | implicitHeight: control.height 23 | width: control.availableWidth 24 | height: implicitHeight 25 | radius: height / 2 26 | color: "gray" 27 | 28 | Rectangle { 29 | width: control.visualPosition == 0 ? 0 : control.handle.x + control.handle.width 30 | height: parent.height 31 | color: control.checkedColor 32 | radius: height / 2 33 | layer.enabled: control.pressed 34 | layer.effect: DropShadow { 35 | transparentBorder: true 36 | color: control.checkedColor 37 | samples: 8 38 | } 39 | } 40 | } 41 | 42 | handle: Rectangle { 43 | visible: labelVisible 44 | x: control.visualPosition * (control.availableWidth - width) - 2 45 | y: control.topPadding + control.availableHeight / 2 - height / 2 46 | implicitWidth: setHandleHeight + 6 47 | height: setHandleHeight + 6 48 | radius: implicitWidth / 2 49 | color: "transparent" 50 | border.width: implicitWidth * 0.33 51 | border.color: handlerColor 52 | 53 | layer.enabled: control.pressed 54 | layer.effect: DropShadow { 55 | transparentBorder: true 56 | color: control.checkedColor 57 | samples: 10 58 | } 59 | 60 | Image{ 61 | visible: control.visualPosition != -1 && tooltipVisible 62 | source: "qrc:/Icons/tooltip.svg" 63 | anchors.bottom: parent.top 64 | anchors.topMargin: 5 65 | anchors.horizontalCenter: parent.horizontalCenter 66 | PrefsLabel{ 67 | anchors.horizontalCenter: parent.horizontalCenter 68 | anchors.top: parent.top 69 | anchors.topMargin: 3 70 | text: control.value.toFixed(0) + "%"; 71 | font.pixelSize: Style.h4 72 | color: "#FFFFFF" 73 | } 74 | } 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /Component/PrefsSwitch.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | Switch { 6 | id:control 7 | property color backgroundColor: myPalette.highlight 8 | SystemPalette { id: myPalette; colorGroup: SystemPalette.Active } 9 | spacing : 10 10 | indicator: Rectangle{ 11 | implicitHeight: 32 12 | implicitWidth: 56 13 | x:control.leftPadding 14 | y:parent.height /2 - height/2 15 | radius: width/2 16 | color: control.checked ? control.backgroundColor : "#074041" 17 | border.width: control.checked ? 2 : 1 18 | border.color: control.checked ? control.backgroundColor : "transparent" 19 | 20 | 21 | Rectangle{ 22 | x:control.checked ? (parent.width-width) - 2: 2 23 | NumberAnimation on x{ 24 | duration: 5000 25 | } 26 | 27 | width: 28 28 | height: 28 29 | radius: height/2 30 | color: control.checked ? "#FFFFFF" : "#B3B3B3" 31 | anchors.verticalCenter: parent.verticalCenter 32 | } 33 | } 34 | 35 | contentItem: PrefsLabel{ 36 | font.pixelSize: Style.h2 37 | text: control.text 38 | verticalAlignment: Text.AlignVCenter 39 | leftPadding: control.indicator.width + control.spacing 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Component/ProgressRunning.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | 3 | Rectangle { 4 | id: gasolineIndicator 5 | width: 200 6 | height: 17 7 | radius: 9 8 | layer.enabled: true 9 | layer.samplerName: "fuelShader" 10 | layer.effect: ShaderEffect { 11 | id: fuelShaderMask 12 | property variant v; 13 | SequentialAnimation { 14 | running: true 15 | loops: Animation.Infinite 16 | UniformAnimator { 17 | target: fuelShaderMask 18 | uniform: "v" 19 | from: 0 20 | to: 0.9 21 | duration: 15000 22 | } 23 | UniformAnimator { 24 | target: fuelShaderMask 25 | uniform: "v" 26 | from: 0.9 27 | to: 0 28 | duration: 15000 29 | } 30 | } 31 | fragmentShader: " 32 | uniform lowp sampler2D fuelShader; 33 | uniform lowp float qt_Opacity; 34 | varying highp vec2 qt_TexCoord0; 35 | uniform lowp float v; 36 | 37 | void main() { 38 | 39 | //Background gradient 40 | const lowp vec3 c1 = vec3(0.902,0.545,0.11); 41 | const lowp vec3 c2 = vec3(0.247,0.78,0.871); 42 | lowp vec3 bg = mix(c1,c2, qt_TexCoord0.x); 43 | 44 | //Animated ramp 45 | lowp float s = smoothstep(0.99 - v, 1.01 - v, qt_TexCoord0.x); 46 | lowp vec3 ramp = vec3(s); 47 | lowp vec4 color = vec4(bg + ramp, 1.0); 48 | 49 | gl_FragColor = color * texture2D(fuelShader, qt_TexCoord0).a * qt_Opacity; 50 | } 51 | " 52 | } 53 | } 54 | 55 | -------------------------------------------------------------------------------- /Component/RoundRectangle.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.0 2 | Rectangle { 3 | id: root 4 | property int radiusCorners: Qt.AlignLeft | Qt.AlignRight | Qt.AlignTop | Qt.AlignBottom /* Default: */ 5 | /* 6 | Qt.AlignLeft | Qt.AlignLeft | Qt.AlignRight | Qt.AlignLeft | Qt.AlignLeft | 7 | Qt.AlignRight | Qt.AlignTop | Qt.AlignTop | Qt.AlignRight | Qt.AlignRight | 8 | None:0 Qt.AlignTop | Qt.AlignBottom Qt.AlignBottom Qt.AlignTop Qt.AlignBottom 9 | Qt.AlignBottom 10 | ***************** ************* *************** *************** ************* ***************** 11 | * * * * * * * * * * * * 12 | * * * * * * * * * * * * 13 | * * * * * * * * * * * * 14 | * * * * * * * * * * * * 15 | * * * * * * * * * * * * 16 | * * * * * * * * * * * * 17 | * * * * * * * * * * * * 18 | ***************** ************* *************** *************** ***************** ************* 19 | */ 20 | 21 | Repeater { 22 | model: [ { 23 | x: 0, 24 | y: 0, 25 | visible: internal.aligns(Qt.AlignLeft | Qt.AlignTop), 26 | radius: root.radius 27 | }, 28 | { 29 | x: root.width - root.radius, 30 | y: 0, 31 | visible: internal.aligns(Qt.AlignRight | Qt.AlignTop), 32 | radius: root.radius 33 | }, 34 | { 35 | x: 0, 36 | y: root.height - root.radius, 37 | visible: internal.aligns(Qt.AlignLeft | Qt.AlignBottom), 38 | radius: root.radius 39 | }, 40 | { 41 | x: root.width - root.radius, 42 | y: root.height - root.radius, 43 | visible: internal.aligns(Qt.AlignRight | Qt.AlignBottom), 44 | radius: root.radius 45 | } ] 46 | 47 | Rectangle { 48 | x: modelData.x; y: modelData.y 49 | width: modelData.radius; height: width 50 | visible: !modelData.visible 51 | color: parent.color 52 | } 53 | } 54 | 55 | QtObject { 56 | id: internal 57 | 58 | function aligns(direction) { 59 | return (root.radiusCorners & direction) === direction 60 | } 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /Component/T_TimeLine.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Layouts 1.15 3 | import QtQuick.Window 2.15 4 | import QtQuick.Controls 2.15 5 | import Style 1.0 6 | Page{ 7 | title:"Timeline" 8 | property bool isDark: false 9 | SystemPalette { id: myPalette; colorGroup: SystemPalette.Active } 10 | Component{ 11 | id:com_dot 12 | Rectangle{ 13 | width: 16 14 | height: 16 15 | radius: 8 16 | border.width: 4 17 | border.color: myPalette.highlight 18 | } 19 | } 20 | 21 | Component{ 22 | id:com_lable 23 | PrefsLabel{ 24 | isBold: true 25 | horizontalAlignment: isRight ? Qt.AlignRight : Qt.AlignLeft 26 | text: modelData.lable 27 | MouseArea{ 28 | anchors.fill: parent 29 | cursorShape: Qt.PointingHandCursor 30 | onClicked: { 31 | showSuccess(modelData.lable) 32 | } 33 | } 34 | } 35 | } 36 | 37 | Component{ 38 | id:com_text 39 | PrefsLabel{ 40 | horizontalAlignment: isRight ? Qt.AlignRight : Qt.AlignLeft 41 | text: modelData.text 42 | isBold: true 43 | linkColor: "blue" 44 | onLinkActivated:(link)=> { 45 | Qt.openUrlExternally(link) 46 | } 47 | } 48 | } 49 | 50 | ListModel{ 51 | id:list_model 52 | ListElement{ 53 | lable:"2013-09-01" 54 | text:'  考上中国皮城大学,杰斯武器工坊专业' 55 | } 56 | ListElement{ 57 | lable:"2017-07-01" 58 | text:"大学毕业,在寝室打了4年LOL,没想到毕业还要找工作,瞬间蒙蔽,害" 59 | } 60 | ListElement{ 61 | lable:"2017-09-01" 62 | text:"开始找工作,毕业即失业!回农村老家躺平,继承三亩良田" 63 | } 64 | ListElement{ 65 | lable:"2018-02-01" 66 | text:"玩了一年没钱,惨,出去找工作上班" 67 | } 68 | ListElement{ 69 | lable:"2018-03-01" 70 | text:"找到一份Android外包开发岗位,开发了一个Android应用,满满成就感!前端、服务端、Flutter也都懂一丢丢,什么都会什么都不精通,钱途无望" 71 | } 72 | ListElement{ 73 | lable:"2021-06-01" 74 | text:"由于某个项目紧急,临时加入Qt项目组(就因为大学学了点C++),本来是想进去打个酱油,到后面竟然成开发主力,坑啊" 75 | } 76 | ListElement{ 77 | lable:"2022-08-01" 78 | text:"额,被老板卖到甲方公司,走时老板还问我想不想去,我说:'哪里工资高就去哪里',老板:'无语'" 79 | } 80 | ListElement{ 81 | lable:"2023-02-28" 82 | text:"开发FluentUI组件库" 83 | } 84 | ListElement{ 85 | lable:"2023-03-28" 86 | text:'将FluentUI源码开源到github,并发布视频到B站' 87 | lableDelegate:()=>com_lable 88 | textDelegate:()=>com_text 89 | dot:()=>com_dot 90 | } 91 | } 92 | 93 | RowLayout{ 94 | spacing: 20 95 | Layout.topMargin: 20 96 | TextField{ 97 | id:text_box 98 | text:"Technical testing 2015-09-01" 99 | } 100 | PrefsButton{ 101 | text:"Append" 102 | onClicked: { 103 | list_model.append({text:text_box.text}) 104 | } 105 | } 106 | PrefsButton{ 107 | text:"clear" 108 | onClicked: { 109 | list_model.clear() 110 | } 111 | } 112 | } 113 | 114 | RowLayout{ 115 | Layout.topMargin: 10 116 | PrefsLabel{ 117 | text:"mode:" 118 | } 119 | PrefsButton{ 120 | text:"Left" 121 | onClicked: { 122 | btn_mode.text = text 123 | time_line.mode = Style.left 124 | } 125 | } 126 | PrefsButton{ 127 | text:"Right" 128 | onClicked: { 129 | btn_mode.text = text 130 | time_line.mode = Style.right 131 | } 132 | } 133 | PrefsButton{ 134 | text:"Alternate" 135 | onClicked: { 136 | btn_mode.text = text 137 | time_line.mode = Style.alternate 138 | } 139 | } 140 | } 141 | 142 | PrefsTimeLine{ 143 | id:time_line 144 | Layout.fillWidth: true 145 | Layout.topMargin: 20 146 | Layout.bottomMargin: 20 147 | mode: Style.alternate 148 | model:list_model 149 | } 150 | 151 | } 152 | -------------------------------------------------------------------------------- /Component/TextFieldInput.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | 6 | TextField { 7 | id:control 8 | property bool isBold: false 9 | property real radius: 12 10 | property color borderColor: palette.highlight 11 | property color backgroundColor: palette.base 12 | 13 | placeholderTextColor: "#FFFFFF" 14 | font.pixelSize: Style.h5 15 | font.bold: isBold ? Font.Bold : Font.Normal 16 | font.weight: isBold ? Font.Bold : Font.Normal 17 | color: palette.dark 18 | background:Rectangle{ 19 | implicitHeight: control.implicitHeight 20 | implicitWidth: control.implicitWidth 21 | radius: control.radius 22 | color: control.backgroundColor 23 | border.width: control.activeFocus ? 2 : 1 24 | border.color: control.borderColor 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Component/Toast.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtLocation 5.15 5 | import QtPositioning 5.6 6 | import Style 1.0 7 | import "../Component" 8 | Popup{ 9 | id:info 10 | property color infoColor: "#00CC99" 11 | property string icon: "qrc:/Icons/Notification/Success.svg" 12 | property string title: qsTr("Success") 13 | property string subTitle: qsTr("Order Placed Successfully. Thank you for shopping with us.") 14 | padding: 0 15 | width: 650 16 | height: 130 17 | background: Rectangle{ 18 | color: "transparent" 19 | anchors.fill: parent 20 | } 21 | 22 | contentItem:Pane{ 23 | padding:0 24 | background: Rectangle{ 25 | anchors.fill: parent 26 | color : Style.isDark ? palette.dark : palette.light 27 | radius: 15 28 | Rectangle{ 29 | anchors.left: parent.left 30 | anchors.verticalCenter: parent.verticalCenter 31 | height: 130 32 | width: 10 33 | radius: 10 34 | color: info.infoColor 35 | } 36 | } 37 | 38 | contentItem: Item{ 39 | anchors.fill: parent 40 | Rectangle{ 41 | id:notifIcon 42 | width: 70 43 | height: width 44 | radius: height /2 45 | color: info.infoColor 46 | 47 | anchors.left: parent.left 48 | anchors.verticalCenter: parent.verticalCenter 49 | anchors.leftMargin: 33.5 50 | 51 | Image{ 52 | anchors.centerIn: parent 53 | source: info.icon 54 | sourceSize: Qt.size(notifIcon.width * 0.6,notifIcon.width * 0.6) 55 | } 56 | } 57 | 58 | IconButton{ 59 | setIcon:"qrc:/Icons/Toast/close-icon.svg" 60 | anchors.right: parent.right 61 | anchors.top: parent.top 62 | anchors.rightMargin: 10 63 | anchors.topMargin: 10 64 | onClicked: {info.close()} 65 | } 66 | 67 | 68 | ColumnLayout{ 69 | width: info.width *0.8 70 | spacing: 10 71 | anchors.left: notifIcon.right 72 | anchors.leftMargin: 23.5 73 | anchors.verticalCenter: parent.verticalCenter 74 | PrefsLabel{ 75 | isStyle: true 76 | text: info.title 77 | } 78 | PrefsLabel{ 79 | Layout.maximumWidth: parent.width 80 | isStyle: true 81 | text: info.subTitle 82 | } 83 | } 84 | } 85 | } 86 | } 87 | 88 | -------------------------------------------------------------------------------- /EagleTheme.pro: -------------------------------------------------------------------------------- 1 | QT += quick 2 | 3 | # You can make your code fail to compile if it uses deprecated APIs. 4 | # In order to do so, uncomment the following line. 5 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 6 | 7 | SOURCES += \ 8 | main.cpp 9 | 10 | RESOURCES += qml.qrc 11 | 12 | # Additional import path used to resolve QML modules in Qt Creator's code model 13 | QML_IMPORT_PATH = 14 | 15 | # Additional import path used to resolve QML modules just for Qt Quick Designer 16 | QML_DESIGNER_IMPORT_PATH = 17 | 18 | 19 | win32:RC_ICONS += app.ico 20 | # Default rules for deployment. 21 | qnx: target.path = /tmp/$${TARGET}/bin 22 | else: unix:!android: target.path = /opt/$${TARGET}/bin 23 | !isEmpty(target.path): INSTALLS += target 24 | -------------------------------------------------------------------------------- /Icons/Down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Eagle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle.png -------------------------------------------------------------------------------- /Icons/Eagle/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/1.png -------------------------------------------------------------------------------- /Icons/Eagle/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/2.png -------------------------------------------------------------------------------- /Icons/Eagle/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/3.png -------------------------------------------------------------------------------- /Icons/Eagle/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/4.png -------------------------------------------------------------------------------- /Icons/Eagle/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/5.png -------------------------------------------------------------------------------- /Icons/Eagle/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/6.png -------------------------------------------------------------------------------- /Icons/Eagle/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Eagle/7.png -------------------------------------------------------------------------------- /Icons/HorizontalSeparator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/HorizontalSeparator.png -------------------------------------------------------------------------------- /Icons/MapIcons/Add.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/MapIcons/Line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/MapIcons/Line.png -------------------------------------------------------------------------------- /Icons/MapIcons/Plus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/MapIcons/Search.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/MapIcons/charing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/MapIcons/direction.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/MapIcons/pump.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Icons/MapIcons/save.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/MapIcons/saveLocation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/MapIcons/searchIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Icons/MapIcons/switch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Icons/Music/AddPlaylist.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Music/Left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Music/Like.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Music/Play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Icons/Music/Repeat.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Icons/Music/Repeat2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Icons/Music/Settings.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /Icons/Music/Share.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Music/Suffle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Icons/Music/codex-omega.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/Music/codex-omega.png -------------------------------------------------------------------------------- /Icons/Music/first_page.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/Music/last_page.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Icons/Music/pause_paly.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Music/right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Notification/Error.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Notification/Info.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Notification/Success.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Notification/Warning.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Toast/Error.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Toast/Info.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Toast/Success.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Toast/Warning.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/Toast/close-icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Icons/bluetooth.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/bottomIcons/Music.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/bottomIcons/home.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/bottomIcons/map.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Icons/bottomIcons/petrol.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/bottomIcons/phone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/bottomIcons/settings.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/brightness 2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/button.png -------------------------------------------------------------------------------- /Icons/button.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Icons/call.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/calling/bi_mic-mute-fill.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Icons/calling/calling.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/calling/eva_keypad-fill.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/calling/fluent_call-add-20-filled.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/cross.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Icons/dark/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/dark/background.png -------------------------------------------------------------------------------- /Icons/dark/bottom_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/dark/bottom_dark.png -------------------------------------------------------------------------------- /Icons/dark/bottom_dark2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/dark/bottom_dark2.png -------------------------------------------------------------------------------- /Icons/dark/stars.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/dark/stars.png -------------------------------------------------------------------------------- /Icons/dark/top_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/dark/top_dark.png -------------------------------------------------------------------------------- /Icons/doc/Adhaar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/doc/Adhaar.png -------------------------------------------------------------------------------- /Icons/doc/driving.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/doc/driving.png -------------------------------------------------------------------------------- /Icons/doc/pencard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/doc/pencard.png -------------------------------------------------------------------------------- /Icons/dummyMap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/dummyMap.png -------------------------------------------------------------------------------- /Icons/entypo_arrow-left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Icons/fooo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Icons/footerbar.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Icons/footericon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Icons/gps-signal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/gps-signal.gif -------------------------------------------------------------------------------- /Icons/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/green.png -------------------------------------------------------------------------------- /Icons/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/image.png -------------------------------------------------------------------------------- /Icons/location.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Icons/rightArrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/scooty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/scooty.png -------------------------------------------------------------------------------- /Icons/scooty.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Icons/separator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/separator.png -------------------------------------------------------------------------------- /Icons/seprator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/seprator.png -------------------------------------------------------------------------------- /Icons/smallSeparator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/smallSeparator.png -------------------------------------------------------------------------------- /Icons/time.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Icons/tooltip.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Icons/topIcons/eva_bluetooth-fill -on.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/topIcons/eva_bluetooth-fill.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_batterytemp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_batterytemp_glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_highbeam.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_highbeam_glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_leftindicator.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_leftindicator_glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_lowbeam.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_lowbeam_glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_rightindicator _glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_rightindicator.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_sidestandenabled.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_sidestandenabled_glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_tyrepressure.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/topIcons/icn_tyrepressure_glow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi/network-cellular-signal-excellent-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi/network-cellular-signal-good-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi/network-cellular-signal-none-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi/network-cellular-signal-ok-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi/network-cellular-signal-weak-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topIcons/wifi3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/topbar.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Icons/verticalLine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/verticalLine.png -------------------------------------------------------------------------------- /Icons/white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/Icons/white.png -------------------------------------------------------------------------------- /Pages/Bluetooth.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | import "../Component" 6 | 7 | EaglePage { 8 | id:root 9 | width: parent.width 10 | leftPadding: 100 11 | contentData: RowLayout{ 12 | width: root.width 13 | spacing: 20 14 | Pane{ 15 | Layout.fillWidth: true 16 | Layout.fillHeight: true 17 | padding: 0 18 | background: Rectangle{ 19 | anchors.fill: parent 20 | color: Style.background 21 | } 22 | 23 | ColumnLayout{ 24 | width: parent.width 25 | spacing: 30 26 | PrefsLabel{ 27 | Layout.alignment: Qt.AlignLeft 28 | font.pixelSize: Style.h1 29 | text: qsTr("Bluetooth") 30 | } 31 | 32 | SwitchDelegate{ 33 | Layout.preferredWidth: parent.width * 0.5 34 | spacing : 20 35 | background:Rectangle{ 36 | anchors.fill: parent 37 | color: "#00B1B2" 38 | radius: 7.9 39 | } 40 | 41 | contentItem: Item{ 42 | width: parent.width 43 | RowLayout{ 44 | PrefsButton{ 45 | setIcon: "qrc:/Icons/bluetooth.svg" 46 | backgroundColor:"#00000000" 47 | } 48 | PrefsLabel{ 49 | Layout.alignment: Qt.AlignLeft 50 | text: qsTr("Bluetooth") 51 | } 52 | } 53 | } 54 | indicator : PrefsSwitch{ 55 | anchors.verticalCenter: parent.verticalCenter 56 | anchors.right: parent.right 57 | anchors.rightMargin: 10 58 | } 59 | } 60 | 61 | ColumnLayout{ 62 | PrefsLabel{ 63 | Layout.alignment: Qt.AlignLeft 64 | font.pixelSize: Style.h4 65 | color: Style.grayColor 66 | text: qsTr("Now Discover As \"People E-bike\"") 67 | } 68 | Item{ 69 | Layout.preferredHeight: 20 70 | Layout.fillWidth: true 71 | } 72 | 73 | PrefsLabel{ 74 | Layout.alignment: Qt.AlignLeft 75 | font.pixelSize: Style.h4 76 | color: Style.grayColor 77 | text: qsTr("On your bluetooth to connect with the device") 78 | } 79 | } 80 | } 81 | } 82 | Image{ 83 | id:ebike 84 | Layout.rightMargin: 250 85 | source: "qrc:/Icons/scooty.png" 86 | } 87 | } 88 | } 89 | -------------------------------------------------------------------------------- /Pages/Callling.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | import "../Component" 6 | 7 | EaglePage { 8 | id:root 9 | width: parent.width 10 | 11 | Component{ 12 | id:keypad 13 | Keypad{ 14 | 15 | } 16 | } 17 | 18 | contentItem: ColumnLayout{ 19 | width: parent.width 20 | 21 | Image{ 22 | Layout.alignment: Qt.AlignHCenter 23 | source: "qrc:/Icons/image.png" 24 | } 25 | PrefsLabel{ 26 | Layout.alignment: Qt.AlignHCenter 27 | font.pixelSize: Style.h4 28 | color: Style.grayColor 29 | text: qsTr("Jonathan") 30 | } 31 | 32 | PrefsLabel{ 33 | Layout.alignment: Qt.AlignHCenter 34 | font.pixelSize: Style.paragraph 35 | color: Style.grayColor 36 | text: qsTr("Calling") 37 | } 38 | 39 | RowLayout{ 40 | Layout.alignment: Qt.AlignHCenter 41 | Layout.preferredWidth: root.width * 0.5 42 | Layout.maximumWidth: root.width * 0.5 43 | 44 | ColumnLayout{ 45 | spacing: 10 46 | IconButton{ 47 | Layout.alignment: Qt.AlignHCenter 48 | setIcon: "qrc:/Icons/calling/eva_keypad-fill.svg" 49 | onClicked: gEagleStack.push(keypad) 50 | } 51 | PrefsLabel{ 52 | Layout.alignment: Qt.AlignHCenter 53 | font.pixelSize: Style.paragraph 54 | color: Style.grayColor 55 | text: qsTr("Keypad") 56 | } 57 | } 58 | 59 | Item{ 60 | Layout.fillWidth: true 61 | } 62 | 63 | Image{ 64 | source: "qrc:/Icons/verticalLine.png" 65 | } 66 | Item{ 67 | Layout.fillWidth: true 68 | } 69 | ColumnLayout{ 70 | spacing: 10 71 | IconButton{ 72 | Layout.alignment: Qt.AlignHCenter 73 | setIcon: "qrc:/Icons/calling/fluent_call-add-20-filled.svg" 74 | } 75 | PrefsLabel{ 76 | Layout.alignment: Qt.AlignHCenter 77 | font.pixelSize: Style.paragraph 78 | color: Style.grayColor 79 | text: qsTr("Add Call") 80 | } 81 | } 82 | Item{ 83 | Layout.fillWidth: true 84 | } 85 | Image{ 86 | source: "qrc:/Icons/verticalLine.png" 87 | } 88 | Item{ 89 | Layout.fillWidth: true 90 | } 91 | 92 | ColumnLayout{ 93 | spacing: 10 94 | IconButton{ 95 | Layout.alignment: Qt.AlignHCenter 96 | setIcon: "qrc:/Icons/calling/bi_mic-mute-fill.svg" 97 | } 98 | PrefsLabel{ 99 | Layout.alignment: Qt.AlignHCenter 100 | font.pixelSize: Style.paragraph 101 | color: Style.grayColor 102 | text: qsTr("Mute") 103 | } 104 | } 105 | Item{ 106 | Layout.fillWidth: true 107 | } 108 | Image{ 109 | source: "qrc:/Icons/verticalLine.png" 110 | } 111 | Item{ 112 | Layout.fillWidth: true 113 | } 114 | Rectangle{ 115 | width: 150 116 | height: 100 117 | color: "#FF0000" 118 | radius: 12 119 | ColumnLayout{ 120 | anchors.centerIn: parent 121 | spacing: 10 122 | Image{ 123 | Layout.alignment: Qt.AlignHCenter 124 | source: "qrc:/Icons/calling/calling.svg" 125 | } 126 | PrefsLabel{ 127 | Layout.alignment: Qt.AlignHCenter 128 | font.pixelSize: Style.paragraph 129 | color: "#FFFFFF" 130 | text: qsTr("End") 131 | } 132 | } 133 | } 134 | } 135 | } 136 | } 137 | 138 | -------------------------------------------------------------------------------- /Pages/Display.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | import "../Component" 6 | 7 | EaglePage { 8 | id:root 9 | width: parent.width 10 | leftPadding:100 11 | contentData: ColumnLayout{ 12 | width: root.width 13 | spacing: 20 14 | RowLayout{ 15 | spacing: 5 16 | PrefsButton{ 17 | setIcon: "qrc:/Icons/brightness 2.svg" 18 | backgroundColor:"#00000000" 19 | } 20 | PrefsLabel{ 21 | font.pixelSize: Style.h2 22 | text: qsTr("Display brightness") 23 | } 24 | } 25 | 26 | Item{ 27 | Layout.preferredHeight: 15 28 | } 29 | Item{ 30 | Layout.fillWidth: true 31 | } 32 | 33 | PrefsSlider{ 34 | value: 76 35 | width: parent.width * 0.7 36 | } 37 | 38 | Image{ 39 | width: parent.width 40 | Layout.alignment: Qt.AlignLeft 41 | source: "qrc:/Icons/HorizontalSeparator.png" 42 | } 43 | 44 | ColumnLayout{ 45 | spacing: 15 46 | PrefsLabel{ 47 | font.pixelSize: Style.h2 48 | text: qsTr("Themes") 49 | } 50 | 51 | RowLayout{ 52 | spacing: 30 53 | PrefsButton{ 54 | implicitWidth: 160 55 | backgroundColor: "#FFFFFF" 56 | textColor: "#000000" 57 | text: qsTr("Light") 58 | onClicked: Style.isDark = false 59 | } 60 | PrefsButton{ 61 | implicitWidth: 160 62 | backgroundColor:"#000000" 63 | text: qsTr("Dark") 64 | onClicked: Style.isDark = true 65 | } 66 | } 67 | } 68 | 69 | Image{ 70 | width: parent.width 71 | Layout.alignment: Qt.AlignLeft 72 | source: "qrc:/Icons/HorizontalSeparator.png" 73 | } 74 | 75 | PrefsSwitch{ 76 | text: qsTr("Night Sight Headlight") 77 | } 78 | } 79 | } 80 | -------------------------------------------------------------------------------- /Pages/EaglePage.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import Style 1.0 4 | Page { 5 | padding:0 6 | background: Rectangle{ 7 | anchors.fill: parent 8 | color: Style.background 9 | } 10 | 11 | property var gEagleStack: StackView.view 12 | } 13 | -------------------------------------------------------------------------------- /Pages/MusicPage.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | import "../Component" 6 | 7 | EaglePage { 8 | id:root 9 | width: parent.width 10 | contentItem: ColumnLayout{ 11 | width: parent.width 12 | RowLayout{ 13 | Layout.alignment: Qt.AlignHCenter 14 | Layout.preferredWidth: root.width * 0.5 15 | Image{ 16 | id:musicIcon 17 | source: "qrc:/Icons/Music/codex-omega.png" 18 | } 19 | ColumnLayout{ 20 | Layout.preferredHeight: musicIcon.height 21 | PrefsLabel{ 22 | Layout.alignment: Qt.AlignLeft 23 | font.pixelSize: Style.h6 24 | color: Style.grayColor 25 | text: qsTr("Now Playing") 26 | } 27 | Item{ 28 | Layout.preferredHeight: 50 29 | } 30 | ColumnLayout{ 31 | spacing: 5 32 | PrefsLabel{ 33 | Layout.alignment: Qt.AlignLeft 34 | color: Style.grayColor 35 | text: qsTr("Purple Haze") 36 | } 37 | 38 | PrefsLabel{ 39 | Layout.alignment: Qt.AlignLeft 40 | font.pixelSize: Style.h5 41 | color: Style.grayColor 42 | text: qsTr("Jonathan Wishperbrook") 43 | } 44 | 45 | PrefsLabel{ 46 | Layout.alignment: Qt.AlignLeft 47 | font.pixelSize: Style.paragraph 48 | color: Style.grayColor 49 | text: qsTr("Woodstock") 50 | } 51 | } 52 | } 53 | Item{ 54 | Layout.preferredWidth: root.width * 0.1 55 | } 56 | 57 | ColumnLayout{ 58 | Layout.preferredHeight: musicIcon.height 59 | IconButton{ 60 | iconBackground: "#FFFFFF" 61 | setIcon: "qrc:/Icons/Music/Like.svg" 62 | } 63 | IconButton{ 64 | roundIcon: true 65 | iconWidth: 36 66 | iconHeight: 36 67 | iconBackground: "#FFFFFF" 68 | setIcon: "qrc:/Icons/Music/AddPlaylist.svg" 69 | } 70 | IconButton{ 71 | iconBackground: "#FFFFFF" 72 | setIcon: "qrc:/Icons/Music/Share.svg" 73 | } 74 | } 75 | } 76 | 77 | PrefsSlider{ 78 | tooltipVisible:false 79 | Layout.alignment: Qt.AlignHCenter 80 | value: 76 81 | checkedColor: Style.styleColor 82 | handlerColor:"#FFFFFF" 83 | width: parent.width * 0.5 84 | } 85 | 86 | RowLayout{ 87 | Layout.alignment: Qt.AlignHCenter 88 | Layout.preferredWidth: root.width * 0.5 89 | PrefsLabel{ 90 | Layout.alignment: Qt.AlignLeft 91 | font.pixelSize: Style.paragraph 92 | color: Style.grayColor 93 | text: qsTr("00:00") 94 | } 95 | 96 | PrefsLabel{ 97 | Layout.alignment: Qt.AlignRight 98 | font.pixelSize: Style.paragraph 99 | color: Style.grayColor 100 | text: qsTr("04:00") 101 | } 102 | } 103 | 104 | RowLayout{ 105 | Layout.alignment: Qt.AlignHCenter 106 | Layout.preferredWidth: root.width * 0.5 107 | IconButton{ 108 | setIcon: "qrc:/Icons/Music/Suffle.svg" 109 | } 110 | IconButton{ 111 | setIcon: "qrc:/Icons/Music/Repeat.svg" 112 | } 113 | 114 | IconButton{ 115 | iconWidth: 20 116 | iconHeight: 24 117 | roundIcon: true 118 | iconBackground: Style.styleColor 119 | setIcon: "qrc:/Icons/Music/Left.svg" 120 | } 121 | 122 | IconButton{ 123 | roundIcon: true 124 | implicitHeight: 60 125 | implicitWidth: 60 126 | iconWidth: 24 127 | iconHeight: 28 128 | iconBackground: Style.styleColor 129 | setIcon: "qrc:/Icons/Music/Play.svg" 130 | } 131 | 132 | IconButton{ 133 | iconWidth: 20 134 | iconHeight: 24 135 | roundIcon: true 136 | iconBackground: Style.styleColor 137 | setIcon: "qrc:/Icons/Music/right.svg" 138 | } 139 | 140 | IconButton{ 141 | setIcon: "qrc:/Icons/Music/Repeat2.svg" 142 | } 143 | IconButton{ 144 | setIcon: "qrc:/Icons/Music/Settings.svg" 145 | } 146 | } 147 | } 148 | } 149 | -------------------------------------------------------------------------------- /Pages/Profile.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | import "../Component" 6 | 7 | EaglePage { 8 | id:root 9 | contentData: ColumnLayout{ 10 | width: root.width 11 | spacing: 20 12 | RowLayout{ 13 | width: parent.width 14 | Layout.alignment: Qt.AlignHCenter 15 | spacing: 30 16 | 17 | Image{ 18 | source: "qrc:/app.ico" 19 | } 20 | 21 | PrefsLabel{ 22 | font.pixelSize: Style.h1 23 | text: qsTr("Mike") 24 | } 25 | } 26 | 27 | RowLayout{ 28 | width: parent.width 29 | Layout.alignment: Qt.AlignHCenter 30 | spacing: 50 31 | RowLayout{ 32 | spacing: 20 33 | PrefsLabel{ 34 | font.pixelSize: Style.h2 35 | color: Style.grayColor 36 | text: qsTr("Model Number") 37 | } 38 | PrefsLabel{ 39 | isBold: true 40 | font.pixelSize: Style.h2 41 | text: qsTr("RGEB001") 42 | } 43 | } 44 | 45 | Image{ 46 | source: "qrc:/Icons/smallSeparator.png" 47 | } 48 | 49 | RowLayout{ 50 | spacing: 20 51 | PrefsLabel{ 52 | font.pixelSize: Style.h2 53 | color: Style.grayColor 54 | text: qsTr("Registration Number") 55 | } 56 | PrefsLabel{ 57 | isBold: true 58 | font.pixelSize: Style.h2 59 | text: qsTr("AK15 1246") 60 | } 61 | } 62 | 63 | Image{ 64 | source: "qrc:/Icons/smallSeparator.png" 65 | } 66 | 67 | RowLayout{ 68 | spacing: 20 69 | PrefsLabel{ 70 | font.pixelSize: Style.h2 71 | color: Style.grayColor 72 | text: qsTr("Vin Number") 73 | } 74 | PrefsLabel{ 75 | isBold: true 76 | font.pixelSize: Style.h2 77 | text: qsTr("1516GH4516") 78 | } 79 | } 80 | } 81 | 82 | RowLayout{ 83 | Layout.alignment: Qt.AlignLeft 84 | width: parent.width 85 | Item{ 86 | Layout.preferredWidth: 180 87 | } 88 | 89 | PrefsLabel{ 90 | isBold: true 91 | font.pixelSize: Style.h1 92 | text: qsTr("Documents") 93 | } 94 | } 95 | 96 | RowLayout{ 97 | width: parent.width 98 | Layout.alignment: Qt.AlignHCenter 99 | spacing: 120 100 | RowLayout{ 101 | ColumnLayout{ 102 | Image{ 103 | source: "qrc:/Icons/doc/driving.png" 104 | } 105 | 106 | PrefsLabel{ 107 | font.pixelSize: Style.h2 108 | Layout.alignment: Qt.AlignHCenter 109 | text: qsTr("Driving License") 110 | } 111 | } 112 | } 113 | 114 | RowLayout{ 115 | ColumnLayout{ 116 | Image{ 117 | source: "qrc:/Icons/doc/pencard.png" 118 | } 119 | 120 | PrefsLabel{ 121 | font.pixelSize: Style.h2 122 | Layout.alignment: Qt.AlignHCenter 123 | text: qsTr("Pan Card") 124 | } 125 | } 126 | } 127 | 128 | RowLayout{ 129 | ColumnLayout{ 130 | Image{ 131 | source: "qrc:/Icons/doc/Adhaar.png" 132 | } 133 | 134 | PrefsLabel{ 135 | font.pixelSize: Style.h2 136 | Layout.alignment: Qt.AlignHCenter 137 | text: qsTr("Adhaar Card") 138 | } 139 | } 140 | } 141 | } 142 | } 143 | } 144 | -------------------------------------------------------------------------------- /Pages/SettingsPage.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Layouts 1.3 3 | import QtQuick.Controls 2.5 4 | import Style 1.0 5 | 6 | import "../Component" 7 | EaglePage { 8 | id:root 9 | signal backToHome() 10 | header:Item{ 11 | width: root.width 12 | height: 80 13 | BackButton{ 14 | anchors.verticalCenter: parent.verticalCenter 15 | anchors.right: parent.right 16 | anchors.rightMargin: 40 17 | text:qsTr("Back To Home") 18 | onClicked: backToHome() 19 | } 20 | } 21 | 22 | Component{ 23 | id:profilePage 24 | Profile{ 25 | } 26 | } 27 | Component{ 28 | id:displayPage 29 | Display{ 30 | } 31 | } 32 | Component{ 33 | id:bluetoothPage 34 | Bluetooth{ 35 | } 36 | } 37 | Component{ 38 | id:mytripPage 39 | MyTrips{ 40 | } 41 | } 42 | Component{ 43 | id:aboutPage 44 | About{ 45 | } 46 | } 47 | Component{ 48 | id:soundPage 49 | Sound{ 50 | } 51 | } 52 | Component{ 53 | id:systemNotificationPage 54 | SystemNotification{ 55 | } 56 | } 57 | Component{ 58 | id:systemUpdatePage 59 | SystemUpdate{ 60 | } 61 | } 62 | 63 | 64 | function switchPage(index){ 65 | switch(index){ 66 | case 0: 67 | settingsLoader.sourceComponent = profilePage 68 | break; 69 | case 1: 70 | settingsLoader.sourceComponent = displayPage 71 | break; 72 | case 2: 73 | settingsLoader.sourceComponent = bluetoothPage 74 | break; 75 | case 3: 76 | settingsLoader.sourceComponent = mytripPage 77 | break; 78 | case 4: 79 | settingsLoader.sourceComponent = soundPage 80 | break; 81 | case 5: 82 | settingsLoader.sourceComponent = aboutPage 83 | break; 84 | case 6: 85 | settingsLoader.sourceComponent = systemNotificationPage 86 | break; 87 | case 7: 88 | settingsLoader.sourceComponent = systemUpdatePage 89 | break; 90 | } 91 | } 92 | 93 | RowLayout{ 94 | anchors.fill: parent 95 | Pane{ 96 | padding: 0 97 | Layout.preferredWidth: root.width * 0.18 98 | Layout.fillHeight: true 99 | background: Rectangle{ 100 | anchors.fill: parent 101 | color: Style.background 102 | Image{ 103 | source: "qrc:/Icons/separator.png" 104 | anchors.right: parent.right 105 | anchors.verticalCenter: parent.verticalCenter 106 | } 107 | } 108 | 109 | ListView{ 110 | id:listItemView 111 | anchors.fill: parent 112 | highlightFollowsCurrentItem :true 113 | highlight:null 114 | spacing:20 115 | model:["Profile","Display","Bluetooth","MyTrip","Sound","About","Notification","System Update"] 116 | delegate:ListItemDelegate{ 117 | spacing: 20 118 | title: modelData 119 | width: listItemView.width 120 | onClicked: { 121 | ListView.view.currentIndex = index 122 | root.switchPage(index) 123 | } 124 | } 125 | } 126 | } 127 | 128 | Item{ 129 | Layout.fillWidth: true 130 | Layout.fillHeight: true 131 | StackView{ 132 | id:pageStackView 133 | anchors.fill: parent 134 | initialItem:Loader{ 135 | id:settingsLoader 136 | sourceComponent: profilePage 137 | onLoaded: item.gEagleStack = pageStackView 138 | } 139 | } 140 | } 141 | } 142 | } 143 | -------------------------------------------------------------------------------- /Pages/Sound.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import Style 1.0 5 | import "../Component" 6 | 7 | EaglePage { 8 | id:root 9 | width: parent.width 10 | leftPadding: 100 11 | contentData: ColumnLayout{ 12 | width: root.width 13 | spacing: 10 14 | SwitchDelegate{ 15 | Layout.preferredWidth: parent.width * 0.75 16 | spacing : 20 17 | background:Rectangle{ 18 | anchors.fill: parent 19 | color: "transparent" 20 | radius: 7.9 21 | } 22 | 23 | contentItem: PrefsLabel{ 24 | topPadding: 5 25 | text: qsTr("Turn indicator sounds") 26 | } 27 | indicator : PrefsSwitch{ 28 | checked: true 29 | anchors.verticalCenter: parent.verticalCenter 30 | anchors.right: parent.right 31 | anchors.rightMargin: 10 32 | } 33 | } 34 | Image{ 35 | width: parent.width 36 | Layout.alignment: Qt.AlignLeft 37 | source: "qrc:/Icons/HorizontalSeparator.png" 38 | } 39 | SwitchDelegate{ 40 | Layout.preferredWidth: parent.width * 0.75 41 | spacing : 20 42 | background:Rectangle{ 43 | anchors.fill: parent 44 | color: "transparent" 45 | radius: 7.9 46 | } 47 | 48 | contentItem: PrefsLabel{ 49 | text: qsTr("Parking Assist sounds") 50 | topPadding: 5 51 | } 52 | indicator : PrefsSwitch{ 53 | anchors.verticalCenter: parent.verticalCenter 54 | anchors.right: parent.right 55 | anchors.rightMargin: 10 56 | } 57 | } 58 | Image{ 59 | width: parent.width 60 | Layout.alignment: Qt.AlignLeft 61 | source: "qrc:/Icons/HorizontalSeparator.png" 62 | } 63 | 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /Pages/SystemNotification.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtLocation 5.15 5 | import QtPositioning 5.6 6 | import Style 1.0 7 | import "../Component" 8 | 9 | EaglePage { 10 | id:root 11 | width: parent.width 12 | leftPadding: 100 13 | header:RowLayout{ 14 | width: parent.width 15 | spacing: 5 16 | PrefsLabel{ 17 | Layout.alignment: Qt.AlignLeft 18 | Layout.leftMargin: 100 19 | font.pixelSize: Style.h2 20 | isBold: true 21 | isStyle: true 22 | text: qsTr("Notification") 23 | MouseArea{ 24 | anchors.fill: parent 25 | onClicked: myTost.open() 26 | } 27 | } 28 | } 29 | contentData: ColumnLayout{ 30 | width: root.width 31 | spacing: 20 32 | Item{ 33 | Layout.fillWidth: true 34 | } 35 | 36 | Image{ 37 | width: parent.width 38 | Layout.alignment: Qt.AlignLeft 39 | source: "qrc:/Icons/HorizontalSeparator.png" 40 | } 41 | InfoPopup{ 42 | infoColor: "#00CC99" 43 | icon: "qrc:/Icons/Notification/Success.svg" 44 | title: qsTr("Success") 45 | subTitle: qsTr("Order Placed Successfully. Thank you for shopping with us.") 46 | } 47 | InfoPopup{ 48 | infoColor: "#EB5757" 49 | icon: "qrc:/Icons/Notification/Error.svg" 50 | title: qsTr("Error") 51 | subTitle: qsTr("Payment for order could not be proceed. Please try again.") 52 | } 53 | InfoPopup{ 54 | infoColor: "#F2C94C" 55 | icon: "qrc:/Icons/Notification/Warning.svg" 56 | title: qsTr("Warning") 57 | subTitle: qsTr("Order will not delivered in this pincode. Please try other pincode.") 58 | } 59 | InfoPopup{ 60 | infoColor: "#5458F7" 61 | icon: "qrc:/Icons/Notification/Info.svg" 62 | title: qsTr("Info") 63 | subTitle: qsTr("You will receive a tracking link as soon as your order ships.") 64 | } 65 | Toast{ 66 | id:myTost 67 | x:700 68 | y:200 69 | } 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /Pages/SystemUpdate.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtLocation 5.15 5 | import QtPositioning 5.6 6 | import Style 1.0 7 | import "../Component" 8 | 9 | EaglePage { 10 | id:root 11 | width: parent.width 12 | leftPadding: 100 13 | header:RowLayout{ 14 | width: parent.width 15 | spacing: 5 16 | PrefsLabel{ 17 | Layout.alignment: Qt.AlignLeft 18 | Layout.leftMargin: 100 19 | font.pixelSize: Style.h2 20 | isStyle: true 21 | isBold: true 22 | text: qsTr("Update") 23 | } 24 | 25 | PrefsButton{ 26 | Layout.alignment: Qt.AlignRight 27 | Layout.rightMargin: 230 28 | implicitWidth: 300 29 | text: qsTr("Check For Update") 30 | borderWidth: 1 31 | borderColor: Style.styleColor 32 | textColor : borderColor 33 | backgroundColor: "transparent" 34 | onClicked: gEagleStack.pop() 35 | } 36 | } 37 | contentData: ColumnLayout{ 38 | width: root.width 39 | spacing: 20 40 | Item{ 41 | Layout.fillWidth: true 42 | } 43 | 44 | Image{ 45 | width: parent.width 46 | Layout.alignment: Qt.AlignLeft 47 | source: "qrc:/Icons/HorizontalSeparator.png" 48 | } 49 | 50 | Rectangle{ 51 | width: parent.width * 0.78 52 | height: 100 53 | radius: 10 54 | color : Style.isDark ? palette.dark : palette.light 55 | Rectangle{ 56 | anchors.left: parent.left 57 | anchors.verticalCenter: parent.verticalCenter 58 | height: parent.height 59 | width: 10 60 | radius: 10 61 | color: Style.styleColor 62 | } 63 | 64 | PrefsLabel{ 65 | anchors.verticalCenter: parent.verticalCenter 66 | anchors.left: parent.left 67 | anchors.leftMargin: 20 68 | font.pixelSize: Style.h2 69 | isStyle: true 70 | isBold: true 71 | text: qsTr("Software") 72 | } 73 | 74 | ColumnLayout{ 75 | anchors.horizontalCenter: parent.horizontalCenter 76 | anchors.verticalCenter: parent.verticalCenter 77 | PrefsLabel{ 78 | Layout.alignment: Qt.AlignHCenter 79 | font.pixelSize: Style.h5 80 | isStyle: true 81 | isBold: true 82 | text: qsTr("Update Available 5.15.11") 83 | } 84 | PrefsLabel{ 85 | Layout.alignment: Qt.AlignHCenter 86 | font.pixelSize: Style.paragraph 87 | isStyle: true 88 | isBold: true 89 | text: qsTr("Release Notes") 90 | } 91 | } 92 | 93 | PrefsButton{ 94 | anchors.verticalCenter: parent.verticalCenter 95 | anchors.right: parent.right 96 | anchors.rightMargin: 20 97 | implicitWidth: 150 98 | text: qsTr("Update") 99 | borderWidth: 1 100 | borderColor: Style.styleColor 101 | textColor : borderColor 102 | backgroundColor: "transparent" 103 | onClicked: gEagleStack.pop() 104 | } 105 | } 106 | } 107 | } 108 | -------------------------------------------------------------------------------- /Pages/TripDetails.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Controls 2.5 3 | import QtQuick.Layouts 1.3 4 | import QtLocation 5.15 5 | import QtPositioning 5.6 6 | import Style 1.0 7 | import "../Component" 8 | 9 | EaglePage { 10 | id:root 11 | width: parent.width 12 | leftPadding: 100 13 | contentData: ColumnLayout{ 14 | width: root.width 15 | spacing: 20 16 | 17 | RowLayout{ 18 | spacing: 5 19 | PrefsButton{ 20 | mirror:true 21 | iconFactor: 0.8 22 | implicitWidth: 48 23 | implicitHeight: 48 24 | setIcon: "qrc:/Icons/topIcons/icn_rightindicator.svg" 25 | backgroundColor:"#00000000" 26 | onClicked: gEagleStack.pop() 27 | } 28 | PrefsLabel{ 29 | isStyle: true 30 | font.pixelSize: Style.h2 31 | text: qsTr("Back") 32 | } 33 | } 34 | 35 | Image{ 36 | width: parent.width 37 | Layout.alignment: Qt.AlignLeft 38 | source: "qrc:/Icons/HorizontalSeparator.png" 39 | } 40 | 41 | RowLayout{ 42 | spacing: 30 43 | width: parent.width 44 | Layout.alignment: Qt.AlignLeft 45 | RowLayout{ 46 | spacing: 10 47 | PrefsButton{ 48 | iconFactor: 0.6 49 | implicitWidth: 36 50 | implicitHeight: 36 51 | setIcon: "qrc:/Icons/scooty.svg" 52 | backgroundColor:"#00000000" 53 | } 54 | 55 | PrefsLabel{ 56 | isStyle: true 57 | isBold: true 58 | font.pixelSize: Style.h5 59 | text: qsTr("13 km 30 min") 60 | } 61 | } 62 | 63 | RowLayout{ 64 | spacing: 10 65 | PrefsButton{ 66 | iconFactor: 0.5 67 | implicitWidth: 36 68 | implicitHeight: 36 69 | setIcon: "qrc:/Icons/location.svg" 70 | backgroundColor:"#00000000" 71 | } 72 | 73 | PrefsLabel{ 74 | isStyle: true 75 | isBold: true 76 | font.pixelSize: Style.h5 77 | text: qsTr("2 Visit") 78 | } 79 | } 80 | } 81 | 82 | Image{ 83 | width: parent.width 84 | Layout.alignment: Qt.AlignLeft 85 | source: "qrc:/Icons/HorizontalSeparator.png" 86 | } 87 | 88 | RoundRectangle { 89 | clip: true 90 | width: tripView.width * 0.8; 91 | height: 610.5 92 | radius: 15 93 | radiusCorners: Qt.AlignLeft | Qt.AlignRight | Qt.AlignTop | Qt.AlignBottom 94 | color : Style.isDark ? palette.dark : palette.light 95 | PrefsLabel{ 96 | id:dateLabel 97 | anchors.left: parent.left 98 | anchors.top: parent.top 99 | anchors.leftMargin: 70 100 | anchors.topMargin: 30 101 | font.pixelSize: Style.h4 102 | text: qsTr("Sunday , June 18 ,08:22 AM") 103 | } 104 | 105 | PrefsTimeLine{ 106 | id:time_line 107 | anchors.top: dateLabel.bottom 108 | anchors.topMargin: 20 109 | anchors.left: parent.left 110 | mode: Style.left 111 | model:ListModel{ 112 | ListElement{ 113 | lable:"2017-07-01" 114 | text:"HOME (26th Outlet, Near Showroom)" 115 | } 116 | ListElement{ 117 | lable:"2017-09-01" 118 | text:"HOME (26th Outlet, Near Showroom)" 119 | } 120 | ListElement{ 121 | lable:"2017-07-01" 122 | text:"HOME (26th Outlet, Near Showroom)" 123 | } 124 | } 125 | } 126 | 127 | RoundRectangle{ 128 | radius: 15 129 | width: parent.width - time_line.width * 1.1 130 | height: parent.height * 0.9 131 | anchors.verticalCenter: parent.verticalCenter 132 | anchors.left: time_line.right 133 | anchors.leftMargin: 20 134 | radiusCorners: Qt.AlignLeft | Qt.AlignRight | Qt.AlignTop | Qt.AlignBottom 135 | color : Style.isDark ? palette.dark : palette.light 136 | MapDetails{ 137 | id:mapview 138 | } 139 | } 140 | } 141 | } 142 | } 143 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Eagle-Scooty-Dashboard- 2 | Eagle Scooty Light and Dark Theme Dashboard written in QT QML With Figma Designs 3 | 4 | ![Home](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/Home.png) 5 | ![Home-2](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/home2.png) 6 | ![Home-dark](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/home-dark.png) 7 | ![profile](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/profile.png) 8 | ![profile dark](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/profile-dark.png) 9 | ![about](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/about.png) 10 | ![about-dark](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/about-dark.png) 11 | ![Bluetooth](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/bluetooth.png) 12 | ![Bluetooth-dark](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/bluetooth-dark.png) 13 | ![Music](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/music.png) 14 | ![Music Dark](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/music-dark.png) 15 | ![Sound](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/sound.png) 16 | ![Notification](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/notification.png) 17 | ![trip](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/trip.png) 18 | ![trip details](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/tripDetails.png) 19 | ![tripdetailsmap](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/tripdetailsmap.png) 20 | ![update](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/update.png) 21 | ![Calling](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/calling.png) 22 | ![Keypad](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/keypad.png) 23 | ![Calling Dark](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/clling-dark.png) 24 | ![Charging](https://github.com/cppqtdev/Eagle-Scooty-Dashboard-/blob/main/screenshots/charing.png) 25 | 26 | 27 | -------------------------------------------------------------------------------- /StyleTheme.qml: -------------------------------------------------------------------------------- 1 | pragma Singleton 2 | 3 | import QtQuick 2.15 4 | QtObject { 5 | property bool isDark: false 6 | readonly property color background: isDark ? "#00000000" : "#DCF3F3" 7 | readonly property color fontColor: "#FFFFFF" 8 | readonly property color baseColor: isDark ? systemPalette.base : systemPalette.windowText 9 | readonly property color styleColor: "#045457" 10 | readonly property color grayColor: "#7C7C7C" 11 | 12 | property int left : 0 13 | property int right : 1 14 | property int alternate : 2 15 | 16 | readonly property int h1: 28 17 | readonly property int h2: 26 18 | readonly property int h3: 24 19 | readonly property int h4: 22 20 | readonly property int h5: 20 21 | readonly property int h6: 18 22 | readonly property int paragraph : 16 23 | 24 | readonly property var systemPalette: SystemPalette { colorGroup: SystemPalette.Active } 25 | 26 | readonly property var helveticaNeureMedium: FontLoader{ 27 | source:"qrc:/fonts/HelveticaNeueLTCom-Md.ttf" 28 | } 29 | readonly property var helveticaNeureBold: FontLoader{ 30 | source:"qrc:/fonts/HelveticaNeueLTCom-Bd.ttf" 31 | } 32 | readonly property var helveticaNeurRoman: FontLoader{ 33 | source:"qrc:/fonts/HelveticaNeueLTCom-Roman.ttf" 34 | } 35 | readonly property var helveticaNeurLight: FontLoader{ 36 | source: "qrc:/fonts/HelveticaNeueLTCom-Lt.ttf" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /app.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/app.ico -------------------------------------------------------------------------------- /fonts/HelveticaNeueLTCom-Bd.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/fonts/HelveticaNeueLTCom-Bd.ttf -------------------------------------------------------------------------------- /fonts/HelveticaNeueLTCom-Lt.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/fonts/HelveticaNeueLTCom-Lt.ttf -------------------------------------------------------------------------------- /fonts/HelveticaNeueLTCom-Md.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/fonts/HelveticaNeueLTCom-Md.ttf -------------------------------------------------------------------------------- /fonts/HelveticaNeueLTCom-Roman.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/fonts/HelveticaNeueLTCom-Roman.ttf -------------------------------------------------------------------------------- /main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | int main(int argc, char *argv[]) 6 | { 7 | #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) 8 | QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); 9 | QCoreApplication::setApplicationVersion("1.0.0"); 10 | QCoreApplication::setApplicationName("Eagle Theme"); 11 | QCoreApplication::setOrganizationName("TechCoderHub"); 12 | #endif 13 | qputenv("QT_QUICK_CONTROLS_STYLE", QByteArray("Basic")); 14 | QGuiApplication app(argc, argv); 15 | app.setWindowIcon(QIcon(":/app.ico")); 16 | 17 | QQmlApplicationEngine engine; 18 | 19 | 20 | qmlRegisterSingletonType(QStringLiteral("qrc:/StyleTheme.qml"),"Style",1,0,"Style"); 21 | 22 | const QUrl url(QStringLiteral("qrc:/main.qml")); 23 | QObject::connect(&engine, &QQmlApplicationEngine::objectCreated, 24 | &app, [url](QObject *obj, const QUrl &objUrl) { 25 | if (!obj && url == objUrl) 26 | QCoreApplication::exit(-1); 27 | }, Qt::QueuedConnection); 28 | engine.load(url); 29 | 30 | return app.exec(); 31 | } 32 | -------------------------------------------------------------------------------- /main.qml: -------------------------------------------------------------------------------- 1 | import QtQuick 2.15 2 | import QtQuick.Window 2.15 3 | import QtQuick.Controls 2.5 4 | import QtQuick.Layouts 1.3 5 | import Style 1.0 6 | 7 | import "./Component" 8 | import "./Pages" 9 | ApplicationWindow { 10 | id:root 11 | width: 1920 12 | height: 1080 13 | visible: true 14 | color: Style.background 15 | title: qsTr("Eagle Theme") 16 | 17 | background: Item{ 18 | anchors.fill: parent 19 | Image{ 20 | anchors.fill: parent 21 | visible: Style.isDark 22 | source: "qrc:/Icons/dark/background.png" 23 | } 24 | } 25 | 26 | Component.onCompleted: root.showMaximized() 27 | 28 | header: Header{} 29 | footer: Footer{ 30 | id:footerLayout 31 | onSettingsClicked: { 32 | mainLoader.item.replace(null,settingsPage) 33 | } 34 | onMusicClicked: mainLoader.item.replace(null,musicPage) 35 | onCallingClicked: mainLoader.item.replace(null,callingPage) 36 | onHomeClicked: mainLoader.item.replace(null,homePage) 37 | onChargeClicked: mainLoader.item.replace(null,chargingPage) 38 | onMapClicked: mainLoader.item.replace(null,mapPage) 39 | 40 | } 41 | 42 | Component{ 43 | id:chargingPage 44 | Charing{ 45 | 46 | } 47 | } 48 | 49 | Component{ 50 | id:mapPage 51 | MapPage{ 52 | 53 | } 54 | } 55 | 56 | Component{ 57 | id:homePage 58 | HomePage{ 59 | 60 | } 61 | } 62 | 63 | Component{ 64 | id:callingPage 65 | Callling{ 66 | 67 | } 68 | } 69 | 70 | Component{ 71 | id:musicPage 72 | MusicPage{ 73 | 74 | } 75 | } 76 | 77 | Component{ 78 | id:settingsPage 79 | SettingsPage{ 80 | objectName: "SettingsPage" 81 | onBackToHome: { 82 | mainLoader.item.replace(null,homePage) 83 | } 84 | } 85 | } 86 | 87 | contentData:Loader{ 88 | id:mainLoader 89 | anchors.fill: parent 90 | sourceComponent:StackView{ 91 | id:mainStack 92 | initialItem:homePage 93 | onCurrentItemChanged: { 94 | var footer = footerlayout() 95 | if(currentItem.objectName == "SettingsPage"){ 96 | footer.visible = false 97 | }else{ 98 | footer.visible = true 99 | } 100 | } 101 | } 102 | } 103 | 104 | function footerlayout(){ 105 | return footerLayout 106 | } 107 | } 108 | -------------------------------------------------------------------------------- /screenshots/Home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/Home.png -------------------------------------------------------------------------------- /screenshots/about-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/about-dark.png -------------------------------------------------------------------------------- /screenshots/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/about.png -------------------------------------------------------------------------------- /screenshots/bluetooth-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/bluetooth-dark.png -------------------------------------------------------------------------------- /screenshots/bluetooth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/bluetooth.png -------------------------------------------------------------------------------- /screenshots/calling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/calling.png -------------------------------------------------------------------------------- /screenshots/charing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/charing.png -------------------------------------------------------------------------------- /screenshots/clling-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/clling-dark.png -------------------------------------------------------------------------------- /screenshots/display-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/display-dark.png -------------------------------------------------------------------------------- /screenshots/display.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/display.png -------------------------------------------------------------------------------- /screenshots/home-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/home-dark.png -------------------------------------------------------------------------------- /screenshots/home2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/home2.png -------------------------------------------------------------------------------- /screenshots/keypad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/keypad.png -------------------------------------------------------------------------------- /screenshots/music-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/music-dark.png -------------------------------------------------------------------------------- /screenshots/music.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/music.png -------------------------------------------------------------------------------- /screenshots/notification.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/notification.png -------------------------------------------------------------------------------- /screenshots/profile-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/profile-dark.png -------------------------------------------------------------------------------- /screenshots/profile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/profile.png -------------------------------------------------------------------------------- /screenshots/sound.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/sound.png -------------------------------------------------------------------------------- /screenshots/trip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/trip.png -------------------------------------------------------------------------------- /screenshots/tripDetails.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/tripDetails.png -------------------------------------------------------------------------------- /screenshots/tripdetailsmap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/tripdetailsmap.png -------------------------------------------------------------------------------- /screenshots/update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cppqtdev/Eagle-Scooty-Dashboard/59b2501c9222ff4b1509a9f67b37c61e80dae49f/screenshots/update.png --------------------------------------------------------------------------------