.. index:: pair: class; EE::UI::Charts::UIChart .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart: class EE::UI::Charts::UIChart ============================= .. toctree:: :hidden: struct_EE_UI_Charts_UIChart_Layout.rst struct_EE_UI_Charts_UIChart_SeriesCache.rst struct_EE_UI_Charts_UIChart_ViewAxis.rst Overview ~~~~~~~~ Widget rendering one :ref:`ChartModel `. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class UIChart: public :ref:`EE::UI::UIWidget` { public: // structs struct :ref:`Layout`; struct :ref:`SeriesCache`; struct :ref:`ViewAxis`; // methods static UIChart* :ref:`New`(); :ref:`ChartModel`& :ref:`model`() const; std::shared_ptr<:ref:`ChartModel`> :ref:`sharedModel`() const; void :ref:`setModel`(std::shared_ptr<:ref:`ChartModel`> model); :ref:`LineSeries`& :ref:`addLineSeries`(:ref:`String` name); :ref:`ChartAxis`& :ref:`xAxis`() const; :ref:`ChartAxis`& :ref:`yAxis`() const; void :ref:`fit`(); :ref:`DataRange` :ref:`axisRange`(const :ref:`ChartAxis`& axis); void :ref:`setAxisRange`(:ref:`ChartAxis`& axis, :ref:`DataRange` range); void :ref:`setFollowX`(double span); void :ref:`setChartStyle`(:ref:`ChartStyle` style); const :ref:`ChartStyle`& :target:`chartStyle`() const; virtual void :ref:`draw`(); }; Inherited Members ----------------- .. ref-code-block:: cpp :class: doxyrest-overview-inherited-code-block public: // typedefs typedef std::function`*)> :ref:`EventCallback`; typedef std::function`*)> :ref:`EventCallback`; // methods virtual void :ref:`setPosition`(const :ref:`Vector2f`& position); virtual void :ref:`setRotation`(float angle); virtual void :ref:`setScale`(float factorX, float factorY); virtual void :ref:`setScale`(const :ref:`Vector2f`& factors); virtual void :ref:`setScaleOrigin`(float x, float y); virtual void :ref:`setScaleOrigin`(const :ref:`Vector2f`& origin); virtual void :ref:`setRotationOrigin`(float x, float y); virtual void :ref:`setRotationOrigin`(const :ref:`Vector2f`& origin); virtual const :ref:`Vector2f`& :ref:`getRotationOrigin`() const; virtual const :ref:`Vector2f`& :ref:`getPosition`() const; virtual const float& :ref:`getRotation`() const; virtual const :ref:`Vector2f`& :ref:`getScale`() const; virtual const :ref:`Vector2f`& :ref:`getScaleOrigin`() const; void :ref:`move`(float offsetX, float offsetY); void :ref:`move`(const :ref:`Vector2f`& offset); void :ref:`rotate`(float angle); void :ref:`scale`(float factorX, float factorY); void :ref:`scale`(const :ref:`Vector2f`& factor); const :ref:`Transform`& :ref:`getTransform`() const; const :ref:`Transform`& :ref:`getInverseTransform`() const; static :ref:`Node`* :ref:`New`(); virtual void :ref:`worldToNodeTranslation`(:ref:`Vector2f`& position) const; virtual void :ref:`nodeToWorldTranslation`(:ref:`Vector2f`& position) const; virtual void :ref:`worldToNode`(:ref:`Vector2i`& pos) const; virtual void :ref:`nodeToWorld`(:ref:`Vector2i`& pos) const; virtual void :ref:`worldToNode`(:ref:`Vector2f`& pos) const; virtual void :ref:`nodeToWorld`(:ref:`Vector2f`& pos) const; virtual :ref:`Uint32` :ref:`getType`() const; virtual bool :ref:`isType`(const :ref:`Uint32`& type) const; bool :ref:`isTextNode`() const; void :ref:`messagePost`(const :ref:`NodeMessage`* Msg); virtual void :ref:`setPosition`(const :ref:`Vector2f`& Pos); virtual :ref:`Node`* :ref:`setPosition`(const :ref:`Float`& x, const :ref:`Float`& y); virtual :ref:`Node`* :ref:`setSize`(const :ref:`Sizef`& size); :ref:`Node`* :ref:`setSize`(const :ref:`Float`& Width, const :ref:`Float`& Height); virtual const :ref:`Sizef`& :ref:`getSize`() const; const :ref:`Sizef`& :ref:`getPixelsSize`() const; :ref:`Node`* :ref:`setVisible`(const bool& visible, bool emitEventNotification = true); :ref:`Node`* :ref:`setChildrenVisibility`(bool visible, bool emitEventNotification = true); bool :ref:`isVisible`() const; bool :ref:`hasVisibility`() const; :ref:`Node`* :ref:`setEnabled`(const bool& enabled); bool :ref:`isEnabled`() const; bool :ref:`isDisabled`() const; :ref:`Node`* :ref:`getParent`() const; :ref:`Node`* :ref:`setParent`(:ref:`Node`* parent); virtual void :ref:`close`(); virtual void :ref:`draw`(); virtual void :ref:`update`(const :ref:`Time`& time); virtual void :ref:`scheduledUpdate`(const :ref:`Time`& time); :ref:`Node`* :ref:`getNextNode`() const; :ref:`Node`* :ref:`getPrevNode`() const; :ref:`Node`* :ref:`getNextNodeLoop`() const; :ref:`Node`* :ref:`setData`(const :ref:`UintPtr`& data); const :ref:`UintPtr`& :ref:`getData`() const; :ref:`Node`* :ref:`setBlendMode`(const :ref:`BlendMode`& blend); const :ref:`BlendMode`& :ref:`getBlendMode`() const; :ref:`Node`* :ref:`toFront`(); :ref:`Node`* :ref:`toBack`(); void :ref:`toPosition`(const :ref:`Uint32`& position); const :ref:`Uint32`& :ref:`getNodeFlags`() const; void :ref:`setNodeFlags`(const :ref:`Uint32`& flags); bool :ref:`isSceneNode`() const; bool :ref:`isUISceneNode`() const; bool :ref:`isUINode`() const; bool :ref:`isWidget`() const; bool :ref:`isWindow`() const; bool :ref:`isLayout`() const; bool :ref:`isClipped`() const; bool :ref:`isRotated`() const; bool :ref:`isScaled`() const; bool :ref:`isFrameBuffer`() const; bool :ref:`isMouseOver`() const; bool :ref:`isMouseOverMeOrChildren`() const; bool :ref:`isMeOrParentTreeVisible`() const; bool :ref:`isMeOrParentTreeRotated`() const; bool :ref:`isMeOrParentTreeScaled`() const; bool :ref:`isMeOrParentTreeScaledOrRotated`() const; bool :ref:`isMeOrParentTreeScaledOrRotatedOrFrameBuffer`() const; :ref:`Uint32` :ref:`addEventListener`(const :ref:`Uint32`& eventType, const :ref:`EventCallback`& callback); :ref:`Uint32` :ref:`on`(const :ref:`Uint32`& eventType, const :ref:`EventCallback`& callback); :ref:`EventConnection` :ref:`connect`(const :ref:`Uint32`& eventType, :ref:`EventCallback` callback); :ref:`Uint32` :ref:`onClick`(const std::function`*)>& callback, const :ref:`MouseButton`& button = MouseButton::EE_BUTTON_LEFT); :ref:`Uint32` :ref:`onDoubleClick`(const std::function`*)>& callback, const :ref:`MouseButton`& button = MouseButton::EE_BUTTON_LEFT); void :ref:`removeEventsOfType`(const :ref:`Uint32`& eventType); void :ref:`removeEventListener`(const :ref:`Uint32`& callbackId); void :ref:`removeEventListener`(const std::vector<:ref:`Uint32`>& callbacksIds); void :ref:`clearEventListener`(); :ref:`Node`* :ref:`getFirstChild`() const; :ref:`Node`* :ref:`getLastChild`() const; const :ref:`Polygon2f`& :ref:`getWorldPolygon`(); const :ref:`Rectf`& :ref:`getWorldBounds`(); bool :ref:`isParentOf`(const :ref:`Node`* node) const; void :ref:`sendEvent`(const :ref:`Event`* Event); void :ref:`sendMouseEvent`(const :ref:`Uint32`& Event, const :ref:`Vector2i`& position, const :ref:`Uint32`& flags); void :ref:`sendCommonEvent`(const :ref:`Uint32`& Event); void :ref:`sendTextEvent`(const :ref:`Uint32`& event, const std::string& text); void :ref:`closeAllChildren`(); const std::string& :ref:`getId`() const; virtual :ref:`Node`* :ref:`setId`(const std::string& id); const :ref:`String::HashType`& :ref:`getIdHash`() const; :ref:`Node`* :ref:`find`(const std::string& id) const; :ref:`Node`* :ref:`hasChild`(const std::string& id) const; template T* :ref:`find`(const std::string& id) const; template T* :ref:`bind`(const std::string& id, T*& node); template T* :ref:`asType`(); template const T* :ref:`asConstType`() const; :ref:`Node`* :ref:`findByType`(const :ref:`Uint32`& type) const; template T* :ref:`findByType`(const :ref:`Uint32`& type) const; template T* :ref:`bindByType`(const :ref:`Uint32`& type, T*& node); std::vector<:ref:`Node`*> :ref:`findAllByType`(const :ref:`Uint32`& type) const; template std::vector :ref:`findAllByType`(const :ref:`Uint32`& type) const; bool :ref:`inNodeTree`(:ref:`Node`* node) const; bool :ref:`isReverseDraw`() const; void :ref:`setReverseDraw`(bool reverseDraw); void :ref:`invalidateDraw`(); virtual void :ref:`setRotation`(float angle); void :ref:`setRotation`(const :ref:`Float`& angle, const :ref:`OriginPoint`& center); const :ref:`OriginPoint`& :ref:`getRotationOriginPoint`() const; void :ref:`setRotationOriginPoint`(const :ref:`OriginPoint`& center); void :ref:`setRotationOriginPointPixels`(const :ref:`OriginPoint`& center); void :ref:`setRotationOriginPointX`(const std::string& xEq); void :ref:`setRotationOriginPointY`(const std::string& yEq); :ref:`Vector2f` :ref:`getRotationCenter`() const; void :ref:`setScale`(const :ref:`Float`& scale); virtual void :ref:`setScale`(const :ref:`Vector2f`& scale); void :ref:`setScale`(const :ref:`Vector2f`& scale, const :ref:`OriginPoint`& center); void :ref:`setScale`(const :ref:`Float`& scale, const :ref:`OriginPoint`& center); const :ref:`OriginPoint`& :ref:`getScaleOriginPoint`() const; void :ref:`setScaleOriginPoint`(const :ref:`OriginPoint`& center); void :ref:`setScaleOriginPointPixels`(const :ref:`OriginPoint`& center); void :ref:`setScaleOriginPointX`(const std::string& xEq); void :ref:`setScaleOriginPointY`(const std::string& yEq); :ref:`Vector2f` :ref:`getScaleCenter`() const; virtual void :ref:`setScale`(float factorX, float factorY); virtual void :ref:`setScaleOrigin`(float x, float y); virtual void :ref:`setRotationOrigin`(float x, float y); const :ref:`Float`& :ref:`getAlpha`() const; virtual void :ref:`setAlpha`(const :ref:`Float`& alpha); virtual void :ref:`setChildrenAlpha`(const :ref:`Float`& alpha); :ref:`ActionManager`* :ref:`getActionManager`() const; :ref:`Node`* :ref:`runAction`(:ref:`Action`* action); bool :ref:`removeAction`(:ref:`Action`* action); bool :ref:`removeActions`(const std::vector<:ref:`Action`*>& actions); bool :ref:`removeActionsByTag`(const :ref:`Action::UniqueID`& tag); std::vector<:ref:`Action`*> :ref:`getActions`(); std::vector<:ref:`Action`*> :ref:`getActionsByTag`(const :ref:`Action::UniqueID`& tag); void :ref:`getActionsByTag`(const :ref:`Action::UniqueID`& tag, :ref:`SmallVector`<:ref:`Action`*, 4>& actions); void :ref:`clearActions`(); :ref:`Transform` :ref:`getLocalTransform`() const; :ref:`Transform` :ref:`getGlobalTransform`() const; :ref:`Transform` :ref:`getNodeToWorldTransform`() const; :ref:`Transform` :ref:`getWorldToNodeTransform`() const; :ref:`Vector2f` :ref:`convertToNodeSpace`(const :ref:`Vector2f`& worldPoint) const; :ref:`Vector2f` :ref:`convertToWorldSpace`(const :ref:`Vector2f`& nodePoint) const; :ref:`Rectf` :ref:`getLocalBounds`() const; bool :ref:`hasFocus`() const; bool :ref:`hasFocusWithin`() const; virtual :ref:`Node`* :ref:`setFocus`(:ref:`NodeFocusReason` reason = :ref:`NodeFocusReason::Unknown`); :ref:`Node`* :ref:`getFirstWidget`() const; :ref:`Node`* :ref:`getParentWidget`() const; void :ref:`enableReportSizeChangeToChildren`(); void :ref:`disableReportSizeChangeToChildren`(); bool :ref:`reportSizeChangeToChildren`() const; :ref:`Node`* :ref:`centerHorizontal`(); :ref:`Node`* :ref:`centerVertical`(); :ref:`Node`* :ref:`center`(); :ref:`Node`* :ref:`clipEnable`(); :ref:`Node`* :ref:`clipDisable`(); void :ref:`writeNodeFlag`(const :ref:`Uint32`& Flag, const :ref:`Uint32`& Val); :ref:`SceneNode`* :ref:`getSceneNode`() const; :ref:`EventDispatcher`* :ref:`getEventDispatcher`() const; virtual bool :ref:`isDrawInvalidator`() const; bool :ref:`invalidated`() const; virtual void :ref:`invalidate`(:ref:`Node`* invalidator); :ref:`Uint32` :ref:`getChildCount`() const; :ref:`Uint32` :ref:`getChildOfTypeCount`(const :ref:`Uint32`& type) const; :ref:`Node`* :ref:`getChildAt`(:ref:`Uint32` index) const; :ref:`Uint32` :ref:`getNodeIndex`() const; :ref:`Uint32` :ref:`getNodeOfTypeIndex`() const; void :ref:`runOnMainThread`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& delay = Seconds(0), const :ref:`Action::UniqueID`& uniqueIdentifier = 0); bool :ref:`ensureMainThread`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Action::UniqueID`& uniqueIdentifier = 0); void :ref:`setTimeout`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& delay = Seconds(0), const :ref:`Action::UniqueID`& uniqueIdentifier = 0); void :ref:`setInterval`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& interval, const :ref:`Action::UniqueID`& uniqueIdentifier = 0); void :ref:`debounce`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& delay, const :ref:`Action::UniqueID`& uniqueIdentifier); bool :ref:`isChild`(:ref:`Node`* child) const; bool :ref:`inParentTreeOf`(:ref:`Node`* child) const; bool :ref:`inParentTreeOfType`(:ref:`Uint32` type) const; :ref:`Node`* :ref:`getParentOfType`(:ref:`Uint32` type) const; void :ref:`setLoadingState`(bool loading); bool :ref:`isLoadingState`() const; virtual void :ref:`onIdChange`(); bool :ref:`isClosing`() const; bool :ref:`isDestroying`() const; bool :ref:`inClosingTree`() const; bool :ref:`isClosingChildren`() const; virtual :ref:`Node`* :ref:`overFind`(const :ref:`Vector2f`& Point); void :ref:`detach`(); void :ref:`forEachNode`(std::function`*)> func); void :ref:`forEachChild`(std::function`*)> func); virtual void :ref:`nodeDraw`(); :ref:`Uint32` :ref:`forceKeyDown`(const :ref:`KeyEvent`& event); :ref:`Uint32` :ref:`foceKeyUp`(const :ref:`KeyEvent`& event); :ref:`Uint32` :ref:`forceTextInput`(const :ref:`TextInputEvent`& Event); const :ref:`Vector2f`& :ref:`getScreenPos`() const; :ref:`Rectf` :ref:`getScreenRect`() const; bool :ref:`hasEventsOfType`(const :ref:`Uint32`& eventType) const; void :ref:`clipSmartEnable`(const :ref:`Int32`& x, const :ref:`Int32`& y, const :ref:`Uint32`& Width, const :ref:`Uint32`& Height); void :ref:`clipSmartDisable`(); static :ref:`UINode`* :ref:`New`(); virtual void :ref:`worldToNodeTranslation`(:ref:`Vector2f`& position) const; virtual void :ref:`nodeToWorldTranslation`(:ref:`Vector2f`& position) const; virtual void :ref:`worldToNode`(:ref:`Vector2i`& pos) const; virtual void :ref:`nodeToWorld`(:ref:`Vector2i`& pos) const; virtual void :ref:`worldToNode`(:ref:`Vector2f`& pos) const; virtual void :ref:`nodeToWorld`(:ref:`Vector2f`& pos) const; virtual :ref:`Uint32` :ref:`getType`() const; virtual bool :ref:`isType`(const :ref:`Uint32`& type) const; virtual void :ref:`setPosition`(const :ref:`Vector2f`& Pos); virtual :ref:`Node`* :ref:`setPosition`(const :ref:`Float`& x, const :ref:`Float`& y); :ref:`UINode`* :ref:`setPixelsPosition`(const :ref:`Vector2f`& position); :ref:`UINode`* :ref:`setPixelsPosition`(const :ref:`Float`& x, const :ref:`Float`& y); virtual const :ref:`Vector2f`& :ref:`getPosition`() const; const :ref:`Vector2f`& :ref:`getPixelsPosition`() const; virtual :ref:`Node`* :ref:`setSize`(const :ref:`Sizef`& size); virtual :ref:`Node`* :ref:`setSize`(const :ref:`Float`& Width, const :ref:`Float`& Height); :ref:`UINode`* :ref:`setPixelsSize`(const :ref:`Sizef`& size); :ref:`UINode`* :ref:`setPixelsSize`(const :ref:`Float`& x, const :ref:`Float`& y); virtual const :ref:`Sizef`& :ref:`getSize`() const; :ref:`Rect` :ref:`getRect`() const; :ref:`Rectf` :ref:`getRectBox`() const; virtual void :ref:`draw`(); :ref:`Uint32` :ref:`getHorizontalAlign`() const; :ref:`UINode`* :ref:`setHorizontalAlign`(:ref:`Uint32` halign); :ref:`Uint32` :ref:`getVerticalAlign`() const; :ref:`UINode`* :ref:`setVerticalAlign`(:ref:`Uint32` valign); :ref:`UINode`* :ref:`setGravity`(:ref:`Uint32` hvalign); :ref:`UINode`* :ref:`setHorizontalAlignment`(:ref:`UIHorizontalAlignment` alignment); :ref:`UIHorizontalAlignment` :ref:`getHorizontalAlignment`() const; :ref:`UIDirection` :ref:`getDirection`() const; :ref:`UIDirectionValue` :ref:`getDirectionOverride`() const; bool :ref:`hasDirectionOverride`() const; :ref:`UINode`* :ref:`setDirection`(:ref:`UIDirection` direction); :ref:`UINode`* :ref:`setDirectionOverride`(:ref:`UIDirectionValue` direction); :ref:`UINode`* :ref:`clearDirectionOverride`(); bool :ref:`isRTL`() const; bool :ref:`isLTR`() const; bool :ref:`isDirectionExplicit`() const; :ref:`TextDirection` :ref:`getTextBaseDirection`() const; :ref:`UINode`* :ref:`setMirrorOnRTL`(bool mirror); bool :ref:`isMirroredOnRTL`() const; :ref:`UINodeDrawable`* :ref:`setBackgroundFillEnabled`(bool enabled); :ref:`UINode`* :ref:`setBackgroundDrawable`(:ref:`DrawablePtr` drawable, int index = 0); :ref:`UINode`* :ref:`setBackgroundDrawable`(const std::string& drawable, int index); :ref:`UINode`* :ref:`setBackgroundColor`(const :ref:`Color`& color); :ref:`UINode`* :ref:`setBackgroundTint`(const :ref:`Color`& color, int index); :ref:`UINode`* :ref:`setBackgroundPositionX`(const std::string& positionX, int index = 0); :ref:`UINode`* :ref:`setBackgroundPositionY`(const std::string& positionY, int index = 0); :ref:`UINode`* :ref:`setBackgroundRepeat`(const std::string& repeatRule, int index = 0); :ref:`UINode`* :ref:`setBackgroundSize`(const std::string& size, int index = 0); :ref:`UINode`* :ref:`setBackgroundOrigin`(const std::string& origin, int index = 0); :ref:`UINode`* :ref:`setBackgroundClip`(const std::string& clip, int index = 0); :ref:`UINode`* :ref:`setBackgroundAttachment`(const std::string& attachment, int index = 0); :ref:`Color` :ref:`getBackgroundColor`() const; :ref:`Color` :ref:`getBackgroundTint`(int index = 0) const; :ref:`UINode`* :ref:`setBorderRadius`(const unsigned int& corners); :ref:`UINode`* :ref:`setTopLeftRadius`(const std::string& radius); :ref:`UINode`* :ref:`setTopRightRadius`(const std::string& radius); :ref:`UINode`* :ref:`setBottomLeftRadius`(const std::string& radius); :ref:`UINode`* :ref:`setBottomRightRadius`(const std::string& radius); :ref:`Uint32` :ref:`getBorderRadius`() const; :ref:`UINodeDrawable`* :ref:`setForegroundFillEnabled`(bool enabled); :ref:`UINode`* :ref:`setForegroundDrawable`(:ref:`DrawablePtr` drawable, int index = 0); :ref:`UINode`* :ref:`setForegroundDrawable`(const std::string& drawable, int index = 0); :ref:`Color` :ref:`getForegroundColor`() const; :ref:`Color` :ref:`getForegroundTint`(int index) const; :ref:`UINode`* :ref:`setForegroundColor`(const :ref:`Color`& color); :ref:`UINode`* :ref:`setForegroundTint`(const :ref:`Color`& color, int index); :ref:`UINode`* :ref:`setForegroundPositionX`(const std::string& positionX, int index = 0); :ref:`UINode`* :ref:`setForegroundPositionY`(const std::string& positionY, int index = 0); :ref:`UINode`* :ref:`setForegroundRepeat`(const std::string& repeatRule, int index = 0); :ref:`UINode`* :ref:`setForegroundSize`(const std::string& size, int index = 0); :ref:`UINode`* :ref:`setForegroundRadius`(const unsigned int& corners); :ref:`Uint32` :ref:`getForegroundRadius`() const; :ref:`UINode`* :ref:`setForegroundTopLeftRadius`(const std::string& radius); :ref:`UINode`* :ref:`setForegroundTopRightRadius`(const std::string& radius); :ref:`UINode`* :ref:`setForegroundBottomLeftRadius`(const std::string& radius); :ref:`UINode`* :ref:`setForegroundBottomRightRadius`(const std::string& radius); const :ref:`Sizef`& :ref:`getForegroundTopLeftRadius`() const; const :ref:`Sizef`& :ref:`getForegroundTopRightRadius`() const; const :ref:`Sizef`& :ref:`getForegroundBottomLeftRadius`() const; const :ref:`Sizef`& :ref:`getForegroundBottomRightRadius`() const; :ref:`UIBorderDrawable`* :ref:`setBorderEnabled`(bool enabled) const; :ref:`UINode`* :ref:`setBorderColor`(const :ref:`Color`& color); :ref:`Color` :ref:`getBorderColor`(); :ref:`UINode`* :ref:`setBorderWidth`(const unsigned int& width); :ref:`Float` :ref:`getBorderWidth`() const; const :ref:`Uint64`& :ref:`getFlags`() const; virtual :ref:`UINode`* :ref:`setFlags`(const :ref:`Uint64`& flags); virtual :ref:`UINode`* :ref:`unsetFlags`(const :ref:`Uint64`& flags); virtual :ref:`UINode`* :ref:`resetFlags`(:ref:`Uint64` newFlags = 0); :ref:`UINodeDrawable`* :ref:`getBackground`() const; bool :ref:`hasBackground`() const; :ref:`UINodeDrawable`* :ref:`getForeground`() const; bool :ref:`hasForeground`() const; :ref:`UIBorderDrawable`* :ref:`getBorder`() const; void :ref:`setThemeByName`(const std::string& Theme); virtual void :ref:`setTheme`(:ref:`UITheme`* Theme); virtual :ref:`UINode`* :ref:`setThemeSkin`(:ref:`UITheme`* Theme, const std::string& skinName); virtual :ref:`UINode`* :ref:`setThemeSkin`(const std::string& skinName); void :ref:`setThemeToChildren`(:ref:`UITheme`* Theme); :ref:`UISkin`* :ref:`getSkin`() const; virtual :ref:`UINode`* :ref:`setSkin`(const :ref:`UISkin`& Skin); :ref:`UINode`* :ref:`setSkin`(:ref:`UISkin`* skin); :ref:`UINode`* :ref:`setSkinColor`(const :ref:`Color`& color); const :ref:`Color`& :ref:`getSkinColor`() const; void :ref:`removeSkin`(); virtual void :ref:`pushState`(const :ref:`Uint32`& State, bool emitEvent = true); virtual void :ref:`popState`(const :ref:`Uint32`& State, bool emitEvent = true); :ref:`Sizef` :ref:`getSkinSize`(const :ref:`Uint32`& state = :ref:`UIState::StateFlagNormal`) const; void :ref:`applyDefaultTheme`(); :ref:`Node`* :ref:`getWindowContainer`() const; bool :ref:`isTabFocusable`() const; bool :ref:`isDragging`() const; void :ref:`setDragging`(bool dragging, bool emitDropEvent = true); void :ref:`startDragging`(const :ref:`Vector2f`& position); bool :ref:`ownsChildPosition`() const; const :ref:`Vector2f`& :ref:`getDragPoint`() const; void :ref:`setDragPoint`(const :ref:`Vector2f`& Point); bool :ref:`isDragEnabled`() const; void :ref:`setDragEnabled`(const bool& enable); void :ref:`setDragButton`(const :ref:`Uint32`& Button); const :ref:`Uint32`& :ref:`getDragButton`() const; virtual :ref:`Node`* :ref:`setFocus`(:ref:`NodeFocusReason` reason = :ref:`NodeFocusReason::Unknown`); :ref:`Float` :ref:`getPropertyRelativeTargetContainerLength`(const :ref:`CSS::PropertyRelativeTarget`& relativeTarget, const :ref:`Float`& defaultValue = 0, const :ref:`Uint32`& propertyIndex = 0) const; virtual :ref:`Float` :ref:`convertLength`(const :ref:`CSS::StyleSheetLength`& length, const :ref:`Float`& containerLength) const; std::string :ref:`pixelsLengthToString`(:ref:`Float` pixels) const; :ref:`Float` :ref:`convertLengthAsDp`(const :ref:`CSS::StyleSheetLength`& length, const :ref:`Float`& containerLength) const; :ref:`Float` :ref:`lengthFromValue`(const std::string& value, const :ref:`CSS::PropertyRelativeTarget`& relativeTarget, const :ref:`Float`& defaultValue, const :ref:`Uint32`& propertyIndex) const; :ref:`Float` :ref:`lengthFromValue`(std::string_view value, const :ref:`CSS::PropertyRelativeTarget`& relativeTarget, const :ref:`Float`& defaultValue = 0, const :ref:`Uint32`& propertyIndex = 0) const; :ref:`Float` :ref:`lengthFromValue`(const char* value, const :ref:`CSS::PropertyRelativeTarget`& relativeTarget, const :ref:`Float`& defaultValue = 0, const :ref:`Uint32`& propertyIndex = 0) const; :ref:`Float` :ref:`lengthFromValue`(const :ref:`CSS::StyleSheetProperty`& property, const :ref:`Float`& defaultValue = 0) const; :ref:`Float` :ref:`lengthFromValueAsDp`(const std::string& value, const :ref:`CSS::PropertyRelativeTarget`& relativeTarget, const :ref:`Float`& defaultValue = 0, const :ref:`Uint32`& propertyIndex = 0) const; :ref:`Float` :ref:`lengthFromValueAsDp`(const :ref:`CSS::StyleSheetProperty`& property, const :ref:`Float`& defaultValue = 0) const; :ref:`UISceneNode`* :ref:`getUISceneNode`() const; :ref:`Input`* :ref:`getInput`() const; void :ref:`setMinWidth`(const :ref:`Float`& width); void :ref:`setMinHeight`(const :ref:`Float`& height); void :ref:`setMinSize`(const :ref:`Sizef`& size); const :ref:`Sizef`& :ref:`getCurMinSize`() const; :ref:`Rectf` :ref:`getLocalDpBounds`() const; virtual void :ref:`nodeDraw`(); void :ref:`clearForeground`(); void :ref:`clearBackground`(); const :ref:`ClipType`& :ref:`getClipType`() const; :ref:`UINode`* :ref:`setClipType`(const :ref:`ClipType`& clipType); bool :ref:`hasBorder`() const; virtual const :ref:`Rectf`& :ref:`getPixelsPadding`() const; const std::string& :ref:`getMinWidthEq`() const; void :ref:`setMinSizeEq`(const std::string& minWidthEq, const std::string& minHeightEq); void :ref:`setMinWidthEq`(const std::string& minWidthEq); const std::string& :ref:`getMinHeightEq`() const; void :ref:`setMinHeightEq`(const std::string& minHeightEq); const std::string& :ref:`getMaxWidthEq`() const; void :ref:`setMaxSizeEq`(const std::string& maxWidthEq, const std::string& maxHeightEq); void :ref:`setMaxWidthEq`(const std::string& maxWidthEq); const std::string& :ref:`getMaxHeightEq`() const; void :ref:`setMaxHeightEq`(const std::string& maxHeightEq); :ref:`Sizef` :ref:`getMinSize`() const; :ref:`Sizef` :ref:`getMaxSize`() const; :ref:`Sizef` :ref:`getMinSizePx`() const; :ref:`Sizef` :ref:`getMaxSizePx`() const; :ref:`Sizef` :ref:`fitMinMaxSizeDp`(const :ref:`Sizef`& size) const; :ref:`Sizef` :ref:`fitMinMaxSizePx`(const :ref:`Sizef`& size) const; virtual bool :ref:`isScrollable`() const; :ref:`Float` :ref:`getAbsoluteFontSize`(const :ref:`UIWidget`* widget) const; bool :ref:`isCreatingNode`() const; void :ref:`click`(); static :ref:`UIWidget`* :ref:`New`(); static :ref:`UIWidget`* :ref:`NewWithTag`(const std::string& tag); virtual :ref:`AccessibilityRole` :ref:`getAccessibilityRole`() const; virtual :ref:`Uint8` :ref:`getAccessibilityHeadingLevel`() const; virtual :ref:`String` :ref:`getAccessibilityName`() const; virtual :ref:`String` :ref:`getAccessibilityDescription`() const; virtual :ref:`String` :ref:`getAccessibilityValue`() const; virtual :ref:`AccessibilityRangeInfo` :ref:`getAccessibilityRange`() const; virtual :ref:`AccessibilityState` :ref:`getAccessibilityState`() const; virtual :ref:`AccessibilityActions` :ref:`getAccessibilityActions`() const; virtual bool :ref:`performAccessibilityAction`(const :ref:`AccessibilityActionRequest`& request); bool :ref:`isAccessibilityElement`() const; bool :ref:`isAccessibilityHidden`() const; :ref:`UIWidget`* :ref:`setAccessibilityRole`(:ref:`AccessibilityRole` role); :ref:`UIWidget`* :ref:`setAccessibilityLabel`(const :ref:`String`& label); :ref:`UIWidget`* :ref:`setAccessibilityDescription`(const :ref:`String`& description); :ref:`UIWidget`* :ref:`setAccessibilityHidden`(bool hidden); :ref:`UIWidget`* :ref:`setAccessibilityLabelledBy`(const std::string& id); const std::string& :ref:`getAccessibilityLabelledBy`() const; :ref:`UIWidget`* :ref:`setAccessibilityDescribedBy`(const std::string& id); const std::string& :ref:`getAccessibilityDescribedBy`() const; :ref:`UIWidget`* :ref:`setAccessibilityLive`(:ref:`AccessibilityLive` live); :ref:`AccessibilityLive` :ref:`getAccessibilityLive`() const; virtual :ref:`UITextSelectionController`* :ref:`getTextSelectionController`(); virtual const :ref:`UITextSelectionController`* :ref:`getTextSelectionController`() const; :ref:`UITextSelectionController`* :ref:`getTextSelectionControllerInTree`() const; virtual :ref:`Uint32` :ref:`getType`() const; virtual bool :ref:`isType`(const :ref:`Uint32`& type) const; :ref:`Uint32` :ref:`getDefaultTextHints`() const; virtual void :ref:`onTextHintsChanged`(); virtual :ref:`UINode`* :ref:`setFlags`(const :ref:`Uint64`& flags); virtual :ref:`UINode`* :ref:`unsetFlags`(const :ref:`Uint64`& flags); virtual :ref:`UIWidget`* :ref:`setAnchors`(const :ref:`Uint32`& flags); virtual void :ref:`setTheme`(:ref:`UITheme`* Theme); virtual :ref:`UINode`* :ref:`setThemeSkin`(const std::string& skinName); virtual :ref:`UINode`* :ref:`setThemeSkin`(:ref:`UITheme`* Theme, const std::string& skinName); virtual :ref:`Node`* :ref:`setId`(const std::string& id); virtual bool :ref:`acceptsDropOfWidget`(const :ref:`UIWidget`* widget); :ref:`UIWidget`* :ref:`acceptsDropOfWidgetInTree`(const :ref:`UIWidget`* widget); :ref:`UITooltip`* :ref:`getTooltip`(); void :ref:`tooltipRemove`(); :ref:`UIWidget`* :ref:`setTooltipText`(const :ref:`String`& text); :ref:`UIWidget`* :ref:`setTooltipTextIfNotEmpty`(const :ref:`String`& text); :ref:`String` :ref:`getTooltipText`() const; void :ref:`updateAnchorsDistances`(); const :ref:`Rectf`& :ref:`getLayoutMargin`() const; const :ref:`Rectf`& :ref:`getLayoutPixelsMargin`() const; :ref:`UIWidget`* :ref:`setLayoutMargin`(const :ref:`Rectf`& margin); :ref:`UIWidget`* :ref:`setLayoutMarginLeft`(const :ref:`Float`& marginLeft); :ref:`UIWidget`* :ref:`setLayoutMarginRight`(const :ref:`Float`& marginRight); :ref:`UIWidget`* :ref:`setLayoutMarginTop`(const :ref:`Float`& marginTop); :ref:`UIWidget`* :ref:`setLayoutMarginBottom`(const :ref:`Float`& marginBottom); :ref:`UIWidget`* :ref:`setLayoutMarginLeftAuto`(bool isAuto); :ref:`UIWidget`* :ref:`setLayoutMarginRightAuto`(bool isAuto); :ref:`UIWidget`* :ref:`setLayoutMarginTopAuto`(bool isAuto); :ref:`UIWidget`* :ref:`setLayoutMarginBottomAuto`(bool isAuto); :ref:`UIWidget`* :ref:`setLayoutMarginAuto`(bool left, bool right, bool top, bool bottom); bool :ref:`hasLayoutMarginLeftAuto`() const; bool :ref:`hasLayoutMarginRightAuto`() const; bool :ref:`hasLayoutMarginTopAuto`() const; bool :ref:`hasLayoutMarginBottomAuto`() const; bool :ref:`hasLayoutMarginAuto`() const; :ref:`UIWidget`* :ref:`updateLayoutMarginAuto`(); :ref:`UIWidget`* :ref:`setLayoutPixelsMargin`(const :ref:`Rectf`& margin); :ref:`UIWidget`* :ref:`setLayoutPixelsMarginLeft`(const :ref:`Float`& marginLeft); :ref:`UIWidget`* :ref:`setLayoutPixelsMarginRight`(const :ref:`Float`& marginRight); :ref:`UIWidget`* :ref:`setLayoutPixelsMarginTop`(const :ref:`Float`& marginTop); :ref:`UIWidget`* :ref:`setLayoutPixelsMarginBottom`(const :ref:`Float`& marginBottom); :ref:`Float` :ref:`getLayoutWeight`() const; :ref:`UIWidget`* :ref:`setLayoutWeight`(const :ref:`Float`& weight); :ref:`Uint32` :ref:`getLayoutGravity`() const; :ref:`UIWidget`* :ref:`setLayoutGravity`(const :ref:`Uint32`& layoutGravity); :ref:`UIWidget`* :ref:`setLayoutHorizontalAlignment`(:ref:`UIHorizontalAlignment` alignment); :ref:`UIHorizontalAlignment` :ref:`getLayoutHorizontalAlignment`() const; virtual :ref:`UIWidget`* :ref:`setTextAlignment`(:ref:`UIHorizontalAlignment` alignment); virtual :ref:`UIHorizontalAlignment` :ref:`getTextAlignment`() const; const :ref:`SizePolicy`& :ref:`getLayoutWidthPolicy`() const; :ref:`UIWidget`* :ref:`setLayoutWidthPolicy`(const :ref:`SizePolicy`& widthPolicy); const :ref:`SizePolicy`& :ref:`getLayoutHeightPolicy`() const; :ref:`UIWidget`* :ref:`setLayoutHeightPolicy`(const :ref:`SizePolicy`& heightPolicy); :ref:`UIWidget`* :ref:`setLayoutSizePolicy`(const :ref:`SizePolicy`& widthPolicy, const :ref:`SizePolicy`& heightPolicy); :ref:`UIWidget`* :ref:`setLayoutPositionPolicy`(const :ref:`PositionPolicy`& layoutPositionPolicy, :ref:`UIWidget`* of); :ref:`UIWidget`* :ref:`getLayoutPositionPolicyWidget`() const; :ref:`PositionPolicy` :ref:`getLayoutPositionPolicy`() const; :ref:`PositionPolicy` :ref:`getResolvedLayoutPositionPolicy`() const; const :ref:`StyleSheetProperty`* :ref:`getBoxEdgeProperty`(:ref:`PropertyId` physicalProperty) const; virtual :ref:`Float` :ref:`getMinIntrinsicWidth`() const; virtual :ref:`Float` :ref:`getMaxIntrinsicWidth`() const; virtual void :ref:`invalidateIntrinsicSize`(); virtual void :ref:`loadFromXmlNode`(const pugi::xml_node& node); bool :ref:`loadsItsChildren`() const; void :ref:`notifyLayoutAttrChange`(); void :ref:`notifyLayoutAttrChange`(:ref:`LayoutInvalidationFlags` reasons); void :ref:`notifyLayoutAttrChangeParent`(); void :ref:`notifyLayoutAttrChangeParent`(:ref:`LayoutInvalidationFlags` reasons); void :ref:`setStyleSheetInlineProperty`(const std::string& name, const std::string& value, const :ref:`Uint32`& specificity = UINT32_MAX - 1); virtual bool :ref:`applyProperty`(const :ref:`StyleSheetProperty`& attribute); :ref:`Cursor::Type` :ref:`getCursor`() const; void :ref:`propagateInheritedProperty`(const :ref:`CSS::StyleSheetProperty`& property); const :ref:`Rectf`& :ref:`getPadding`() const; virtual const :ref:`Rectf`& :ref:`getPixelsPadding`() const; :ref:`Rectf` :ref:`getPixelsContentOffset`() const; :ref:`UIWidget`* :ref:`setPadding`(const :ref:`Rectf`& padding); :ref:`UIWidget`* :ref:`setPaddingLeft`(const :ref:`Float`& paddingLeft); :ref:`UIWidget`* :ref:`setPaddingRight`(const :ref:`Float`& paddingRight); :ref:`UIWidget`* :ref:`setPaddingTop`(const :ref:`Float`& paddingTop); :ref:`UIWidget`* :ref:`setPaddingBottom`(const :ref:`Float`& paddingBottom); :ref:`UIWidget`* :ref:`setPaddingPixels`(const :ref:`Rectf`& padding); :ref:`UIWidget`* :ref:`setPaddingPixelsLeft`(const :ref:`Float`& paddingLeft); :ref:`UIWidget`* :ref:`setPaddingPixelsRight`(const :ref:`Float`& paddingRight); :ref:`UIWidget`* :ref:`setPaddingPixelsTop`(const :ref:`Float`& paddingTop); :ref:`UIWidget`* :ref:`setPaddingPixelsBottom`(const :ref:`Float`& paddingBottom); const std::string& :ref:`getStyleSheetTag`() const; const std::string& :ref:`getStyleSheetId`() const; const :ref:`SmallVector`& :ref:`getStyleSheetClasses`() const; :ref:`Uint32` :ref:`getClassHashCount`() const; const :ref:`SmallVector`<:ref:`String::HashType`, 1>& :ref:`getClassHashes`() const; bool :ref:`hasClassHashes`(const std::vector<:ref:`String::HashType`>& requiredHashes) const; :ref:`UIWidget`* :ref:`getStyleSheetParentElement`() const; :ref:`UIWidget`* :ref:`getStyleSheetPreviousSiblingElement`() const; :ref:`UIWidget`* :ref:`getStyleSheetNextSiblingElement`() const; :ref:`Uint32` :ref:`getStyleSheetPseudoClasses`() const; std::vector :ref:`getStyleSheetPseudoClassesStrings`() const; bool :ref:`isWidgetElement`() const; virtual bool :ref:`isInlineDisplay`() const; :ref:`Uint32` :ref:`getElementIndex`() const; :ref:`Uint32` :ref:`getElementOfTypeIndex`() const; :ref:`Uint32` :ref:`getChildElementCount`() const; :ref:`Uint32` :ref:`getChildElementOfTypeCount`(const :ref:`Uint32`& type) const; :ref:`UIWidget`* :ref:`resetClass`(); :ref:`UIWidget`* :ref:`setClass`(const std::string& cls); :ref:`UIWidget`* :ref:`setClass`(std::string&& cls); :ref:`UIWidget`* :ref:`setClasses`(const std::vector& classes); :ref:`UIWidget`* :ref:`setClasses`(const :ref:`SmallVector`& classes); :ref:`UIWidget`* :ref:`setClasses`(std::initializer_list classes); :ref:`UIWidget`* :ref:`addClass`(const std::string& cls); :ref:`UIWidget`* :ref:`addClasses`(const std::vector& classes); :ref:`UIWidget`* :ref:`removeClass`(const std::string& cls); :ref:`UIWidget`* :ref:`removeClasses`(const std::vector& classes); bool :ref:`hasClass`(const std::string_view& cls) const; void :ref:`toggleClass`(const std::string& cls); void :ref:`setElementTag`(const std::string& tag); const :ref:`SmallVector`& :ref:`getClasses`() const; const std::string& :ref:`getElementTag`() const; :ref:`String::HashType` :ref:`getElementTagHash`() const; virtual void :ref:`pushState`(const :ref:`Uint32`& State, bool emitEvent = true); virtual void :ref:`popState`(const :ref:`Uint32`& State, bool emitEvent = true); :ref:`UIStyle`* :ref:`getUIStyle`() const; :ref:`Color` :ref:`themeColor`(const std::string& variable, :ref:`Color` fallback) const; void :ref:`reloadStyle`(bool reloadChildren = true, bool disableAnimations = false, bool reportStateChange = true, bool forceReApplyProperties = false, bool resetPropertyCache = false); void :ref:`beginAttributesTransaction`(); void :ref:`endAttributesTransaction`(); const :ref:`Uint32`& :ref:`getStyleState`() const; const :ref:`Uint32`& :ref:`getStylePreviousState`() const; :ref:`WidgetQueryResult` :ref:`findAllByClass`(const std::string& className); :ref:`WidgetQueryResult` :ref:`findAllByTag`(const std::string& tag); :ref:`UIWidget`* :ref:`findByClass`(const std::string& className); template T* :ref:`findByClass`(const std::string& className); :ref:`UIWidget`* :ref:`findByTag`(const std::string& tag); template T* :ref:`findByTag`(const std::string& tag); :ref:`UIWidget`* :ref:`querySelector`(const :ref:`CSS::StyleSheetSelector`& selector); :ref:`UIWidget`* :ref:`querySelector`(const std::string& selector); template T* :ref:`querySelector`(const std::string& selector); :ref:`WidgetQueryResult` :ref:`querySelectorAll`(const :ref:`CSS::StyleSheetSelector`& selector); :ref:`WidgetQueryResult` :ref:`querySelectorAll`(const std::string& selector); std::string :ref:`getPropertyString`(const std::string& property) const; virtual std::string :ref:`getPropertyString`(const :ref:`PropertyDefinition`* propertyDef, const :ref:`Uint32`& propertyIndex = 0) const; virtual std::vector<:ref:`PropertyId`> :ref:`getPropertiesImplemented`() const; bool :ref:`isSceneNodeLoading`() const; void :ref:`reportStyleStateChangeRecursive`(bool disableAnimations = false, bool forceReApplyStyles = false); :ref:`UITooltip`* :ref:`createTooltip`(); bool :ref:`isTabStop`() const; void :ref:`setTabStop`(); void :ref:`unsetTabStop`(); bool :ref:`isTabFocusable`() const; void :ref:`setTabFocusable`(); void :ref:`unsetTabFocusable`(); :ref:`UIWidget`* :ref:`getPrevTabWidget`() const; :ref:`UIWidget`* :ref:`getNextTabWidget`() const; bool :ref:`hasPseudoClass`(const std::string& pseudoCls) const; bool :ref:`hasPseudoClass`(:ref:`StyleSheetSelectorRule::PseudoClasses` pseudoCls) const; bool :ref:`isTooltipEnabled`() const; void :ref:`setTooltipEnabled`(bool enabled); :ref:`UIWidget`* :ref:`getPrevWidget`() const; :ref:`UIWidget`* :ref:`getNextWidget`() const; :ref:`String` :ref:`getTranslatorString`(const std::string& str); :ref:`String` :ref:`getTranslatorString`(const std::string& str, const :ref:`String`& defaultValue); :ref:`String` :ref:`i18n`(const std::string& str); :ref:`String` :ref:`i18n`(const std::string& str, const :ref:`String`& defaultValue); virtual void :ref:`onWidgetCreated`(); :ref:`Float` :ref:`getPropertyLength`(:ref:`PropertyId` prop) const; :ref:`Float` :ref:`getPropertyWidth`() const; :ref:`Float` :ref:`getPropertyHeight`() const; virtual :ref:`Float` :ref:`cssResolvedLengthToBorderBoxWidth`(const :ref:`Float`& resolvedLength) const; virtual :ref:`Float` :ref:`cssResolvedLengthToBorderBoxHeight`(const :ref:`Float`& resolvedLength) const; virtual :ref:`Float` :ref:`cssWidthPropertyToBorderBoxWidth`(const :ref:`StyleSheetProperty`& property) const; virtual :ref:`Float` :ref:`cssHeightPropertyToBorderBoxHeight`(const :ref:`StyleSheetProperty`& property) const; :ref:`Float` :ref:`getMatchParentWidth`() const; :ref:`Float` :ref:`getMatchParentHeight`() const; :ref:`Sizef` :ref:`getSizeFromLayoutPolicy`(); void :ref:`setStyleSheetProperties`(const :ref:`CSS::StyleSheetProperties`& properties); void :ref:`setStyleSheetProperty`(const :ref:`CSS::StyleSheetProperty`& property); .. _details-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Widget rendering one :ref:`ChartModel `. It owns a shared reference to the model. Views sharing that model still have independent viewport ranges and styles. As with other UIWidgets, the parent scene manages widget lifetime after it is attached to the tree. Methods ------- .. index:: pair: function; New .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1aa6d799d891fbe67dc6835f4bdeb100ae: .. ref-code-block:: cpp :class: doxyrest-title-code-block static UIChart* New() Creates a scene-owned widget using eepp's :ref:`UIWidget ` construction convention. .. index:: pair: function; model .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a57faae07b4a81a739f4ef6486296178f: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`ChartModel`& model() const Borrowed model reference; the chart always has a model. .. index:: pair: function; sharedModel .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a05239ba4c927c60c1656b570b79f8c0c: .. ref-code-block:: cpp :class: doxyrest-title-code-block std::shared_ptr<:ref:`ChartModel`> sharedModel() const Owning shared handle for keeping the current model alive or sharing it with another chart. .. index:: pair: function; setModel .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a746233bb098f11184dda1c05e685aec2: .. ref-code-block:: cpp :class: doxyrest-title-code-block void setModel(std::shared_ptr<:ref:`ChartModel`> model) Replaces this view's model. Null creates a new empty model. Old references can expire. .. index:: pair: function; addLineSeries .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1aa1d7840410dc628fdb3445bd6e3119d4: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`LineSeries`& addLineSeries(:ref:`String` name) Returns a borrowed series reference, valid while the current model lives. .. index:: pair: function; xAxis .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a59befb35f0175781d909116f22a1e2bc: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`ChartAxis`& xAxis() const Borrowed reference to the current model's default bottom axis. .. index:: pair: function; yAxis .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a87a3bd76ed7ebb648ee116f7302f0939: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`ChartAxis`& yAxis() const Borrowed reference to the current model's default left axis. .. index:: pair: function; fit .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a2b050179a7fcf74162b7e1f426a6e783: .. ref-code-block:: cpp :class: doxyrest-title-code-block void fit() Fits each axis to visible series data and disables X follow mode. .. index:: pair: function; axisRange .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a95623b9d41c1e6f4dd07db516c7098bf: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`DataRange` axisRange(const :ref:`ChartAxis`& axis) Returns this view's range for an axis owned by its current model. .. index:: pair: function; setAxisRange .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a56c391ae875faeb55edba97c6cd71259: .. ref-code-block:: cpp :class: doxyrest-title-code-block void setAxisRange(:ref:`ChartAxis`& axis, :ref:`DataRange` range) Sets a manual range on this view; axis must belong to its current model. .. index:: pair: function; setFollowX .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1ad2bc140c00635cdc7481e290d8867c97: .. ref-code-block:: cpp :class: doxyrest-title-code-block void setFollowX(double span) Follow the newest X while preserving a fixed data-space span; zero disables follow mode. .. index:: pair: function; setChartStyle .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a876e11b092ffe7371de826115850f7da: .. ref-code-block:: cpp :class: doxyrest-title-code-block void setChartStyle(:ref:`ChartStyle` style) Replaces view appearance and invalidates cached layout and series geometry. .. index:: pair: function; draw .. _doxid-class_e_e_1_1_u_i_1_1_charts_1_1_u_i_chart_1a895e80c0bc79d8626be3c461e7b21a40: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual void draw() Draws the node. Virtual method that can be overridden to implement custom drawing behavior. The default implementation does nothing. This is called during the render cycle.