summaryrefslogtreecommitdiff
path: root/Userland/Applications/ThemeEditor/PreviewWidget.cpp
diff options
context:
space:
mode:
authorKarol Kosek <krkk@krkk.ct8.pl>2021-08-25 22:37:15 +0200
committerAndreas Kling <kling@serenityos.org>2021-09-12 11:49:52 +0200
commit23137f0a8dbdb03cf995fc28d55ee45cb3a394da (patch)
tree11e62a10cec547bb567ecf3ed9769b3f8a34167e /Userland/Applications/ThemeEditor/PreviewWidget.cpp
parentf878e4464fba0d4e4ba4c9677316a62479866e21 (diff)
downloadserenity-23137f0a8dbdb03cf995fc28d55ee45cb3a394da.zip
ThemeEditor: Add 'Open file' menu action
Diffstat (limited to 'Userland/Applications/ThemeEditor/PreviewWidget.cpp')
-rw-r--r--Userland/Applications/ThemeEditor/PreviewWidget.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/Userland/Applications/ThemeEditor/PreviewWidget.cpp b/Userland/Applications/ThemeEditor/PreviewWidget.cpp
index 0c2fe956b6..cc4f2696fc 100644
--- a/Userland/Applications/ThemeEditor/PreviewWidget.cpp
+++ b/Userland/Applications/ThemeEditor/PreviewWidget.cpp
@@ -97,6 +97,16 @@ void PreviewWidget::set_preview_palette(const Gfx::Palette& palette)
update();
}
+void PreviewWidget::set_theme_from_file(String const& path, int fd)
+{
+ auto file = Core::ConfigFile::open(path, fd);
+ auto theme = Gfx::load_system_theme(file);
+ VERIFY(theme.is_valid());
+
+ m_preview_palette = Gfx::Palette(Gfx::PaletteImpl::create_with_anonymous_buffer(theme));
+ set_preview_palette(m_preview_palette);
+}
+
void PreviewWidget::paint_event(GUI::PaintEvent& event)
{
GUI::Frame::paint_event(event);