neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::framed_widget< Base > Class Template Reference

#include <framed_widget.hpp>

Inheritance diagram for neogfx::framed_widget< Base >:
neogfx::widget< Interface > neogfx::layout_item< Base > neogfx::anchorable< reference_counted< Base > > neolib::reference_counted< Base, DeallocateOnRelease > neogfx::basic_spin_box< value_type > neogfx::basic_spin_box< uint32_t > neogfx::basic_spin_box< double > neogfx::decorated< framed_widget<>, reference_counted< i_dockable > > neogfx::basic_spin_box< T > neogfx::font_widget neogfx::dockable neogfx::basic_unit_spin_box< T, Units >

Public Member Functions

template<typename... Args>
 framed_widget (Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_widget &aParent, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_layout &aLayout, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (dimension aLineWidth, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_widget &aParent, dimension aLineWidth, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_layout &aLayout, dimension aLineWidth, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (frame_style aStyle, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_widget &aParent, frame_style aStyle, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_layout &aLayout, frame_style aStyle, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (frame_style aStyle, dimension aLineWidth, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_widget &aParent, frame_style aStyle, dimension aLineWidth, Args &&... aArgs)
 
template<typename... Args>
 framed_widget (i_layout &aLayout, frame_style aStyle, dimension aLineWidth, Args &&... aArgs)
 
neogfx::border border () const override
 
void paint_non_client (i_graphics_context &aGc) const override
 
void set_frame_style (frame_style aStyle)
 
virtual bool has_frame_color () const
 
virtual color frame_color () const
 
virtual void set_frame_color (const optional_color &aFrameColor=optional_color{})
 
virtual color inner_frame_color () const
 
virtual bool has_frame_radius () const
 
virtual vec4 frame_radius () const
 
virtual void set_frame_radius (const optional_vec4 &aFrameRadius=optional_vec4{})
 
dimension line_width () const
 
dimension effective_frame_width () const
 
- Public Member Functions inherited from neogfx::widget< Interface >
 define_declared_event (DeviceMetricsUpdated, device_metrics_updated, const i_widget &) define_declared_event(ChildAdded
 
i_widgetdefine_declared_event (ChildRemoved, child_removed, i_widget &) define_declared_event(VisibilityChanged
 
i_widget visibility_changed define_declared_event (PositionChanged, position_changed) define_declared_event(ParentPositionChanged
 
i_widget visibility_changed parent_position_changed define_declared_event (SizeChanged, size_changed) define_declared_event(LayoutCompleted
 
i_widget visibility_changed parent_position_changed layout_completed define_declared_event (Painting, painting, i_graphics_context &) define_declared_event(PaintingChildren
 
i_widget visibility_changed parent_position_changed layout_completed i_graphics_contextdefine_declared_event (Painted, painted, i_graphics_context &) define_declared_event(Mouse
 
i_widget visibility_changed parent_position_changed layout_completed i_graphics_context const neogfx::mouse_eventdefine_declared_event (NonClientMouse, non_client_mouse_event, const neogfx::non_client_mouse_event &) define_declared_event(QueryMouseCursor
 
i_widget visibility_changed parent_position_changed layout_completed i_graphics_context const neogfx::mouse_event neogfx::mouse_cursordefine_declared_event (Keyboard, keyboard_event, const neogfx::keyboard_event &) define_declared_event(Focus
 
 widget ()
 
 widget (const widget &)=delete
 
 widget (i_widget &aParent)
 
 widget (i_layout &aLayout)
 
 ~widget ()
 
void property_changed (i_property &aProperty) override
 
bool is_singular () const final
 
void set_singular (bool aSingular) final
 
bool is_root () const final
 
bool has_root () const final
 
const i_windowroot () const final
 
i_windowroot () final
 
void set_root (i_window &aRoot) final
 
bool is_surface () const override
 
bool has_surface () const override
 
const i_surfacesurface () const override
 
i_surfacesurface () override
 
const i_surfacereal_surface () const override
 
i_surfacereal_surface () override
 
bool has_parent () const final
 
const i_widgetparent () const final
 
i_widgetparent () final
 
void set_parent (i_widget &aParent) override
 
void parent_changed () final
 
bool adding_child () const override
 
i_widgetadd (i_widget &aChild) override
 
i_widgetadd (const i_ref_ptr< i_widget > &aChild) override
 
void remove (i_widget &aChild, bool aSingular, i_ref_ptr< i_widget > &aChildRef) override
 
void remove_all () override
 
bool has_children () const override
 
const widget_listchildren () const override
 
widget_list::const_iterator last () const override
 
widget_list::iterator last () override
 
widget_list::const_iterator find (const i_widget &aChild, bool aThrowIfNotFound=true) const override
 
widget_list::iterator find (const i_widget &aChild, bool aThrowIfNotFound=true) override
 
void bring_child_to_front (const i_widget &aChild) override
 
void send_child_to_back (const i_widget &aChild) override
 
layer_t layer () const override
 
void set_layer (layer_t aLayer) override
 
const i_widgetbefore () const override
 
i_widgetbefore () override
 
const i_widgetafter () const override
 
i_widgetafter () override
 
void link_before (i_widget *aPreviousWidget) override
 
void link_after (i_widget *aNextWidget) override
 
void unlink () override
 
bool has_layout () const override
 
void set_layout (i_layout &aLayout, bool aMoveExistingItems=true) override
 
void set_layout (const i_ref_ptr< i_layout > &aLayout, bool aMoveExistingItems=true) override
 
const i_layoutlayout () const override
 
i_layoutlayout () override
 
bool can_defer_layout () const override
 
bool is_managing_layout () const override
 
optional< neogfx::layout_reason > & layout_reason () override
 
void layout_items (bool aDefer=false) override
 
void layout_items_started () override
 
bool layout_items_in_progress () const override
 
void layout_items_completed () override
 
bool device_metrics_available () const override
 
const i_device_metricsdevice_metrics () const override
 
neogfx::size_policy size_policy () const override
 
size minimum_size (optional_size const &aAvailableSpace={}) const override
 
size maximum_size (optional_size const &aAvailableSpace={}) const override
 
neogfx::padding padding () const override
 
rect element_rect (skin_element aElement) const override
 
bool has_logical_coordinate_system () const override
 
neogfx::logical_coordinate_system logical_coordinate_system () const override
 
void set_logical_coordinate_system (const optional_logical_coordinate_system &aLogicalCoordinateSystem) override
 
rect non_client_rect () const override
 
rect client_rect (bool aExtendIntoPadding=true) const override
 
void move (const point &aPosition) override
 
void moved () override
 
void parent_moved () override
 
bool resizing () const override
 
void resize (const size &aSize) override
 
void resized () override
 
const i_widgetget_widget_at (const point &aPosition) const override
 
i_widgetget_widget_at (const point &aPosition) override
 
neogfx::widget_type widget_type () const override
 
bool part_active (widget_part aPart) const override
 
widget_part part (const point &aPosition) const override
 
widget_part hit_test (const point &aPosition) const override
 
bool has_parent_layout () const final
 
const i_layoutparent_layout () const final
 
i_layoutparent_layout () final
 
void set_parent_layout (i_layout *aParentLayout) final
 
bool has_parent_widget () const final
 
const i_widgetparent_widget () const final
 
i_widgetparent_widget () final
 
void set_parent_widget (i_widget *aParentWidget) final
 
void layout_as (const point &aPosition, const size &aSize) override
 
neogfx::view const & view () const override
 
neogfx::viewview () override
 
layer_t render_layer () const override
 
void set_render_layer (const std::optional< layer_t > &aLayer) override
 
bool can_update () const override
 
bool update (bool aIncludeNonClient=false) override
 
bool update (const rect &aUpdateRect) override
 
bool requires_update () const override
 
rect update_rect () const override
 
rect default_clip_rect (bool aIncludeNonClient=false) const override
 
bool ready_to_render () const override
 
void render (i_graphics_context &aGc) const override
 
void paint_non_client (i_graphics_context &aGc) const override
 
void paint (i_graphics_context &aGc) const override
 
void paint_non_client_after (i_graphics_context &aGc) const override
 
double opacity () const override
 
void set_opacity (double aOpacity) override
 
bool has_background_opacity () const override
 
double background_opacity () const override
 
void set_background_opacity (double aOpacity) override
 
bool has_palette () const override
 
const i_palettepalette () const override
 
void set_palette (const i_palette &aPalette) override
 
bool has_palette_color (color_role aColorRole) const override
 
color palette_color (color_role aColorRole) const override
 
void set_palette_color (color_role aColorRole, const optional_color &aColor) override
 
color container_background_color () const override
 
bool has_font_role () const override
 
neogfx::font_role font_role () const override
 
void set_font_role (const optional_font_role &aFontRole) override
 
bool has_font () const override
 
const neogfx::font & font () const override
 
void set_font (optional_font const &aFont) override
 
bool visible () const override
 
bool effectively_visible () const override
 
bool hidden () const override
 
bool effectively_hidden () const override
 
bool show (bool aVisible) override
 
bool enabled () const override
 
bool effectively_enabled () const override
 
bool disabled () const override
 
bool effectively_disabled () const override
 
bool enable (bool aEnable) override
 
bool entered (bool aChildEntered=false) const override
 
bool can_capture () const override
 
bool capturing () const override
 
const optional_pointcapture_position () const override
 
void set_capture (capture_reason aReason=capture_reason::Other, const optional_point &aPosition={}) override
 
void release_capture (capture_reason aReason=capture_reason::Other) override
 
void non_client_set_capture () override
 
void non_client_release_capture () override
 
void captured () override
 
void capture_released () override
 
bool has_focus_policy () const override
 
neogfx::focus_policy focus_policy () const override
 
void set_focus_policy (const optional_focus_policy &aFocusPolicy) override
 
bool can_set_focus (focus_reason aFocusReason) const override
 
bool has_focus () const override
 
bool child_has_focus () const override
 
bool set_focus (focus_reason aFocusReason=focus_reason::Other) override
 
bool release_focus () override
 
void focus_gained (focus_reason aFocusReason) override
 
void focus_lost (focus_reason aFocusReason) override
 
bool consider_ancestors_for_mouse_events () const override
 
void set_consider_ancestors_for_mouse_events (bool aConsiderAncestors=true) override
 
bool ignore_mouse_events (bool aConsiderAncestors=true) const override
 
void set_ignore_mouse_events (bool aIgnoreMouseEvents) override
 
bool ignore_non_client_mouse_events (bool aConsiderAncestors=true) const override
 
void set_ignore_non_client_mouse_events (bool aIgnoreNonClientMouseEvents) override
 
neogfx::mouse_event_location mouse_event_location () const override
 
bool mouse_wheel_scrolled (mouse_wheel aWheel, const point &aPosition, delta aDelta, key_modifiers_e aKeyModifiers) override
 
void mouse_button_pressed (mouse_button aButton, const point &aPosition, key_modifiers_e aKeyModifiers) override
 
void mouse_button_double_clicked (mouse_button aButton, const point &aPosition, key_modifiers_e aKeyModifiers) override
 
void mouse_button_released (mouse_button aButton, const point &aPosition) override
 
void mouse_moved (const point &aPosition, key_modifiers_e aKeyModifiers) override
 
void mouse_entered (const point &aPosition) override
 
void mouse_left () override
 
point mouse_position () const override
 
neogfx::mouse_cursor mouse_cursor () const override
 
bool key_pressed (scan_code_e aScanCode, key_code_e aKeyCode, key_modifiers_e aKeyModifiers) override
 
bool key_released (scan_code_e aScanCode, key_code_e aKeyCode, key_modifiers_e aKeyModifiers) override
 
bool text_input (i_string const &aText) override
 
bool sys_text_input (i_string const &aText) override
 
const i_widgetwidget_for_mouse_event (const point &aPosition, bool aForHitTest=false) const override
 
i_widgetwidget_for_mouse_event (const point &aPosition, bool aForHitTest=false) override
 
- Public Member Functions inherited from neogfx::layout_item< Base >
 layout_item ()
 
 ~layout_item ()
 
const i_stringid () const final
 
void set_id (const i_string &aId) final
 
bool is_cache () const final
 
bool is_layout () const final
 
const i_layoutas_layout () const final
 
i_layoutas_layout () final
 
bool is_spacer () const final
 
const i_spacer & as_spacer () const final
 
i_spacer & as_spacer () final
 
bool is_widget () const override
 
const i_widgetas_widget () const override
 
i_widgetas_widget () override
 
bool has_parent_layout_item () const final
 
const i_layout_itemparent_layout_item () const final
 
i_layout_itemparent_layout_item () final
 
bool has_layout_manager () const final
 
const i_widgetlayout_manager () const final
 
i_widgetlayout_manager () final
 
void update_layout (bool aDeferLayout=true, bool aAncestors=false) final
 
point origin () const final
 
void reset_origin () const final
 
point position () const final
 
size extents () const final
 
bool has_size_policy () const noexcept override
 
neogfx::size_policy size_policy () const override
 
void set_size_policy (const optional_size_policy &aSizePolicy, bool aUpdateLayout=true) override
 
bool has_weight () const noexcept override
 
size weight () const override
 
void set_weight (optional_size const &aWeight, bool aUpdateLayout=true) override
 
bool has_ideal_size () const noexcept override
 
bool is_ideal_size_constrained () const noexcept override
 
size ideal_size (optional_size const &aAvailableSpace={}) const override
 
void set_ideal_size (optional_size const &aIdealSize, bool aUpdateLayout=true) override
 
bool has_minimum_size () const noexcept override
 
bool is_minimum_size_constrained () const noexcept override
 
size minimum_size (optional_size const &aAvailableSpace={}) const override
 
void set_minimum_size (optional_size const &aMinimumSize, bool aUpdateLayout=true) override
 
bool has_maximum_size () const noexcept override
 
bool is_maximum_size_constrained () const noexcept override
 
size maximum_size (optional_size const &aAvailableSpace={}) const override
 
void set_maximum_size (optional_size const &aMaximumSize, bool aUpdateLayout=true) override
 
bool has_fixed_size () const noexcept override
 
size fixed_size (optional_size const &aAvailableSpace={}) const override
 
void set_fixed_size (optional_size const &aFixedSize, bool aUpdateLayout=true)
 
bool has_transformation () const noexcept override
 
mat33 const & transformation (bool aCombineAncestorTransformations=false) const override
 
void set_transformation (optional_mat33 const &aTransformation, bool aUpdateLayout=true) override
 
bool has_margin () const noexcept override
 
neogfx::margin margin () const override
 
void set_margin (optional_margin const &aMargin, bool aUpdateLayout=true) override
 
bool has_border () const noexcept override
 
neogfx::border border () const override
 
void set_border (optional_border const &aBorder, bool aUpdateLayout=true) override
 
bool has_padding () const noexcept override
 
neogfx::padding padding () const override
 
void set_padding (optional_padding const &aPadding, bool aUpdateLayout=true) override
 
void invalidate_combined_transformation () override
 
void fix_weightings (bool aRecalculate=true) override
 
i_anchor & anchor_to (i_anchorable &aRhs, i_string const &aLhsAnchor, anchor_constraint_function aLhsFunction, i_string const &aRhsAnchor, anchor_constraint_function aRhsFunction) override
 
- Public Member Functions inherited from neogfx::anchorable< reference_counted< Base > >
 ~anchorable ()
 
i_anchor & anchor_to (i_anchorable &aRhs, const i_string &aLhsAnchor, anchor_constraint_function aLhsFunction, const i_string &aRhsAnchor, anchor_constraint_function aRhsFunction) override
 
const anchor_map_typeanchors () const override
 
anchor_map_typeanchors () override
 
- Public Member Functions inherited from neolib::reference_counted< Base, DeallocateOnRelease >
 reference_counted () noexcept
 
 reference_counted (const reference_counted &aOther) noexcept
 
 ~reference_counted ()
 
reference_countedoperator= (const reference_counted &)
 
void add_ref () const noexcept override
 
void release () const override
 
int32_t use_count () const noexcept override
 
const base_type * release_and_take_ownership () const override
 
base_type * release_and_take_ownership () override
 
void pin () const noexcept override
 
void unpin () const override
 
i_ref_control_blockcontrol_block () override
 

Additional Inherited Members

- Public Types inherited from neogfx::widget< Interface >
typedef i_widget abstract_type
 
typedef neolib::vector< ref_ptr< i_widget > > widget_list
 
- Public Types inherited from neogfx::anchorable< reference_counted< Base > >
typedef neolib::map< string, i_anchor * > anchor_map_type
 
- Public Attributes inherited from neogfx::widget< Interface >
 child_added
 
i_widget visibility_changed parent_position_changed layout_completed painting_children
 
i_widget visibility_changed parent_position_changed layout_completed i_graphics_context mouse_event
 
i_widget visibility_changed parent_position_changed layout_completed i_graphics_context const neogfx::mouse_event query_mouse_cursor
 
i_widget visibility_changed parent_position_changed layout_completed i_graphics_context const neogfx::mouse_event neogfx::mouse_cursor focus_event
 
- Public Attributes inherited from neogfx::layout_item< Base >
define_property(property_category::soft_geometry, point, Position, position) define_property(property_category cache< pointiOrigin
 
cache< mat33iCombinedTransformation
 
- Protected Member Functions inherited from neogfx::layout_item< Base >
void set_position (const point &aPosition) override
 
void set_extents (const size &aExtents) override
 
point unconstrained_origin () const override
 
point unconstrained_position () const override
 
void layout_item_enabled (i_layout_item &aItem) override
 
void layout_item_disabled (i_layout_item &aItem) override
 

Detailed Description

template<typename Base = widget<>>
class neogfx::framed_widget< Base >

Definition at line 44 of file framed_widget.hpp.

Constructor & Destructor Documentation

◆ framed_widget() [1/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( Args &&...  aArgs)
inline

Definition at line 50 of file framed_widget.hpp.

◆ framed_widget() [2/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_widget aParent,
Args &&...  aArgs 
)
inline

Definition at line 56 of file framed_widget.hpp.

◆ framed_widget() [3/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_layout aLayout,
Args &&...  aArgs 
)
inline

Definition at line 62 of file framed_widget.hpp.

◆ framed_widget() [4/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( dimension  aLineWidth,
Args &&...  aArgs 
)
inline

Definition at line 68 of file framed_widget.hpp.

◆ framed_widget() [5/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_widget aParent,
dimension  aLineWidth,
Args &&...  aArgs 
)
inline

Definition at line 74 of file framed_widget.hpp.

◆ framed_widget() [6/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_layout aLayout,
dimension  aLineWidth,
Args &&...  aArgs 
)
inline

Definition at line 80 of file framed_widget.hpp.

◆ framed_widget() [7/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( frame_style  aStyle,
Args &&...  aArgs 
)
inline

Definition at line 86 of file framed_widget.hpp.

◆ framed_widget() [8/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_widget aParent,
frame_style  aStyle,
Args &&...  aArgs 
)
inline

Definition at line 92 of file framed_widget.hpp.

◆ framed_widget() [9/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_layout aLayout,
frame_style  aStyle,
Args &&...  aArgs 
)
inline

Definition at line 98 of file framed_widget.hpp.

◆ framed_widget() [10/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( frame_style  aStyle,
dimension  aLineWidth,
Args &&...  aArgs 
)
inline

Definition at line 104 of file framed_widget.hpp.

◆ framed_widget() [11/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_widget aParent,
frame_style  aStyle,
dimension  aLineWidth,
Args &&...  aArgs 
)
inline

Definition at line 110 of file framed_widget.hpp.

◆ framed_widget() [12/12]

template<typename Base = widget<>>
template<typename... Args>
neogfx::framed_widget< Base >::framed_widget ( i_layout aLayout,
frame_style  aStyle,
dimension  aLineWidth,
Args &&...  aArgs 
)
inline

Definition at line 116 of file framed_widget.hpp.

Member Function Documentation

◆ border()

template<typename Base >
neogfx::border neogfx::framed_widget< Base >::border ( ) const
override

Definition at line 28 of file framed_widget.ipp.

◆ effective_frame_width()

template<typename Base >
dimension neogfx::framed_widget< Base >::effective_frame_width ( ) const

Definition at line 158 of file framed_widget.ipp.

◆ frame_color()

◆ frame_radius()

template<typename Base >
vec4 neogfx::framed_widget< Base >::frame_radius ( ) const
virtual

Definition at line 136 of file framed_widget.ipp.

◆ has_frame_color()

template<typename Base >
bool neogfx::framed_widget< Base >::has_frame_color ( ) const
virtual

Definition at line 99 of file framed_widget.ipp.

◆ has_frame_radius()

template<typename Base >
bool neogfx::framed_widget< Base >::has_frame_radius ( ) const
virtual

Definition at line 130 of file framed_widget.ipp.

◆ inner_frame_color()

template<typename Base >
color neogfx::framed_widget< Base >::inner_frame_color ( ) const
virtual

Reimplemented in neogfx::tab_page.

Definition at line 121 of file framed_widget.ipp.

◆ line_width()

template<typename Base >
dimension neogfx::framed_widget< Base >::line_width ( ) const

Definition at line 152 of file framed_widget.ipp.

◆ paint_non_client()

template<typename Base >
void neogfx::framed_widget< Base >::paint_non_client ( i_graphics_context aGc) const
override

Definition at line 34 of file framed_widget.ipp.

◆ set_frame_color()

template<typename Base >
void neogfx::framed_widget< Base >::set_frame_color ( const optional_color aFrameColor = optional_color{})
virtual

Definition at line 114 of file framed_widget.ipp.

◆ set_frame_radius()

template<typename Base >
void neogfx::framed_widget< Base >::set_frame_radius ( const optional_vec4 aFrameRadius = optional_vec4{})
virtual

Definition at line 145 of file framed_widget.ipp.

◆ set_frame_style()

template<typename Base >
void neogfx::framed_widget< Base >::set_frame_style ( frame_style  aStyle)

Definition at line 89 of file framed_widget.ipp.


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