/* * Copyright (c) 2020, Andreas Kling * Copyright (c) 2022, the SerenityOS developers. * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include #include #include #include #include #include #include #include namespace GUI { FontPicker::FontPicker(Window* parent_window, Gfx::Font const* current_font, bool fixed_width_only) : Dialog(parent_window) , m_fixed_width_only(fixed_width_only) { set_title("Font picker"); resize(430, 280); set_icon(Gfx::Bitmap::try_load_from_file("/res/icons/16x16/app-font-editor.png"sv).release_value_but_fixme_should_propagate_errors()); auto& widget = set_main_widget(); if (!widget.load_from_gml(font_picker_dialog_gml)) VERIFY_NOT_REACHED(); m_family_list_view = *widget.find_descendant_of_type_named("family_list_view"); m_family_list_view->set_model(ItemListModel::create(m_families)); m_family_list_view->horizontal_scrollbar().set_visible(false); m_variant_list_view = *widget.find_descendant_of_type_named("variant_list_view"); m_variant_list_view->set_model(ItemListModel::create(m_variants)); m_variant_list_view->horizontal_scrollbar().set_visible(false); m_size_spin_box = *widget.find_descendant_of_type_named("size_spin_box"); m_size_spin_box->set_range(1, 255); m_size_list_view = *widget.find_descendant_of_type_named("size_list_view"); m_size_list_view->set_model(ItemListModel::create(m_sizes)); m_size_list_view->horizontal_scrollbar().set_visible(false); m_sample_text_label = *widget.find_descendant_of_type_named