|
|
| WindowManager () |
| | Creates a disconnected host for window frames.
|
|
virtual | ~WindowManager () |
| | Destroys the window host.
|
| void | relayout () |
| | Requests a relayout of hosted windows.
|
| Pt::Signal< Window & > & | surfaceChanged () |
| | Returns the signal sent after a window backing pixmap is synchronized.
|
|
Pt::uint64_t | id () const |
| | Returns the application-unique ID of this live widget.
|
|
const std::string & | name () const |
| | Returns the optional name.
|
|
void | setName (const std::string &n) |
| | Sets the optional name immediately.
|
| void | setNextResponder (Responder *r) |
| | Sets the next responder for unhandled input.
|
|
bool | isConnected () const |
| | Returns true when the widget is connected to a screen.
|
|
Screen * | screen () |
| | Returns the connected screen, or 0 when disconnected.
|
|
const Screen * | screen () const |
| | Returns the connected screen, or 0 when disconnected.
|
|
Widget * | parent () |
| | Returns the non-owning parent, or 0 when unparented.
|
|
const Widget * | parent () const |
| | Returns the non-owning parent, or 0 when unparented.
|
|
bool | isDescendantOf (const Widget &top) const |
| | Returns true when this widget is a strict descendant of top.
|
|
bool | isAncestorOf (const Widget &child) const |
| | Returns true when this widget is a strict ancestor of child.
|
| Widget * | hitTest (const Gfx::PointF &pos) |
| | Returns the descendant hit at local position pos.
|
|
Gfx::PointF | toParent (const Gfx::PointF &pos) const |
| | Converts local position pos to parent coordinates.
|
|
Gfx::PointF | fromParent (const Gfx::PointF &pos) const |
| | Converts parent position pos to local coordinates.
|
| Gfx::PointF | toGlobal (const Gfx::PointF &pos) const |
| | Converts local position pos to global coordinates.
|
| Gfx::PointF | fromGlobal (const Gfx::PointF &pos) const |
| | Converts global position pos to local coordinates.
|
| void | addPeer (Widget &peer) |
| | Adds a bidirectional, non-owning peer association with peer.
|
| void | removePeer (Widget &peer) |
| | Removes the bidirectional peer association with peer.
|
| void | invalidate () |
| | Queues a coalesced invalidation.
|
| virtual void | repaint (const Gfx::RectF &rect) |
| | Requests repainting local dirty rectangle rect.
|
|
virtual void | repaint () |
| | Requests repainting the complete local bounds.
|
|
double | scaleFactor () const |
| | Returns the current logical-to-device scale factor.
|
|
const Gfx::Scaling & | scaling () const |
| | Returns the current logical-to-device scaling.
|
|
bool | isVisible () const |
| | Returns whether the last show event made the widget visible.
|
| virtual void | show (bool b=true) |
| | Requests that the widget be shown or hidden.
|
|
bool | isEnabled () const |
| | Returns whether the last enable event made the widget enabled.
|
| virtual void | enable (bool isEnable=true) |
| | Requests that the widget be enabled or disabled.
|
| void | activate (bool active=true) |
| | Requests that the widget become active or inactive.
|
|
const Gfx::PointF & | position () const |
| | Returns the position in parent logical coordinates.
|
| virtual void | move (const Gfx::PointF &pos) |
| | Requests a new parent-local position pos.
|
|
const Gfx::SizeF & | size () const |
| | Returns the size in local logical coordinates.
|
|
const Gfx::RectF & | bounds () const |
| | Returns local bounds, whose origin is always local zero.
|
| const Gfx::SizeF & | minimumSize () const |
| | Returns the locally stored minimum size.
|
| void | setMinimumSize (const Gfx::SizeF &s) |
| | Sets the local minimum size and notifies the size-limit hook.
|
|
void | setMinimumSize (double w, double h) |
| | Sets the local minimum width and height.
|
|
void | setMinimumWidth (double w) |
| | Sets the local minimum width.
|
|
void | setMinimumHeight (double h) |
| | Sets the local minimum height.
|
| const Gfx::SizeF & | maximumSize () const |
| | Returns the locally stored maximum size.
|
| void | setMaximumSize (const Gfx::SizeF &s) |
| | Sets the local maximum size and notifies the size-limit hook.
|
|
void | setMaximumSize (double w, double h) |
| | Sets the local maximum width and height.
|
|
void | setMaximumWidth (double w) |
| | Sets the local maximum width.
|
|
void | setMaximumHeight (double h) |
| | Sets the local maximum height.
|
| virtual void | resize (const Gfx::SizeF &s) |
| | Requests a new local size s.
|
| void | setCapture (bool capture) |
| | Requests pointer input capture or release.
|
| const Cursor * | cursor () const |
| | Returns this widget's cursor or the default cursor.
|
| void | setCursor (const Cursor *c) |
| | Sets a local cursor override.
|
| void | processEvent (const Pt::Event &ev) |
| | Processes ev through this widget's event dispatcher.
|
| Pt::Signal< const Pt::Event & > & | eventReceived () |
| | Returns the event dispatcher signal.
|
| bool | mouseEvent (const MouseEvent &ev) |
| | Delivers ev along the mouse responder chain.
|
| void | touchEvent (const TouchEvent &ev) |
| | Delivers ev along the touch responder chain.
|
|
void | scrollEvent (const ScrollEvent &ev) |
| | Delivers ev along the scroll responder chain.
|
|
void | enterEvent (const EnterEvent &ev) |
| | Delivers ev along the enter responder chain.
|
|
void | leaveEvent (const LeaveEvent &ev) |
| | Delivers ev along the leave responder chain.
|
|
void | keyEvent (const KeyEvent &ev) |
| | Delivers ev along the key responder chain.
|
|
| virtual void | onConnect (Screen &screen) |
| | Connects this host to screen.
|
| virtual void | onDisconnect () |
| | Disconnects this host from its screen.
|
| virtual void | onRequestRelayout () |
| | Handles a request to relayout hosted windows.
|
| virtual void | onProcessPaintEvent (const PaintEvent &ev) |
| | Processes a paint event through the Widget event path.
|
| virtual void | onPaintEvent (const PaintEvent &ev) |
| | Handles a paint event after standard processing.
|
| virtual WindowFrame * | onAttach (Window &window)=0 |
| | Creates and registers a frame for window.
|
| virtual void | onDetach (WindowFrame &frame)=0 |
| | Unregisters frame from this host.
|
| virtual void | onInit (WindowFrame &frame)=0 |
| | Initializes frame after the frame initializes its window.
|
| virtual void | onRelease (WindowFrame &frame)=0 |
| | Releases frame before it is detached and deleted.
|
| virtual void | onSetParent (Widget *parent) |
| | Records the non-owning parent relationship.
|
| virtual Widget * | onHitTest (const Gfx::PointF &pos) |
| | Returns the descendant hit at local position pos.
|
| virtual Gfx::PointF | onToParent (const Gfx::PointF &pos) const =0 |
| | Converts local position pos to parent coordinates.
|
| virtual Gfx::PointF | onFromParent (const Gfx::PointF &pos) const =0 |
| | Converts parent position pos to local coordinates.
|
| virtual Gfx::PointF | onToGlobal (const Gfx::PointF &pos) const |
| | Converts local position pos to global coordinates.
|
| virtual Gfx::PointF | onFromGlobal (const Gfx::PointF &pos) const |
| | Converts global position pos to local coordinates.
|
| virtual void | onAttachPeer (Widget &peer) |
| | Attaches non-owning peer peer.
|
| virtual void | onDetachPeer (Widget &peer) |
| | Detaches non-owning peer peer.
|
|
virtual void | onRequestRepaint (const Gfx::RectF &rect) |
| | Forwards a repaint request for local rectangle rect.
|
|
virtual void | onRequestShow (bool e) |
| | Forwards a request to show or hide the widget.
|
|
virtual void | onRequestEnable (bool isEnable) |
| | Forwards a request to enable or disable the widget.
|
|
virtual void | onRequestActivate (bool active) |
| | Forwards a request to activate or deactivate the widget.
|
|
virtual void | onRequestMove (const Gfx::PointF &pos) |
| | Forwards a request for parent-local position pos.
|
| virtual void | onSetSizeLimits (const Gfx::SizeF &minSize, const Gfx::SizeF &maxSize) |
| | Notifies that locally stored size limits changed.
|
|
virtual void | onRequestResize (const Gfx::SizeF &s) |
| | Forwards a request for local size s.
|
|
virtual void | onRequestCapture (bool capture) |
| | Requests application-managed pointer capture or release.
|
|
virtual void | onProcessEvent (const Pt::Event &ev) |
| | Sends ev to the widget event dispatcher.
|
|
virtual void | onProcessInvalidateEvent (const InvalidateEvent &ev) |
| | Coalesces and dispatches an invalidation event.
|
| virtual void | onInvalidateEvent (const InvalidateEvent &ev) |
| | Handles the final coalesced invalidation event.
|
| virtual void | onInvalidate () |
| | Updates derived state after invalidation.
|
|
virtual void | onProcessRescaleEvent (const RescaleEvent &ev) |
| | Dispatches a rescale event.
|
| virtual void | onRescaleEvent (const RescaleEvent &ev) |
| | Handles a rescale event.
|
|
virtual void | onRescale (double scaling) |
| | Updates the local scaling to scaling.
|
|
virtual void | onProcessShowEvent (const ShowEvent &ev) |
| | Ignores redundant show events and dispatches other ones.
|
| virtual void | onShowEvent (const ShowEvent &ev) |
| | Handles a show event.
|
|
virtual void | onShow (bool visible) |
| | Updates the local visibility state to visible.
|
|
virtual void | onProcessEnableEvent (const EnableEvent &ev) |
| | Dispatches an enable event.
|
| virtual void | onEnableEvent (const EnableEvent &ev) |
| | Updates the enabled state and handles an enable event.
|
|
virtual void | onEnable (bool e) |
| | Performs behavior associated with enabled state e.
|
|
virtual void | onProcessMoveEvent (const MoveEvent &ev) |
| | Dispatches a move event.
|
|
virtual void | onMoveEvent (const MoveEvent &ev) |
| | Updates the parent-local position from a move event.
|
|
virtual void | onProcessResizeEvent (const ResizeEvent &ev) |
| | Dispatches a resize event.
|
|
virtual void | onResizeEvent (const ResizeEvent &ev) |
| | Updates the local size and bounds from a resize event.
|
|
virtual void | onProcessMouseEvent (const MouseEvent &ev) |
| | Updates pointer tracking and delivers a mouse event.
|
|
virtual void | onProcessTouchEvent (const TouchEvent &ev) |
| | Updates pointer tracking and delivers a touch event.
|
|
virtual void | onProcessScrollEvent (const ScrollEvent &ev) |
| | Delivers a scroll event through the responder chain.
|
|
virtual void | onProcessEnterEvent (const EnterEvent &ev) |
| | Delivers an enter event through the responder chain.
|
|
virtual void | onProcessLeaveEvent (const LeaveEvent &ev) |
| | Delivers a leave event through the responder chain.
|
|
virtual void | onProcessKeyEvent (const KeyEvent &ev) |
| | Delivers a key event through the responder chain.
|
|
virtual Responder * | onNextResponder () |
| | Returns the non-owning next responder, or 0.
|
| virtual bool | onMouseEvent (const MouseEvent &ev) |
| | Handles a mouse event in local coordinates.
|
| virtual bool | onTouchEvent (const TouchEvent &ev) |
| | Handles a touch event in local coordinates.
|
| virtual bool | onScrollEvent (const ScrollEvent &ev) |
| | Handles a scroll event.
|
| virtual bool | onEnterEvent (const EnterEvent &ev) |
| | Handles pointer entry and installs the widget cursor.
|
| virtual bool | onLeaveEvent (const LeaveEvent &ev) |
| | Handles pointer leave and restores the default cursor.
|
| virtual bool | onKeyEvent (const KeyEvent &ev) |
| | Handles a key event.
|
|
virtual bool | onMousePress (const MouseEvent &ev) |
| | Handles a mouse press. The default returns false.
|
|
virtual bool | onMouseRelease (const MouseEvent &ev) |
| | Handles a mouse release. The default returns false.
|
|
virtual bool | onMouseMove (const MouseEvent &ev) |
| | Handles a mouse move. The default returns false.
|
A WindowManager is a Widget that attaches Window objects it does not own. Screen provides the manager for top-level platform windows, while Workspace uses a derived manager to present windows in its own bounds. Applications select a manager through a screen or workspace and attach windows through Window; they do not derive from this class.
Backend implementations derive from WindowManager and implement the attachment and lifecycle hooks that create, initialize, release, and detach each internal WindowFrame. Window controls that lifecycle: it calls onAttach(), initializes the frame and then calls onInit(). During detachment it releases the frame, calls onRelease() and onDetach(), and finally deletes the frame. The returned frame is therefore owned by the window; a manager must not delete it.
The default onInit() and onRelease() implementations connect and disconnect the frame and its window from the current screen. Derived managers must call the corresponding base implementation. The protected hooks are for backend implementations and are not an application customization API.