clan::RootView Class Referenceabstract

Base class for views participating as a root view in the user interface. More...

#include <root_view.h>

+ Inheritance diagram for clan::RootView:

Protected Member Functions

void dispatch_activation_change (ActivationChangeType type)
 Dispatch activation change event to all views. More...
 
virtual Canvas get_root_canvas () const =0
 
void layout (Canvas &canvas)
 Layout root view. More...
 
virtual void layout_local ()=0
 Layout local root. More...
 
void render (Canvas &canvas)
 Renders view into the specified canvas. More...
 
virtual Pointf root_from_screen_pos (const Pointf &pos)=0
 Map from screen to local content coordinates. More...
 
virtual bool root_hidden () const =0
 Test if view is set to hidden. More...
 
virtual Pointf root_to_screen_pos (const Pointf &pos)=0
 Map from local content to screen coordinates. More...
 
virtual void set_root_hidden (bool value)=0
 Hides a view from layout and rendering. More...
 
virtual void set_root_needs_render ()=0
 Signals this view needs to be rendered again. More...
 
- Protected Member Functions inherited from clan::View
virtual void render_content (Canvas &canvas)
 Renders the content of a view. More...
 
virtual void subview_added (const std::shared_ptr< View > &view)
 Child view was added to this view. More...
 
virtual void subview_removed (const std::shared_ptr< View > &view)
 Child view was removed from this view. More...
 

Friends

class PositionedLayout
 
class View
 
class ViewImpl
 

Additional Inherited Members

- Public Member Functions inherited from clan::View
 View ()
 
 ~View ()
 
void add_subview (const std::shared_ptr< View > &view)
 Add a child view. More...
 
void animate (float from, float to, const std::function< void(float)> &setter, int duration_ms=400, const std::function< float(float)> &easing=Easing::linear, std::function< void()> animation_end=std::function< void()>())
 Continously call an animation function for the specified duration. More...
 
void clear_exception_encountered ()
 
bool content_clipped () const
 Content clipping flag. More...
 
std::shared_ptr< Viewfind_view_at (const Pointf &pos) const
 Find descendant view at the specified content relative position. More...
 
FocusPolicy focus_policy () const
 Focus policy active for this view. More...
 
Viewfocus_view () const
 The view receiving keyboard events or nullptr if no view has the focus. More...
 
Pointf from_root_pos (const Pointf &pos)
 Map from root content to local content coordinates. More...
 
Pointf from_screen_pos (const Pointf &pos)
 Map from screen to local content coordinates. More...
 
const ViewGeometrygeometry () const
 Actual view position and size after layout. More...
 
Canvas get_canvas () const
 
virtual float get_first_baseline_offset (Canvas &canvas, float width)
 Calculates the offset to the first baseline. More...
 
virtual float get_last_baseline_offset (Canvas &canvas, float width)
 Calculates the offset to the last baseline. More...
 
virtual float get_preferred_height (Canvas &canvas, float width)
 Calculates the preferred height of this view. More...
 
virtual float get_preferred_width (Canvas &canvas)
 Calculates the preferred width of this view. More...
 
bool has_focus () const
 Test if this view is receiving keyboard input. More...
 
bool hidden () const
 Test if view is set to hidden. More...
 
bool is_static_position_and_visible () const
 Test if view should participate in static layout calculations (layout_subviews) More...
 
virtual void layout_subviews (Canvas &canvas)
 Sets the view geometry for all subviews of this view. More...
 
bool local_root () const
 Indicates if the view acts as a local root for layout and rendering. More...
 
bool needs_layout () const
 Test if view geometry needs to be recalculated. More...
 
void next_focus ()
 Give focus to the next view in the keyboard tab index order. More...
 
Viewowner_view () const
 View hierachy owner or nullptr if there is no owner. More...
 
void prev_focus ()
 Give focus to the previous view in the keyboard tab index order. More...
 
void remove_focus ()
 Remove focus from this view. More...
 
void remove_from_super ()
 Remove view from parent. More...
 
bool render_exception_encountered () const
 Test if this view generated an exception during rendering. More...
 
Viewroot_view ()
 
const Viewroot_view () const
 Root view in view hierachy. More...
 
void set_content_clipped (bool clipped)
 Specifies if content should be clipped during rendering. More...
 
void set_cursor (const CursorDescription &cursor)
 Set the cursor icon used when cursor is above this view. More...
 
void set_cursor (StandardCursor type)
 
void set_focus ()
 Set this view as the focused view. More...
 
void set_focus_policy (FocusPolicy policy)
 Set if this view automatically can gain focus. More...
 
void set_geometry (const ViewGeometry &geometry)
 
void set_hidden (bool value=true)
 Hides a view from layout and rendering. More...
 
void set_inherit_cursor ()
 Specify that the cursor icon is inherited from the super view. More...
 
void set_needs_layout ()
 Forces recalculation of view geometry before next rendering. More...
 
void set_needs_render ()
 Signals this view needs to be rendered again. More...
 
void set_state (const std::string &name, bool value)
 Set or clear style state. More...
 
void set_state_cascade (const std::string &name, bool value)
 Sets the state for this view and all siblings recursively, until a manually set state of the same name is found. More...
 
void set_tab_index (unsigned int index)
 Sets the tab index used for keyboard focus changes. More...
 
void set_view_transform (const Mat4f &transform)
 Specifies the view transform to be applied before its contents and children are rendered. More...
 
Signal< void(ActivationChangeEvent &)> & sig_activated (bool use_capture=false)
 Window activated event. More...
 
Signal< void(CloseEvent &)> & sig_close (bool use_capture=false)
 Window close button clicked event. More...
 
Signal< void(ActivationChangeEvent &)> & sig_deactivated (bool use_capture=false)
 Window deactivated event. More...
 
Signal< void(FocusChangeEvent &)> & sig_focus_gained (bool use_capture=false)
 View gained focus event. More...
 
Signal< void(FocusChangeEvent &)> & sig_focus_lost (bool use_capture=false)
 View lost focus event. More...
 
Signal< void(KeyEvent &)> & sig_key_press (bool use_capture=false)
 Key pressed event. More...
 
Signal< void(KeyEvent &)> & sig_key_release (bool use_capture=false)
 Key released event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_double_click (bool use_capture=false)
 Pointer button double clicked event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_enter (bool use_capture=false)
 Pointer entering view geometry event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_leave (bool use_capture=false)
 Pointer leaving view geometry event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_move (bool use_capture=false)
 Pointer moved above view event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_press (bool use_capture=false)
 Pointer button pressed event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_proximity_change (bool use_capture=false)
 Pointer proximity change event. More...
 
Signal< void(PointerEvent &)> & sig_pointer_release (bool use_capture=false)
 Pointer button released event. More...
 
Signal< void(ResizeEvent &)> & sig_resize (bool use_capture=false)
 Window resize event. More...
 
bool state (const std::string &name) const
 Test if a style state is currently set. More...
 
void stop_animations ()
 Stop all activate animation functions. More...
 
const std::shared_ptr< Style > & style (const std::string &state=std::string()) const
 Style properties for the specified state. More...
 
const StyleCascadestyle_cascade () const
 Style cascade currently active for this view. More...
 
const std::vector< std::shared_ptr< View > > & subviews () const
 List of all immediate child views. More...
 
Viewsuperview () const
 Parent view node or nullptr if the view is the current root node. More...
 
unsigned int tab_index () const
 Tab index for keyboard focus changes. More...
 
Pointf to_root_pos (const Pointf &pos)
 Map from local content to root content coordinates. More...
 
Pointf to_screen_pos (const Pointf &pos)
 Map from local content to screen coordinates. More...
 
void update_cursor (DisplayWindow &window)
 Update window cursor to the cursor used by this view. More...
 
const Mat4fview_transform () const
 Current view transform. More...
 
- Static Public Member Functions inherited from clan::View
static void dispatch_event (View *target, EventUI *e, bool no_propagation=false)
 Dispatch event to signals listening for events. More...
 
- Public Attributes inherited from clan::View
SlotContainer slots
 Slot container helping with automatic disconnection of connected slots when the view is destroyed. More...
 

Detailed Description

Base class for views participating as a root view in the user interface.

Member Function Documentation

◆ dispatch_activation_change()

void clan::RootView::dispatch_activation_change ( ActivationChangeType  type)
protected

Dispatch activation change event to all views.

◆ get_root_canvas()

virtual Canvas clan::RootView::get_root_canvas ( ) const
protectedpure virtual

Gets the current canvas used to render this view

This function may return a null canvas if the view does not have a canvas attached to it yet.

Implemented in clan::TextureView, and clan::WindowView.

◆ layout()

void clan::RootView::layout ( Canvas canvas)
protected

Layout root view.

◆ layout_local()

virtual void clan::RootView::layout_local ( )
protectedpure virtual

Layout local root.

Implemented in clan::TextureView, and clan::WindowView.

◆ render()

void clan::RootView::render ( Canvas canvas)
protected

Renders view into the specified canvas.

◆ root_from_screen_pos()

virtual Pointf clan::RootView::root_from_screen_pos ( const Pointf pos)
protectedpure virtual

Map from screen to local content coordinates.

Implemented in clan::TextureView, and clan::WindowView.

◆ root_hidden()

virtual bool clan::RootView::root_hidden ( ) const
protectedpure virtual

Test if view is set to hidden.

Implemented in clan::TextureView, and clan::WindowView.

◆ root_to_screen_pos()

virtual Pointf clan::RootView::root_to_screen_pos ( const Pointf pos)
protectedpure virtual

Map from local content to screen coordinates.

Implemented in clan::TextureView, and clan::WindowView.

◆ set_root_hidden()

virtual void clan::RootView::set_root_hidden ( bool  value)
protectedpure virtual

Hides a view from layout and rendering.

Implemented in clan::TextureView, clan::WindowView, and clan::PopupView.

◆ set_root_needs_render()

virtual void clan::RootView::set_root_needs_render ( )
protectedpure virtual

Signals this view needs to be rendered again.

Implemented in clan::TextureView, and clan::WindowView.

Friends And Related Function Documentation

◆ PositionedLayout

friend class PositionedLayout
friend

◆ View

friend class View
friend

◆ ViewImpl

friend class ViewImpl
friend

The documentation for this class was generated from the following file: