.. index:: pair: class; EE::UI::UICodeEditor .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor: class EE::UI::UICodeEditor ========================== .. toctree:: :hidden: struct_EE_UI_UICodeEditor_LastXOffset.rst struct_EE_UI_UICodeEditor_MinimapConfig.rst struct_EE_UI_UICodeEditor_PluginRequestedSpace.rst struct_EE_UI_UICodeEditor_TextLine.rst Overview ~~~~~~~~ .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class UICodeEditor: public :ref:`EE::UI::UIWidget`, public :ref:`EE::UI::Doc::TextDocument::Client` { public: // structs struct :ref:`LastXOffset`; struct :ref:`MinimapConfig`; struct :ref:`PluginRequestedSpace`; struct :ref:`TextLine`; // construction :target:`UICodeEditor`(const bool& autoRegisterBaseCommands = true, const bool& autoRegisterBaseKeybindings = true); virtual :target:`~UICodeEditor`(); // methods static UICodeEditor* :target:`New`(); static UICodeEditor* :target:`NewOpt`(const bool& autoRegisterBaseCommands, const bool& autoRegisterBaseKeybindings); static const std::map<:ref:`KeyBindings::Shortcut`, std::string> :target:`getDefaultKeybindings`(); virtual :ref:`Uint32` :target:`getType`() const; virtual bool :target:`isType`(const :ref:`Uint32`& type) const; virtual void :target:`setTheme`(:ref:`UITheme`* Theme); virtual void :target:`draw`(); virtual void :target:`scheduledUpdate`(const :ref:`Time`& time); void :target:`reset`(); :ref:`TextDocument::LoadStatus` :target:`loadFromFile`(const std::string& path); bool :target:`loadAsyncFromFile`(const std::string& path, std::shared_ptr<:ref:`ThreadPool`> pool, std::function`>, bool); :ref:`TextDocument::LoadStatus` :target:`loadFromURL`(const std::string& url, const :ref:`EE::Network::Http::Request::FieldTable`& headers = :ref:`Http::Request::FieldTable`()); bool :target:`loadAsyncFromURL`(const std::string& url, const :ref:`Http::Request::FieldTable`& headers = :ref:`Http::Request::FieldTable`(), std::function`>, bool); bool :target:`save`(); bool :target:`save`(const std::string& path); bool :target:`save`(:ref:`IOStreamFile`& stream); :ref:`Font`* :target:`getFont`() const; const :ref:`UIFontStyleConfig`& :target:`getFontStyleConfig`() const; UICodeEditor* :target:`setFont`(:ref:`Font`* font); UICodeEditor* :target:`setFontSize`(const :ref:`Float`& size); const :ref:`Float`& :target:`getFontSize`() const; UICodeEditor* :target:`setFontColor`(const :ref:`Color`& color); const :ref:`Color`& :target:`getFontColor`() const; UICodeEditor* :target:`setFontSelectedColor`(const :ref:`Color`& color); const :ref:`Color`& :target:`getFontSelectedColor`() const; UICodeEditor* :target:`setFontSelectionBackColor`(const :ref:`Color`& color); const :ref:`Color`& :target:`getFontSelectionBackColor`() const; UICodeEditor* :target:`setFontShadowColor`(const :ref:`Color`& color); const :ref:`Color`& :target:`getFontShadowColor`() const; UICodeEditor* :target:`setFontStyle`(const :ref:`Uint32`& fontStyle); const :ref:`Uint32`& :target:`getTabWidth`() const; UICodeEditor* :target:`setTabWidth`(const :ref:`Uint32`& tabWidth); const :ref:`Uint32`& :target:`getFontStyle`() const; const :ref:`Float`& :target:`getOutlineThickness`() const; UICodeEditor* :target:`setOutlineThickness`(const :ref:`Float`& outlineThickness); const :ref:`Color`& :target:`getOutlineColor`() const; UICodeEditor* :target:`setOutlineColor`(const :ref:`Color`& outlineColor); const :ref:`Float`& :target:`getMouseWheelScroll`() const; void :target:`setMouseWheelScroll`(const :ref:`Float`& mouseWheelScroll); void :target:`setLineNumberPaddingLeft`(const :ref:`Float`& dpLeft); void :target:`setLineNumberPaddingRight`(const :ref:`Float`& dpRight); void :target:`setLineNumberPadding`(const :ref:`Float`& dpPaddingLeft, const :ref:`Float`& dpPaddingRight); const :ref:`Float`& :target:`getLineNumberPaddingLeft`() const; const :ref:`Float`& :target:`getLineNumberPaddingRight`() const; size_t :target:`getLineNumberDigits`() const; :ref:`Float` :target:`getLineNumberWidth`() const; virtual :ref:`Float` :target:`getGutterWidth`() const; const bool& :target:`getShowLineNumber`() const; void :target:`setShowLineNumber`(const bool& showLineNumber); const :ref:`Color`& :target:`getLineNumberBackgroundColor`() const; void :target:`setLineNumberBackgroundColor`(const :ref:`Color`& lineNumberBackgroundColor); const :ref:`Color`& :target:`getCurrentLineBackgroundColor`() const; void :target:`setCurrentLineBackgroundColor`(const :ref:`Color`& currentLineBackgroundColor); const :ref:`Color`& :target:`getCaretColor`() const; void :target:`setCaretColor`(const :ref:`Color`& caretColor); const :ref:`Color`& :target:`getWhitespaceColor`() const; void :target:`setWhitespaceColor`(const :ref:`Color`& color); const :ref:`SyntaxColorScheme`& :target:`getColorScheme`() const; void :target:`setColorScheme`(const :ref:`SyntaxColorScheme`& colorScheme); bool :target:`hasDocument`() const; std::shared_ptr<:ref:`Doc::TextDocument`> :ref:`getDocumentRef`() const; const :ref:`Doc::TextDocument`& :target:`getDocument`() const; :ref:`Doc::TextDocument`& :target:`getDocument`(); void :target:`setDocument`(std::shared_ptr<:ref:`TextDocument`> doc); bool :target:`isDirty`() const; const bool& :target:`isLocked`() const; void :target:`setLocked`(bool locked); const :ref:`Color`& :target:`getLineNumberFontColor`() const; void :target:`setLineNumberFontColor`(const :ref:`Color`& lineNumberFontColor); const :ref:`Color`& :target:`getLineNumberActiveFontColor`() const; void :target:`setLineNumberActiveFontColor`(const :ref:`Color`& lineNumberActiveFontColor); bool :target:`isTextSelectionEnabled`() const; void :target:`setTextSelection`(const bool& active); :ref:`KeyBindings`& :target:`getKeyBindings`(); void :target:`setKeyBindings`(const :ref:`KeyBindings`& keyBindings); void :target:`addKeyBindingString`(const std::string& shortcut, const std::string& command, const bool& allowLocked = false); void :target:`addKeyBinding`(const :ref:`KeyBindings::Shortcut`& shortcut, const std::string& command, const bool& allowLocked = false); void :target:`replaceKeyBindingString`(const std::string& shortcut, const std::string& command, const bool& allowLocked = false); void :target:`replaceKeyBinding`(const :ref:`KeyBindings::Shortcut`& shortcut, const std::string& command, const bool& allowLocked = false); void :target:`addKeyBindsString`(const std::map& binds, const bool& allowLocked = false); void :target:`addKeyBinds`(const std::map<:ref:`KeyBindings::Shortcut`, std::string>& binds, const bool& allowLocked = false); const bool& :target:`getHighlightCurrentLine`() const; void :target:`setHighlightCurrentLine`(const bool& highlightCurrentLine); const :ref:`Uint32`& :target:`getLineBreakingColumn`() const; void :ref:`setLineBreakingColumn`(const :ref:`Uint32`& lineBreakingColumn); void :target:`addUnlockedCommand`(const std::string& command); void :target:`addUnlockedCommands`(const std::vector& commands); bool :target:`isUnlockedCommand`(const std::string& command); virtual bool :target:`applyProperty`(const :ref:`StyleSheetProperty`& attribute); virtual std::string :target:`getPropertyString`(const :ref:`PropertyDefinition`* propertyDef, const :ref:`Uint32`& propertyIndex = 0) const; virtual std::vector<:ref:`PropertyId`> :target:`getPropertiesImplemented`() const; const bool& :target:`getHighlightMatchingBracket`() const; void :target:`setHighlightMatchingBracket`(const bool& highlightMatchingBracket); const :ref:`Color`& :target:`getMatchingBracketColor`() const; void :target:`setMatchingBracketColor`(const :ref:`Color`& matchingBracketColor); const bool& :target:`getHighlightSelectionMatch`() const; void :target:`setHighlightSelectionMatch`(const bool& highlightSelection); const :ref:`Color`& :target:`getSelectionMatchColor`() const; void :target:`setSelectionMatchColor`(const :ref:`Color`& highlightSelectionMatchColor); const bool& :target:`getEnableColorPickerOnSelection`() const; void :target:`setEnableColorPickerOnSelection`(const bool& enableColorPickerOnSelection); void :target:`setSyntaxDefinition`(const :ref:`SyntaxDefinition`& definition); void :target:`resetSyntaxDefinition`(); const :ref:`SyntaxDefinition`& :target:`getSyntaxDefinition`() const; const bool& :target:`getHorizontalScrollBarEnabled`() const; void :target:`setHorizontalScrollBarEnabled`(const bool& horizontalScrollBarEnabled); bool :target:`getVerticalScrollBarEnabled`() const; void :target:`setVerticalScrollBarEnabled`(const bool& verticalScrollBarEnabled); const :ref:`Time`& :target:`getFindLongestLineWidthUpdateFrequency`() const; void :target:`setFindLongestLineWidthUpdateFrequency`(const :ref:`Time`& findLongestLineWidthUpdateFrequency); :ref:`TextPosition` :ref:`moveToLineOffset`(const :ref:`TextPosition`& position, int offset, const size_t& cursorIdx = 0); void :target:`moveToPreviousLine`(); void :target:`moveToNextLine`(); void :target:`selectToPreviousLine`(); void :target:`selectToNextLine`(); void :target:`registerKeybindings`(); void :target:`registerCommands`(); void :target:`moveScrollUp`(); void :target:`moveScrollDown`(); void :target:`jumpLinesUp`(); void :target:`jumpLinesDown`(); void :target:`jumpLinesUp`(int offset); void :target:`jumpLinesDown`(int offset); void :target:`indent`(); void :target:`unindent`(); void :target:`copy`(); void :target:`cut`(); void :target:`paste`(); void :target:`fontSizeGrow`(); void :target:`fontSizeShrink`(); void :target:`fontSizeReset`(); const bool& :ref:`getShowWhitespaces`() const; void :target:`setShowWhitespaces`(const bool& showWhitespaces); const :ref:`TextSearchParams`& :target:`getHighlightWord`() const; void :target:`setHighlightWord`(const :ref:`TextSearchParams`& highlightWord); const :ref:`TextRange`& :target:`getHighlightTextRange`() const; void :target:`setHighlightTextRange`(const :ref:`TextRange`& highlightSelection); void :target:`registerPlugin`(:ref:`UICodeEditorPlugin`* plugin); void :target:`unregisterPlugin`(:ref:`UICodeEditorPlugin`* plugin); virtual :ref:`Int64` :target:`getColFromXOffset`(:ref:`Int64` line, const :ref:`Float`& x) const; virtual :ref:`Float` :target:`getXOffsetCol`(const :ref:`TextPosition`& position) const; :ref:`Float` :target:`getXOffsetColSanitized`(:ref:`TextPosition` position) const; virtual :ref:`Float` :target:`getLineWidth`(const :ref:`Int64`& lineIndex); size_t :target:`characterWidth`(const :ref:`String`& str) const; :ref:`Float` :target:`getTextWidth`(const :ref:`String`& text) const; size_t :target:`characterWidth`(const :ref:`String::View`& str) const; :ref:`Float` :target:`getTextWidth`(const :ref:`String::View`& text) const; :ref:`Float` :target:`getLineHeight`() const; :ref:`Float` :target:`getCharacterSize`() const; :ref:`Float` :target:`getGlyphWidth`() const; const bool& :target:`getColorPreview`() const; void :target:`setColorPreview`(bool colorPreview); void :target:`goToLine`(const :ref:`TextPosition`& position, bool centered = true, bool forceExactPosition = false, bool scrollX = true); bool :target:`getAutoCloseBrackets`() const; void :target:`setAutoCloseBrackets`(bool autoCloseBracket); bool :target:`getInteractiveLinks`() const; void :target:`setInteractiveLinks`(bool newInteractiveLinks); :ref:`UILoader`* :target:`getLoader`(); bool :target:`getDisplayLoaderIfDocumentLoading`() const; void :target:`setDisplayLoaderIfDocumentLoading`(bool newDisplayLoaderIfDocumentLoading); size_t :target:`getMenuIconSize`() const; void :target:`setMenuIconSize`(size_t menuIconSize); bool :target:`getCreateDefaultContextMenuOptions`() const; void :target:`setCreateDefaultContextMenuOptions`(bool createDefaultContextMenuOptions); void :target:`openContainingFolder`(); void :target:`copyContainingFolderPath`(); void :target:`copyFilePath`(bool copyPosition = false); void :target:`scrollToCursor`(bool centered = true); void :target:`scrollTo`(:ref:`TextRange` position, bool centered = false, bool forceExactPosition = false, bool scrollX = true); void :target:`scrollTo`(:ref:`TextPosition` position, bool centered = false, bool forceExactPosition = false, bool scrollX = true); const :ref:`MinimapConfig`& :target:`getMinimapConfig`() const; void :target:`setMinimapConfig`(const :ref:`MinimapConfig`& newMinimapConfig); bool :target:`isMinimapShown`() const; void :target:`showMinimap`(bool showMinimap); bool :target:`getAutoCloseXMLTags`() const; void :target:`setAutoCloseXMLTags`(bool autoCloseXMLTags); const :ref:`Time`& :target:`getCursorBlinkTime`() const; void :target:`setCursorBlinkTime`(const :ref:`Time`& blinkTime); :ref:`Int64` :target:`getCurrentColumnCount`() const; bool :target:`getFindReplaceEnabled`() const; void :target:`setFindReplaceEnabled`(bool findReplaceEnabled); const :ref:`Vector2f`& :target:`getScroll`() const; std::pair<:ref:`Uint64`, :ref:`Uint64`> :target:`getVisibleLineRange`() const; virtual :ref:`TextRange` :target:`getVisibleRange`() const; bool :target:`isLineVisible`(const :ref:`Uint64`& line) const; int :target:`getVisibleLinesCount`() const; const :ref:`StyleSheetLength`& :target:`getLineSpacing`() const; void :target:`setLineSpacing`(const :ref:`StyleSheetLength`& lineSpace); :ref:`Float` :target:`getFontHeight`() const; :ref:`Float` :target:`getLineOffset`() const; bool :ref:`registerGutterSpace`(:ref:`UICodeEditorPlugin`* plugin, const :ref:`Float`& pixels, int order); bool :target:`unregisterGutterSpace`(:ref:`UICodeEditorPlugin`* plugin); bool :ref:`registerTopSpace`(:ref:`UICodeEditorPlugin`* plugin, const :ref:`Float`& pixels, int order); bool :target:`unregisterTopSpace`(:ref:`UICodeEditorPlugin`* plugin); void :target:`showFindReplace`(); :ref:`TextPosition` :target:`resolveScreenPosition`(const :ref:`Vector2f`& position, bool clamp = true) const; :ref:`Rectf` :target:`getScreenPosition`(const :ref:`TextPosition`& position) const; const :ref:`Float`& :target:`getPluginsTopSpace`() const; UICodeEditor* :target:`setFontShadowOffset`(const :ref:`Vector2f`& offset); const :ref:`Vector2f`& :target:`getFontShadowOffset`() const; void :target:`setScroll`(const :ref:`Vector2f`& val, bool emmitEvent = true); bool :target:`getShowLineEndings`() const; void :target:`setShowLineEndings`(bool showLineEndings); :ref:`Rectf` :target:`getMinimapRect`(const :ref:`Vector2f`& start) const; :ref:`Float` :target:`getMinimapWidth`() const; void :target:`resetCursor`(); :ref:`Vector2f` :target:`getViewPortLineCount`() const; :ref:`Sizef` :target:`getMaxScroll`() const; void :target:`setScrollX`(const :ref:`Float`& val, bool emmitEvent = true); void :target:`setScrollY`(const :ref:`Float`& val, bool emmitEvent = true); :ref:`Vector2f` :target:`getScreenStart`() const; :ref:`Float` :target:`getViewportWidth`(const bool& forceVScroll = false) const; bool :target:`getShowIndentationGuides`() const; void :target:`setShowIndentationGuides`(bool showIndentationGuides); :ref:`Vector2f` :target:`getRelativeScreenPosition`(const :ref:`TextPosition`& pos); bool :target:`getShowLinesRelativePosition`() const; void :target:`showLinesRelativePosition`(bool showLinesRelativePosition); :ref:`UIScrollBar`* :target:`getVScrollBar`() const; :ref:`UIScrollBar`* :target:`getHScrollBar`() const; size_t :target:`getJumpLinesLength`() const; void :target:`setJumpLinesLength`(size_t jumpLinesLength); std::string :target:`getFileLockIconName`() const; void :target:`setFileLockIconName`(const std::string& fileLockIconName); bool :target:`getDisplayLockedIcon`() const; void :target:`setDisplayLockedIcon`(bool displayLockedIcon); void :target:`invalidateLongestLineWidth`(); }; 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; 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:`setChildsVisibility`(bool visible, bool emitEventNotification = true); bool :ref:`isVisible`() const; bool :ref:`isHided`() 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:`isMouseOverMeOrChilds`() 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:`Uint32` :ref:`onClick`(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:`childsCloseAll`(); 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:`setRotationOriginPointX`(const std::string& xEq); void :ref:`setRotationOriginPointY`(const std::string& yEq); :ref:`Vector2f` :ref:`getRotationCenter`() const; 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 = OriginPoint::OriginCenter); const :ref:`OriginPoint`& :ref:`getScaleOriginPoint`() const; void :ref:`setScaleOriginPoint`(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:`setChildsAlpha`(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:`String::HashType`& tag); std::vector<:ref:`Action`*> :ref:`getActions`(); std::vector<:ref:`Action`*> :ref:`getActionsByTag`(const :ref:`Uint32`& tag); 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:`enableReportSizeChangeToChilds`(); void :ref:`disableReportSizeChangeToChilds`(); bool :ref:`reportSizeChangeToChilds`() 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:`Uint32`& uniqueIdentifier = 0); void :ref:`setTimeout`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& delay = Seconds(0), const :ref:`Uint32`& uniqueIdentifier = 0); void :ref:`debounce`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& delay, const :ref:`Uint32`& uniqueIdentifier); void :ref:`setInterval`(:ref:`Actions::Runnable::RunnableFunc` runnable, const :ref:`Time`& interval, const :ref:`Uint32`& uniqueIdentifier = 0); bool :ref:`isChild`(:ref:`Node`* child) const; bool :ref:`inParentTreeOf`(:ref:`Node`* child) const; void :ref:`setLoadingState`(bool loading); bool :ref:`isLoadingState`() const; virtual void :ref:`onIdChange`(); bool :ref:`isClosing`() 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; 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:`UINodeDrawable`* :ref:`setBackgroundFillEnabled`(bool enabled); :ref:`UINode`* :ref:`setBackgroundDrawable`(:ref:`Drawable`* drawable, bool ownIt = false, 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:`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:`Drawable`* drawable, bool ownIt = false, int index = 0); :ref:`UINode`* :ref:`setForegroundDrawable`(const std::string& drawable, int index = 0); :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:`Color` :ref:`getForegroundColor`() const; :ref:`Color` :ref:`getForegroundTint`(int index) const; :ref:`UINode`* :ref:`setForegroundRadius`(const unsigned int& corners); :ref:`Uint32` :ref:`getForegroundRadius`() 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:`Uint32`& :ref:`getFlags`() const; virtual :ref:`UINode`* :ref:`setFlags`(const :ref:`Uint32`& flags); virtual :ref:`UINode`* :ref:`unsetFlags`(const :ref:`Uint32`& flags); virtual :ref:`UINode`* :ref:`resetFlags`(:ref:`Uint32` 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:`setThemeToChilds`(: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`(const bool& dragging); 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 = 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; :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 = 0, const :ref:`Uint32`& propertyIndex = 0) const; :ref:`Float` :ref:`lengthFromValue`(const :ref:`CSS::StyleSheetProperty`& property, const :ref:`Float`& defaultValue = 0); :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; 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; static :ref:`UIWidget`* :ref:`New`(); static :ref:`UIWidget`* :ref:`NewWithTag`(const std::string& tag); virtual :ref:`Uint32` :ref:`getType`() const; virtual bool :ref:`isType`(const :ref:`Uint32`& type) const; virtual :ref:`UINode`* :ref:`setFlags`(const :ref:`Uint32`& flags); virtual :ref:`UINode`* :ref:`unsetFlags`(const :ref:`Uint32`& 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:`String` :ref:`getTooltipText`(); 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:`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); 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; virtual void :ref:`loadFromXmlNode`(const pugi::xml_node& node); void :ref:`notifyLayoutAttrChange`(); void :ref:`notifyLayoutAttrChangeParent`(); 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); const :ref:`Rectf`& :ref:`getPadding`() const; virtual const :ref:`Rectf`& :ref:`getPixelsPadding`() 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 std::vector& :ref:`getStyleSheetClasses`() const; :ref:`UIWidget`* :ref:`getStyleSheetParentElement`() const; :ref:`UIWidget`* :ref:`getStyleSheetPreviousSiblingElement`() const; :ref:`UIWidget`* :ref:`getStyleSheetNextSiblingElement`() const; const std::vector& :ref:`getStyleSheetPseudoClasses`() const; :ref:`UIWidget`* :ref:`resetClass`(); :ref:`UIWidget`* :ref:`setClass`(const std::string& cls); :ref:`UIWidget`* :ref:`setClasses`(const std::vector& 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& cls) const; void :ref:`toggleClass`(const std::string& cls); void :ref:`setElementTag`(const std::string& tag); const std::vector :ref:`getClasses`() const; const std::string& :ref:`getElementTag`() 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; void :ref:`reloadStyle`(const bool& reloadChilds = true, const bool& disableAnimations = false, const bool& reportStateChange = true, const bool& forceReApplyProperties = false); void :ref:`beginAttributesTransaction`(); void :ref:`endAttributesTransaction`(); const :ref:`Uint32`& :ref:`getStyleState`() const; const :ref:`Uint32`& :ref:`getStylePreviousState`() const; std::vector<:ref:`UIWidget`*> :ref:`findAllByClass`(const std::string& className); std::vector<:ref:`UIWidget`*> :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); std::vector<:ref:`UIWidget`*> :ref:`querySelectorAll`(const :ref:`CSS::StyleSheetSelector`& selector); std::vector<:ref:`UIWidget`*> :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:`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:`onDocumentLoaded`(:ref:`TextDocument`*); virtual void :ref:`onDocumentTextChanged`(const :ref:`DocumentContentChange`&) = 0; virtual void :ref:`onDocumentUndoRedo`(const :ref:`UndoRedo`& eventType) = 0; virtual void :ref:`onDocumentCursorChange`(const :ref:`TextPosition`&) = 0; virtual void :ref:`onDocumentInterestingCursorChange`(const :ref:`TextPosition`&); virtual void :ref:`onDocumentSelectionChange`(const :ref:`TextRange`&) = 0; virtual void :ref:`onDocumentLineCountChange`(const size_t& lastCount, const size_t& newCount) = 0; virtual void :ref:`onDocumentLineChanged`(const :ref:`Int64`& lineIndex) = 0; virtual void :ref:`onDocumentSaved`(:ref:`TextDocument`*) = 0; virtual void :ref:`onDocumentClosed`(:ref:`TextDocument`*) = 0; virtual void :ref:`onDocumentDirtyOnFileSystem`(:ref:`TextDocument`*) = 0; virtual void :ref:`onDocumentMoved`(:ref:`TextDocument`*) = 0; virtual void :ref:`onDocumentReloaded`(:ref:`TextDocument`* doc); virtual void :ref:`onDocumentSyntaxDefinitionChange`(const :ref:`SyntaxDefinition`&); virtual void :ref:`onDocumentLineMove`(const :ref:`Int64`&, const :ref:`Int64`&); virtual :ref:`TextRange` :ref:`getVisibleRange`() const; .. _details-class_e_e_1_1_u_i_1_1_u_i_code_editor: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Methods ------- .. index:: pair: function; getDocumentRef .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor_1a9529555017d47e4b26eb4437702822fe: .. ref-code-block:: cpp :class: doxyrest-title-code-block std::shared_ptr<:ref:`Doc::TextDocument`> getDocumentRef() const If the document is managed by more than one client you need to NOT auto register base commands and implement your own logic for those commands, since are dependant of the client state. .. rubric:: See also: :ref:`registerCommands ` .. index:: pair: function; setLineBreakingColumn .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor_1af042a9718c68d674b9cac54c10d88b43: .. ref-code-block:: cpp :class: doxyrest-title-code-block void setLineBreakingColumn(const :ref:`Uint32`& lineBreakingColumn) Set to 0 to hide. .. index:: pair: function; moveToLineOffset .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor_1a059e29be13034df1d13b7ec8f9229e1f: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`TextPosition` moveToLineOffset(const :ref:`TextPosition`& position, int offset, const size_t& cursorIdx = 0) :ref:`Doc ` commands executed in this editor. .. index:: pair: function; getShowWhitespaces .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor_1a2e7faa3b7c08914bd5688bd8df52c243: .. ref-code-block:: cpp :class: doxyrest-title-code-block const bool& getShowWhitespaces() const :ref:`Doc ` commands executed in this editor. .. index:: pair: function; registerGutterSpace .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor_1ac22364a16f70a64105757989516da27e: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool registerGutterSpace(:ref:`UICodeEditorPlugin`* plugin, const :ref:`Float`& pixels, int order) Register a gutter space to be used by a plugin. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - plugin - Plugin requesting it * - pixels - Amount of pixels to request in the gutter * - order - Order goes from left (lower number) to right (bigger number). .. index:: pair: function; registerTopSpace .. _doxid-class_e_e_1_1_u_i_1_1_u_i_code_editor_1ae54b93f6af4f874bc29eff8302012797: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool registerTopSpace(:ref:`UICodeEditorPlugin`* plugin, const :ref:`Float`& pixels, int order) Register a top space to be used by a plugin. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - plugin - Plugin requesting it * - pixels - Amount of pixels to request in the gutter * - order - Order goes from left (lower number) to right (bigger number).