Yoda/src/app/browser/main/tab/page/navbar.hpp

60 lines
1.3 KiB
C++
Raw Normal View History

2024-08-15 18:52:11 +03:00
#ifndef APP_BROWSER_MAIN_TAB_PAGE_NAVBAR_HPP
#define APP_BROWSER_MAIN_TAB_PAGE_NAVBAR_HPP
2024-08-13 08:28:33 +03:00
2024-08-14 09:16:45 +03:00
#include <giomm/simpleactiongroup.h>
#include <glibmm/refptr.h>
#include <glibmm/ustring.h>
2024-08-13 08:28:33 +03:00
#include <gtkmm/box.h>
2024-08-15 18:52:11 +03:00
namespace app::browser::main::tab::page
2024-08-13 08:28:33 +03:00
{
2024-08-13 08:40:17 +03:00
namespace navbar
{
class Base;
2024-08-13 09:54:11 +03:00
class Bookmark;
2024-08-13 09:47:59 +03:00
class History;
2024-08-13 09:05:59 +03:00
class Update;
2024-08-13 09:59:58 +03:00
class Request;
2024-08-13 08:40:17 +03:00
}
2024-08-13 08:28:33 +03:00
class Navbar : public Gtk::Box
{
2024-08-17 00:50:24 +03:00
// Actions
Glib::RefPtr<Gio::SimpleActionGroup> action_group;
// Components
navbar::Base * base;
navbar::Bookmark * bookmark;
navbar::History * history;
navbar::Request * request;
navbar::Update * update;
// Defaults
const int SPACING = 8;
const int MARGIN = 8;
2024-08-14 09:16:45 +03:00
2024-08-13 08:28:33 +03:00
public:
Navbar();
~Navbar();
2024-08-14 09:16:45 +03:00
// Actions
void refresh();
// Setters
void set_request(
2024-08-17 12:45:43 +03:00
const Glib::ustring value
);
2024-08-14 09:16:45 +03:00
// Getters
2024-08-16 09:02:50 +03:00
Glib::ustring get_request();
2024-08-17 12:45:43 +03:00
Glib::ustring get_request_scheme();
Glib::ustring get_request_host();
Glib::ustring get_request_port();
Glib::ustring get_request_path();
Glib::ustring get_request_query();
2024-08-13 08:28:33 +03:00
};
}
2024-08-15 18:52:11 +03:00
#endif // APP_BROWSER_MAIN_TAB_PAGE_NAVBAR_HPP