From 17224ebaaac8b8bbdb122b14485225b057182a44 Mon Sep 17 00:00:00 2001 From: yggverse Date: Tue, 13 Aug 2024 09:47:59 +0300 Subject: [PATCH] draft history buttons group --- Makefile | 3 ++ po/POTFILES.in | 3 ++ src/app/browser/main/tab/data/navbar.cpp | 7 +++++ src/app/browser/main/tab/data/navbar.hpp | 2 ++ .../browser/main/tab/data/navbar/history.cpp | 22 ++++++++++++++ .../browser/main/tab/data/navbar/history.hpp | 30 +++++++++++++++++++ .../main/tab/data/navbar/history/back.cpp | 20 +++++++++++++ .../main/tab/data/navbar/history/back.hpp | 19 ++++++++++++ .../main/tab/data/navbar/history/forward.cpp | 20 +++++++++++++ .../main/tab/data/navbar/history/forward.hpp | 19 ++++++++++++ 10 files changed, 145 insertions(+) create mode 100644 src/app/browser/main/tab/data/navbar/history.cpp create mode 100644 src/app/browser/main/tab/data/navbar/history.hpp create mode 100644 src/app/browser/main/tab/data/navbar/history/back.cpp create mode 100644 src/app/browser/main/tab/data/navbar/history/back.hpp create mode 100644 src/app/browser/main/tab/data/navbar/history/forward.cpp create mode 100644 src/app/browser/main/tab/data/navbar/history/forward.hpp diff --git a/Makefile b/Makefile index ae64695a..d60ec6bc 100644 --- a/Makefile +++ b/Makefile @@ -15,6 +15,9 @@ SRCS = src/main.cpp\ src/app/browser/main/tab/data.cpp\ src/app/browser/main/tab/data/navbar.cpp\ src/app/browser/main/tab/data/navbar/base.cpp\ + src/app/browser/main/tab/data/navbar/history.cpp\ + src/app/browser/main/tab/data/navbar/history/back.cpp\ + src/app/browser/main/tab/data/navbar/history/forward.cpp\ src/app/browser/main/tab/data/navbar/update.cpp\ src/app/browser/main/tab/label.cpp\ src/lib/database.cpp\ diff --git a/po/POTFILES.in b/po/POTFILES.in index 6d6b96bc..a8fe3481 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -7,6 +7,9 @@ src/app/browser/main/tab.cpp src/app/browser/main/tab/data.cpp src/app/browser/main/tab/data/navbar.cpp src/app/browser/main/tab/data/navbar/base.cpp +src/app/browser/main/tab/data/navbar/history.cpp +src/app/browser/main/tab/data/navbar/history/back.cpp +src/app/browser/main/tab/data/navbar/history/forward.cpp src/app/browser/main/tab/data/navbar/update.cpp src/app/browser/main/tab/label.cpp src/lib/database.cpp diff --git a/src/app/browser/main/tab/data/navbar.cpp b/src/app/browser/main/tab/data/navbar.cpp index 946cbdea..2b098c7f 100644 --- a/src/app/browser/main/tab/data/navbar.cpp +++ b/src/app/browser/main/tab/data/navbar.cpp @@ -1,5 +1,6 @@ #include "navbar.hpp" #include "navbar/base.hpp" +#include "navbar/history.hpp" #include "navbar/update.hpp" using namespace app::browser::main::tab::data; @@ -38,6 +39,12 @@ Navbar::Navbar() * base ); + history = new navbar::History(); + + append( + * history + ); + update = new navbar::Update(); append( diff --git a/src/app/browser/main/tab/data/navbar.hpp b/src/app/browser/main/tab/data/navbar.hpp index bc074eb3..2c9dac79 100644 --- a/src/app/browser/main/tab/data/navbar.hpp +++ b/src/app/browser/main/tab/data/navbar.hpp @@ -8,6 +8,7 @@ namespace app::browser::main::tab::data namespace navbar { class Base; + class History; class Update; } @@ -21,6 +22,7 @@ namespace app::browser::main::tab::data // Components navbar::Base * base; + navbar::History * history; navbar::Update * update; public: diff --git a/src/app/browser/main/tab/data/navbar/history.cpp b/src/app/browser/main/tab/data/navbar/history.cpp new file mode 100644 index 00000000..567dbf08 --- /dev/null +++ b/src/app/browser/main/tab/data/navbar/history.cpp @@ -0,0 +1,22 @@ +#include "history.hpp" +#include "history/back.hpp" +#include "history/forward.hpp" + +using namespace app::browser::main::tab::data::navbar; + +History::History() +{ + back = new history::Back(); + + append( + * back + ); + + forward = new history::Forward(); + + append( + * forward + ); +} + +History::~History() = default; diff --git a/src/app/browser/main/tab/data/navbar/history.hpp b/src/app/browser/main/tab/data/navbar/history.hpp new file mode 100644 index 00000000..13592d85 --- /dev/null +++ b/src/app/browser/main/tab/data/navbar/history.hpp @@ -0,0 +1,30 @@ +#ifndef APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_HPP +#define APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_HPP + +#include +#include + +namespace app::browser::main::tab::data::navbar +{ + namespace history + { + class Back; + class Forward; + } + + class History : public Gtk::Box + { + private: + + history::Back * back; + history::Forward * forward; + + public: + + History(); + + ~History(); + }; +} + +#endif // APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_HPP \ No newline at end of file diff --git a/src/app/browser/main/tab/data/navbar/history/back.cpp b/src/app/browser/main/tab/data/navbar/history/back.cpp new file mode 100644 index 00000000..fe413105 --- /dev/null +++ b/src/app/browser/main/tab/data/navbar/history/back.cpp @@ -0,0 +1,20 @@ +#include "back.hpp" + +using namespace app::browser::main::tab::data::navbar::history; + +Back::Back() +{ + set_action_name( + "tab.back" + ); + + set_icon_name( + "go-previous-symbolic" + ); + + set_tooltip_text( + _("Back") + ); +} + +Back::~Back() = default; diff --git a/src/app/browser/main/tab/data/navbar/history/back.hpp b/src/app/browser/main/tab/data/navbar/history/back.hpp new file mode 100644 index 00000000..c93b8ce3 --- /dev/null +++ b/src/app/browser/main/tab/data/navbar/history/back.hpp @@ -0,0 +1,19 @@ +#ifndef APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_BACK_HPP +#define APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_BACK_HPP + +#include +#include + +namespace app::browser::main::tab::data::navbar::history +{ + class Back : public Gtk::Button + { + public: + + Back(); + + ~Back(); + }; +} + +#endif // APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_BACK_HPP \ No newline at end of file diff --git a/src/app/browser/main/tab/data/navbar/history/forward.cpp b/src/app/browser/main/tab/data/navbar/history/forward.cpp new file mode 100644 index 00000000..05b48f81 --- /dev/null +++ b/src/app/browser/main/tab/data/navbar/history/forward.cpp @@ -0,0 +1,20 @@ +#include "forward.hpp" + +using namespace app::browser::main::tab::data::navbar::history; + +Forward::Forward() +{ + set_action_name( + "tab.forward" + ); + + set_icon_name( + "go-next-symbolic" + ); + + set_tooltip_text( + _("Forward") + ); +} + +Forward::~Forward() = default; diff --git a/src/app/browser/main/tab/data/navbar/history/forward.hpp b/src/app/browser/main/tab/data/navbar/history/forward.hpp new file mode 100644 index 00000000..4478c6f1 --- /dev/null +++ b/src/app/browser/main/tab/data/navbar/history/forward.hpp @@ -0,0 +1,19 @@ +#ifndef APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_FORWARD_HPP +#define APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_FORWARD_HPP + +#include +#include + +namespace app::browser::main::tab::data::navbar::history +{ + class Forward : public Gtk::Button + { + public: + + Forward(); + + ~Forward(); + }; +} + +#endif // APP_BROWSER_MAIN_TAB_DATA_NAVBAR_HISTORY_FORWARD_HPP \ No newline at end of file