1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-15 13:47:34 +00:00
serenity/Userland/Applications/Browser/InspectorWidget.h
Sam Atkins 37f060b873 Browser: Add "Inspect Element" to context menu :^)
This opens the DOM Inspector window, with the target element already
selected. (If the window is already open, it just selects the element.)

Note that this only applies to single-process mode for now. In OOP mode,
the "inspect element" action is disabled.
2021-08-23 15:59:29 +02:00

41 lines
976 B
C++

/*
* Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <LibGUI/Widget.h>
#include <LibWeb/Forward.h>
namespace Browser {
class InspectorWidget final : public GUI::Widget {
C_OBJECT(InspectorWidget)
public:
virtual ~InspectorWidget();
void set_document(Web::DOM::Document*);
void set_dom_json(String);
void set_inspected_node(Web::DOM::Node*);
private:
InspectorWidget();
void set_inspected_node(GUI::ModelIndex);
RefPtr<GUI::TreeView> m_dom_tree_view;
RefPtr<GUI::TreeView> m_layout_tree_view;
RefPtr<GUI::TableView> m_style_table_view;
RefPtr<GUI::TableView> m_computed_style_table_view;
RefPtr<Web::DOM::Node> m_inspected_node;
// One of these will be available, depending on if we're
// in-process (m_document) or out-of-process (m_dom_json)
RefPtr<Web::DOM::Document> m_document;
Optional<String> m_dom_json;
};
}