CertificateSettings: Use new GML compiler

This commit is contained in:
kleines Filmröllchen 2023-05-26 21:38:59 +02:00 committed by Sam Atkins
parent 63687c46ff
commit 8ee014a437
5 changed files with 9 additions and 13 deletions

View file

@ -4,16 +4,13 @@ serenity_component(
TARGETS CertificateSettings
)
stringify_gml(CertificateStoreWidget.gml CertificateStoreWidgetGML.h certificate_store_widget_gml)
compile_gml(CertificateStoreWidget.gml CertificateStoreWidgetGML.cpp)
set(SOURCES
CertificateStoreWidget.cpp
CertificateStoreWidgetGML.cpp
main.cpp
)
set(GENERATED_SOURCES
CertificateStoreWidgetGML.h
)
serenity_app(CertificateSettings ICON certificate)
target_link_libraries(CertificateSettings PRIVATE LibCore LibCrypto LibFileSystem LibFileSystemAccessClient LibGfx LibGUI LibMain LibTLS)

View file

@ -6,7 +6,6 @@
#include "CertificateStoreWidget.h"
#include <AK/String.h>
#include <Applications/CertificateSettings/CertificateStoreWidgetGML.h>
#include <LibCrypto/ASN1/PEM.h>
#include <LibFileSystem/FileSystem.h>
#include <LibFileSystemAccessClient/Client.h>
@ -152,17 +151,15 @@ ErrorOr<void> CertificateStoreWidget::export_pem()
return {};
}
ErrorOr<NonnullRefPtr<CertificateStoreWidget>> CertificateStoreWidget::try_create()
ErrorOr<NonnullRefPtr<CertificateStoreWidget>> CertificateStoreWidget::create()
{
auto widget = TRY(adopt_nonnull_ref_or_enomem(new (nothrow) CertificateStoreWidget()));
auto widget = TRY(CertificateStoreWidget::try_create());
TRY(widget->initialize());
return widget;
}
ErrorOr<void> CertificateStoreWidget::initialize()
{
TRY(load_from_gml(certificate_store_widget_gml));
m_root_ca_tableview = find_descendant_of_type_named<GUI::TableView>("root_ca_tableview");
m_root_ca_tableview->set_highlight_selected_rows(true);
m_root_ca_tableview->set_alternating_row_colors(false);

View file

@ -1,4 +1,4 @@
@GUI::Widget {
@CertificateSettings::CertificateStoreWidget {
fill_with_background_color: true
layout: @GUI::VerticalBoxLayout {
margins: [8]

View file

@ -58,11 +58,13 @@ class CertificateStoreWidget : public GUI::SettingsWindow::Tab {
C_OBJECT_ABSTRACT(CertStoreWidget)
public:
virtual ~CertificateStoreWidget() override = default;
static ErrorOr<NonnullRefPtr<CertificateStoreWidget>> try_create();
static ErrorOr<NonnullRefPtr<CertificateStoreWidget>> create();
virtual void apply_settings() override {};
private:
static ErrorOr<NonnullRefPtr<CertificateStoreWidget>> try_create();
CertificateStoreWidget() = default;
ErrorOr<void> initialize();
ErrorOr<void> import_pem();
ErrorOr<void> export_pem();

View file

@ -28,7 +28,7 @@ ErrorOr<int> serenity_main(Main::Arguments args)
auto app_icon = GUI::Icon::default_icon("certificate"sv);
auto window = TRY(GUI::SettingsWindow::create("Certificate Settings", GUI::SettingsWindow::ShowDefaultsButton::No));
auto cert_store_widget = TRY(window->add_tab<CertificateSettings::CertificateStoreWidget>("Certificate Store"_string, "certificate"sv));
TRY(window->add_tab(TRY(CertificateSettings::CertificateStoreWidget::create()), "Certificate Store"_string, "certificate"sv));
window->set_icon(app_icon.bitmap_for_size(16));
window->show();