80 act.TargetArea_.value_or (QRectF {}).getRect (&x, &y, &w, &h);
81 return std::tie (act.PageNumber_, x, y, w, h);
84 return toTuple (*
this) < toTuple (other);
110 using LinkAction = std::variant<NoAction, NavigationAction, ExternalNavigationAction, UrlAction, CustomAction>;
121 virtual ~ILink () =
default;
139 virtual QRectF
GetArea ()
const = 0;
std::shared_ptr< ILink > ILink_ptr
NavigationAction DocumentNavigation_
A link action that represents navigating to a different document.
Some standard command like printing.
virtual QRectF GetArea() const =0
Returns the area on the page of this link.
virtual LinkType GetLinkType() const =0
Returns the link type.
std::optional< QRectF > TargetArea_
LinkType
Describes various link types known to Monocle.
Base interface for links.
A link action that represents navigating inside the document.
std::optional< double > Zoom_
virtual LinkAction GetLinkAction() const =0
Returns the link action.
bool operator<(const NavigationAction &other) const
std::variant< NoAction, NavigationAction, ExternalNavigationAction, UrlAction, CustomAction > LinkAction
virtual QString GetToolTip() const
Returns the tooltip for the link.
bool operator==(const NavigationAction &) const =default
virtual ~ILink()=default
Virtual destructor.
std::function< void()> CustomAction