|
| AWindow (const AString &name="My window", int width=854_dp, int height=500_dp, AWindow *parent=nullptr, WindowStyle ws=WindowStyle::DEFAULT) |
|
unsigned | frameMillis () const noexcept override |
| Returns previous frame's rendering duration in millis. More...
|
|
void | redraw () |
|
void | blockUserInput (bool blockUserInput=true) override |
| Enables or disables user input for this window. More...
|
|
void | setIcon (const AImage &image) |
|
void | quit () |
| Removes window from AWindowManager.
|
|
void | setWindowStyle (WindowStyle ws) |
|
void | minimize () |
| Minimizes window (hide window to the taskbar, iconifies)
|
|
bool | isMinimized () const |
|
void | maximize () |
| Maximizes window (makes window fullscreen)
|
|
bool | isMaximized () const |
|
void | restore () |
| Restores window (shows window from taskbar)
|
|
void | flagRedraw () override |
|
void | show () |
|
void | close () |
|
void | hide () |
|
bool | isClosed () const noexcept |
|
AWindowNativePtr | getNativeHandle () |
|
auto | nativeHandle () const |
|
const AString & | getWindowTitle () const |
|
glm::ivec2 | getWindowPosition () const |
|
void | setPosition (glm::ivec2 position) override |
|
void | setSize (glm::ivec2 size) override |
|
void | setGeometry (int x, int y, int width, int height) override |
|
void | onFocusAcquired () override |
|
void | onFocusLost () override |
|
void | onKeyDown (AInput::Key key) override |
|
void | onKeyRepeat (AInput::Key key) override |
|
void | setFocusNextViewOnTab (bool value) |
|
glm::ivec2 | mapPositionTo (const glm::ivec2 &position, _< AWindow > other) |
| Translates coordinates from the coordinate space of this window to the coordinate space of another window. More...
|
|
glm::ivec2 | unmapPosition (const glm::ivec2 &position) |
| Translates coordinates from the coordinate space of this window to the coordinate space of the monitor. More...
|
|
glm::ivec2 | mapPosition (const glm::ivec2 &position) |
| Translates coordinates from the monitor's coordinate space to the coordinate space of this window. More...
|
|
_< AOverlappingSurface > | createOverlappingSurfaceImpl (const glm::ivec2 &position, const glm::ivec2 &size) override |
|
void | closeOverlappingSurfaceImpl (AOverlappingSurface *surface) override |
|
virtual void | onCloseButtonClicked () |
|
void | forceUpdateCursor () override |
| Updates cursor by triggering onPointerMove on the same position (mMousePos). More...
|
|
void | showTouchscreenKeyboardImpl () override |
|
void | hideTouchscreenKeyboardImpl () override |
|
void | moveToCenter () |
| Moves the window to the center of monitor. More...
|
|
void | setMobileScreenOrientation (AScreenOrientation screenOrientation) |
| Controls mobile device's screen orientation when this window is on the foreground. More...
|
|
bool | consumesClick (const glm::ivec2 &pos) override |
| Determines whether this AView processes this click or passes it thru. More...
|
|
void | onPointerMove (glm::vec2 pos, const APointerMoveEvent &event) override |
| Handles pointer hover events. More...
|
|
void | preventClickOnPointerRelease () |
| Prevents click action on upcoming pointer release. More...
|
|
bool | isPreventingClickOnPointerRelease () const noexcept |
|
template<aui::invocable< const _< AView > & > Callback> |
void | iterateOverFocusChain (Callback &&callback) |
| Iterates over focus chain, from parent to child.
|
|
const _unique< IRenderingContext > & | getRenderingContext () const |
|
BeforeFrameQueue & | beforeFrameQueue () noexcept |
|
void | updateDpi () |
|
float | getDpiRatio () |
| Returns current dpi ratio. More...
|
|
_< AView > | getFocusedView () const |
|
void | setFocusedView (const _< AView > &view) |
|
void | updateFocusChain () |
|
void | onPointerPressed (const APointerPressedEvent &event) override |
| Called on pointer (mouse) released event. More...
|
|
void | onPointerMove (glm::vec2 pos, const APointerMoveEvent &event) override |
| Handles pointer hover events. More...
|
|
void | closeOverlappingSurfacesOnClick () |
|
bool | isFocused () const |
|
const glm::ivec2 & | getMousePos () const |
|
void | onKeyDown (AInput::Key key) override |
|
virtual void | focusNextView () |
|
void | makeCurrent () |
|
_< AOverlappingSurface > | createOverlappingSurface (const glm::ivec2 &position, const glm::ivec2 &size, bool closeOnClick=true) |
|
_< AOverlappingSurface > | createOverlappingSurface (const std::function< AOptional< glm::ivec2 >(unsigned)> &positionFactory, const glm::ivec2 &size, bool closeOnClick=true) |
|
void | closeOverlappingSurface (AOverlappingSurface *surface) |
|
void | onFocusLost () override |
|
void | render (ARenderContext context) override |
| Draws this AView. Noone should call this function except rendering routine. More...
|
|
void | applyGeometryToChildren () override |
|
void | onPointerReleased (const APointerReleasedEvent &event) override |
| Called on pointer (mouse) released event. More...
|
|
virtual bool | onDragEnter (const ADragNDrop::EnterEvent &event) |
| Called when the user holds a drag-n-drop object over the window. More...
|
|
virtual void | onDragLeave () |
|
virtual void | onDragDrop (const ADragNDrop::DropEvent &event) |
|
void | requestShowTouchscreenKeyboard () |
| On a mobile touchscreen device, requests system virtual keyboard.
|
|
void | requestHideTouchscreenKeyboard () |
| On a mobile touchscreen device, requests hiding system virtual keyboard.
|
|
bool | shouldDisplayHoverAnimations () const |
| Determines whether views should display hover animations. More...
|
|
void | onScroll (const AScrollEvent &event) override |
|
bool | onGesture (const glm::ivec2 &origin, const AGestureEvent &event) override |
|
size_t | getFps () |
|
void | setTouchscreenKeyboardPolicy (ATouchscreenKeyboardPolicy policy) noexcept |
|
void | setScalingParams (ScalingParams params) |
| Sets scaling params. More...
|
|
Profiling & | profiling () |
| Get profiling settings (mutable).
|
|
void | markMinContentSizeInvalid () override |
|
void | addView (const _< AView > &view) |
| Add view to the container.
|
|
void | addView (size_t index, const _< AView > &view) |
| Add view at specific index to the container.
|
|
void | addViews (AVector< _< AView > > views) |
| Add all views from vector.
|
|
void | addViewCustomLayout (const _< AView > &view) |
| Adds view to container without exposing it to the layout manager. More...
|
|
void | removeView (const _< AView > &view) |
| Remove view from the container.
|
|
void | removeView (AView *view) |
| Remove view from the container.
|
|
void | removeView (size_t index) |
| Remove view from the container at specified index.
|
|
void | removeAllViews () |
| Remove all views from container.
|
|
void | setViews (AVector< _< AView > > views) |
| Replace views.
|
|
void | setContents (const _< AViewContainer > &container) |
| Moves (like via std::move) all children and layout of the specified container to this container. More...
|
|
const _unique< ALayout > & | getLayout () const noexcept |
| Get layout manager of the container.
|
|
void | setLayout (_unique< ALayout > layout) |
| Set new layout manager for this AViewContainerBase. DESTROYS OLD LAYOUT MANAGER WITH ITS VIEWS!!!
|
|
void | render (ARenderContext context) override |
| Draws this AView. Noone should call this function except rendering routine. More...
|
|
void | onMouseEnter () override |
|
void | onPointerMove (glm::vec2 pos, const APointerMoveEvent &event) override |
| Handles pointer hover events. More...
|
|
void | onMouseLeave () override |
|
void | onDpiChanged () override |
|
void | onClickPrevented () override |
| Called on AWindowBase::preventClickOnPointerRelease. More...
|
|
int | getContentMinimumWidth () override |
|
int | getContentMinimumHeight () override |
|
void | onPointerPressed (const APointerPressedEvent &event) override |
| Called on pointer (mouse) released event. More...
|
|
void | onPointerDoubleClicked (const APointerPressedEvent &event) override |
|
void | onPointerReleased (const APointerReleasedEvent &event) override |
| Called on pointer (mouse) released event. More...
|
|
void | onScroll (const AScrollEvent &event) override |
|
bool | onGesture (const glm::ivec2 &origin, const AGestureEvent &event) override |
|
bool | consumesClick (const glm::ivec2 &pos) override |
| Determines whether this AView processes this click or passes it thru. More...
|
|
void | setSize (glm::ivec2 size) override |
|
void | setEnabled (bool enabled=true) override |
|
auto | begin () const |
|
auto | end () const |
|
const AVector< _< AView > > & | getViews () const |
| Get all views of the container.
|
|
const _unique< ALayout > & | getLayout () const noexcept |
| Get layout manager of the container.
|
|
virtual _< AView > | getViewAt (glm::ivec2 pos, ABitField< AViewLookupFlags > flags=AViewLookupFlags::NONE) const noexcept |
| Finds first direct child view under position. More...
|
|
_< AView > | getViewAtRecursive (glm::ivec2 pos, ABitField< AViewLookupFlags > flags=AViewLookupFlags::NONE) const noexcept |
| Acts as AViewContainerBase::getViewAt but recursively (may include non-direct child). More...
|
|
template<aui::predicate< _< AView > > Callback> |
bool | getViewAtRecursive (glm::ivec2 pos, const Callback &callback, ABitField< AViewLookupFlags > flags=AViewLookupFlags::NONE) |
| Acts as AViewContainerBase::getViewAtRecursive but calls a callback instead of returning value. More...
|
|
template<aui::predicate< _< AView > > Callback> |
bool | visitsViewRecursive (Callback &&callback, ABitField< AViewLookupFlags > flags=AViewLookupFlags::NONE) |
|
template<typename T > |
_< T > | getViewAtRecursiveOfType (glm::ivec2 pos, ABitField< AViewLookupFlags > flags=AViewLookupFlags::NONE) |
| Acts as AViewContainerBase::getViewAtRecursive but finds a view castable to specified template type. More...
|
|
void | setFocusChainTarget (_weak< AView > target) |
| Set focus chain target. More...
|
|
_< AView > | focusChainTarget () |
|
void | applyGeometryToChildrenIfNecessary () |
|
void | onKeyDown (AInput::Key key) override |
|
void | onKeyRepeat (AInput::Key key) override |
|
void | onKeyUp (AInput::Key key) override |
|
void | onCharEntered (char16_t c) override |
|
bool | capturesFocus () override |
|
const ASmallVector< PointerEventsMapping, 1 > & | pointerEventsMapping () const noexcept |
|
void | forceUpdateLayoutRecursively () override |
|
void | markMinContentSizeInvalid () override |
|
void | markPixelDataInvalid (ARect< int > invalidArea) override |
| A view requests to redraw it and passes it's coords relative to this. More...
|
|
void | redraw () |
| Request window manager to redraw this AView.
|
|
AWindowBase * | getWindow () const |
| Determines window which this AView belongs to. More...
|
|
virtual void | drawStencilMask (ARenderContext ctx) |
|
virtual void | postRender (ARenderContext ctx) |
| Performs post-draw routines of this AView. Noone should call this function except rendering routine. More...
|
|
void | popStencilIfNeeded (ARenderContext ctx) |
|
const AVector< AString > & | getAssNames () const noexcept |
|
glm::ivec2 | getPosition () const noexcept |
| Top left corner's position relative to top left corner's position of the parent AView.
|
|
glm::ivec2 | getCenterPointInWindow () const noexcept |
| The center point position of the view relatively to top left corner of the window. More...
|
|
glm::ivec2 | getSize () const noexcept |
| Size, including content area, border and padding.
|
|
glm::ivec2 | getMinSize () const noexcept |
|
void | setMinSize (glm::ivec2 minSize) noexcept |
|
void | setExtraStylesheet (_< AStylesheet > extraStylesheet) |
|
void | setExtraStylesheet (AStylesheet &&extraStylesheet) |
|
const _< AStylesheet > & | extraStylesheet () const noexcept |
|
AOverflow | getOverflow () const |
| Determines whether display graphics that go out of the bounds of this AView or not.
|
|
void | setOverflow (AOverflow overflow) |
|
AOverflowMask | getOverflowMask () const |
| Controls how does the overflow (stencil) mask is produced.
|
|
void | setOverflowMask (AOverflowMask overflow) |
|
float | getBorderRadius () const |
| border-radius, specified in ASS.
|
|
void | setBorderRadius (float radius) |
|
int | getWidth () const |
|
int | getHeight () const |
|
int | getTotalOccupiedWidth () const |
|
int | getTotalOccupiedHeight () const |
|
glm::ivec2 | getMinimumSizePlusMargin () |
|
const ABoxFields & | getMargin () |
| Returns the margin. More...
|
|
void | setMargin (const ABoxFields &margin) |
| Sets the margin. More...
|
|
const ABoxFields & | getPadding () |
| Returns the padding. More...
|
|
void | setPadding (const ABoxFields &padding) |
| Sets the padding. More...
|
|
virtual AString | debugString () const |
| String which helps to identify this object in debug string output (i.e., for logging)
|
|
int | getTotalFieldHorizontal () const |
|
int | getTotalFieldVertical () const |
|
glm::ivec2 | getTotalFieldSize () const |
|
AViewContainerBase * | getParent () const |
| Parent AView.
|
|
const AOptional< ACursor > & | getCursor () const |
| Determines shape which should pointer take when it's above this AView.
|
|
void | setCursor (AOptional< ACursor > cursor) |
|
glm::ivec2 | getContentMinimumSize () noexcept |
|
bool | isContentMinimumSizeInvalidated () noexcept |
|
bool | hasFocus () const |
|
virtual int | getMinimumWidth () |
|
virtual int | getMinimumHeight () |
|
glm::ivec2 | getMinimumSize () |
|
void | setMaxSize (const glm::ivec2 &maxSize) |
|
const glm::ivec2 & | getMaxSize () const |
|
int | getContentWidth () const |
|
int | getContentHeight () const |
|
const glm::ivec2 & | getExpanding () const |
|
void | setExpanding (glm::ivec2 expanding) |
| Changes the expanding of view. More...
|
|
void | setExpanding (int expanding) |
| Changes the expanding of view. More...
|
|
void | setExpanding () |
|
const _< AAnimator > & | getAnimator () const |
|
void | setAnimator (const _< AAnimator > &animator) |
|
void | getTransform (glm::mat4 &transform) const |
|
int | getExpandingHorizontal () const |
|
int | getExpandingVertical () const |
|
aui::float_within_0_1 | getOpacity () const |
|
void | setOpacity (aui::float_within_0_1 opacity) |
|
void | setSizeForced (glm::ivec2 size) |
|
void | setGeometry (const glm::ivec2 &position, const glm::ivec2 &size) |
|
bool | isBlockClicksWhenPressed () const noexcept |
|
void | setBlockClicksWhenPressed (bool value) noexcept |
|
const glm::ivec2 & | getFixedSize () |
| Fixed size. More...
|
|
void | setFixedSize (glm::ivec2 size) |
|
bool | isMouseHover () const noexcept |
|
bool | isPressed () const noexcept |
|
bool | isPressed (APointerIndex index) const noexcept |
|
bool | isEnabled () const noexcept |
|
bool | isFocused () const |
|
bool | isMouseEntered () const |
|
Visibility | getVisibility () const |
|
Visibility | getVisibilityRecursive () const |
|
void | setVisibility (Visibility visibility) noexcept |
|
void | setVisible (bool visible) noexcept |
|
MouseCollisionPolicy | getMouseCollisionPolicy () const |
|
void | setMouseCollisionPolicy (MouseCollisionPolicy mouseCollisionPolicy) |
|
void | click () |
|
void | pack () |
| Sets minimal size.
|
|
void | focus (bool needFocusChainUpdate=true) |
| Requests focus for this AView. More...
|
|
bool | hasIndirectParent (const _< AView > &v) |
| Checks if the specified view is an indirect parent of this view.
|
|
glm::ivec2 | getPositionInWindow () const |
|
void | addAssName (const AString &assName) |
| Adds an ASS class to this AView. More...
|
|
void | removeAssName (const AString &assName) |
| Removes an ASS class to this AView. More...
|
|
AView & | operator<< (const AString &assName) |
|
const _< AAssHelper > & | getAssHelper () const |
|
const ass::PropertyListRecursive & | getCustomAss () const |
|
void | setCustomStyle (ass::PropertyListRecursive rule) |
|
void | ensureAssUpdated () |
|
_< AView > | sharedPtr () |
|
_weak< AView > | weakPtr () |
|
virtual bool | handlesNonMouseNavigation () |
|
void | setDisabled (bool disabled=true) |
|
void | updateEnableState () |
|
void | enable () |
|
void | disable () |
|
void | operator+ (ass::PropertyListRecursive rule) |
| Helper function for kAUI.h:with_style.
|
|
void | invalidateStateStyles () |
| Updates state selectors for ASS. More...
|
|
virtual bool | wantsTouchscreenKeyboard () |
| Returns true if view is textfield-like view which requires touchscreen keyboard when clicked.
|
|
void | setSkipUntilLayoutUpdate (bool skipUntilLayoutUpdate) |
|
void | setFloating (AFloat f) noexcept |
| Set floating value for AText.
|
|
AFloat | getFloating () const noexcept |
| Floating value for AText.
|
|
_< AObject > | sharedPtr () |
|
_weak< AObject > | weakPtr () |
|
void | clearSignals () noexcept |
|
template<AAnySignal Signal, ACompatibleSlotFor< Signal > Function> |
void | connect (Signal &signal, Function &&function) |
|
void | setSignalsEnabled (bool enabled) |
|
bool | isSignalsEnabled () const noexcept |
|
template<ASignalInvokable T> |
void | operator^ (T &&t) |
|
_< AAbstractThread > | getThread () const |
|
bool | isSlotsCallsOnlyOnMyThread () const noexcept |
|
void | setSlotsCallsOnlyOnMyThread (bool slotsCallsOnlyOnMyThread) |
|
| noncopyable (const noncopyable &)=delete |
|
noncopyable & | operator= (const noncopyable &)=delete |
|