From b3b5fd19406d7fd82a1aa0244c28100a0a09e13d Mon Sep 17 00:00:00 2001 From: dorian Date: Sun, 3 Nov 2019 17:48:30 +0100 Subject: [PATCH] some styling improvements --- fannyapp.pro | 6 +- qml/Components/AppToolBar.qml | 88 +---------------- qml/Components/FancyButton.qml | 16 ++- qml/Forms/FilterForm.qml | 81 ++++++++++------ qml/Forms/HomeForm.qml | 6 +- qml/Forms/SettingsForm.qml | 1 + qml/Pages/MainPage.qml | 78 +++++++-------- shared/graphics/icons/delete.png | Bin 35464 -> 0 bytes shared/graphics/icons/drawer.png | Bin 2125 -> 0 bytes shared/graphics/icons/menu.png | Bin 2793 -> 0 bytes .../icons/TreffpunktFannyLogo.png | Bin shared/{graphics => }/icons/back.png | Bin shared/{graphics => }/icons/backDark.png | Bin shared/icons/delete.png | Bin 0 -> 776 bytes shared/{graphics => }/icons/hide.png | Bin shared/icons/ibmaterial/20x20/back.png | Bin 0 -> 220 bytes shared/icons/ibmaterial/20x20/bookmark.png | Bin 0 -> 487 bytes .../icons/ibmaterial/20x20/bookmarkFilled.png | Bin 0 -> 308 bytes shared/icons/ibmaterial/20x20/buy.png | Bin 0 -> 715 bytes shared/icons/ibmaterial/20x20/calendar.png | Bin 0 -> 431 bytes shared/icons/ibmaterial/20x20/cup.png | Bin 0 -> 379 bytes shared/icons/ibmaterial/20x20/delete.png | Bin 0 -> 1505 bytes shared/icons/ibmaterial/20x20/drawer.png | Bin 0 -> 123 bytes shared/icons/ibmaterial/20x20/filter.png | Bin 0 -> 309 bytes shared/icons/ibmaterial/20x20/flowchart.png | Bin 0 -> 369 bytes shared/icons/ibmaterial/20x20/menu.png | Bin 0 -> 123 bytes shared/icons/ibmaterial/20x20/pin.png | Bin 0 -> 606 bytes shared/icons/ibmaterial/20x20/pinFilled.png | Bin 0 -> 501 bytes shared/icons/ibmaterial/20x20/star.png | Bin 0 -> 843 bytes shared/icons/ibmaterial/20x20/starFilled.png | Bin 0 -> 731 bytes shared/icons/ibmaterial/20x20/year.png | Bin 0 -> 363 bytes shared/icons/ibmaterial/20x20@2/back.png | Bin 0 -> 289 bytes shared/icons/ibmaterial/20x20@2/bookmark.png | Bin 0 -> 534 bytes .../ibmaterial/20x20@2/bookmarkFilled.png | Bin 0 -> 347 bytes shared/icons/ibmaterial/20x20@2/buy.png | Bin 0 -> 829 bytes shared/icons/ibmaterial/20x20@2/calendar.png | Bin 0 -> 672 bytes shared/icons/ibmaterial/20x20@2/cup.png | Bin 0 -> 778 bytes shared/icons/ibmaterial/20x20@2/delete.png | Bin 0 -> 1756 bytes .../ibmaterial/20x20@2/drawer.png} | Bin shared/icons/ibmaterial/20x20@2/filter.png | Bin 0 -> 545 bytes shared/icons/ibmaterial/20x20@2/flowchart.png | Bin 0 -> 663 bytes .../ibmaterial/20x20@2/menu.png} | Bin shared/icons/ibmaterial/20x20@2/pin.png | Bin 0 -> 701 bytes shared/icons/ibmaterial/20x20@2/pinFilled.png | Bin 0 -> 576 bytes shared/icons/ibmaterial/20x20@2/star.png | Bin 0 -> 960 bytes .../icons/ibmaterial/20x20@2/starFilled.png | Bin 0 -> 821 bytes shared/icons/ibmaterial/20x20@2/year.png | Bin 0 -> 591 bytes shared/icons/ibmaterial/20x20@3/back.png | Bin 0 -> 351 bytes shared/icons/ibmaterial/20x20@3/bookmark.png | Bin 0 -> 626 bytes .../ibmaterial/20x20@3/bookmarkFilled.png | Bin 0 -> 393 bytes shared/icons/ibmaterial/20x20@3/buy.png | Bin 0 -> 975 bytes shared/icons/ibmaterial/20x20@3/calendar.png | Bin 0 -> 888 bytes shared/icons/ibmaterial/20x20@3/cup.png | Bin 0 -> 1104 bytes shared/icons/ibmaterial/20x20@3/delete.png | Bin 0 -> 2002 bytes shared/icons/ibmaterial/20x20@3/drawer.png | Bin 0 -> 130 bytes shared/icons/ibmaterial/20x20@3/filter.png | Bin 0 -> 691 bytes shared/icons/ibmaterial/20x20@3/flowchart.png | Bin 0 -> 884 bytes shared/icons/ibmaterial/20x20@3/menu.png | Bin 0 -> 193 bytes shared/icons/ibmaterial/20x20@3/pin.png | Bin 0 -> 838 bytes shared/icons/ibmaterial/20x20@3/pinFilled.png | Bin 0 -> 674 bytes shared/icons/ibmaterial/20x20@3/star.png | Bin 0 -> 1151 bytes .../icons/ibmaterial/20x20@3/starFilled.png | Bin 0 -> 957 bytes shared/icons/ibmaterial/20x20@3/year.png | Bin 0 -> 727 bytes shared/icons/ibmaterial/20x20@4/back.png | Bin 0 -> 452 bytes shared/icons/ibmaterial/20x20@4/bookmark.png | Bin 0 -> 704 bytes .../ibmaterial/20x20@4/bookmarkFilled.png | Bin 0 -> 439 bytes shared/icons/ibmaterial/20x20@4/buy.png | Bin 0 -> 1124 bytes shared/icons/ibmaterial/20x20@4/calendar.png | Bin 0 -> 790 bytes shared/icons/ibmaterial/20x20@4/cup.png | Bin 0 -> 1359 bytes shared/icons/ibmaterial/20x20@4/delete.png | Bin 0 -> 2126 bytes shared/icons/ibmaterial/20x20@4/drawer.png | Bin 0 -> 131 bytes shared/icons/ibmaterial/20x20@4/filter.png | Bin 0 -> 806 bytes shared/icons/ibmaterial/20x20@4/flowchart.png | Bin 0 -> 1061 bytes shared/icons/ibmaterial/20x20@4/menu.png | Bin 0 -> 223 bytes shared/icons/ibmaterial/20x20@4/pin.png | Bin 0 -> 981 bytes shared/icons/ibmaterial/20x20@4/pinFilled.png | Bin 0 -> 777 bytes shared/icons/ibmaterial/20x20@4/star.png | Bin 0 -> 1396 bytes .../icons/ibmaterial/20x20@4/starFilled.png | Bin 0 -> 1113 bytes shared/icons/ibmaterial/20x20@4/year.png | Bin 0 -> 767 bytes shared/icons/ibmaterial/index.theme | 24 +++++ shared/{graphics => }/icons/logoutBlack.png | Bin shared/{graphics => }/icons/logoutRed.png | Bin shared/{graphics => }/icons/settings.png | Bin shared/{graphics => }/icons/settingsBlack.png | Bin shared/{graphics => }/icons/sheute.png | Bin shared/{graphics => }/icons/smorgen.png | Bin shared/{graphics => }/icons/view.png | Bin shared/shared.qrc | 91 +++++++++++++++--- sources/appstyle.cpp | 8 +- sources/main.cpp | 7 ++ 90 files changed, 214 insertions(+), 192 deletions(-) delete mode 100644 shared/graphics/icons/delete.png delete mode 100644 shared/graphics/icons/drawer.png delete mode 100644 shared/graphics/icons/menu.png rename shared/{graphics => }/icons/TreffpunktFannyLogo.png (100%) rename shared/{graphics => }/icons/back.png (100%) rename shared/{graphics => }/icons/backDark.png (100%) create mode 100644 shared/icons/delete.png rename shared/{graphics => }/icons/hide.png (100%) create mode 100644 shared/icons/ibmaterial/20x20/back.png create mode 100644 shared/icons/ibmaterial/20x20/bookmark.png create mode 100644 shared/icons/ibmaterial/20x20/bookmarkFilled.png create mode 100644 shared/icons/ibmaterial/20x20/buy.png create mode 100644 shared/icons/ibmaterial/20x20/calendar.png create mode 100644 shared/icons/ibmaterial/20x20/cup.png create mode 100644 shared/icons/ibmaterial/20x20/delete.png create mode 100644 shared/icons/ibmaterial/20x20/drawer.png create mode 100644 shared/icons/ibmaterial/20x20/filter.png create mode 100644 shared/icons/ibmaterial/20x20/flowchart.png create mode 100644 shared/icons/ibmaterial/20x20/menu.png create mode 100644 shared/icons/ibmaterial/20x20/pin.png create mode 100644 shared/icons/ibmaterial/20x20/pinFilled.png create mode 100644 shared/icons/ibmaterial/20x20/star.png create mode 100644 shared/icons/ibmaterial/20x20/starFilled.png create mode 100644 shared/icons/ibmaterial/20x20/year.png create mode 100644 shared/icons/ibmaterial/20x20@2/back.png create mode 100644 shared/icons/ibmaterial/20x20@2/bookmark.png create mode 100644 shared/icons/ibmaterial/20x20@2/bookmarkFilled.png create mode 100644 shared/icons/ibmaterial/20x20@2/buy.png create mode 100644 shared/icons/ibmaterial/20x20@2/calendar.png create mode 100644 shared/icons/ibmaterial/20x20@2/cup.png create mode 100644 shared/icons/ibmaterial/20x20@2/delete.png rename shared/{graphics/icons/drawer_black.png => icons/ibmaterial/20x20@2/drawer.png} (100%) create mode 100644 shared/icons/ibmaterial/20x20@2/filter.png create mode 100644 shared/icons/ibmaterial/20x20@2/flowchart.png rename shared/{graphics/icons/menu_black.png => icons/ibmaterial/20x20@2/menu.png} (100%) create mode 100644 shared/icons/ibmaterial/20x20@2/pin.png create mode 100644 shared/icons/ibmaterial/20x20@2/pinFilled.png create mode 100644 shared/icons/ibmaterial/20x20@2/star.png create mode 100644 shared/icons/ibmaterial/20x20@2/starFilled.png create mode 100644 shared/icons/ibmaterial/20x20@2/year.png create mode 100644 shared/icons/ibmaterial/20x20@3/back.png create mode 100644 shared/icons/ibmaterial/20x20@3/bookmark.png create mode 100644 shared/icons/ibmaterial/20x20@3/bookmarkFilled.png create mode 100644 shared/icons/ibmaterial/20x20@3/buy.png create mode 100644 shared/icons/ibmaterial/20x20@3/calendar.png create mode 100644 shared/icons/ibmaterial/20x20@3/cup.png create mode 100644 shared/icons/ibmaterial/20x20@3/delete.png create mode 100644 shared/icons/ibmaterial/20x20@3/drawer.png create mode 100644 shared/icons/ibmaterial/20x20@3/filter.png create mode 100644 shared/icons/ibmaterial/20x20@3/flowchart.png create mode 100644 shared/icons/ibmaterial/20x20@3/menu.png create mode 100644 shared/icons/ibmaterial/20x20@3/pin.png create mode 100644 shared/icons/ibmaterial/20x20@3/pinFilled.png create mode 100644 shared/icons/ibmaterial/20x20@3/star.png create mode 100644 shared/icons/ibmaterial/20x20@3/starFilled.png create mode 100644 shared/icons/ibmaterial/20x20@3/year.png create mode 100644 shared/icons/ibmaterial/20x20@4/back.png create mode 100644 shared/icons/ibmaterial/20x20@4/bookmark.png create mode 100644 shared/icons/ibmaterial/20x20@4/bookmarkFilled.png create mode 100644 shared/icons/ibmaterial/20x20@4/buy.png create mode 100644 shared/icons/ibmaterial/20x20@4/calendar.png create mode 100644 shared/icons/ibmaterial/20x20@4/cup.png create mode 100644 shared/icons/ibmaterial/20x20@4/delete.png create mode 100644 shared/icons/ibmaterial/20x20@4/drawer.png create mode 100644 shared/icons/ibmaterial/20x20@4/filter.png create mode 100644 shared/icons/ibmaterial/20x20@4/flowchart.png create mode 100644 shared/icons/ibmaterial/20x20@4/menu.png create mode 100644 shared/icons/ibmaterial/20x20@4/pin.png create mode 100644 shared/icons/ibmaterial/20x20@4/pinFilled.png create mode 100644 shared/icons/ibmaterial/20x20@4/star.png create mode 100644 shared/icons/ibmaterial/20x20@4/starFilled.png create mode 100644 shared/icons/ibmaterial/20x20@4/year.png create mode 100644 shared/icons/ibmaterial/index.theme rename shared/{graphics => }/icons/logoutBlack.png (100%) rename shared/{graphics => }/icons/logoutRed.png (100%) rename shared/{graphics => }/icons/settings.png (100%) rename shared/{graphics => }/icons/settingsBlack.png (100%) rename shared/{graphics => }/icons/sheute.png (100%) rename shared/{graphics => }/icons/smorgen.png (100%) rename shared/{graphics => }/icons/view.png (100%) diff --git a/fannyapp.pro b/fannyapp.pro index adbdd16..2900c19 100644 --- a/fannyapp.pro +++ b/fannyapp.pro @@ -1,4 +1,4 @@ -QT += qml quick quickcontrols2 +QT += qml quick quickcontrols2 widgets CONFIG += c++11 VERSION = 1.0.1 @@ -69,5 +69,7 @@ ios { DISTFILES += \ android-sources/AndroidManifest.xml \ - CHANGELOG.md + CHANGELOG.md \ + $$files(shared/icons/*.png, true) \ + shared/icons/ibmaterial/index.theme diff --git a/qml/Components/AppToolBar.qml b/qml/Components/AppToolBar.qml index 4be30a2..622f214 100644 --- a/qml/Components/AppToolBar.qml +++ b/qml/Components/AppToolBar.qml @@ -21,92 +21,8 @@ import QtQuick.Controls 2.1 import QtGraphicalEffects 1.0 import QtQuick.Controls.Material 2.1 -Item { +ToolBar { id: control - height: 50 - property bool showErrorBar: true - RectangularGlow { - id: toolBarEffect - glowRadius: 3 - spread: 0.2 - color: "black" - opacity: 0.3 - anchors.fill: toolBar - } - - Rectangle { - id: toolBar - color: app.style.style.menuColor - anchors.fill: parent - - -// anchors { -// top: parent.top -// left: parent.left -// right: parent.right -// topMargin: -60 -// } - - Rectangle { - id: errorField - width: parent.width - height: 30 - enabled: app.is_error & app.state !== "notLoggedIn" & control.showErrorBar - anchors.top: parent.bottom - - color: "red" - onEnabledChanged: { - if(enabled){ - toolBar.state = 'moveIn' - } - else { - toolBar.state = 'moveOut' - } - } - - MouseArea { anchors.fill: parent; onClicked: { - toolBar.state = 'moveOut' - - console.log("clicked") - } - } - - Text { - anchors { - horizontalCenter: parent.horizontalCenter - verticalCenter: parent.verticalCenter - } - - id: errorText - font.family: "Helvetica" - color: "White" - font.pointSize: 8 - visible: parent.height !== 0 - text: app.error - } - } - - states: [ - State { - name: "moveOut" - PropertyChanges { target: errorField; height: 0 } - }, - State { - name: "moveIn" - PropertyChanges { target: errorField; height: 30 } - } - ] - - transitions: [ - Transition { - to: "moveOut" - NumberAnimation { properties: "height"; easing.type: Easing.InOutQuad; duration: 200 } - }, - Transition { - to: "moveIn" - NumberAnimation { properties: "height"; easing.type: Easing.InOutQuad; duration: 200 } - } - ] - } + Material.background: app.style.style.menuColor } diff --git a/qml/Components/FancyButton.qml b/qml/Components/FancyButton.qml index 6f31c7a..360cb36 100644 --- a/qml/Components/FancyButton.qml +++ b/qml/Components/FancyButton.qml @@ -33,14 +33,6 @@ Button { height: control.size width: control.size - scale: control.pressed ? 0.8:1 - - Behavior on scale { - PropertyAnimation { - duration: 100 - } - } - onSizeChanged: { control.width = control.size @@ -72,7 +64,13 @@ Button { radius: control.size * 0.5 - color: control.color + color: control.down ? Qt.darker(control.color, 1.2) : control.color + + Behavior on color { + ColorAnimation { + duration: 200 + } + } } } diff --git a/qml/Forms/FilterForm.qml b/qml/Forms/FilterForm.qml index 4f6f9c5..7d99c2e 100644 --- a/qml/Forms/FilterForm.qml +++ b/qml/Forms/FilterForm.qml @@ -201,15 +201,20 @@ Page { focus: true + add: Transition { + NumberAnimation { property: "opacity"; from: 0; to: 1.0; duration: 300 } + NumberAnimation { property: "scale"; from: 0.9; to: 1.0; duration: 300 } + } + + displaced: Transition { + NumberAnimation { properties: "x,y"; duration: 300; easing.type: Easing.InOutQuad } + } + delegate: ItemDelegate { id: delegate width: contactView.width - height: 0 - - Component.onCompleted: { - delegate.height = 50 - } + height: 50 text: grade + classLetter font.pixelSize: delegate.height * 0.4 @@ -217,6 +222,24 @@ Page { enabled: root.teacherMode ? role === "t":role === "s" + Rectangle { + + anchors { + top: parent.top + left: parent.left + right: parent.right + } + + visible: index === 0 + + height: 1 + width: parent.width + + color: "lightgrey" + + opacity: 0.5 + } + Rectangle { anchors { @@ -229,24 +252,28 @@ Page { width: parent.width color: "lightgrey" + + opacity: 0.5 } - Behavior on height { + ParallelAnimation { + id: deleteAnimation NumberAnimation { - duration: 500 + target: delegate + property: "scale" + duration: 300 + from: 1 + to: 0.9 + easing.type: Easing.InOutQuad + } + NumberAnimation { + target: delegate + property: "opacity" + duration: 300 + from: 1 + to: 0 easing.type: Easing.InOutQuad } - } - - - NumberAnimation { - id: deleteAnimation - target: delegate - property: "height" - duration: 500 - from: delegate.height - to: 0 - easing.type: Easing.InOutQuad onRunningChanged: { if(!running){ contactView.model.remove(index) @@ -254,7 +281,7 @@ Page { } } - Button { + ToolButton { id: deleteButton anchors { @@ -263,20 +290,14 @@ Page { verticalCenter: parent.verticalCenter } - height: parent.height * 0.6 - width: height + height: parent.height - scale: pressed ? 0.8:1 + icon.name: "delete" onClicked: { deleteAnimation.start() } - background: Image { - source: "/graphics/icons/delete.png" - fillMode: Image.PreserveAspectFit - } - Behavior on scale { PropertyAnimation { duration: 100 @@ -310,10 +331,12 @@ Page { filterDialog.createContact() } - Label { - anchors.centerIn: parent + Text { + anchors.fill: parent font.pixelSize: parent.height * 0.6 text: "+" + verticalAlignment: Text.AlignVCenter + horizontalAlignment: Text.AlignHCenter color: app.style.style.textColor } } diff --git a/qml/Forms/HomeForm.qml b/qml/Forms/HomeForm.qml index b142f09..81d6896 100644 --- a/qml/Forms/HomeForm.qml +++ b/qml/Forms/HomeForm.qml @@ -50,7 +50,7 @@ Page { FancyButton { id: todayButton - image: "qrc:/graphics/icons/sheute.png" + image: "qrc:/icons/sheute.png" size: mainMenu.buttonSize @@ -63,7 +63,7 @@ Page { FancyButton { id: tomorrowButton - image: "qrc:/graphics/icons/smorgen.png" + image: "qrc:/icons/smorgen.png" size: mainMenu.buttonSize @@ -125,7 +125,7 @@ Page { FancyButton { id: logoutButton - image: "qrc:/graphics/icons/logoutRed.png" + image: "qrc:/icons/logoutRed.png" imageScale: 0.8 size: smallMenu.buttonSize diff --git a/qml/Forms/SettingsForm.qml b/qml/Forms/SettingsForm.qml index d91dc30..16ec136 100644 --- a/qml/Forms/SettingsForm.qml +++ b/qml/Forms/SettingsForm.qml @@ -126,6 +126,7 @@ Page { } } } + } SwitchDelegate { diff --git a/qml/Pages/MainPage.qml b/qml/Pages/MainPage.qml index 354e8e1..c43e099 100644 --- a/qml/Pages/MainPage.qml +++ b/qml/Pages/MainPage.qml @@ -19,6 +19,7 @@ import QtQuick 2.2 import QtQuick.Controls 2.1 import QtGraphicalEffects 1.0 +import QtQuick.Layouts 1.3 import "../Components" import "../Forms" @@ -133,67 +134,54 @@ Page { anchors { top: parent.top - left: parent.left - right: parent.right topMargin: -60 } height: 50 + width: parent.width - Button { - id:toolButton - enabled: true - anchors { - left: parent.left - verticalCenter: parent.verticalCenter - leftMargin: parent.width *0.02 - } - height: parent.height - parent.height * 0.5 - width: height + RowLayout { - onClicked: { - if(!formStack.currentItem.locked){ - formStack.pop() - } - } + anchors.fill: parent - onPressed: toolButton.scale = 0.9 - onReleased: toolButton.scale = 1.0 + spacing: width * 0.02 - background: Image { - source: app.style.style.backIcon - height: parent.height - width: parent.width - fillMode: Image.PreserveAspectFit - Behavior on scale { - PropertyAnimation { - duration: 100 + ToolButton { + id: toolButton + + icon.name: "back" + icon.color: app.style.style.textColor + + onClicked: { + if(!formStack.currentItem.locked){ + formStack.pop() } } - } - } - Label { - text: getText() - anchors { - verticalCenter: parent.verticalCenter - left: toolButton.right - leftMargin: parent.width * 0.02 } - font.bold: true - color: app.style.style.textColor - function getText(){ - var titleString = ""; - for(var i=1; i 1){ - titleString += " > " + Label { + + Layout.fillWidth: true + + text: getText() + + font.bold: true + color: app.style.style.textColor + + function getText(){ + var titleString = ""; + for(var i=1; i 1){ + titleString += " > " + } + + titleString += formStack.get(i).title } - - titleString += formStack.get(i).title + return(titleString) } - return(titleString) } + } Behavior on anchors.topMargin { diff --git a/shared/graphics/icons/delete.png b/shared/graphics/icons/delete.png deleted file mode 100644 index 62e09eab3f67db5565ca5a235e081f7e4adef81c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35464 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%0D8Ju*!R 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 diff --git a/shared/graphics/icons/drawer.png b/shared/graphics/icons/drawer.png deleted file mode 100644 index 4e7899eb5aaf3e1e8348b49aa593d0ffe9327d37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2125 zcmV-T2(tHyP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U;3uj`JuG{NJb8BhWzeI1W!~Z?MPT0vu=J$>iaQ zv|8yKYhnlErd-tx-Gtgde|P!|f7S#=R(x>LIfXwPZPW=DL9M@aW@YE+{L`0veA`a@ z4UHy)vsqtV+xjQ8%k=?oxAuJ7PQL6TEkoOli$OC+*0|XEh0T!BtDU#+6u0M+{qj27 ze=mC8mb`8qzgrJ7s=%Jnq?=)*@M*^=1_(?r31^Q_Hc^k3I9m)p#pwIo(SCU#Z@)Tl zr_$DLZmA&Uwhr#V(bmp#pS#J>S44ar`R0a_E3|Li^%{C_>+OOBj6Pa6su4(<0!4c{fdZd(fHrZy$F8dsE%&EYAiY-!H@gUKo_5tXRc}?}gL02m<4v`pn4SInRW&qw ze=)&hI+39n6w{WWxE~6@q4m&A1-4cX<%VV|Y6OL7sKzqHsXP>eg0``i&bxM3%(wZ_)fE`rDD2C#i#C6ud(>vY~qHgy^r-O zMbo==MJz(3^wEg5SoaY8xVE~F2U^YJTj!EYZ)~G4){K_Ke%{gE)!8F7@s)hH$SL3y za}=ZixoKQhmC-Aj?AAc=?r{z>ydLXS3(^pNvF15=GZY1WQn5lI)|Ky9XkUS$>jBt; zwLpyl8UfV}s0$>e7AU0_tdWaMSUV`-n6Q8s!0>9lnIB=j&KTWNcAhc1rR+RobW7QJ z#^{!^^Ni6WCwqr6dgNs9Fh-A@>>bAFk(0f{7`+~rj~S!a!}1F>^bQeuUQMM3EHjK) zD@IB-J!`2pV!4ZA3a+pcT4ec6ROBkQH<8e#74F%3ykNAZPV{IJ;A(^g#N~oz17M#_ zU((EG%Y?pcfr?>C`%W#?kb*J|i_M%-VerhE-ha@v0X&(!fX68Z6801(*}$H!*zfc3 zm4@RW^qbfDW9X!z)=gvMgU+_1MDih}hTN#a*>Vm}g@l#3u_Pq1@bZjuTME~L#h8Of zb(E{lC}O`m_2$ykF~*v_!nYWBby!Xjw4~-cZeTK?9_sKBRgh(==}}3+Tc(@AEU$o- z;a)TNm)Gs~c55^ve#ZA^QC)0e{EN+H@nG*3AKd~xkB@Evp2tUz2z&=0JtFWOeDsLG zckt2c0zbw_uM7MbADwl;BR)FofJc1vnE+Wy#0LVT1^P^Y;MG15AjQYdgqi}gmFode zQA*|{En=Rkr7D{p5(`zTwpLdAC>FQhij9MnE^Evwpe%#mfwp;oENDx;|i^gol(5YvIPSd zTT`!P3uJET-of6%+VG=c@M`ZQHoAiQ9X7gx`yDpAN8A}~bdR_**yypSuVbUfqP~ue zUUj%<*yvS1^0kBxp4s9&+sZvyp#4f9B*$EkVFD1WlS#9GamQkza0 zsh_bqXe5F`>#S||PBJBn307mqtXUhEjVg`{jAIs8?Tu`d(udO8KZfp{51Ba~Q}f$; zbCm5j73YryCw-s{d1B~$#kor5m5F>SIB9q5&8bIJJuJMx6Op-brp~q@2AHdLHutJV znN*?|ZLMSHyN=qH#9BpELCSih5Iv40q?T@F+nC6i{Jw2c<~UKywr%3t+%>6r-!*Z( z=+|r4#E(^fY)(kmSh9Q3ZI5Pa#%6|%vTZcwxohHG-*-(`KW)>tYf?w}SLE3{I%G82 zZ`&pV+=4a`OlV`*WCORLZNSD!2nH{x`Uq756);{oa&p7{| z4Z$I5gv|c}=BqX3G#T6e00006VoOIv0O$ZU05z5L)HwhE010qNS#tmYE+YT{E+YYW zr9XB6000McNliru;s+BE12k}{T6q8f06IxTK~z}7?bWdn03ZwlF`NB&4i!7VAyp}T zX+8no)^p6vTs5q1lC0Z5XdnPuEOlB8pv78jAn>mZvJ4Cs@;1-D00000NkvXXu0mjf DH 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 diff --git a/shared/graphics/icons/TreffpunktFannyLogo.png b/shared/icons/TreffpunktFannyLogo.png similarity index 100% rename from shared/graphics/icons/TreffpunktFannyLogo.png rename to shared/icons/TreffpunktFannyLogo.png diff --git a/shared/graphics/icons/back.png b/shared/icons/back.png similarity index 100% rename from shared/graphics/icons/back.png rename to shared/icons/back.png diff --git a/shared/graphics/icons/backDark.png b/shared/icons/backDark.png similarity index 100% rename from shared/graphics/icons/backDark.png rename to shared/icons/backDark.png diff --git a/shared/icons/delete.png b/shared/icons/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..64cc7e2867b4959cdd76f480ed41d7e7443222d7 GIT binary patch literal 776 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoY)RhkE)4%caKYZ?lNlJ8_IkQF zhE&XXJ7;6w6$cSleZhc_vL*qJ8*9X5Ulw>W3w886evtgbXse+VxJq>4fdiY?yq#HD zUUPhAwMzI$pL@I0bJrjDV@U2XJSLIcliAI9z_*}!YuUx^t&AT(=q{YVxaWhe;$+4@ zA7)Q2Xg4^{o7kr-eCk6_XshO7rXvvz65ImGj7d5UJ**vxci3e%m&6A=E;owYS|<+` z-N;}lrf>{RDNsH{_yyHy}gTUkiT=qfr#x7DC6A$p%N7W0vNT0Cmk573wyD0hk zUIvBt9tmydSH*L!W}MbC=fljerxVNsrcRKy+g-=`hRsWLN=y9We^*ytbU4>)DO9)i zmwINU<*y004e~RSqw3kWO1<$9IQRX})G9eDGE& z(LdlV=%~ayMQ4rSv`vv;%^fqDCx-eiYtdshm^LL6=!pmJlU%%{D>fSFeN~!Oq_SsC z0LZm7CQaDA%~(BA?@z{GUxC~Q5l$};-O}Xre)!mB?_ExYe_kDHvY7sRd2q^aXs}-q zcP=)x;eY7C|7)WDhs|TZ69tYHT;Y$1l;Z7&=7clIo%vHE-2YYW$GLeMjtPEPdT7pC zhxcpS8u~?_<+S>K`6jXd-;#`%55Ha8X4~L?WX`Hja=#ATxNV)~G<7Hc1LiLaH*WJ! z_MiQT=Rh&T^$Y9~yWTSHVJ+yNb9R*t%Lldt=?v2^wC~yy+qZS!v9@zRK}pT<*o?Oy ZgcWR`e=9DH&;urI22WQ%mvv4FO#nJZSJ?mn literal 0 HcmV?d00001 diff --git a/shared/graphics/icons/hide.png b/shared/icons/hide.png similarity index 100% rename from shared/graphics/icons/hide.png rename to shared/icons/hide.png diff --git a/shared/icons/ibmaterial/20x20/back.png b/shared/icons/ibmaterial/20x20/back.png new file mode 100644 index 0000000000000000000000000000000000000000..db43e2738fdb91c51b59031fdb86b9a32f7cf449 GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VOR=xI%)bw)Uh?`Lyk5rS2_n-H6QczjGe$C8)4e2}^9vx^? zf*yorkOlU_G?|PBVv3i3gmVMPgg&e IbxsLQ05FD0*Z=?k literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/bookmark.png b/shared/icons/ibmaterial/20x20/bookmark.png new file mode 100644 index 0000000000000000000000000000000000000000..c01e7bf24de77e63ffc7251d424f1852acdd62a9 GIT binary patch literal 487 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqMyzU^EKw32_B-M*&G8u;>7$Z;5&wU(F{ea2OaaVC9(8sdA!2X4?)X ZS%$1snTOnk0iY;l@O1TaS?83{1OQbQEgb*= literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/bookmarkFilled.png b/shared/icons/ibmaterial/20x20/bookmarkFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..db854f9b5e1e4db1fb0cf8b34128704b2d562de7 GIT binary patch literal 308 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqJQaT>(BJu0VQ_0AVH$eV|hqOM?7@ z862M7NCR<_yxm;OkH}&M25w;xW@MN(M*=9wUgGKN%Kn(0lg)xF;dP}W zP)OO+#W6(Ua&m$K=L;pq(43}Si<<%*%h-4vdBm8li*7vPDq)z|q^!R$bPG^51B0il KpUXO@geCyy3?|S3 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/buy.png b/shared/icons/ibmaterial/20x20/buy.png new file mode 100644 index 0000000000000000000000000000000000000000..9f9c09f9b1a95849423d71a414324ed1505fb4fc GIT binary patch literal 715 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqMyzV0;$f6XFWwj)Gwy0=B=z_W?c0 zSQ6wH%;50sMjD8d>-znQeQJ6<( z!#T<2JFU-))s`Gi6@PeJ&!^X0{&mZvJZHVA9gaJ9J+$G~6s@RvK6Q^s?KzQaNzwlf Z^6v9C7cFsm!49;E!PC{xWt~$(69D8@N9_Or literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/calendar.png b/shared/icons/ibmaterial/20x20/calendar.png new file mode 100644 index 0000000000000000000000000000000000000000..61cc427c55d93f1fed79ef04694ae82e72d88902 GIT binary patch literal 431 zcmV;g0Z{&lP)VGd000McNliru;|2)}9wbUzO-TR%0X#`W zK~y-)t&_1z13?r;Poljb*ojS8tP(5|8w)?cMqI&4NPfX0jRaCyrSKaBD@E<{2{sm@ zu~f0K7W@Gx%^i4|oiPc!7cTqe&E2grUCRp1cVQSobFMSB@=3j9Ty zNa1 ziN*%1(XN}0{M0T)fE>7!M-9b!MCaeF#s0$+5nxXRHpN`IP&eaYh|CP^OteGv&n$NK zSceCqlhIvZL+mQ&jIMx=1VgP~MDLRWc134=v$~=7I<>&pI^jgy;Q;-ATkYYYsG9G)(YAr_~vPBF}KaujIW&*C}x zp4n0bB{8KvbCl<{PHS3P!PcKJ^M>n|PYnB*ms}R^XkD?jLuuXF{SQCR5I58B{h2u9 z?#%kMnR9QpRv&LJ5v^ceXZhKNDLCOFukV4sfwSz454io3UBPHrz;en#SvB=%QlWj2 z<-UgvORvqpm42|ZIVomSSwCmM#oBjF?{d}iSS6xcCi(qhvWjwNdmp;5Z-?JTwKkC6!~1P#Laa^s!kqVPabhoJJ0p6<`$qMqvqyiLemfxf!rO1t zQ@6Vnf?p?W|05jNkhCaqwGHQd(=F3^>K)||DsH)=@xZuali#KdY;0K_t?GsU6!YBX WCpE1W5IP79CI(MeKbLh*2~7Y3_?dYC literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/delete.png b/shared/icons/ibmaterial/20x20/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..2f12d056eb064110635d50a0c8c7bc5a8a981353 GIT binary patch literal 1505 zcmV<71s?i|P) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=K7lIti8MgLjFECERfiREAeRc{Bg{JCJ_?xg!o z)pWg&`G~0imhqL)0g{CN_pcHD!bL?mBsI?^=ZGtnRJfw!@w%>-Vp{cellC)uwuk!x z!z5_sy3Ku$udwUK3%1A8@oW!vZXMr3bPKObrsvsjJIF00eAyp?gtA|#`O|dvhtDm$ z#b57}AsJ1fha7PilDKNVJPD$ZA{8~Ej)Dj1*|H?mD*iQp;ZEH*3A}qR`HPRpM9SbeLW%`3Nhv!BZ$pkSlelFqF@YC`nG{#)!MA7eDAugWl3t>!hv&JX@ zp|NwSE58)3Cca)1tbm}dG&?3(<8etGN*`-W7H5eXFf_$$zmT;pfE2;EA{eahL@|>n zWs1gZM98CqPetS`i4PDU4ayBsauUga<2-%i9iugtl`k`n7l2U7*eX6Z5MZUGDPzAm zmQW2Unp8EbscX@iC8w-8XUp@PswS39Et{EJvFhT<)w7$s7q5kj;26_Ta{7IM?UQEqa5|b@;TF~XFl!pvz)bYlZGQ8wA`$DE3J0wSV}#0?YUd` zUV0r^YePmFI`XjLql|h}+f<*ay^{NPYP6~G0yW3k2Q`?@9uhQ<6P?UJj1z&lO#)cZ zJeftOlz5Vx%wk~)BFczTC!9u;7zn0Ltb=ZLALM?^Eg-x9l^cIYE=+WPf?SyBK9T#% z?Hg*XuH#k~pt%c?Q=E{3?S}!~D|?;aOFwGEPhWfsy@lRFZ=tu)Tj(wH{}dYd@lf!0 z>K~*Nk@Ojr4pRUC0fcEoLr_UWLm+T+Z)Rz1WdHzpoPCi!NW(xJ#a~;cqAdz`5OD}t zoh*ooIBFG&P$AR`tvZ-o`UOoIk`xz5!L{Jv$70pN#aUMeS3wZ`0C913Qgo3L|Cbb6 z#CUMrk9YSTckcjyz06dzV;oR5%Sa{SLMFQ^1YgmE0QwNdu*6J#P85^y9AEeF@%1jo zv%Js!Il@ZLWPnc~o@KgW5pNJrZ(2I%ec}i!N(%8g@t8puB!1+&?D8Aug2R5E88OnS zdEyAMP-tVhjaku9iKmF8imFk*KjX5(d5g1JuCnGm`3pliZDpD3G>4GDB9=00v@9 zM??Vs0RI60puMM)00009a7bBm001r{001r{0eGc9b^rhX2XskIMF-;x0}u{73eP&J z0002+NkllTWZ%9e;J|}_c=P_5`G+^`*m^Bu3LFIf!90iX5+@b^7^7OuBfcvBCtkKC zn4ru&lcov>cnW;eAW4abz*kspF8Z~=71n`2656gSZ~kmAb8yKarU=KislMX2=|Mk1 zc#1PjL$@NT>~$q9@Qh*jvkLCia<-)^e2bQ6(ee=QQF$lAMd-C@bB<+@cOo3u25`|t z)>gxE3;w^MlsLk5;x8ZKyG@e2j7@XjcEO%wKan`OY<>&pI^O-#r{>{}N9b)e88PZ!4!i_=#p8S*tbh`7kNwcUui z6cJg#*?)l3BS+VU%~tJJQ~|fP6t~_%-WP8dNKT&0QD-J%buz_#^Jn$l|MmY^F{SSp zuMOzTKhbz@@=tA*5+?lvQWlKn53DL0yZJ1b*dMI96=p>DI$rgy1)=b5i9%crSt zG}{^A`0b(2_q(YtjG! literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/flowchart.png b/shared/icons/ibmaterial/20x20/flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..6469b0a1c38b852379dd92e6eeb61a9a09b9b80e GIT binary patch literal 369 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VTavfC3&Vd9T(EcfWS|IVfk$L9 z0|Vb-5N14{zaj-F$X?><>&pI^O-e}6T5y8RU!c%GPZ!4!i_>SP7-lgA3bgHiv8bBS z)^*E;J4c*!bl2E;M4eZN)H$*x%qd4lgvD3EHR@o-L&hUJ%>ExrzFBKm7Hnbg;ryBZ z|IBwA+f;4n+7=yjH1Ih%GdH{B$IS2?&4q>^)b^ay+BWUL z?upV;bH!p^e!Y4U&EC#Ar!mX^(YIK2tL-0_WlrAiTbaIcZp`&#G2G{sDohJ*emhxz zz^Qq|+dHfglKV9_9^Uqd(;#@=Y=vtVTig${7uik@U^Y9jKChZ_)*<$*S(r|@ MboFyt=akR{0PAy_TL1t6 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/menu.png b/shared/icons/ibmaterial/20x20/menu.png new file mode 100644 index 0000000000000000000000000000000000000000..a10473d9e1ef9b0667894122105ae6d2c7dbf6b5 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAf3?x51|2hvy@dWsUxB}__|Nkq=%L9?{J62C1 zpSdK+FPMR$LHwNiKOk4y)5S4_BRZLbm9g!@h1!Hq_ClP32VJJDW?^Eu5}>+rMbvj$ PpfUzeS3j3^P69mG+x6;|l0MKt22WQ%mvv4FO#mAmI6?pb literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/pinFilled.png b/shared/icons/ibmaterial/20x20/pinFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..fe79afb0bc4dd536f22ef637efad5278d75a06cb GIT binary patch literal 501 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqMyzVAK!r32_B-M*;C6!1SJHDNr?I zNswPKgTu2MX&_FLx4R2N2dk_Hki%Kv5n0T@z%2~Ij105pNB{-dOFVsD*&nlWiU_lp zcl37yh3q|D977~7CnqRy8zc(*cplW6(d5hHY@*5<48*=Bsz>?Mp3G`m*~2+IE$5nm p^09Lbnr$z=CG=YpEDR>_G8}v@f4-2hT^wi>gQu&X%Q~loCIES$GBp4I literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/star.png b/shared/icons/ibmaterial/20x20/star.png new file mode 100644 index 0000000000000000000000000000000000000000..55d76f3711f4b159a998af08d1b1155e14d66334 GIT binary patch literal 843 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqMyzU`h}032_B-N5N{XE)7O>#F*~O) zk7ly>tazYMtfz}(h{WaOgaiD1iNZF{YaYxrR=vS;KH+jLTenl2v5>~E0}KZny52Qu zC0G}`@p|e@F&|1i_=v&a{1={GcNIPwZ@w7A$D+03R-;l3&!rVzopr E02IPF`~Uy| literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20/year.png b/shared/icons/ibmaterial/20x20/year.png new file mode 100644 index 0000000000000000000000000000000000000000..26f4edc83264a9d7cab9b9bb38702dae936609ce GIT binary patch literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VTavfC3&Vd9T(EcfWS|IVfk$L9 z0|Vb-5N14{zaj-F$X?><>&pI^O-#s|r)R>eB%sg_PZ!4!i_=%Hto36K6kvV8pV9P? zF-u@clCXe;g2lWfRjJ0q!b0~L9i6gPy|80%o3OyEY1M%*j1EEu%4XAVzs-w2?3tJL z?9S%r|IWOdbX=0{S+c;aYd;R|NUW2YW&c98wDax>?wDlli#5k(VjePwp4-zCI$bg~ zubo}+{KtErvbcI4-Q+S`E4i1)JZk$x+q9YM4!a%tUbykZ2S$C)a-olw5BqOPEZcqK zc<__BcI-XAfElmMDBl~??GS~FnGH9xvX4nJ zu)P6cM!8Z8Q=p(^iEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$Qb0xXJY5_^ zB3j?xFyv}>5OKZe9d%GPmG|bX?2UcC-=??;=p1A07CBtbHvePn1Wnr?-4prWS$#dQ zVQ$ga1MD-l2XozI6y}^hKk3Qhx!fK*1S`zy{8#*qaE@P}y8l>KjOQ^|W4&307kj$Z zdMEFT_CGxJU!JbYgpy0j=SmMqEBB|TtnFDdb>dc|O<~g=?md2&xA*QZCVe3ftCy^4 eepRf0_OG?-TcyL4IjFd7B;gt!8^qkyCk*z@UI9Z&;f zNswPKgTu2MX&_FLx4R2N2dk_Hki%Kv5n0T@z%2~Ij105pNB{-dOFVsD*&nlWvYBzF zC$g3TgKF}$QB|(0{ z3=Yq3q=7g|-tI089jvk*Kn`btM`SSr1Gg{;GcwGYBLNg-FY)wsWq-`h$!2bLLPnAk zDCFho;uvCaIypgtr6E$BJK=c1v6bD-D;8;9Im+oK+NUKGYOzXSwo_%{BM~NUHMv7v yA3GH|g~gb;xRSI@SPeusCF{pkmay;ZU}yMqsW)tyYu-tqsSKX3elF{r5}E)TMKe|a literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@2/buy.png b/shared/icons/ibmaterial/20x20@2/buy.png new file mode 100644 index 0000000000000000000000000000000000000000..2ae229d5e6dcf5f9c459e27e486a6492d057d39e GIT binary patch literal 829 zcmeAS@N?(olHy`uVBq!ia0vp^8X(NU3?z3ec*HX>Fg^?L32_B-N5QZU0oz~V`+%Ng zED7=pW^j0RBMrn!@^*J&=wOxg0CG4BJR*x37`TN&n2}-D90{Nxdx@v7EBj-1PC-rn zC_`y&pwITqwrZx`_MY8TV(4v!Y%!tP9}uFf?vv_7?O>j$jpy;8-j;@9>5hjg8`J zEWyXS*2qepINUOUnft_t<3fiwaZFufu#9Wl5{7Qs8I=(+9k1k4+y#1M*ElwN%dF-O zJY1mY=A`JZC?|X(T*CRSPZw{%q6xhbtvAl5Ea0%vUZ6VJa)+*%bGfmf_@if+qZFg| n9a&|-rLm@Q-PG1Z0S1O9*V~PeHQm#Ieq-=-^>bP0l+XkKHN0-H literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@2/calendar.png b/shared/icons/ibmaterial/20x20@2/calendar.png new file mode 100644 index 0000000000000000000000000000000000000000..53fe9b1f08fea8b1aefed8a1eaeecdbff78411fa GIT binary patch literal 672 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 literal 0 HcmV?d00001 diff --git a/shared/graphics/icons/menu_black.png b/shared/icons/ibmaterial/20x20@2/menu.png similarity index 100% rename from shared/graphics/icons/menu_black.png rename to shared/icons/ibmaterial/20x20@2/menu.png diff --git a/shared/icons/ibmaterial/20x20@2/pin.png b/shared/icons/ibmaterial/20x20@2/pin.png new file mode 100644 index 0000000000000000000000000000000000000000..0af60ed833b63387dd38125ad7c319883b672bd3 GIT binary patch literal 701 zcmeAS@N?(olHy`uVBq!ia0vp^8X(NU3?z3ec*HX>Fir~a32_B-N5P;9ffLRl#Xtu! zmIV0)GdMiEkp|)3g z4Lzzrp(UO!jv*GO?@qDhb8rx74df7-s;psh#cFvW<6JkzPw#raZjZ2Df5Bkt4E_0Y zw+r`ue%R%~=WwQJ!Bm-3jhx$(N{m)?WL14&{Spv)@UFV%*Lff3tgJFMKlM7`@7<6& zJiHUG9!TJ8-QmV8F|j#f@y8v1Z{E@^u9e%^|Iq4!Ot5FzN^Rgt!8^qk#AjV0zE96sVf9 zB*-tA!Qt7BG!Q4r+uensgH_f8$l)yTh%9Dc;1&j9Muu5)B!GhKC7!;n?2p+wMTE4p zeID%x3Uzt9IEGl9zI(-y&%r=|^+K5Vj)u8MEOp-8Ipp^FeLY*}q$?TL_KAn%U!C@` zZZ(weQFr^3hgt!8^qhK@yXdMCxqVXL- zI~YrX{DK)Ap4~_Tagw~Fdh=n4MFY zN7P5<*$tr3B~KT}5R22v2@AL_T$b!IPG{TeblTWu70W8?V5cQki+WTX7p}iI(|Fqv z4W2ZGV;->+q?AOm<~M3hIqn+a literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@2/starFilled.png b/shared/icons/ibmaterial/20x20@2/starFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..4ff5390ff191635287c5b5f39eced430e0ee8e99 GIT binary patch literal 821 zcmeAS@N?(olHy`uVBq!ia0vp^8X(NU3?z3ec*HX>FmVO=gt!8^qhK@yfFaP~+mi*P z7)yfuf*Bm1-ADs*lDyqr7&=&GJ%Aj}0*}aI1_o|n5N2eUHAey{$X?><>&pI^ol}@k z>qN=QbfC}@PZ!4!i_^&o3)mwp=6keeU*}tJC?ILd&b6$Ji_R?Wb;?(|x;EB&a)TA; z45w5j-Xo8_(j^aWebErg7U}vTs>wm*u2l>}_vsH>%8rV5OEc=;9bKx&tz6;MVaU(J zWH{AOs7sV-qp^{+eA$ax3wHzv uIJ4|_iuAGGpxJXkMEK~k2{RKnFfr^Yb>HA{EGHl6UItHBKbLh*2~7YN3SQ^{ literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@2/year.png b/shared/icons/ibmaterial/20x20@2/year.png new file mode 100644 index 0000000000000000000000000000000000000000..980d2ee0d29f2b6eef3af3d2aad21bc35fac2415 GIT binary patch literal 591 zcmV-V0VGd000McNliru;|3NIIyu8Q9{>OV0o+MM zK~z}7?U=nv13?hSe;15|7z|N}kjf{pNNJTO5D2zbzC%tM!N#++5kKBQ(xkA~GT7Sq z2CE;|i8-4Qj&PUk-Z#NNEZptP?)-0OcJ^i=5+K-f2?N&{%!yn7a0hf1;#C)8 zpawMLJukM0Dx1Wa2D-p$gt@rkVl!}>i47`lt7+)^aj`ZwfPMm-q%XD?&&40WXGHc_ zfI?7$m%v#>F?awR1tmBFUKEX19LE@na|d>@j=OHF8@pUm`D@C1VW_{ca@CZD3=wwBwEwxCj1Si0C)QNf_PLf&WLRnFF zpi{|(MbHLz4nJ za3z8;64!{5;QX|b^2DN4hVt@qz0ADq;^f4FRK5J7^x5xhq=1Uy{C49+_t(Kwngo&(*&f`e z?pS(*Is5_N9P9H&*31QuRileuSzYYunLSr6=JNbmbDv$v-DMw~ZFVQB{&J4Q&5*NR zVkdvOZ}PZiKgo5|zll1NzV@d~TvH!(^3}4Y1)KC{-!-fGU9tSwvWI^{H!zopr06SNTasU7T literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/bookmark.png b/shared/icons/ibmaterial/20x20@3/bookmark.png new file mode 100644 index 0000000000000000000000000000000000000000..ca812b183a0ded7ce09dcdd72f5b31ba3501f60b GIT binary patch literal 626 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKw3=&b&bYNg$Gz#zuaRqWm0ZAdS=hL@3pa#a0 zAirP+hi5m^K%69RcNc~ZR#^`qhqJ&VvY3H^TNs2H8D`Cq01C2~c>21sKW67-Gu5Bx zc-b2$wA0hYF~s9|a)Jcw6o$zmdm4_)F86yKqSTIt|ns!$2 zhLq5en`ioO@my4KHBQrR>y|is(sKpx{DPFc92vi}LNB%%er9%c?#%XDn90}B={{-I zOiBO80{hcs*IaU{Fzt4D^5f%jeVbXFTaRxo%uaiveq&a;dd@+O1Dp&erV8&CzMP~8 P^aO*atDnm{r-UW|C$?{i literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/bookmarkFilled.png b/shared/icons/ibmaterial/20x20@3/bookmarkFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..0dfcd818ee48b01f96c7a6e9deafab69032f3be6 GIT binary patch literal 393 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKw3=&b&bO2Ia0X`wFKzfh>VI~fJpi>x2g8YIR z9G=}s196hP-CYpzwK71xP{6V9%>V!M`1G7EFMF%9$69U9U&-buDGSN3 zi)11%swRY$y1iX>SmtOnw^{-OJUC?gnSGDGyRO>rm|EF)_kM?Tz5HENB{O%MW9wRz ruDRzQSlS*xtdYFwrs;du9+SI)2km^epL=*0=mrK)S3j3^P6vL>4nJa0`PlBg3pY5H=O_Q&j;f*R)8 z8k4?&^mw{BhIkx*JJsI*uz|o)|Ew2HR%(u`v@%#jTU(ACaZz2e$+%>-fU>Z&b!hBQ zo{r9^`!p>wGiC2@*8k?fes7BXd-3Dn&zW5e)JlG~xHaC|ZIVCZ^gUM{EPsGh*k1jY`h--U4*NW(Km6AHZ?{t#ub5clbS=QWt zHWGR3v(L9UGR&^M^5zALnA?p0j%PEL-g{`>*m|{SaoYBet7b=ENG*%XyF6>Q`i;fG z*@?IQ$J~#9#3p~cc+<^nzBQAN9kMC;?WOzd#-B`99jkXuYjzko?_K(V#cOZ>t`}BX zk(*Wb8ionXOD>a3x^HORbJO{%SNrwCH)l4S=VW%D|Lo+3c)1^Ttjkn(%w`hayW~Lq zikqxA7VdMB=G47-#7Fb=)MegWGn&+%`%l^5F8jtNlEubVjn^hi?s;y4)4a`M1{ORs ms_iNQBh_APmi(*jdf)%`y^Xe;*e?JhfWgz%&t;ucLK6TWTgEK_ literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/calendar.png b/shared/icons/ibmaterial/20x20@3/calendar.png new file mode 100644 index 0000000000000000000000000000000000000000..434503cb539a28bc180faed8607cf24e7ea2962d GIT binary patch literal 888 zcmV-;1Bd*HP)VGd000McNliru;|2)}9XNG&Ld5_80|iM$ zK~!ko?V7!B6G0Hge~u3YYzPEIX!$QFDd`X?L5XNm8Ho-dx=>k&E)szbkpfy27nBr~ zv{6D6DJ2CENMgs9Vvc4kt=3~_eK(G6yiZzPG&kp$x1VqK4hF|Eka}gA;lqS?hABf7 z90f19^Z$WZX zqhigwm;i4AYPu~C0GvpT*PYruacZ({*aNM3UnfothT%VNPwT7lv1>tbV7{kr0AGNLE9AYbc`jZ8FM#5N2yO#UfhS)41Mt8%9-0?z06!JI=0^|x2NUCVF9*k4p8!KV0P7n%=l07n^l&DY_(z#gzAWlv&0 z9sxT}-Z!AC z!D}u!^ex^x@J^YfeLR+PD1VmD%4;sT8MqYGIsMH&vP>Ns@eWA8YIqu?mm9{&JWFEIZ^K~4z( O0000VGd000McNliru;|2)}1~NR9U_k%?1KmkP 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 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/drawer.png b/shared/icons/ibmaterial/20x20@3/drawer.png new file mode 100644 index 0000000000000000000000000000000000000000..3584ed6d8b19377357fe9057aed5a3b568b525fc GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKz3?$tr89oG3oB=)|u0Z<#|NlU;_*ioxkYXwc z@(X5QD4TrN0?1SIba4#PIG@bn%F4rhmOr|cXIao(`9lpnF6}b)CN*qkHEfY}j0}7) W`75>y$qEB?FnGH9xvXVGd000McNliru;|3NIGc5=pa5Mk_0zgSb zK~!ko?U=nw96=bye|LUen<83Du=Gr2lkNm9tgWpDL9A@8^dHdHN-%I(rbrXGfMA&- za;?_E5D`R0k4&0Zkl~%X^=@Zw_wqil9L&u7eBAEL&JGw127|#+7*u-nH-II;l_*aO z_#PTC-h*HX*e&6W3)}>x^xD9-k$7C6p@%o>EZ@_he zKgR*@#m9u#_e*?K#B(m#0y-l6ay>GGyrN-yE6pccm9=J2jjNjeWzT zW$cME?nXFrN32uJpTLpQ{x@UWk#LkIFuVGd000McNliru;|3ZM5go&wxc~qF0|7}y zK~!ko?U~I>RY4espR1upcJ1SOv04RfA_}6Qg1&Y|5NIih(WXsNwDb?CMaybYn|2n_ zqK%2WHbDl3*#{LFeL{;$GxBDsq}>*dFbwaRGnX^!IW#{wi#z9?`OPzD?#z4UKu}On zP*6~6l$!^Sdf+s$I3{i!xB`r2eNcMpW#as%oB~r#;1F1~@eezyUY_2jDoB z=O{L{z#CQa5vQfVmaNa9y}+nL(lLAe0-Cc5y9bzz0Q(3GM% z-cq*)=&>wjooRzTrKX_N*@r;Ep^YU#uLb(Td;(RgP8W@<5jbvv?Nj?}C3(Ru3-no_ zN$5vG_0gLOz$;)F7&5Lu5uNLa_|L|vMxA^}ZB7H<4F6%(w}MaLqH5SRfw%)KO6YmH z0>5G3rzJ%-nl9$O9(^x5dJZiV@OSke^Q8tgg}nj$etDQud#5kedTuYg4+r1?{GR~3 zE*v@h9;lZckA13e{A}b3Tmq)sbVM0Dz~ z2j6WL-#luUN|1DAyR_dWRDwD?v5=hOnJ-+!6Zv{B{9dZUxTF)ii* z@Y{&_0jy8p+a&l-07tc$-9X8R`3dYuvS>96i^f-GP8(-60K6BH{(}jC52+Pe*B8V0 z8SvVOsR#Di8rI)gcc~M_vbG0y2!rwjcw-E}b6|rJcSLovtnJYsfO|$NE@hHRj%6h9u=<8vIsgaY z033j`0_^&!qS~=6m38$@>ozl=G|Mr2p_HI!v2IXMP*70NLhBzZO_e%kXbFM<0000< KMNUMnLSTZAk&Tf6 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/menu.png b/shared/icons/ibmaterial/20x20@3/menu.png new file mode 100644 index 0000000000000000000000000000000000000000..9554b6952b395f3b63670b439cd4c0f9b6834092 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKx3?xrnI^qbVL<4+6T!Hle|NoWb<&lx6m8c$2 zf~_RTFPMQr!C?M-oyjU7ouQsCjv*GOlLd}&ORP{oyFh5#t0N7;vn+LVb+0lk-;yOI z!18cP8MEi|2UGZf_;tJ%Bf`sfV|Gpv0pnUh zjlV!Wx}GkMAs)xyPTR_K@u++cKVu zl3O@#6u6zc+R**H`02%5*}Dv3-g@cFwj@{O2mjmRy(r`^TdC~z!f9uF%bu>DDWEKC zqPy=(S=~hk=jn(1s(wjV?zNbjTy5%mr`PjJb@04H?OUh3Z}>X@lWW9hztdqBHDQUz zZmp6!9%cDz>4OiAaj!mZOYweUbU%4+%+YOeMqfN_*Lp2B&Axoe`)kLBnY=qJ)lV#o z+l*!&%@FSM+sn5w5mol)a=p5L!wN=s3JF_F9EAH|Kp1c#2G-tIx?BwuU`rM`` zKqV)|tK@G+zH}q=yQ#HX0$(*$teePqi+$zOi*fmJ#a|D0_-#0m?LXgm|LF@&VoOVI zaNJn1$G3_3Rq!JZiGv!yw5A`}owB7OS)ZwFc69N{Jp~_Q?!Vu8GIjYC|5LH~pB|iC zQ2N2Dne}_|vF;uFgP&iwshJgV?UeMtH-V;GroX)S{hYVZMxh0=HgfO(o0l)yE!p5R S#U&KzZw60SKbLh*2~7a-ZjxmH literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/star.png b/shared/icons/ibmaterial/20x20@3/star.png new file mode 100644 index 0000000000000000000000000000000000000000..0b03be1b0d632dea6baa5bd7a2594cf180437324 GIT binary patch literal 1151 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKw3=&b&bYNg$N)PY}aRqWm!DtB3Is_6#<2!(M zFqQ=Q1v5B2yO9RsBze2LFm$lWdH^|`1s;*b3=G`DAk4@xYmNj^kiEpy*OmP-JEt%Y zW7t2Vr9eFsJzX3_JdP(PNc24rV69sGJ#fL#Gc#?cWY`(An9dGdB)Q`I85X0jQB5ZE z7an+IobGkv(rng?XM7uvrk`68uxO@Cym`JT5dU`(Py>dE}j#Y)^J~S z?Mr)W>@iEV66?x z%@&^BRJnuq+Tn>34-YUX8OjE$iQc_0X&|{R)`D4Rl@o8d+W}$TiqIDiCLiTUEm^=C z7~t5q`-4WLYsfc|CXFIDvDqFa$J(?~4hr?Qm`Xc|6eVS)sj8(HEWYjJ)yWXFszE2A zOV#xegR!I6S%V&7^?fH?*Qzddbdq#=Vd|Q}=V12qOwOXyRZBR!R1{ArM0P9kEDbo& zVY?^J%e}pj+bz~6+gO_q2B@gdpRl$wcEz)7huh22 zY?in93hy_2yj=U_u}2?oeW^Km(3|gFvBABFN%?$!F?av^>RfM;y*rib$kPc2-v0jX zAJblSds6O(0$a0-kK$@>F8}fD+~dWOx_wW2d3%1X)hn?3?D()N&z&W#e%UIKe;4PT jeO)+9qIvIkK4tdZ_wOEz5>0gj1|@^1tDnm{r-UW|B5bcy literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@3/year.png b/shared/icons/ibmaterial/20x20@3/year.png new file mode 100644 index 0000000000000000000000000000000000000000..5c2eb8f2415b671f60e7900c0629d5d7ac3db428 GIT binary patch literal 727 zcmV;|0x127P)VGd000McNliru;|3NIIw{_d4`cuU0%S=< zK~!ko?V2%98!;5ef0q=f8YvP3`2e93BVQpS46KZuSQwC^go?JJ5~&a@6%ta%PIO~s zfRVLh_tFnQq*e-2RaFhwfroTD1#-T7@!7$D$vR(R`~0(?pMCa0P-aCwKD%h8&wyWv zvIf9gxoW5m9LhD8-{yg}vRXP$g`Yq}vHXUVnSM@gRg@dx-vk;}waf}nOqB_k_)xLD zVNnxK>zP5?Ca?-D$o-!YX==a@@LQ>VFQm-0-T==f-UrTsADRu*1#S{8?ot@atkBhh z-F6W2p->pQDLv~8@IdOE+i9)JIPyg`V5NxDS{TtNSHLAOTQb~Vpam?ZIyl>-w`A3hWYj-uXiRL1Mh*JL7txEiG3c!dl{j7Ijq51r!@}R3ao7}{SdS@*fOT2 zG_+ONGIl)fp=*ga(+-Th3VO5B3a5u9!nU-5`@n6=5?nq#yald{6wu^uD|Ko2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4e7ENdhr~4zM5KlytIZt6NAph zf13>s_+1JOQhjOgaqF3L=5c=`UH%-5d!JC69Qvs2-PJjJwsrU>8u)Z#Hr6 zlF3VaAAUS9xIVSaOTGVjLiaj*o=2hypLmWK3!HbbVg5)8Lw_%?&%B54)%5?CUW>i- zxczbX!~5|qYnODNT0Ws)F8a^iwKi;Oh7BEzE<6fJ41&xZ5)MZgl-LA_68iATuECRM zhRGwLZ|AJMt-N-L%ALO#Df>%p;`0PXvjmuz#4@q;SiD>(jK03r|GLb#*9o?Q#)xDbZMT|uIt>`!8TH2M9%-FN_aa6A21WwZh4$l{Sv8o6N+2g2qjw?Tu z<%?(nkHr!HX}6y0@onKev)ng<*yybQZpuJM22$YFRP5MjT;6)54oO-Z8T z;U29G^Uda++wy0kc~_bAe&@WWw;z98W1*3~bFR~a?{ZH(^Ei0+#YZY6y?K?sukw4l z*qgui`)8i1*88#Xg#Cvte*f?Hd`c)Q+M>@oE9T#W3kgfAj=IaUEt{;xx0XlY0>8r6 uv?ojlCo~#YzH)3f_Q`Sixg;RvCqw(8U(dL;B`SfT#Ng@b=d#Wzp$P!89h@!z literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/bookmarkFilled.png b/shared/icons/ibmaterial/20x20@4/bookmarkFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..a0214397588002da6d2c4db8a895f0c96a4ad635 GIT binary patch literal 439 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r53?z4+XPOVBx&nMcT!Hi;0m4ii`aq{JmIV0) zGdMiEkp|)#QI+2w27iX7c+Re`njxgN@xNA8F6Sc literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/buy.png b/shared/icons/ibmaterial/20x20@4/buy.png new file mode 100644 index 0000000000000000000000000000000000000000..ef6c79354b275ce1dafe23626231c99705f816ee GIT binary patch literal 1124 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r53?z4+XPVEz!1ye{C&U%V9R?NMQuI!K5IR!OT z-cP%%1=RE1)5S3);_%z)`@Ihb2ppH+@-oOveX`R_|18bcAVD2IU5>YxRytpFT)kM2 zkE>~i#g3iblTZKl&z*flc0Yak>16D?^f1r0=ZWHj@YTJUlWosmqo+vip^k{aa|$>~Q}d56iBTd73R+@26YaUtjo_ zp)g>t%5GQYq7SE7bp-BR*uSo5mnw7n6rWAew-gK?nNFPKS>o;Mc;rRfe9hV;a|I?e zxAYv@<*IFb(R1zk3yNmm<=vd(I^RC5ykYK=^nlm2^2Mxg)2Gd+12e0s~xq(^fU-z{y-X39VN zV6R|>Y+v(ri~P(&uFp&Q{-}$|&wcb@v%v+?$7gFFxZQ9(cz=UE)3lC7>N7Q%3bc4b z9y$0+t?;_!urzPgp#%R{eB9G3!?v%A=MM9>>>s5MY%dj*S8zEu7ax5sBECL2?RD*< zy`B$Dlb*RwcAU&v(>qi8ytA!ZLEFuEgT~kg_Q!uoYhBrs##>_~oukxU&Q;L4Z=a}C pNXFVC$r=0`6uN$1IIX%k-*R_S!^CY;Ccsp|;OXk;vd$@?2>{P<5R(7^ literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/calendar.png b/shared/icons/ibmaterial/20x20@4/calendar.png new file mode 100644 index 0000000000000000000000000000000000000000..d799f8c1af216a1c4e92de2f474b2b30f2f6aae9 GIT binary patch literal 790 zcmV+x1L^#UP)VGd000McNliru;|2)}9VlqPQlS6<0;5Sp zK~#9!?VB-c6hRn_w)L<_A9YXl3yCjN!|0P#<#VChc~3;U=6El!Am zSlepvH7NofHx@}CEH{Jq?d;s_?fb$u`Iy<4C%f}~^W7}8*B0PB*A}Z+r~XPL0Te(1 z6hKJ;1yBG5P%;6$1Uv6V07*8 z8t@KyQUb4AnyrknRO-^-%L=&Ba*{*f5ina|?l1#@UHZFO0Y%G6rohLH*ZD5}71k{5 z5{)5uf7Uf%eEuI;!rV9^z-0ak19{itwRaJgjI8_>iC-=4L?i(eKmlAcfHPq*>u(8s z5eKur7Qn5uJ>lg9HQKt!0Vlxib70qj7r+j1)idbxfY!`8{+{9=;63mL_}L8Z;cp@i z@hMw$?S-;%rMGjr{(;IE)qw&ifCd$Yc+qms?iWO(Hi5UmapUhBz%KB^li?<3wNw+r z5%AnI<`t)n&t_FH0`5ojmlWU?;BFx1(>=qz#=wI_{(8FxI%7;pL`g&drBwhdBhNoF z#!~qUYCn@^f~5{j)lAs$!z=9ikb$)Z3ZMWA;LsIoFMJ380mi9kT+QNRwbQ@`f77#n zEjj(oCZ@k+Wz2S9%(kISI0%e6$iQFpGG=Cs`E+cIrShjWP)S4p1@M0}xh2bQ7-OmY zMK5El-(frqlrcW-2FjS&{*sk3>#AONW0XV$P!hl)1I(eNpA2B=OYho{BJaIVGd000McNliru;|2)}1_x>PgIkd$;NT5nl55^(|FQQHBp-_p(YOQItYK62-H$t1H*`_v)Sr7XPVfnrH+nJr&o$UTTFqiyh ze($~S{QkT*GaCp50)apv5C{YUfh@5ZD2IcxXyIg;A>cw7Lw+rm1#RlX60jWP@oQlT zI3INLYhej^J*GTMA1t=(YWK=qL_4yc(bF>wK-<9iiGfG<* z(4C@q-C{$Frw}m~M1z?$1ROMWtWpNovXZfz4jR`@h!&9rECHvC_AN04TrTTPT6Bnw zr~+;=`uxor5WYnES3~_lWlC5A_5%471Jbp&TVPIU>jySwNWgAj zmC|c-d!NnYKu%24@2E&q2ySN$H?GSLHNmKYHV+6Vc+$}MLcq(w=So`+ zc(f{yvIM-va5xF9{wJyg955;-fFWbxL=q6-eWRdW3v8|GYs%BX*0`?ng>$v!|-^deZfR8DZ7|&`B1}V^T{-T|YOY zzYMonF4y)%yzYo3)tThQ7>jvPMsJ)Ee?Er27sxPcVx|-CVSni4dbIX#Ok0WOeQ7*e z9|it({Cx%RpfX*jf%|~7HQKmKo-5w!Xqy9m#{F_XPvtADB}qZnA8lkDh|t%N=b7FL zT9ntRys*)Nf2xK)o;0q%4!lMSbGuAEO@MQryf81*T)X}lDZS6g60ZQ)NdC7R*QD>Z z;KvjM9Hos|=Xq8b^_a!@47XL;mY{&!XhXWFeC<%Lcza`(f-ONWmCxtmigytGgUW`` z*<=AP0dL59*hlR@FUv^{{SNxquz^4z5D2s{xpwd+?I1s-@-cV0iNYNP-dw7A-~js1 zs9J)w|LH^){_jG0DGS*01ObD9tu0_a12N{8>dnaoUjl(ZAP@)y0)c>&{{h?eH3JEV Rdx-!5002ovPDHLkV1nb zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=K7aw{neMgLjFECERfiRI7@RJ|R{^5;U6cI@O$ z)ui6Xd>G0=%k-7d0i1;X_pcHDLZKoYlA7m|b3{oc6|NX~yvo&6Osic*_g8p+vWNQ% zhDp%N^_csfUt!nB3zoM1c(w;Sw~lWix`kJf>3NRZ4sr_#Uv}Ehq3joG{{MNJdlWAxGSWB(9b(Pl70jSY+2H3`D^~dow{!lc#mH47e6ACM>;N{ zk7ebTJZ(Gai(PIv{1g%K?U_GEWOBRslD{#UkI}Ey)szF$mG`1Pma;~ecp#m!UdyP4 zk78`A7F3Tlo}kvS)FZ?L4}};RAC#z3r9pl5C!Gi}ac4u%e6lQ?i*ey|K}oaHU<=^W z#KGzWIf0q)SZMhz(;u8UJU7BjCWwLDa}BSCpVlX#G3GWWihkz`aq-+W2xF3)EoK1- zjh$0n`K54m@wH5_0)o2I>{wup$0cznJ@%F?&Js0XYKqr+A!}OzDS~fBFxcIRVkS|_ z6ph)4kVglfipW_KA0R*)lpCVtB$5HgdHTjXMr$rBUuIk{0HKm`RD2#Fz)DF|#(8sW zp&C>)scKeJ*P=B`PFZu#mghZHO)QyOHZ!+k)y0#mXE%2*UJDn&HKw8DV#P}-wZdsl z66#eAwYfIqHe+bEZ?zeA?+}Icwu44Oc*Dxmoj8TJ6-am3r#hbGPoj z^g6KDhKw|HNsXkMCCHL>tXj9__YRsA(^c?ywJ+>nCfhY8&)d!4^aKkCCzUwjL_h2BDMp|{Xm=q>dB6dL&Bq2S-C ze*hSPk?M=Pzli_<0fcEoLr_UWLm+T+Z)Rz1WdHzpoPCi!NW(xJ#a~;cqAdz`5OD}t zoh*ooIBFG&P$AR`tvZ-o`UOoIk`xz5!L{Jv$70pN#aUMeS3wZ`0C913Qgo3L|Cbb6 z#CUMrk9YSTckcjyz06dzV;oR5%Sa{SLMFQ^1YgmE0QwNdu*6J#P85^y9AEeF@%1jo zv%Js!Il@ZLWPnc~o@KgW5pNJrZ(2I%ec}i!N(%8g@t8puB!1+&?D8Aug2R5E88OnS zdEyAMP-tVhjaku9iKmF8imFk*KjX5(d5g1JuCnGm`3pliZDpD3G>4GDB9=00v@9 zM??Vs0RI60puMM)00009a7bBm001r{001r{0eGc9b^rhX2XskIMF-;x0}u`k#dWVR z000ABNklNgouYm5cS|6 z;HA)m;8~;yDz%~sf~a_s9%`-iRI8q}Nhq#|onVdGo!!ZgncaO~SVFQhz*<*a;j2cEs#g0p0^YvwQ=$0#krzc-#PbvJ9{YY_tGy1Gt%0w=cE; zuJO2?w2)S6 zC;&xC0N4i%w$OhN=*=>~tH4v>ghAg4;0b^1Wt{fe8~Re-UW``dM*)kI9~ za~fbVp#4}xcyS6#sRGysTn}kq0gh|jc0Hv3ttK(CqX4@d1NQ=#LeBRB_kc4^&Yc48 ztD6v{i@?6L$G`&ci|`WT*M^Z;09G}9f<|vDW8g6GI|7hV;IPJRb@4M*E?n1Z;0RFF zxbr-I!8^=ttH3x=&e}S#3`{E54AORW1Zhph%d)MDu)UC;QrT`Xz8DNh=-vMCS_DHk|a15B$z^iE{mI2@a@ls)_05}4?Bs`m31&%5> z>l$}1*@9>T-~{koGn3YL7_WdgDifnyY|mkq*-lh4;Q+7_Aro`D$@iR8=fe7a;r|*- zs*(vSz+J-~#w>7Fy=E>VgY@1D2Y6?$RGqG_&O+ z@ZAM~OZd;KBu(=HH{OcI@vC7;`Jb$1EI!Q;r1QXs1i<@*|8oc@HHcsLU33uKB7WU? zw9~=0Rc!k07*qoM6N<$ Ef(=L4y8r+H literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/drawer.png b/shared/icons/ibmaterial/20x20@4/drawer.png new file mode 100644 index 0000000000000000000000000000000000000000..60d93aff7b0fa8f570e013f6ebc0a86a338f4474 GIT binary patch literal 131 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r83?x6-OW6S_&H$efS0MfW|9>D^e5|<;NHLWJ z`2{mDlubTs0pzKBx;TbdoKEIA$|T{|^+1cqz=BoM;J^w6)uzQC?WEo}Ti$ceo5{nl Y>fhrA8|lTrfm#?mUHx3vIVCg!0QrR_P5=M^ literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/filter.png b/shared/icons/ibmaterial/20x20@4/filter.png new file mode 100644 index 0000000000000000000000000000000000000000..891fcae3aaf9c70e1c1b163c4ccde1cb90b57390 GIT binary patch literal 806 zcmV+>1KIqEP)VGd000McNliru;|3NIGZ`tAgn3D{u-t03N2@ z(wk;x_m0mWU^j=GW!JRbrTNBc>UYHJi?swXUEmimpCj|;O;eKIwOE7Zr6cOIePv=Z zVOo-OUS_e|l4v->y1>iG*TE6f;Aw2c?&8}4f%S;`>H%%rd6-0=0%wlMkC8-HEq9Wx zGt-_676TXQ)d-qa15Iu*Pb0z@aO4R7p7B??ZaI_m9GT`^(E_d=(Qh;Ab`{H&q~qGO z=8`Q(_zz$q0}Tt7D@n&zo^K7u?RLnU4QnapuLWklQ`4Ahnt{>bbxK{iYO%fC%_2OY z7zNe?h0LUocP5Z?-Lw^gDd55><~W6%$4t>_Fxf}UNn4u~ z_lgqH3XB-9dYlcbw#JLuDwBZ~VACnK1I+diZ`Rf%#oHv}Q|7dI2Am9OHuPq`6U$Xf zmI7UQahLai7O_EcU%%)Y(b<&bobPU6dy+v0mx53lcN829^dHCVGd000McNliru;|3ZM5e%sV zB9TZW5{X1vsmKE54VAipxgP@d2N%vuRR0Vn_kpa2vJKmjNK1>izz ziHAJ-^7A=535H~*OiF6An`(-we!0izanEx88ooCTC0Kn+j@ zj9A!T$pvtWfQuF|J^^(x`E~&BEb?6g3d0I-G0+UmB!Dmg9B|2B3-nq*ybTnG5nzi2 zyf45`Lm5@TTMLMH!?rqKwP^HLpv`~6S zX$7!Lt-LzD0uBR1DgK}+^vrQ-vX#- zR^8$Rq96fA!dREYL0AAWDH% zhV(Jb_nUzFAOJQ3TQq4sK$|A50%!;TU?WhiN$ban+_|YF2>gMzg6U@0 zhd&pp`M?8%e@!vAHNddOZWt$Yns$|8zU!-sn~)zF?CX5+ufkAYFR(GjwpjH-o&7;S zhVU^%S_kks=I>G9slooF4*-uF(xN!;ZRRzJ6Iz(j*q`;I2M(csMRml*e!n5ltPiK4 z@0z;C;-;5*Z8t24b85j!sQ9qsZkJ8yKQ%mc%lk)7Z+ig@YVt*J9!7S$OxWXUKj|hn z|7LJrZ(uNC2Mvp2GtL{E{3QG{#u8>pK9=x=xic6U;HqdNU%-t zvb9K76CTro(uCZ`$aR(g6o4WDC;$bZ02B#80hn0;y00000NkvXXu0mjf;r!Yo literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/menu.png b/shared/icons/ibmaterial/20x20@4/menu.png new file mode 100644 index 0000000000000000000000000000000000000000..187c171cdef27bd4efc747a84402b4f23027dcdc GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r63?ysp-_HY55&=FTu0Z<#|Nlzz@@U9?gUlzO z9D7NSUoZoMLc;#@?`6aGO96%QJzX3_JdP&|s0bPGD7EtNs6Bmpj)$j3bk#IwM}fpv zpO*@)sa!0go2E58GB~zA6KFlkBD%|2WST%o1Rra2q~gVSidGdJdgTe~DWM4f D-Q-24 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/pin.png b/shared/icons/ibmaterial/20x20@4/pin.png new file mode 100644 index 0000000000000000000000000000000000000000..e193f91c7a8490af846cc1037cb1fc8d8c16691f GIT binary patch literal 981 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r53?z4+XPVEzz&I(uC&U%V9R-6b1Wq`I6ayW^ zSQ6wH%;50sMjD8dH=O_Q&j;A_7X{ z3px0KdiHp_IEF+VetT`d_hAPS_75t~89_o_H?2A}wuop2EftYz;k#QR#9CMo5Pr~= zB~YO9|90Qvy?34#dG7rl+p=fr%cq|n);-zV{k-(zQTrYX#%7lYL$x(Csy#M-=qOOW zqioVC&Z#RDVRN+U_Y&6Wr&maAczU=)`(#WTN8q~nS(R}oSk;R>#22-CURxvOZ4lAip?1hCl&40m5|u(aw_((Ve8sQbF(LI z?D#(IN||W>w%+q|tYl~8UiX`NU*@s($9)3FMGH^b+CKlaX8)1-(c$_*Mh4=+&lr@~ zy0L7UQ|q+HXqk_`Pf7lvuT!?G_lv))+4_CrisN6M&P*>|Qus>3F;0^&#^(N)h(+=C zw&@p_?_$)lHfA^zZq41U;osqqugoX-dtrz3nL3NM{-+P(SiYsGRU{Z3X|h?wo_P785 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/pinFilled.png b/shared/icons/ibmaterial/20x20@4/pinFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..f92d9a9c9a41c36d3898615e788e200d07b36809 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r53?z4+XPVEzz^EVK6XFWwjsoICfayKYQlM(a zk|4ie28U-i(m`H1(%M^P$2R-H_^{9JV&m*{iuP7(7-_A_qz-Y@4WR@TjJ&sM$G zyHhkiW#-~Xk)KZ<{r5KRTBUjA){6A9u>QB7A4jwr|K4@w9+&swSvR`*&)RPOVk6o9 zW{vsg*j~*mym$Iy@}8{wSJ6_uQTL#Ro>D|j)9)`^gP)(D`}=B0*o(7U&X?WUUHVmM z#{tdvyx;O{_O5wREghe~p?Y5JaqAoXJJ(M)tiR^j|N0t7CHuybkB{!pn=aAMe?GFu zG%O)K)hl7o-rXA(?a>$fBDGQJ+G6FfGgTI9X_j}q6W%{paWR;&QQ`Pjg_o@@Ek4hM YExg{%U1zopr0F=_qH2?qr literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/star.png b/shared/icons/ibmaterial/20x20@4/star.png new file mode 100644 index 0000000000000000000000000000000000000000..cd38f03583db83a491e13a46a040030839f2415d GIT binary patch literal 1396 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r53?z4+XPVEzz?2@~6XFWwj)Kt;pmhi&h{ksS z?O-ek@(X5gcy=QV#7XjYcVXyYmGuB}I14-?iy0WWg+Z8+Vb&Z8pdfpRr>`sfV|Gqq zZbhYwEvtZuw$0PUF(l&f+Zm4D(vBj>zfXuQ*!y$>%a;d=EVEpsGqpbkcxZX(9c*&p zxYVuC($IcMuEnfXV_sE&qps_PX7i5=g1B^-wtu^H_;)~_(QfO>XWzV;{c`b_3FRkM zKG*M`yWRTtz1b1hj{KYXSLs>qKNYrR4H6t5nrE;(@U01Aept_@7s%XhW1;l;t>J@e zqX$OJOoc}n@;fW;GFbTTacD3Vy2s6TMp%EsvyER|A8;}jgtII=p_He$;r#QE1Et+> z^w{Qb34XXK5WHngzRQ81ip%tMzP?{`#IXEu;JGPJEUdS^-glDwb<*LI!)tH1pX)vJ z-Fx@+(~YN=9gCY;cv^PL&((2Z*$cZFn69+Cie0_5pgQ2DkIFmE)^ARe)D~?sC{vGD z)xEIEXk*tDfK4xm1T2aWput59a zp&IYH&=qM*XZz>Xc)y!;N2=$SRmhcq%EtE}c~jGwJ_ydvy0q}LSIH}j%+Dut)wi9S zdF{o~i)U0BZ_VQTw)K7ZRA$~^%Q7nyo?V?{dG6%u1uD_1H`AZ(5Gh``#>~K2>QmjqUg*NwR{#I?OiEANN&NDd9O7Hw*?2hg zkaD(SWnNM>b5*@ljGEkQsVKwuzunch-sKC~A9x`2$<~X@WBq?Hew9}>OKY%wa#qio nS$Xw?`wjNp*N&*UCGcOeeJVd)+tLb{NEtj`{an^LB{Ts5HFsM7 literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/starFilled.png b/shared/icons/ibmaterial/20x20@4/starFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..7895700c699e57194175bf0a8af7b15aafe8f465 GIT binary patch literal 1113 zcmeAS@N?(olHy`uVBq!ia0vp^0U*r53?z4+XPVEzz{C~c6XFWwj)Kt;0ER$^Z%-DG zVk`;r3ubV5b|VeMN%D4gVd!9$^#F1>3p^r=85p>QL70(Y)*K0-AbW|YuPggwc1~eF z4q1^G%|JaTJY5_^A`ZX3an_s3QG%_&RczW+*6@fcTe_Q^E@-|GXk~X)@;wt|Rl?uY zC#$r=TefLY_S{9gLf`+N5%z4`X8HGLY?e$oUs(R^_?tK9uB!=s{u4S+?%)HyM#n{Z zS6&NVJ;1A?wa9T+>V^(Bd)rrsZC-P?n0|b7dvUhF4Vh+^w+91n39L6}yv(8RJns(U zfi2=H8T@^hoSIFl7o1#ps2-gb^5OVXvEY`v}7^rZQUSKOj2 z)`_@F7dtP$Tq`vByrz_mTeGgo47X;J*aBhRbqgG4vCWwNflcNE%N>W6>0;XE?~i7S z=d9PhV%pZdX2bQ@8xB@|IHkB|e%ErtRWtYh6FE`-$jxQ#obO@%oOzY6ru=<rvOmww2!5mZwd>zRtMm3}*^h`S6nCuH^As4(44$rjF6*2UngF4d|9Sub literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/20x20@4/year.png b/shared/icons/ibmaterial/20x20@4/year.png new file mode 100644 index 0000000000000000000000000000000000000000..bc9ab79e379383ecdee2aefb8ceaa5f2199e997e GIT binary patch literal 767 zcmVVGd000McNliru;|3NIIs}_gQxO0F0*pyS zK~#9!?VP`F(?Ar*KTc@H%8Xdej>N=L$x|l=#DBq-GO=VY6a7D6uBvwHgv5r#N}DN5 zrA~+%!qBT^A}6tPKjORlex;KlNAmeTetz%X`T0PSQc_|0e{|R2V?dX{ua2ohPY~R4JMv|T&l9!0HcKph1d(^ZID^3Y$c)u_ zE<6LCW->dO0nc0mT$LW(0AJ0Wi%B)`5_l47p=FiNIE~oSPHh(*Mvi<&%>GWPoN{3S z6hPZ(7OSkUUDFuLX^abisj3L|2+Idb0w{n2C~du%a2D~H&W5m);Os-xw#Sz?ttz=I7wZ&R}k zEKvh|1KeU?40LPGwG)85e2?)Rc*}h?l#TX)pSv2wE&={9Eox~!Pyhu`00mHr65uiJ z3d4_MfbAm_nPOM@Uz>Aeo63zXAU?nw=M1n3u`fVdcu6g1(G%j-QJ={z=}!Z~OA_F^ zz*0Mgmn^`xz*0N%d07B#3oJh1IRQA-y5>Iy+Fs+a9;Aj|82&-2oO0of(sv>~f=HY6 zok&ONgKNu2_)A8v?X!=QmfXLBOnuXd-}KmYqOZT4WB_o2$7nBN)BuSDaNs=Uc{R0o5uimls1O)&9002ovPDHLkV1gYkRg(Y! literal 0 HcmV?d00001 diff --git a/shared/icons/ibmaterial/index.theme b/shared/icons/ibmaterial/index.theme new file mode 100644 index 0000000..d24991d --- /dev/null +++ b/shared/icons/ibmaterial/index.theme @@ -0,0 +1,24 @@ +[Icon Theme] +Name=ibmaterial +Comment=some material icons + +Directories=20x20,20x20@2,20x20@3,20x20@4 + +[20x20] +Size=20 +Type=Fixed + +[20x20@2] +Size=20 +Scale=2 +Type=Fixed + +[20x20@3] +Size=20 +Scale=3 +Type=Fixed + +[20x20@4] +Size=20 +Scale=4 +Type=Fixed diff --git a/shared/graphics/icons/logoutBlack.png b/shared/icons/logoutBlack.png similarity index 100% rename from shared/graphics/icons/logoutBlack.png rename to shared/icons/logoutBlack.png diff --git a/shared/graphics/icons/logoutRed.png b/shared/icons/logoutRed.png similarity index 100% rename from shared/graphics/icons/logoutRed.png rename to shared/icons/logoutRed.png diff --git a/shared/graphics/icons/settings.png b/shared/icons/settings.png similarity index 100% rename from shared/graphics/icons/settings.png rename to shared/icons/settings.png diff --git a/shared/graphics/icons/settingsBlack.png b/shared/icons/settingsBlack.png similarity index 100% rename from shared/graphics/icons/settingsBlack.png rename to shared/icons/settingsBlack.png diff --git a/shared/graphics/icons/sheute.png b/shared/icons/sheute.png similarity index 100% rename from shared/graphics/icons/sheute.png rename to shared/icons/sheute.png diff --git a/shared/graphics/icons/smorgen.png b/shared/icons/smorgen.png similarity index 100% rename from shared/graphics/icons/smorgen.png rename to shared/icons/smorgen.png diff --git a/shared/graphics/icons/view.png b/shared/icons/view.png similarity index 100% rename from shared/graphics/icons/view.png rename to shared/icons/view.png diff --git a/shared/shared.qrc b/shared/shared.qrc index 419fd72..a095c59 100644 --- a/shared/shared.qrc +++ b/shared/shared.qrc @@ -1,27 +1,90 @@ - graphics/icons/sheute.png - graphics/icons/smorgen.png - graphics/icons/back.png - graphics/icons/drawer.png - graphics/icons/menu.png - graphics/icons/hide.png - graphics/icons/view.png graphics/images/FannyLogoDark.jpg graphics/images/FannyLogoLight.png graphics/images/TreffpunktFannyLogoDark.png graphics/images/TreffpunktFannyLogoLight.png - graphics/icons/logoutBlack.png - graphics/icons/logoutRed.png - graphics/icons/settingsBlack.png - graphics/icons/backDark.png - graphics/icons/delete.png sampleEventData/sample.pdf sampleEventData/sample.txt sampleEventData/sample.json fonts/fontawesome-webfont.ttf graphics/images/FannyIcon.png - graphics/icons/TreffpunktFannyLogo.png - graphics/icons/settings.png + icons/ibmaterial/20x20/back.png + icons/ibmaterial/20x20/bookmark.png + icons/ibmaterial/20x20/bookmarkFilled.png + icons/ibmaterial/20x20/buy.png + icons/ibmaterial/20x20/calendar.png + icons/ibmaterial/20x20/cup.png + icons/ibmaterial/20x20/drawer.png + icons/ibmaterial/20x20/filter.png + icons/ibmaterial/20x20/flowchart.png + icons/ibmaterial/20x20/menu.png + icons/ibmaterial/20x20/pin.png + icons/ibmaterial/20x20/pinFilled.png + icons/ibmaterial/20x20/star.png + icons/ibmaterial/20x20/starFilled.png + icons/ibmaterial/20x20/year.png + icons/ibmaterial/20x20@2/back.png + icons/ibmaterial/20x20@2/bookmark.png + icons/ibmaterial/20x20@2/bookmarkFilled.png + icons/ibmaterial/20x20@2/buy.png + icons/ibmaterial/20x20@2/calendar.png + icons/ibmaterial/20x20@2/cup.png + icons/ibmaterial/20x20@2/drawer.png + icons/ibmaterial/20x20@2/filter.png + icons/ibmaterial/20x20@2/flowchart.png + icons/ibmaterial/20x20@2/menu.png + icons/ibmaterial/20x20@2/pin.png + icons/ibmaterial/20x20@2/pinFilled.png + icons/ibmaterial/20x20@2/star.png + icons/ibmaterial/20x20@2/starFilled.png + icons/ibmaterial/20x20@2/year.png + icons/ibmaterial/20x20@3/back.png + icons/ibmaterial/20x20@3/bookmark.png + icons/ibmaterial/20x20@3/bookmarkFilled.png + icons/ibmaterial/20x20@3/buy.png + icons/ibmaterial/20x20@3/calendar.png + icons/ibmaterial/20x20@3/cup.png + icons/ibmaterial/20x20@3/drawer.png + icons/ibmaterial/20x20@3/filter.png + icons/ibmaterial/20x20@3/flowchart.png + icons/ibmaterial/20x20@3/menu.png + icons/ibmaterial/20x20@3/pin.png + icons/ibmaterial/20x20@3/pinFilled.png + icons/ibmaterial/20x20@3/star.png + icons/ibmaterial/20x20@3/starFilled.png + icons/ibmaterial/20x20@3/year.png + icons/ibmaterial/20x20@4/back.png + icons/ibmaterial/20x20@4/bookmark.png + icons/ibmaterial/20x20@4/bookmarkFilled.png + icons/ibmaterial/20x20@4/buy.png + icons/ibmaterial/20x20@4/calendar.png + icons/ibmaterial/20x20@4/cup.png + icons/ibmaterial/20x20@4/drawer.png + icons/ibmaterial/20x20@4/filter.png + icons/ibmaterial/20x20@4/flowchart.png + icons/ibmaterial/20x20@4/menu.png + icons/ibmaterial/20x20@4/pin.png + icons/ibmaterial/20x20@4/pinFilled.png + icons/ibmaterial/20x20@4/star.png + icons/ibmaterial/20x20@4/starFilled.png + icons/ibmaterial/20x20@4/year.png + icons/ibmaterial/index.theme + icons/back.png + icons/backDark.png + icons/delete.png + icons/hide.png + icons/logoutBlack.png + icons/logoutRed.png + icons/settings.png + icons/settingsBlack.png + icons/sheute.png + icons/smorgen.png + icons/TreffpunktFannyLogo.png + icons/view.png + icons/ibmaterial/20x20/delete.png + icons/ibmaterial/20x20@2/delete.png + icons/ibmaterial/20x20@3/delete.png + icons/ibmaterial/20x20@4/delete.png diff --git a/sources/appstyle.cpp b/sources/appstyle.cpp index e357404..4607ffe 100644 --- a/sources/appstyle.cpp +++ b/sources/appstyle.cpp @@ -27,8 +27,8 @@ AppStyle::AppStyle(QObject *parent) : QObject(parent) {"lineColor", "grey"}, - {"backIcon", "qrc:/graphics/icons/back.png"}, - {"settingsIcon", "qrc:/graphics/icons/settings.png"}, + {"backIcon", "qrc:/icons/back.png"}, + {"settingsIcon", "qrc:/icons/settings.png"}, {"treffpunktFannyIcon", "qrc:/graphics/images/TreffpunktFannyLogoLight.png"}, {"fannyLogo", "qrc:/graphics/images/FannyLogoLight.png"}, @@ -62,8 +62,8 @@ AppStyle::AppStyle(QObject *parent) : QObject(parent) {"lineColor", "grey"}, - {"backIcon", "qrc:/graphics/icons/backDark.png"}, - {"settingsIcon", "qrc:/graphics/icons/settingsBlack.png"}, + {"backIcon", "qrc:/icons/backDark.png"}, + {"settingsIcon", "qrc:/icons/settingsBlack.png"}, {"treffpunktFannyIcon", "qrc:/graphics/images/TreffpunktFannyLogoDark.png"}, {"fannyLogo", "qrc:/graphics/images/FannyLogoDark.jpg"} diff --git a/sources/main.cpp b/sources/main.cpp index 8cf9136..652c026 100644 --- a/sources/main.cpp +++ b/sources/main.cpp @@ -23,6 +23,9 @@ #include #include +#include +#include + #include #include #include @@ -44,6 +47,7 @@ int main(int argc, char *argv[]) // ServerConn * pServerConn = new ServerConn(); QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); QGuiApplication app(argc, argv); @@ -54,6 +58,9 @@ int main(int argc, char *argv[]) qmlRegisterType("Backend", 1, 0, "AppStyle"); QQuickStyle::setStyle("Material"); + QIcon::setFallbackSearchPaths(QIcon::fallbackSearchPaths() << ":/shared/icons"); + QIcon::setThemeName("ibmaterial"); + QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); QQmlContext *context = engine.rootContext();