From e63912fac54396c959ac0c9ed583dd43c6e5e3c1 Mon Sep 17 00:00:00 2001 From: Lncvrt Date: Tue, 13 Jan 2026 18:00:10 -0700 Subject: [PATCH] Use custom icons for navbar --- .gitignore | 1 + CMakeLists.txt | 7 +++---- icons/angle-left-solid-full.svg | 1 + icons/angle-right-solid-full.svg | 1 + icons/arrows-rotate-solid-full.svg | 1 + resources.qrc | 7 +++++++ src/ui/navbar.cpp | 13 ++++++++----- 7 files changed, 22 insertions(+), 9 deletions(-) create mode 100644 icons/angle-left-solid-full.svg create mode 100644 icons/angle-right-solid-full.svg create mode 100644 icons/arrows-rotate-solid-full.svg create mode 100644 resources.qrc diff --git a/.gitignore b/.gitignore index 1b4c3b3..8e95d09 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ CMakeUserPresets.json build/ .vs/ CMakeSettings.json +.DS_STORE # CLion # JetBrains specific template is maintained in a separate JetBrains.gitignore that can diff --git a/CMakeLists.txt b/CMakeLists.txt index 49cad34..22a3284 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,12 +9,15 @@ find_package(Qt6 REQUIRED COMPONENTS Widgets) find_package(CURL REQUIRED) qt_standard_project_setup() +qt_add_resources(RESOURCES resources.qrc) set(SOURCES src/main.cpp src/ui/navbar.cpp src/ui/content.cpp + + ${RESOURCES} ) if(WIN32) @@ -27,7 +30,3 @@ target_link_libraries(CrabCrawler PRIVATE Qt6::Widgets ${CURL_LIBRARIES} ) - -target_link_libraries(CrabCrawler - PRIVATE Qt6::Widgets -) diff --git a/icons/angle-left-solid-full.svg b/icons/angle-left-solid-full.svg new file mode 100644 index 0000000..bd56629 --- /dev/null +++ b/icons/angle-left-solid-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/angle-right-solid-full.svg b/icons/angle-right-solid-full.svg new file mode 100644 index 0000000..d1b118a --- /dev/null +++ b/icons/angle-right-solid-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/arrows-rotate-solid-full.svg b/icons/arrows-rotate-solid-full.svg new file mode 100644 index 0000000..8a3b925 --- /dev/null +++ b/icons/arrows-rotate-solid-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/resources.qrc b/resources.qrc new file mode 100644 index 0000000..7d58808 --- /dev/null +++ b/resources.qrc @@ -0,0 +1,7 @@ + + + icons/angle-left-solid-full.svg + icons/angle-right-solid-full.svg + icons/arrows-rotate-solid-full.svg + + diff --git a/src/ui/navbar.cpp b/src/ui/navbar.cpp index 25ab560..82d7015 100644 --- a/src/ui/navbar.cpp +++ b/src/ui/navbar.cpp @@ -9,19 +9,22 @@ NavBar::NavBar(QWidget *parent) : QWidget(parent) { auto *layout = new QHBoxLayout(this); - layout->setContentsMargins(6, 6, 6, 6); - layout->setSpacing(6); + layout->setContentsMargins(2, 6, 6, 6); + layout->setSpacing(2); m_back = new QToolButton(this); - m_back->setIcon(style()->standardIcon(QStyle::SP_ArrowBack)); + m_back->setIcon(QIcon(":/icons/angle-left-solid-full.svg")); + m_back->setIconSize(QSize(24, 24)); m_back->setAutoRaise(true); m_forward = new QToolButton(this); - m_forward->setIcon(style()->standardIcon(QStyle::SP_ArrowForward)); + m_forward->setIcon(QIcon(":/icons/angle-right-solid-full.svg")); + m_forward->setIconSize(QSize(24, 24)); m_forward->setAutoRaise(true); m_refresh = new QToolButton(this); - m_refresh->setIcon(style()->standardIcon(QStyle::SP_BrowserReload)); + m_refresh->setIcon(QIcon(":/icons/arrows-rotate-solid-full.svg")); + m_refresh->setIconSize(QSize(24, 24)); m_refresh->setAutoRaise(true); m_address = new QLineEdit(this);