class EE::UI::UITextSelectionController¶
Overview¶
Coordinates document ordering, input, and CSS selection policy across RichText paint owners. More…
#include <uitextselectioncontroller.hpp> class UITextSelectionController { public: // structs struct Point; struct SelectedSlice; struct Selection; struct SelectionSlice; // construction UITextSelectionController(UIWidget* host = nullptr); ~UITextSelectionController(); // methods void setHost(UIWidget* host); void setSelectionRoot(UIWidget* root); UIWidget* getSelectionRoot() const; const Selection& getSelection() const; bool isSelecting() const; bool hasSelection() const; void clear(); void selectAll(); void setSelection(Point anchor, Point focus); String getSelectionString() const; bool copySelection(); bool onKeyDown(const KeyEvent& event); bool onMouseDown(UIRichText* source, const Vector2i& position, Uint32 flags); bool onMouseUp(const Vector2i& position, Uint32 flags); bool onMouseDoubleClick(UIRichText* source, const Vector2i& position, Uint32 flags); bool onMouseUpMessage(const NodeMessage* message); bool showContextMenu(const Vector2i& position, Uint32 flags); bool consumeSuppressedClick(); void updateSelectionDrag(); void onDocumentWillChange(); void onDocumentChanged(); void onOwnerWillBeDestroyed(UIRichText* owner); void refresh(); };
Detailed Documentation¶
Coordinates document ordering, input, and CSS selection policy across RichText paint owners. Each owner still handles local character geometry and selection painting.
Methods¶
bool consumeSuppressedClick()
Consumes the pending click from a text drag so a link does not navigate on release.
void onOwnerWillBeDestroyed(UIRichText* owner)
Called before an owner’s RichText member is destroyed.