mirror of
https://github.com/SerenityOS/serenity
synced 2024-10-15 12:23:15 +00:00
PDFViewer: Add Debug menu entries for disabling clipping
This commit is contained in:
parent
9703510682
commit
d9267a388d
|
@ -48,6 +48,9 @@ PDFViewer::PDFViewer()
|
||||||
m_page_view_mode = static_cast<PageViewMode>(Config::read_i32("PDFViewer"sv, "Display"sv, "PageMode"sv, 0));
|
m_page_view_mode = static_cast<PageViewMode>(Config::read_i32("PDFViewer"sv, "Display"sv, "PageMode"sv, 0));
|
||||||
m_rendering_preferences.show_clipping_paths = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ShowClippingPaths"sv, false);
|
m_rendering_preferences.show_clipping_paths = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ShowClippingPaths"sv, false);
|
||||||
m_rendering_preferences.show_images = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ShowImages"sv, true);
|
m_rendering_preferences.show_images = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ShowImages"sv, true);
|
||||||
|
m_rendering_preferences.clip_images = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ClipImages"sv, true);
|
||||||
|
m_rendering_preferences.clip_paths = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ClipPaths"sv, true);
|
||||||
|
m_rendering_preferences.clip_text = Config::read_bool("PDFViewer"sv, "Rendering"sv, "ClipText"sv, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
PDF::PDFErrorOr<void> PDFViewer::set_document(RefPtr<PDF::Document> document)
|
PDF::PDFErrorOr<void> PDFViewer::set_document(RefPtr<PDF::Document> document)
|
||||||
|
@ -181,6 +184,27 @@ void PDFViewer::set_show_images(bool show_images)
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PDFViewer::set_clip_images(bool clip_images)
|
||||||
|
{
|
||||||
|
m_rendering_preferences.clip_images = clip_images;
|
||||||
|
Config::write_bool("PDFViewer"sv, "Rendering"sv, "ClipImages"sv, clip_images);
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PDFViewer::set_clip_paths(bool clip_paths)
|
||||||
|
{
|
||||||
|
m_rendering_preferences.clip_paths = clip_paths;
|
||||||
|
Config::write_bool("PDFViewer"sv, "Rendering"sv, "ClipPaths"sv, clip_paths);
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PDFViewer::set_clip_text(bool clip_text)
|
||||||
|
{
|
||||||
|
m_rendering_preferences.clip_text = clip_text;
|
||||||
|
Config::write_bool("PDFViewer"sv, "Rendering"sv, "ClipText"sv, clip_text);
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
void PDFViewer::resize_event(GUI::ResizeEvent&)
|
void PDFViewer::resize_event(GUI::ResizeEvent&)
|
||||||
{
|
{
|
||||||
for (auto& map : m_rendered_page_list)
|
for (auto& map : m_rendered_page_list)
|
||||||
|
|
|
@ -66,6 +66,12 @@ public:
|
||||||
void set_show_clipping_paths(bool);
|
void set_show_clipping_paths(bool);
|
||||||
bool show_images() const { return m_rendering_preferences.show_images; }
|
bool show_images() const { return m_rendering_preferences.show_images; }
|
||||||
void set_show_images(bool);
|
void set_show_images(bool);
|
||||||
|
bool clip_images() const { return m_rendering_preferences.clip_images; }
|
||||||
|
void set_clip_images(bool);
|
||||||
|
bool clip_paths() const { return m_rendering_preferences.clip_paths; }
|
||||||
|
void set_clip_paths(bool);
|
||||||
|
bool clip_text() const { return m_rendering_preferences.clip_text; }
|
||||||
|
void set_clip_text(bool);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PDFViewer();
|
PDFViewer();
|
||||||
|
|
|
@ -257,6 +257,21 @@ ErrorOr<void> PDFViewerWidget::initialize_menubar(GUI::Window& window)
|
||||||
});
|
});
|
||||||
toggle_show_images->set_checked(m_viewer->show_images());
|
toggle_show_images->set_checked(m_viewer->show_images());
|
||||||
debug_menu->add_action(*toggle_show_images);
|
debug_menu->add_action(*toggle_show_images);
|
||||||
|
auto toggle_clip_images = GUI::Action::create_checkable("Clip I&mages", [&](auto& action) {
|
||||||
|
m_viewer->set_clip_images(action.is_checked());
|
||||||
|
});
|
||||||
|
toggle_clip_images->set_checked(m_viewer->clip_images());
|
||||||
|
debug_menu->add_action(toggle_clip_images);
|
||||||
|
auto toggle_clip_paths = GUI::Action::create_checkable("Clip &Paths", [&](auto& action) {
|
||||||
|
m_viewer->set_clip_paths(action.is_checked());
|
||||||
|
});
|
||||||
|
toggle_clip_paths->set_checked(m_viewer->clip_paths());
|
||||||
|
debug_menu->add_action(toggle_clip_paths);
|
||||||
|
auto toggle_clip_text = GUI::Action::create_checkable("Clip &Text", [&](auto& action) {
|
||||||
|
m_viewer->set_clip_text(action.is_checked());
|
||||||
|
});
|
||||||
|
toggle_clip_text->set_checked(m_viewer->clip_text());
|
||||||
|
debug_menu->add_action(toggle_clip_text);
|
||||||
|
|
||||||
auto help_menu = window.add_menu("&Help"_string);
|
auto help_menu = window.add_menu("&Help"_string);
|
||||||
help_menu->add_action(GUI::CommonActions::make_command_palette_action(&window));
|
help_menu->add_action(GUI::CommonActions::make_command_palette_action(&window));
|
||||||
|
|
Loading…
Reference in a new issue