mirror of
				https://github.com/LadybirdBrowser/ladybird.git
				synced 2025-11-04 07:10:57 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			30 lines
		
	
	
	
		
			680 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			680 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include <LibHTML/Layout/LayoutNode.h>
 | 
						|
#include <LibHTML/DOM/Text.h>
 | 
						|
 | 
						|
class LayoutText : public LayoutNode {
 | 
						|
public:
 | 
						|
    explicit LayoutText(const Text&);
 | 
						|
    virtual ~LayoutText() override;
 | 
						|
 | 
						|
    const Text& node() const { return static_cast<const Text&>(*LayoutNode::node()); }
 | 
						|
 | 
						|
    const String& text() const;
 | 
						|
 | 
						|
    virtual const char* class_name() const override { return "LayoutText"; }
 | 
						|
    virtual bool is_text() const final { return true; }
 | 
						|
    virtual void layout() override;
 | 
						|
 | 
						|
    struct Run {
 | 
						|
        Point pos;
 | 
						|
        String text;
 | 
						|
    };
 | 
						|
 | 
						|
    const Vector<Run>& runs() const { return m_runs; }
 | 
						|
 | 
						|
private:
 | 
						|
    void compute_runs();
 | 
						|
 | 
						|
    Vector<Run> m_runs;
 | 
						|
};
 |