Serenity Operating System
at master 47 lines 1.4 kB view raw
1/* 2 * Copyright (c) 2022, Sam Atkins <atkinssj@serenityos.org> 3 * Copyright (c) 2022, the SerenityOS developers. 4 * 5 * SPDX-License-Identifier: BSD-2-Clause 6 */ 7 8#pragma once 9 10#include <LibGUI/Button.h> 11#include <LibGUI/GlyphMapWidget.h> 12#include <LibGUI/Statusbar.h> 13 14class CharacterMapWidget final : public GUI::Widget { 15 C_OBJECT(CharacterMapWidget); 16 17public: 18 virtual ~CharacterMapWidget() override = default; 19 20 void initialize_menubar(GUI::Window& window); 21 22private: 23 CharacterMapWidget(); 24 25 virtual void did_change_font() override; 26 void update_statusbar(); 27 28 RefPtr<GUI::Toolbar> m_toolbar; 29 RefPtr<GUI::Label> m_font_name_label; 30 RefPtr<GUI::GlyphMapWidget> m_glyph_map; 31 RefPtr<GUI::TextBox> m_output_box; 32 RefPtr<GUI::Button> m_copy_output_button; 33 RefPtr<GUI::Statusbar> m_statusbar; 34 RefPtr<GUI::Window> m_find_window; 35 RefPtr<GUI::ListView> m_unicode_block_listview; 36 RefPtr<GUI::Model> m_unicode_block_model; 37 38 RefPtr<GUI::Action> m_choose_font_action; 39 RefPtr<GUI::Action> m_copy_selection_action; 40 RefPtr<GUI::Action> m_previous_glyph_action; 41 RefPtr<GUI::Action> m_next_glyph_action; 42 RefPtr<GUI::Action> m_go_to_glyph_action; 43 RefPtr<GUI::Action> m_find_glyphs_action; 44 45 Vector<DeprecatedString> m_unicode_block_list; 46 Unicode::CodePointRange m_range { 0x0000, 0x10FFFF }; 47};