/* * Copyright (c) 2020, Andreas Kling * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include namespace ThemeEditor { class MiniWidgetGallery; class PreviewWidget final : public GUI::Frame { C_OBJECT(PreviewWidget); public: virtual ~PreviewWidget() override; const Gfx::Palette& preview_palette() const { return m_preview_palette; } void set_preview_palette(const Gfx::Palette&); void set_theme_from_file(String const& path, int fd); Function on_theme_load_from_file; private: explicit PreviewWidget(const Gfx::Palette&); virtual void paint_event(GUI::PaintEvent&) override; virtual void resize_event(GUI::ResizeEvent&) override; virtual void drop_event(GUI::DropEvent&) override; Gfx::Palette m_preview_palette; RefPtr m_active_window_icon; RefPtr m_inactive_window_icon; RefPtr m_gallery; RefPtr m_close_bitmap; RefPtr m_maximize_bitmap; RefPtr m_minimize_bitmap; }; }